Open SCAP Library
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
text_priv.h
1 /*
2  * Copyright 2009 Red Hat Inc., Durham, North Carolina.
3  * All Rights Reserved.
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Lesser General Public
7  * License as published by the Free Software Foundation; either
8  * version 2.1 of the License, or (at your option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  * Lesser General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public
16  * License along with this library; if not, write to the Free Software
17  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18  *
19  * Authors:
20  * "David Niemoller" <David.Niemoller@g2-inc.com>
21  * Lukas Kuklinek <lkuklinek@redhat.com>
22  */
23 
24 #pragma once
25 #ifndef OSCAP_TEXT_PRIV_H_
26 #define OSCAP_TEXT_PRIV_H_
27 
28 #include "public/oscap_text.h"
29 #include "elements.h"
30 #include <libxml/xmlreader.h>
31 #include <libxml/xmlwriter.h>
32 
33 OSCAP_HIDDEN_START;
34 
40  bool override_given : 1;
41  bool html : 1;
42  bool can_override : 1;
43  bool can_substitute : 1;
44  bool overrides : 1;
45 };
46 
47 struct oscap_text {
48  char *lang;
49  char *text;
50  struct oscap_text_traits traits;
51 };
52 
53 struct oscap_list;
54 
56 extern const struct oscap_text_traits OSCAP_TEXT_TRAITS_PLAIN;
58 extern const struct oscap_text_traits OSCAP_TEXT_TRAITS_HTML;
59 
66 struct oscap_text *oscap_text_new_full(struct oscap_text_traits traits, const char *string, const char *lang);
67 
71 struct oscap_text *oscap_text_new_parse(struct oscap_text_traits traits, xmlTextReaderPtr reader);
72 
73 xmlNode *oscap_text_to_dom(struct oscap_text *text, xmlNode *parent, const char *elname);
74 bool oscap_text_export(struct oscap_text *text, xmlTextWriter *writer, const char *elname);
75 bool oscap_textlist_export(struct oscap_text_iterator *texts, xmlTextWriter *writer, const char *elname);
76 
77 char *_xhtml_to_plaintext(const char *xhtml_in);
78 
79 OSCAP_HIDDEN_END;
80 
81 #endif
bool can_substitute
can proces the sub element and such
Definition: text_priv.h:43
bool can_override
 can override parent&#39;s value.
Definition: text_priv.h:42
bool html
XHTML-formatted text.
Definition: text_priv.h:41
Internationalized string iterator.
Definition: list.h:54
bool overrides
overrides parent&#39;s value
Definition: text_priv.h:44
Multilingual text processing interface.
bool override_given
override attribute given
Definition: text_priv.h:40
Representation of internationalizable character strings.
Definition: text_priv.h:47
oscap_text traits
Definition: text_priv.h:39