nokogiri 1.11.0.rc1-x86-mingw32 → 1.11.1-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of nokogiri might be problematic. Click here for more details.

Files changed (120) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +3 -0
  3. data/LICENSE-DEPENDENCIES.md +1015 -947
  4. data/README.md +164 -92
  5. data/ext/nokogiri/depend +476 -357
  6. data/ext/nokogiri/extconf.rb +467 -326
  7. data/ext/nokogiri/html_document.c +79 -78
  8. data/ext/nokogiri/html_sax_parser_context.c +4 -2
  9. data/ext/nokogiri/html_sax_push_parser.c +14 -8
  10. data/ext/nokogiri/include/libexslt/exslt.h +102 -0
  11. data/ext/nokogiri/include/libexslt/exsltconfig.h +70 -0
  12. data/ext/nokogiri/include/libexslt/exsltexports.h +140 -0
  13. data/ext/nokogiri/include/libxml2/libxml/DOCBparser.h +96 -0
  14. data/ext/nokogiri/include/libxml2/libxml/HTMLparser.h +306 -0
  15. data/ext/nokogiri/include/libxml2/libxml/HTMLtree.h +147 -0
  16. data/ext/nokogiri/include/libxml2/libxml/SAX.h +173 -0
  17. data/ext/nokogiri/include/libxml2/libxml/SAX2.h +178 -0
  18. data/ext/nokogiri/include/libxml2/libxml/c14n.h +126 -0
  19. data/ext/nokogiri/include/libxml2/libxml/catalog.h +182 -0
  20. data/ext/nokogiri/include/libxml2/libxml/chvalid.h +230 -0
  21. data/ext/nokogiri/include/libxml2/libxml/debugXML.h +217 -0
  22. data/ext/nokogiri/include/libxml2/libxml/dict.h +79 -0
  23. data/ext/nokogiri/include/libxml2/libxml/encoding.h +245 -0
  24. data/ext/nokogiri/include/libxml2/libxml/entities.h +151 -0
  25. data/ext/nokogiri/include/libxml2/libxml/globals.h +508 -0
  26. data/ext/nokogiri/include/libxml2/libxml/hash.h +236 -0
  27. data/ext/nokogiri/include/libxml2/libxml/list.h +137 -0
  28. data/ext/nokogiri/include/libxml2/libxml/nanoftp.h +163 -0
  29. data/ext/nokogiri/include/libxml2/libxml/nanohttp.h +81 -0
  30. data/ext/nokogiri/include/libxml2/libxml/parser.h +1241 -0
  31. data/ext/nokogiri/include/libxml2/libxml/parserInternals.h +644 -0
  32. data/ext/nokogiri/include/libxml2/libxml/pattern.h +100 -0
  33. data/ext/nokogiri/include/libxml2/libxml/relaxng.h +217 -0
  34. data/ext/nokogiri/include/libxml2/libxml/schemasInternals.h +958 -0
  35. data/ext/nokogiri/include/libxml2/libxml/schematron.h +142 -0
  36. data/ext/nokogiri/include/libxml2/libxml/threads.h +89 -0
  37. data/ext/nokogiri/include/libxml2/libxml/tree.h +1311 -0
  38. data/ext/nokogiri/include/libxml2/libxml/uri.h +94 -0
  39. data/ext/nokogiri/include/libxml2/libxml/valid.h +458 -0
  40. data/ext/nokogiri/include/libxml2/libxml/xinclude.h +129 -0
  41. data/ext/nokogiri/include/libxml2/libxml/xlink.h +189 -0
  42. data/ext/nokogiri/include/libxml2/libxml/xmlIO.h +366 -0
  43. data/ext/nokogiri/include/libxml2/libxml/xmlautomata.h +146 -0
  44. data/ext/nokogiri/include/libxml2/libxml/xmlerror.h +945 -0
  45. data/ext/nokogiri/include/libxml2/libxml/xmlexports.h +153 -0
  46. data/ext/nokogiri/include/libxml2/libxml/xmlmemory.h +224 -0
  47. data/ext/nokogiri/include/libxml2/libxml/xmlmodule.h +57 -0
  48. data/ext/nokogiri/include/libxml2/libxml/xmlreader.h +428 -0
  49. data/ext/nokogiri/include/libxml2/libxml/xmlregexp.h +222 -0
  50. data/ext/nokogiri/include/libxml2/libxml/xmlsave.h +88 -0
  51. data/ext/nokogiri/include/libxml2/libxml/xmlschemas.h +246 -0
  52. data/ext/nokogiri/include/libxml2/libxml/xmlschemastypes.h +151 -0
  53. data/ext/nokogiri/include/libxml2/libxml/xmlstring.h +140 -0
  54. data/ext/nokogiri/include/libxml2/libxml/xmlunicode.h +202 -0
  55. data/ext/nokogiri/include/libxml2/libxml/xmlversion.h +485 -0
  56. data/ext/nokogiri/include/libxml2/libxml/xmlwriter.h +488 -0
  57. data/ext/nokogiri/include/libxml2/libxml/xpath.h +566 -0
  58. data/ext/nokogiri/include/libxml2/libxml/xpathInternals.h +632 -0
  59. data/ext/nokogiri/include/libxml2/libxml/xpointer.h +114 -0
  60. data/ext/nokogiri/include/libxslt/attributes.h +38 -0
  61. data/ext/nokogiri/include/libxslt/documents.h +93 -0
  62. data/ext/nokogiri/include/libxslt/extensions.h +262 -0
  63. data/ext/nokogiri/include/libxslt/extra.h +72 -0
  64. data/ext/nokogiri/include/libxslt/functions.h +78 -0
  65. data/ext/nokogiri/include/libxslt/imports.h +75 -0
  66. data/ext/nokogiri/include/libxslt/keys.h +53 -0
  67. data/ext/nokogiri/include/libxslt/namespaces.h +68 -0
  68. data/ext/nokogiri/include/libxslt/numbersInternals.h +73 -0
  69. data/ext/nokogiri/include/libxslt/pattern.h +84 -0
  70. data/ext/nokogiri/include/libxslt/preproc.h +43 -0
  71. data/ext/nokogiri/include/libxslt/security.h +104 -0
  72. data/ext/nokogiri/include/libxslt/templates.h +77 -0
  73. data/ext/nokogiri/include/libxslt/transform.h +207 -0
  74. data/ext/nokogiri/include/libxslt/variables.h +118 -0
  75. data/ext/nokogiri/include/libxslt/xslt.h +110 -0
  76. data/ext/nokogiri/include/libxslt/xsltInternals.h +1978 -0
  77. data/ext/nokogiri/include/libxslt/xsltconfig.h +180 -0
  78. data/ext/nokogiri/include/libxslt/xsltexports.h +142 -0
  79. data/ext/nokogiri/include/libxslt/xsltlocale.h +76 -0
  80. data/ext/nokogiri/include/libxslt/xsltutils.h +313 -0
  81. data/ext/nokogiri/nokogiri.c +37 -46
  82. data/ext/nokogiri/nokogiri.h +25 -17
  83. data/ext/nokogiri/test_global_handlers.c +41 -0
  84. data/ext/nokogiri/xml_document.c +8 -3
  85. data/ext/nokogiri/xml_io.c +8 -6
  86. data/ext/nokogiri/xml_node.c +1 -1
  87. data/ext/nokogiri/xml_node_set.c +1 -1
  88. data/ext/nokogiri/xml_reader.c +6 -17
  89. data/ext/nokogiri/xml_relax_ng.c +29 -11
  90. data/ext/nokogiri/xml_sax_parser.c +2 -7
  91. data/ext/nokogiri/xml_sax_parser_context.c +4 -2
  92. data/ext/nokogiri/xml_sax_push_parser.c +2 -0
  93. data/ext/nokogiri/xml_schema.c +84 -13
  94. data/ext/nokogiri/xml_syntax_error.c +23 -0
  95. data/ext/nokogiri/xml_syntax_error.h +15 -3
  96. data/ext/nokogiri/xml_xpath_context.c +80 -4
  97. data/ext/nokogiri/xslt_stylesheet.c +1 -4
  98. data/lib/nokogiri.rb +20 -3
  99. data/lib/nokogiri/2.5/nokogiri.so +0 -0
  100. data/lib/nokogiri/2.6/nokogiri.so +0 -0
  101. data/lib/nokogiri/2.7/nokogiri.so +0 -0
  102. data/lib/nokogiri/3.0/nokogiri.so +0 -0
  103. data/lib/nokogiri/css/parser.rb +62 -62
  104. data/lib/nokogiri/css/parser.y +2 -2
  105. data/lib/nokogiri/css/parser_extras.rb +38 -36
  106. data/lib/nokogiri/css/xpath_visitor.rb +70 -42
  107. data/lib/nokogiri/html/document.rb +12 -26
  108. data/lib/nokogiri/version.rb +2 -148
  109. data/lib/nokogiri/version/constant.rb +5 -0
  110. data/lib/nokogiri/version/info.rb +182 -0
  111. data/lib/nokogiri/xml/builder.rb +2 -2
  112. data/lib/nokogiri/xml/document.rb +17 -7
  113. data/lib/nokogiri/xml/document_fragment.rb +4 -6
  114. data/lib/nokogiri/xml/node.rb +562 -238
  115. data/lib/nokogiri/xml/parse_options.rb +6 -0
  116. data/lib/nokogiri/xml/relax_ng.rb +6 -2
  117. data/lib/nokogiri/xml/schema.rb +12 -4
  118. data/lib/nokogiri/xml/searchable.rb +24 -16
  119. metadata +149 -130
  120. data/lib/nokogiri/2.4/nokogiri.so +0 -0
@@ -0,0 +1,126 @@
1
+ /*
2
+ * Summary: Provide Canonical XML and Exclusive XML Canonicalization
3
+ * Description: the c14n modules provides a
4
+ *
5
+ * "Canonical XML" implementation
6
+ * http://www.w3.org/TR/xml-c14n
7
+ *
8
+ * and an
9
+ *
10
+ * "Exclusive XML Canonicalization" implementation
11
+ * http://www.w3.org/TR/xml-exc-c14n
12
+
13
+ * Copy: See Copyright for the status of this software.
14
+ *
15
+ * Author: Aleksey Sanin <aleksey@aleksey.com>
16
+ */
17
+ #ifndef __XML_C14N_H__
18
+ #define __XML_C14N_H__
19
+ #ifdef LIBXML_C14N_ENABLED
20
+ #ifdef LIBXML_OUTPUT_ENABLED
21
+
22
+ #ifdef __cplusplus
23
+ extern "C" {
24
+ #endif /* __cplusplus */
25
+
26
+ #include <libxml/xmlversion.h>
27
+ #include <libxml/tree.h>
28
+ #include <libxml/xpath.h>
29
+
30
+ /*
31
+ * XML Canonicalization
32
+ * http://www.w3.org/TR/xml-c14n
33
+ *
34
+ * Exclusive XML Canonicalization
35
+ * http://www.w3.org/TR/xml-exc-c14n
36
+ *
37
+ * Canonical form of an XML document could be created if and only if
38
+ * a) default attributes (if any) are added to all nodes
39
+ * b) all character and parsed entity references are resolved
40
+ * In order to achieve this in libxml2 the document MUST be loaded with
41
+ * following global settings:
42
+ *
43
+ * xmlLoadExtDtdDefaultValue = XML_DETECT_IDS | XML_COMPLETE_ATTRS;
44
+ * xmlSubstituteEntitiesDefault(1);
45
+ *
46
+ * or corresponding parser context setting:
47
+ * xmlParserCtxtPtr ctxt;
48
+ *
49
+ * ...
50
+ * ctxt->loadsubset = XML_DETECT_IDS | XML_COMPLETE_ATTRS;
51
+ * ctxt->replaceEntities = 1;
52
+ * ...
53
+ */
54
+
55
+ /*
56
+ * xmlC14NMode:
57
+ *
58
+ * Predefined values for C14N modes
59
+ *
60
+ */
61
+ typedef enum {
62
+ XML_C14N_1_0 = 0, /* Original C14N 1.0 spec */
63
+ XML_C14N_EXCLUSIVE_1_0 = 1, /* Exclusive C14N 1.0 spec */
64
+ XML_C14N_1_1 = 2 /* C14N 1.1 spec */
65
+ } xmlC14NMode;
66
+
67
+ XMLPUBFUN int XMLCALL
68
+ xmlC14NDocSaveTo (xmlDocPtr doc,
69
+ xmlNodeSetPtr nodes,
70
+ int mode, /* a xmlC14NMode */
71
+ xmlChar **inclusive_ns_prefixes,
72
+ int with_comments,
73
+ xmlOutputBufferPtr buf);
74
+
75
+ XMLPUBFUN int XMLCALL
76
+ xmlC14NDocDumpMemory (xmlDocPtr doc,
77
+ xmlNodeSetPtr nodes,
78
+ int mode, /* a xmlC14NMode */
79
+ xmlChar **inclusive_ns_prefixes,
80
+ int with_comments,
81
+ xmlChar **doc_txt_ptr);
82
+
83
+ XMLPUBFUN int XMLCALL
84
+ xmlC14NDocSave (xmlDocPtr doc,
85
+ xmlNodeSetPtr nodes,
86
+ int mode, /* a xmlC14NMode */
87
+ xmlChar **inclusive_ns_prefixes,
88
+ int with_comments,
89
+ const char* filename,
90
+ int compression);
91
+
92
+
93
+ /**
94
+ * This is the core C14N function
95
+ */
96
+ /**
97
+ * xmlC14NIsVisibleCallback:
98
+ * @user_data: user data
99
+ * @node: the current node
100
+ * @parent: the parent node
101
+ *
102
+ * Signature for a C14N callback on visible nodes
103
+ *
104
+ * Returns 1 if the node should be included
105
+ */
106
+ typedef int (*xmlC14NIsVisibleCallback) (void* user_data,
107
+ xmlNodePtr node,
108
+ xmlNodePtr parent);
109
+
110
+ XMLPUBFUN int XMLCALL
111
+ xmlC14NExecute (xmlDocPtr doc,
112
+ xmlC14NIsVisibleCallback is_visible_callback,
113
+ void* user_data,
114
+ int mode, /* a xmlC14NMode */
115
+ xmlChar **inclusive_ns_prefixes,
116
+ int with_comments,
117
+ xmlOutputBufferPtr buf);
118
+
119
+ #ifdef __cplusplus
120
+ }
121
+ #endif /* __cplusplus */
122
+
123
+ #endif /* LIBXML_OUTPUT_ENABLED */
124
+ #endif /* LIBXML_C14N_ENABLED */
125
+ #endif /* __XML_C14N_H__ */
126
+
@@ -0,0 +1,182 @@
1
+ /**
2
+ * Summary: interfaces to the Catalog handling system
3
+ * Description: the catalog module implements the support for
4
+ * XML Catalogs and SGML catalogs
5
+ *
6
+ * SGML Open Technical Resolution TR9401:1997.
7
+ * http://www.jclark.com/sp/catalog.htm
8
+ *
9
+ * XML Catalogs Working Draft 06 August 2001
10
+ * http://www.oasis-open.org/committees/entity/spec-2001-08-06.html
11
+ *
12
+ * Copy: See Copyright for the status of this software.
13
+ *
14
+ * Author: Daniel Veillard
15
+ */
16
+
17
+ #ifndef __XML_CATALOG_H__
18
+ #define __XML_CATALOG_H__
19
+
20
+ #include <stdio.h>
21
+
22
+ #include <libxml/xmlversion.h>
23
+ #include <libxml/xmlstring.h>
24
+ #include <libxml/tree.h>
25
+
26
+ #ifdef LIBXML_CATALOG_ENABLED
27
+
28
+ #ifdef __cplusplus
29
+ extern "C" {
30
+ #endif
31
+
32
+ /**
33
+ * XML_CATALOGS_NAMESPACE:
34
+ *
35
+ * The namespace for the XML Catalogs elements.
36
+ */
37
+ #define XML_CATALOGS_NAMESPACE \
38
+ (const xmlChar *) "urn:oasis:names:tc:entity:xmlns:xml:catalog"
39
+ /**
40
+ * XML_CATALOG_PI:
41
+ *
42
+ * The specific XML Catalog Processing Instruction name.
43
+ */
44
+ #define XML_CATALOG_PI \
45
+ (const xmlChar *) "oasis-xml-catalog"
46
+
47
+ /*
48
+ * The API is voluntarily limited to general cataloging.
49
+ */
50
+ typedef enum {
51
+ XML_CATA_PREFER_NONE = 0,
52
+ XML_CATA_PREFER_PUBLIC = 1,
53
+ XML_CATA_PREFER_SYSTEM
54
+ } xmlCatalogPrefer;
55
+
56
+ typedef enum {
57
+ XML_CATA_ALLOW_NONE = 0,
58
+ XML_CATA_ALLOW_GLOBAL = 1,
59
+ XML_CATA_ALLOW_DOCUMENT = 2,
60
+ XML_CATA_ALLOW_ALL = 3
61
+ } xmlCatalogAllow;
62
+
63
+ typedef struct _xmlCatalog xmlCatalog;
64
+ typedef xmlCatalog *xmlCatalogPtr;
65
+
66
+ /*
67
+ * Operations on a given catalog.
68
+ */
69
+ XMLPUBFUN xmlCatalogPtr XMLCALL
70
+ xmlNewCatalog (int sgml);
71
+ XMLPUBFUN xmlCatalogPtr XMLCALL
72
+ xmlLoadACatalog (const char *filename);
73
+ XMLPUBFUN xmlCatalogPtr XMLCALL
74
+ xmlLoadSGMLSuperCatalog (const char *filename);
75
+ XMLPUBFUN int XMLCALL
76
+ xmlConvertSGMLCatalog (xmlCatalogPtr catal);
77
+ XMLPUBFUN int XMLCALL
78
+ xmlACatalogAdd (xmlCatalogPtr catal,
79
+ const xmlChar *type,
80
+ const xmlChar *orig,
81
+ const xmlChar *replace);
82
+ XMLPUBFUN int XMLCALL
83
+ xmlACatalogRemove (xmlCatalogPtr catal,
84
+ const xmlChar *value);
85
+ XMLPUBFUN xmlChar * XMLCALL
86
+ xmlACatalogResolve (xmlCatalogPtr catal,
87
+ const xmlChar *pubID,
88
+ const xmlChar *sysID);
89
+ XMLPUBFUN xmlChar * XMLCALL
90
+ xmlACatalogResolveSystem(xmlCatalogPtr catal,
91
+ const xmlChar *sysID);
92
+ XMLPUBFUN xmlChar * XMLCALL
93
+ xmlACatalogResolvePublic(xmlCatalogPtr catal,
94
+ const xmlChar *pubID);
95
+ XMLPUBFUN xmlChar * XMLCALL
96
+ xmlACatalogResolveURI (xmlCatalogPtr catal,
97
+ const xmlChar *URI);
98
+ #ifdef LIBXML_OUTPUT_ENABLED
99
+ XMLPUBFUN void XMLCALL
100
+ xmlACatalogDump (xmlCatalogPtr catal,
101
+ FILE *out);
102
+ #endif /* LIBXML_OUTPUT_ENABLED */
103
+ XMLPUBFUN void XMLCALL
104
+ xmlFreeCatalog (xmlCatalogPtr catal);
105
+ XMLPUBFUN int XMLCALL
106
+ xmlCatalogIsEmpty (xmlCatalogPtr catal);
107
+
108
+ /*
109
+ * Global operations.
110
+ */
111
+ XMLPUBFUN void XMLCALL
112
+ xmlInitializeCatalog (void);
113
+ XMLPUBFUN int XMLCALL
114
+ xmlLoadCatalog (const char *filename);
115
+ XMLPUBFUN void XMLCALL
116
+ xmlLoadCatalogs (const char *paths);
117
+ XMLPUBFUN void XMLCALL
118
+ xmlCatalogCleanup (void);
119
+ #ifdef LIBXML_OUTPUT_ENABLED
120
+ XMLPUBFUN void XMLCALL
121
+ xmlCatalogDump (FILE *out);
122
+ #endif /* LIBXML_OUTPUT_ENABLED */
123
+ XMLPUBFUN xmlChar * XMLCALL
124
+ xmlCatalogResolve (const xmlChar *pubID,
125
+ const xmlChar *sysID);
126
+ XMLPUBFUN xmlChar * XMLCALL
127
+ xmlCatalogResolveSystem (const xmlChar *sysID);
128
+ XMLPUBFUN xmlChar * XMLCALL
129
+ xmlCatalogResolvePublic (const xmlChar *pubID);
130
+ XMLPUBFUN xmlChar * XMLCALL
131
+ xmlCatalogResolveURI (const xmlChar *URI);
132
+ XMLPUBFUN int XMLCALL
133
+ xmlCatalogAdd (const xmlChar *type,
134
+ const xmlChar *orig,
135
+ const xmlChar *replace);
136
+ XMLPUBFUN int XMLCALL
137
+ xmlCatalogRemove (const xmlChar *value);
138
+ XMLPUBFUN xmlDocPtr XMLCALL
139
+ xmlParseCatalogFile (const char *filename);
140
+ XMLPUBFUN int XMLCALL
141
+ xmlCatalogConvert (void);
142
+
143
+ /*
144
+ * Strictly minimal interfaces for per-document catalogs used
145
+ * by the parser.
146
+ */
147
+ XMLPUBFUN void XMLCALL
148
+ xmlCatalogFreeLocal (void *catalogs);
149
+ XMLPUBFUN void * XMLCALL
150
+ xmlCatalogAddLocal (void *catalogs,
151
+ const xmlChar *URL);
152
+ XMLPUBFUN xmlChar * XMLCALL
153
+ xmlCatalogLocalResolve (void *catalogs,
154
+ const xmlChar *pubID,
155
+ const xmlChar *sysID);
156
+ XMLPUBFUN xmlChar * XMLCALL
157
+ xmlCatalogLocalResolveURI(void *catalogs,
158
+ const xmlChar *URI);
159
+ /*
160
+ * Preference settings.
161
+ */
162
+ XMLPUBFUN int XMLCALL
163
+ xmlCatalogSetDebug (int level);
164
+ XMLPUBFUN xmlCatalogPrefer XMLCALL
165
+ xmlCatalogSetDefaultPrefer(xmlCatalogPrefer prefer);
166
+ XMLPUBFUN void XMLCALL
167
+ xmlCatalogSetDefaults (xmlCatalogAllow allow);
168
+ XMLPUBFUN xmlCatalogAllow XMLCALL
169
+ xmlCatalogGetDefaults (void);
170
+
171
+
172
+ /* DEPRECATED interfaces */
173
+ XMLPUBFUN const xmlChar * XMLCALL
174
+ xmlCatalogGetSystem (const xmlChar *sysID);
175
+ XMLPUBFUN const xmlChar * XMLCALL
176
+ xmlCatalogGetPublic (const xmlChar *pubID);
177
+
178
+ #ifdef __cplusplus
179
+ }
180
+ #endif
181
+ #endif /* LIBXML_CATALOG_ENABLED */
182
+ #endif /* __XML_CATALOG_H__ */
@@ -0,0 +1,230 @@
1
+ /*
2
+ * Summary: Unicode character range checking
3
+ * Description: this module exports interfaces for the character
4
+ * range validation APIs
5
+ *
6
+ * This file is automatically generated from the cvs source
7
+ * definition files using the genChRanges.py Python script
8
+ *
9
+ * Generation date: Mon Mar 27 11:09:48 2006
10
+ * Sources: chvalid.def
11
+ * Author: William Brack <wbrack@mmm.com.hk>
12
+ */
13
+
14
+ #ifndef __XML_CHVALID_H__
15
+ #define __XML_CHVALID_H__
16
+
17
+ #include <libxml/xmlversion.h>
18
+ #include <libxml/xmlstring.h>
19
+
20
+ #ifdef __cplusplus
21
+ extern "C" {
22
+ #endif
23
+
24
+ /*
25
+ * Define our typedefs and structures
26
+ *
27
+ */
28
+ typedef struct _xmlChSRange xmlChSRange;
29
+ typedef xmlChSRange *xmlChSRangePtr;
30
+ struct _xmlChSRange {
31
+ unsigned short low;
32
+ unsigned short high;
33
+ };
34
+
35
+ typedef struct _xmlChLRange xmlChLRange;
36
+ typedef xmlChLRange *xmlChLRangePtr;
37
+ struct _xmlChLRange {
38
+ unsigned int low;
39
+ unsigned int high;
40
+ };
41
+
42
+ typedef struct _xmlChRangeGroup xmlChRangeGroup;
43
+ typedef xmlChRangeGroup *xmlChRangeGroupPtr;
44
+ struct _xmlChRangeGroup {
45
+ int nbShortRange;
46
+ int nbLongRange;
47
+ const xmlChSRange *shortRange; /* points to an array of ranges */
48
+ const xmlChLRange *longRange;
49
+ };
50
+
51
+ /**
52
+ * Range checking routine
53
+ */
54
+ XMLPUBFUN int XMLCALL
55
+ xmlCharInRange(unsigned int val, const xmlChRangeGroup *group);
56
+
57
+
58
+ /**
59
+ * xmlIsBaseChar_ch:
60
+ * @c: char to validate
61
+ *
62
+ * Automatically generated by genChRanges.py
63
+ */
64
+ #define xmlIsBaseChar_ch(c) (((0x41 <= (c)) && ((c) <= 0x5a)) || \
65
+ ((0x61 <= (c)) && ((c) <= 0x7a)) || \
66
+ ((0xc0 <= (c)) && ((c) <= 0xd6)) || \
67
+ ((0xd8 <= (c)) && ((c) <= 0xf6)) || \
68
+ (0xf8 <= (c)))
69
+
70
+ /**
71
+ * xmlIsBaseCharQ:
72
+ * @c: char to validate
73
+ *
74
+ * Automatically generated by genChRanges.py
75
+ */
76
+ #define xmlIsBaseCharQ(c) (((c) < 0x100) ? \
77
+ xmlIsBaseChar_ch((c)) : \
78
+ xmlCharInRange((c), &xmlIsBaseCharGroup))
79
+
80
+ XMLPUBVAR const xmlChRangeGroup xmlIsBaseCharGroup;
81
+
82
+ /**
83
+ * xmlIsBlank_ch:
84
+ * @c: char to validate
85
+ *
86
+ * Automatically generated by genChRanges.py
87
+ */
88
+ #define xmlIsBlank_ch(c) (((c) == 0x20) || \
89
+ ((0x9 <= (c)) && ((c) <= 0xa)) || \
90
+ ((c) == 0xd))
91
+
92
+ /**
93
+ * xmlIsBlankQ:
94
+ * @c: char to validate
95
+ *
96
+ * Automatically generated by genChRanges.py
97
+ */
98
+ #define xmlIsBlankQ(c) (((c) < 0x100) ? \
99
+ xmlIsBlank_ch((c)) : 0)
100
+
101
+
102
+ /**
103
+ * xmlIsChar_ch:
104
+ * @c: char to validate
105
+ *
106
+ * Automatically generated by genChRanges.py
107
+ */
108
+ #define xmlIsChar_ch(c) (((0x9 <= (c)) && ((c) <= 0xa)) || \
109
+ ((c) == 0xd) || \
110
+ (0x20 <= (c)))
111
+
112
+ /**
113
+ * xmlIsCharQ:
114
+ * @c: char to validate
115
+ *
116
+ * Automatically generated by genChRanges.py
117
+ */
118
+ #define xmlIsCharQ(c) (((c) < 0x100) ? \
119
+ xmlIsChar_ch((c)) :\
120
+ (((0x100 <= (c)) && ((c) <= 0xd7ff)) || \
121
+ ((0xe000 <= (c)) && ((c) <= 0xfffd)) || \
122
+ ((0x10000 <= (c)) && ((c) <= 0x10ffff))))
123
+
124
+ XMLPUBVAR const xmlChRangeGroup xmlIsCharGroup;
125
+
126
+ /**
127
+ * xmlIsCombiningQ:
128
+ * @c: char to validate
129
+ *
130
+ * Automatically generated by genChRanges.py
131
+ */
132
+ #define xmlIsCombiningQ(c) (((c) < 0x100) ? \
133
+ 0 : \
134
+ xmlCharInRange((c), &xmlIsCombiningGroup))
135
+
136
+ XMLPUBVAR const xmlChRangeGroup xmlIsCombiningGroup;
137
+
138
+ /**
139
+ * xmlIsDigit_ch:
140
+ * @c: char to validate
141
+ *
142
+ * Automatically generated by genChRanges.py
143
+ */
144
+ #define xmlIsDigit_ch(c) (((0x30 <= (c)) && ((c) <= 0x39)))
145
+
146
+ /**
147
+ * xmlIsDigitQ:
148
+ * @c: char to validate
149
+ *
150
+ * Automatically generated by genChRanges.py
151
+ */
152
+ #define xmlIsDigitQ(c) (((c) < 0x100) ? \
153
+ xmlIsDigit_ch((c)) : \
154
+ xmlCharInRange((c), &xmlIsDigitGroup))
155
+
156
+ XMLPUBVAR const xmlChRangeGroup xmlIsDigitGroup;
157
+
158
+ /**
159
+ * xmlIsExtender_ch:
160
+ * @c: char to validate
161
+ *
162
+ * Automatically generated by genChRanges.py
163
+ */
164
+ #define xmlIsExtender_ch(c) (((c) == 0xb7))
165
+
166
+ /**
167
+ * xmlIsExtenderQ:
168
+ * @c: char to validate
169
+ *
170
+ * Automatically generated by genChRanges.py
171
+ */
172
+ #define xmlIsExtenderQ(c) (((c) < 0x100) ? \
173
+ xmlIsExtender_ch((c)) : \
174
+ xmlCharInRange((c), &xmlIsExtenderGroup))
175
+
176
+ XMLPUBVAR const xmlChRangeGroup xmlIsExtenderGroup;
177
+
178
+ /**
179
+ * xmlIsIdeographicQ:
180
+ * @c: char to validate
181
+ *
182
+ * Automatically generated by genChRanges.py
183
+ */
184
+ #define xmlIsIdeographicQ(c) (((c) < 0x100) ? \
185
+ 0 :\
186
+ (((0x4e00 <= (c)) && ((c) <= 0x9fa5)) || \
187
+ ((c) == 0x3007) || \
188
+ ((0x3021 <= (c)) && ((c) <= 0x3029))))
189
+
190
+ XMLPUBVAR const xmlChRangeGroup xmlIsIdeographicGroup;
191
+ XMLPUBVAR const unsigned char xmlIsPubidChar_tab[256];
192
+
193
+ /**
194
+ * xmlIsPubidChar_ch:
195
+ * @c: char to validate
196
+ *
197
+ * Automatically generated by genChRanges.py
198
+ */
199
+ #define xmlIsPubidChar_ch(c) (xmlIsPubidChar_tab[(c)])
200
+
201
+ /**
202
+ * xmlIsPubidCharQ:
203
+ * @c: char to validate
204
+ *
205
+ * Automatically generated by genChRanges.py
206
+ */
207
+ #define xmlIsPubidCharQ(c) (((c) < 0x100) ? \
208
+ xmlIsPubidChar_ch((c)) : 0)
209
+
210
+ XMLPUBFUN int XMLCALL
211
+ xmlIsBaseChar(unsigned int ch);
212
+ XMLPUBFUN int XMLCALL
213
+ xmlIsBlank(unsigned int ch);
214
+ XMLPUBFUN int XMLCALL
215
+ xmlIsChar(unsigned int ch);
216
+ XMLPUBFUN int XMLCALL
217
+ xmlIsCombining(unsigned int ch);
218
+ XMLPUBFUN int XMLCALL
219
+ xmlIsDigit(unsigned int ch);
220
+ XMLPUBFUN int XMLCALL
221
+ xmlIsExtender(unsigned int ch);
222
+ XMLPUBFUN int XMLCALL
223
+ xmlIsIdeographic(unsigned int ch);
224
+ XMLPUBFUN int XMLCALL
225
+ xmlIsPubidChar(unsigned int ch);
226
+
227
+ #ifdef __cplusplus
228
+ }
229
+ #endif
230
+ #endif /* __XML_CHVALID_H__ */