nokogiri 1.10.10 → 1.14.3-aarch64-linux

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 (251) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +44 -0
  3. data/LICENSE-DEPENDENCIES.md +1632 -1022
  4. data/LICENSE.md +1 -1
  5. data/README.md +185 -96
  6. data/bin/nokogiri +63 -50
  7. data/dependencies.yml +33 -66
  8. data/ext/nokogiri/depend +38 -358
  9. data/ext/nokogiri/extconf.rb +819 -421
  10. data/ext/nokogiri/gumbo.c +594 -0
  11. data/ext/nokogiri/html4_document.c +166 -0
  12. data/ext/nokogiri/html4_element_description.c +294 -0
  13. data/ext/nokogiri/html4_entity_lookup.c +37 -0
  14. data/ext/nokogiri/html4_sax_parser_context.c +114 -0
  15. data/ext/nokogiri/html4_sax_push_parser.c +95 -0
  16. data/ext/nokogiri/include/libexslt/exslt.h +108 -0
  17. data/ext/nokogiri/include/libexslt/exsltconfig.h +70 -0
  18. data/ext/nokogiri/include/libexslt/exsltexports.h +63 -0
  19. data/ext/nokogiri/include/libxml2/libxml/HTMLparser.h +306 -0
  20. data/ext/nokogiri/include/libxml2/libxml/HTMLtree.h +147 -0
  21. data/ext/nokogiri/include/libxml2/libxml/SAX.h +204 -0
  22. data/ext/nokogiri/include/libxml2/libxml/SAX2.h +172 -0
  23. data/ext/nokogiri/include/libxml2/libxml/c14n.h +128 -0
  24. data/ext/nokogiri/include/libxml2/libxml/catalog.h +182 -0
  25. data/ext/nokogiri/include/libxml2/libxml/chvalid.h +230 -0
  26. data/ext/nokogiri/include/libxml2/libxml/debugXML.h +217 -0
  27. data/ext/nokogiri/include/libxml2/libxml/dict.h +81 -0
  28. data/ext/nokogiri/include/libxml2/libxml/encoding.h +232 -0
  29. data/ext/nokogiri/include/libxml2/libxml/entities.h +153 -0
  30. data/ext/nokogiri/include/libxml2/libxml/globals.h +499 -0
  31. data/ext/nokogiri/include/libxml2/libxml/hash.h +236 -0
  32. data/ext/nokogiri/include/libxml2/libxml/list.h +137 -0
  33. data/ext/nokogiri/include/libxml2/libxml/nanoftp.h +186 -0
  34. data/ext/nokogiri/include/libxml2/libxml/nanohttp.h +81 -0
  35. data/ext/nokogiri/include/libxml2/libxml/parser.h +1244 -0
  36. data/ext/nokogiri/include/libxml2/libxml/parserInternals.h +656 -0
  37. data/ext/nokogiri/include/libxml2/libxml/pattern.h +100 -0
  38. data/ext/nokogiri/include/libxml2/libxml/relaxng.h +218 -0
  39. data/ext/nokogiri/include/libxml2/libxml/schemasInternals.h +958 -0
  40. data/ext/nokogiri/include/libxml2/libxml/schematron.h +142 -0
  41. data/ext/nokogiri/include/libxml2/libxml/threads.h +91 -0
  42. data/ext/nokogiri/include/libxml2/libxml/tree.h +1312 -0
  43. data/ext/nokogiri/include/libxml2/libxml/uri.h +94 -0
  44. data/ext/nokogiri/include/libxml2/libxml/valid.h +463 -0
  45. data/ext/nokogiri/include/libxml2/libxml/xinclude.h +129 -0
  46. data/ext/nokogiri/include/libxml2/libxml/xlink.h +189 -0
  47. data/ext/nokogiri/include/libxml2/libxml/xmlIO.h +368 -0
  48. data/ext/nokogiri/include/libxml2/libxml/xmlautomata.h +146 -0
  49. data/ext/nokogiri/include/libxml2/libxml/xmlerror.h +947 -0
  50. data/ext/nokogiri/include/libxml2/libxml/xmlexports.h +77 -0
  51. data/ext/nokogiri/include/libxml2/libxml/xmlmemory.h +226 -0
  52. data/ext/nokogiri/include/libxml2/libxml/xmlmodule.h +57 -0
  53. data/ext/nokogiri/include/libxml2/libxml/xmlreader.h +428 -0
  54. data/ext/nokogiri/include/libxml2/libxml/xmlregexp.h +222 -0
  55. data/ext/nokogiri/include/libxml2/libxml/xmlsave.h +88 -0
  56. data/ext/nokogiri/include/libxml2/libxml/xmlschemas.h +246 -0
  57. data/ext/nokogiri/include/libxml2/libxml/xmlschemastypes.h +152 -0
  58. data/ext/nokogiri/include/libxml2/libxml/xmlstring.h +140 -0
  59. data/ext/nokogiri/include/libxml2/libxml/xmlunicode.h +202 -0
  60. data/ext/nokogiri/include/libxml2/libxml/xmlversion.h +503 -0
  61. data/ext/nokogiri/include/libxml2/libxml/xmlwriter.h +488 -0
  62. data/ext/nokogiri/include/libxml2/libxml/xpath.h +575 -0
  63. data/ext/nokogiri/include/libxml2/libxml/xpathInternals.h +632 -0
  64. data/ext/nokogiri/include/libxml2/libxml/xpointer.h +137 -0
  65. data/ext/nokogiri/include/libxslt/attributes.h +38 -0
  66. data/ext/nokogiri/include/libxslt/documents.h +93 -0
  67. data/ext/nokogiri/include/libxslt/extensions.h +262 -0
  68. data/ext/nokogiri/include/libxslt/extra.h +72 -0
  69. data/ext/nokogiri/include/libxslt/functions.h +78 -0
  70. data/ext/nokogiri/include/libxslt/imports.h +75 -0
  71. data/ext/nokogiri/include/libxslt/keys.h +53 -0
  72. data/ext/nokogiri/include/libxslt/namespaces.h +68 -0
  73. data/ext/nokogiri/include/libxslt/numbersInternals.h +73 -0
  74. data/ext/nokogiri/include/libxslt/pattern.h +84 -0
  75. data/ext/nokogiri/include/libxslt/preproc.h +43 -0
  76. data/ext/nokogiri/include/libxslt/security.h +104 -0
  77. data/ext/nokogiri/include/libxslt/templates.h +77 -0
  78. data/ext/nokogiri/include/libxslt/transform.h +207 -0
  79. data/ext/nokogiri/include/libxslt/variables.h +118 -0
  80. data/ext/nokogiri/include/libxslt/xslt.h +110 -0
  81. data/ext/nokogiri/include/libxslt/xsltInternals.h +1982 -0
  82. data/ext/nokogiri/include/libxslt/xsltconfig.h +179 -0
  83. data/ext/nokogiri/include/libxslt/xsltexports.h +64 -0
  84. data/ext/nokogiri/include/libxslt/xsltlocale.h +76 -0
  85. data/ext/nokogiri/include/libxslt/xsltutils.h +310 -0
  86. data/ext/nokogiri/libxml2_backwards_compat.c +121 -0
  87. data/ext/nokogiri/nokogiri.c +228 -104
  88. data/ext/nokogiri/nokogiri.h +204 -90
  89. data/ext/nokogiri/test_global_handlers.c +40 -0
  90. data/ext/nokogiri/xml_attr.c +17 -17
  91. data/ext/nokogiri/xml_attribute_decl.c +22 -22
  92. data/ext/nokogiri/xml_cdata.c +15 -20
  93. data/ext/nokogiri/xml_comment.c +19 -26
  94. data/ext/nokogiri/xml_document.c +306 -225
  95. data/ext/nokogiri/xml_document_fragment.c +12 -16
  96. data/ext/nokogiri/xml_dtd.c +64 -58
  97. data/ext/nokogiri/xml_element_content.c +33 -28
  98. data/ext/nokogiri/xml_element_decl.c +26 -26
  99. data/ext/nokogiri/xml_encoding_handler.c +45 -20
  100. data/ext/nokogiri/xml_entity_decl.c +37 -35
  101. data/ext/nokogiri/xml_entity_reference.c +16 -18
  102. data/ext/nokogiri/xml_namespace.c +136 -61
  103. data/ext/nokogiri/xml_node.c +1344 -672
  104. data/ext/nokogiri/xml_node_set.c +178 -168
  105. data/ext/nokogiri/xml_processing_instruction.c +17 -19
  106. data/ext/nokogiri/xml_reader.c +316 -190
  107. data/ext/nokogiri/xml_relax_ng.c +52 -30
  108. data/ext/nokogiri/xml_sax_parser.c +130 -124
  109. data/ext/nokogiri/xml_sax_parser_context.c +110 -89
  110. data/ext/nokogiri/xml_sax_push_parser.c +36 -29
  111. data/ext/nokogiri/xml_schema.c +98 -50
  112. data/ext/nokogiri/xml_syntax_error.c +42 -21
  113. data/ext/nokogiri/xml_text.c +14 -18
  114. data/ext/nokogiri/xml_xpath_context.c +263 -148
  115. data/ext/nokogiri/xslt_stylesheet.c +271 -178
  116. data/gumbo-parser/CHANGES.md +63 -0
  117. data/gumbo-parser/Makefile +111 -0
  118. data/gumbo-parser/THANKS +27 -0
  119. data/lib/nokogiri/2.7/nokogiri.so +0 -0
  120. data/lib/nokogiri/3.0/nokogiri.so +0 -0
  121. data/lib/nokogiri/3.1/nokogiri.so +0 -0
  122. data/lib/nokogiri/3.2/nokogiri.so +0 -0
  123. data/lib/nokogiri/class_resolver.rb +67 -0
  124. data/lib/nokogiri/css/node.rb +10 -8
  125. data/lib/nokogiri/css/parser.rb +397 -377
  126. data/lib/nokogiri/css/parser.y +250 -245
  127. data/lib/nokogiri/css/parser_extras.rb +54 -49
  128. data/lib/nokogiri/css/syntax_error.rb +3 -1
  129. data/lib/nokogiri/css/tokenizer.rb +5 -3
  130. data/lib/nokogiri/css/tokenizer.rex +3 -2
  131. data/lib/nokogiri/css/xpath_visitor.rb +223 -94
  132. data/lib/nokogiri/css.rb +56 -17
  133. data/lib/nokogiri/decorators/slop.rb +9 -7
  134. data/lib/nokogiri/encoding_handler.rb +57 -0
  135. data/lib/nokogiri/extension.rb +32 -0
  136. data/lib/nokogiri/gumbo.rb +15 -0
  137. data/lib/nokogiri/html.rb +38 -27
  138. data/lib/nokogiri/{html → html4}/builder.rb +4 -2
  139. data/lib/nokogiri/html4/document.rb +214 -0
  140. data/lib/nokogiri/html4/document_fragment.rb +54 -0
  141. data/lib/nokogiri/{html → html4}/element_description.rb +3 -1
  142. data/lib/nokogiri/html4/element_description_defaults.rb +572 -0
  143. data/lib/nokogiri/html4/encoding_reader.rb +121 -0
  144. data/lib/nokogiri/{html → html4}/entity_lookup.rb +4 -2
  145. data/lib/nokogiri/{html → html4}/sax/parser.rb +17 -16
  146. data/lib/nokogiri/html4/sax/parser_context.rb +20 -0
  147. data/lib/nokogiri/{html → html4}/sax/push_parser.rb +12 -11
  148. data/lib/nokogiri/html4.rb +47 -0
  149. data/lib/nokogiri/html5/document.rb +168 -0
  150. data/lib/nokogiri/html5/document_fragment.rb +90 -0
  151. data/lib/nokogiri/html5/node.rb +98 -0
  152. data/lib/nokogiri/html5.rb +389 -0
  153. data/lib/nokogiri/jruby/dependencies.rb +3 -0
  154. data/lib/nokogiri/jruby/nokogiri_jars.rb +43 -0
  155. data/lib/nokogiri/syntax_error.rb +2 -0
  156. data/lib/nokogiri/version/constant.rb +6 -0
  157. data/lib/nokogiri/version/info.rb +223 -0
  158. data/lib/nokogiri/version.rb +3 -108
  159. data/lib/nokogiri/xml/attr.rb +55 -3
  160. data/lib/nokogiri/xml/attribute_decl.rb +3 -1
  161. data/lib/nokogiri/xml/builder.rb +75 -34
  162. data/lib/nokogiri/xml/cdata.rb +3 -1
  163. data/lib/nokogiri/xml/character_data.rb +2 -0
  164. data/lib/nokogiri/xml/document.rb +312 -126
  165. data/lib/nokogiri/xml/document_fragment.rb +93 -48
  166. data/lib/nokogiri/xml/dtd.rb +4 -2
  167. data/lib/nokogiri/xml/element_content.rb +2 -0
  168. data/lib/nokogiri/xml/element_decl.rb +3 -1
  169. data/lib/nokogiri/xml/entity_decl.rb +4 -2
  170. data/lib/nokogiri/xml/entity_reference.rb +2 -0
  171. data/lib/nokogiri/xml/namespace.rb +45 -0
  172. data/lib/nokogiri/xml/node/save_options.rb +15 -8
  173. data/lib/nokogiri/xml/node.rb +1067 -406
  174. data/lib/nokogiri/xml/node_set.rb +135 -59
  175. data/lib/nokogiri/xml/notation.rb +13 -0
  176. data/lib/nokogiri/xml/parse_options.rb +145 -52
  177. data/lib/nokogiri/xml/pp/character_data.rb +9 -6
  178. data/lib/nokogiri/xml/pp/node.rb +27 -26
  179. data/lib/nokogiri/xml/pp.rb +4 -2
  180. data/lib/nokogiri/xml/processing_instruction.rb +4 -1
  181. data/lib/nokogiri/xml/reader.rb +21 -28
  182. data/lib/nokogiri/xml/relax_ng.rb +8 -2
  183. data/lib/nokogiri/xml/sax/document.rb +45 -49
  184. data/lib/nokogiri/xml/sax/parser.rb +39 -36
  185. data/lib/nokogiri/xml/sax/parser_context.rb +8 -3
  186. data/lib/nokogiri/xml/sax/push_parser.rb +6 -5
  187. data/lib/nokogiri/xml/sax.rb +6 -4
  188. data/lib/nokogiri/xml/schema.rb +19 -9
  189. data/lib/nokogiri/xml/searchable.rb +112 -72
  190. data/lib/nokogiri/xml/syntax_error.rb +6 -4
  191. data/lib/nokogiri/xml/text.rb +2 -0
  192. data/lib/nokogiri/xml/xpath/syntax_error.rb +4 -2
  193. data/lib/nokogiri/xml/xpath.rb +15 -4
  194. data/lib/nokogiri/xml/xpath_context.rb +3 -3
  195. data/lib/nokogiri/xml.rb +38 -37
  196. data/lib/nokogiri/xslt/stylesheet.rb +3 -1
  197. data/lib/nokogiri/xslt.rb +29 -20
  198. data/lib/nokogiri.rb +48 -72
  199. data/lib/xsd/xmlparser/nokogiri.rb +29 -25
  200. metadata +146 -307
  201. data/ext/nokogiri/html_document.c +0 -170
  202. data/ext/nokogiri/html_document.h +0 -10
  203. data/ext/nokogiri/html_element_description.c +0 -279
  204. data/ext/nokogiri/html_element_description.h +0 -10
  205. data/ext/nokogiri/html_entity_lookup.c +0 -32
  206. data/ext/nokogiri/html_entity_lookup.h +0 -8
  207. data/ext/nokogiri/html_sax_parser_context.c +0 -116
  208. data/ext/nokogiri/html_sax_parser_context.h +0 -11
  209. data/ext/nokogiri/html_sax_push_parser.c +0 -87
  210. data/ext/nokogiri/html_sax_push_parser.h +0 -9
  211. data/ext/nokogiri/xml_attr.h +0 -9
  212. data/ext/nokogiri/xml_attribute_decl.h +0 -9
  213. data/ext/nokogiri/xml_cdata.h +0 -9
  214. data/ext/nokogiri/xml_comment.h +0 -9
  215. data/ext/nokogiri/xml_document.h +0 -23
  216. data/ext/nokogiri/xml_document_fragment.h +0 -10
  217. data/ext/nokogiri/xml_dtd.h +0 -10
  218. data/ext/nokogiri/xml_element_content.h +0 -10
  219. data/ext/nokogiri/xml_element_decl.h +0 -9
  220. data/ext/nokogiri/xml_encoding_handler.h +0 -8
  221. data/ext/nokogiri/xml_entity_decl.h +0 -10
  222. data/ext/nokogiri/xml_entity_reference.h +0 -9
  223. data/ext/nokogiri/xml_io.c +0 -61
  224. data/ext/nokogiri/xml_io.h +0 -11
  225. data/ext/nokogiri/xml_libxml2_hacks.c +0 -112
  226. data/ext/nokogiri/xml_libxml2_hacks.h +0 -12
  227. data/ext/nokogiri/xml_namespace.h +0 -14
  228. data/ext/nokogiri/xml_node.h +0 -13
  229. data/ext/nokogiri/xml_node_set.h +0 -12
  230. data/ext/nokogiri/xml_processing_instruction.h +0 -9
  231. data/ext/nokogiri/xml_reader.h +0 -10
  232. data/ext/nokogiri/xml_relax_ng.h +0 -9
  233. data/ext/nokogiri/xml_sax_parser.h +0 -39
  234. data/ext/nokogiri/xml_sax_parser_context.h +0 -10
  235. data/ext/nokogiri/xml_sax_push_parser.h +0 -9
  236. data/ext/nokogiri/xml_schema.h +0 -9
  237. data/ext/nokogiri/xml_syntax_error.h +0 -13
  238. data/ext/nokogiri/xml_text.h +0 -9
  239. data/ext/nokogiri/xml_xpath_context.h +0 -10
  240. data/ext/nokogiri/xslt_stylesheet.h +0 -14
  241. data/lib/nokogiri/html/document.rb +0 -335
  242. data/lib/nokogiri/html/document_fragment.rb +0 -49
  243. data/lib/nokogiri/html/element_description_defaults.rb +0 -671
  244. data/lib/nokogiri/html/sax/parser_context.rb +0 -16
  245. data/patches/libxml2/0001-Revert-Do-not-URI-escape-in-server-side-includes.patch +0 -78
  246. data/patches/libxml2/0002-Remove-script-macro-support.patch +0 -40
  247. data/patches/libxml2/0003-Update-entities-to-remove-handling-of-ssi.patch +0 -44
  248. data/patches/libxml2/0004-libxml2.la-is-in-top_builddir.patch +0 -25
  249. data/patches/libxml2/0005-Fix-infinite-loop-in-xmlStringLenDecodeEntities.patch +0 -32
  250. data/ports/archives/libxml2-2.9.10.tar.gz +0 -0
  251. data/ports/archives/libxslt-1.1.34.tar.gz +0 -0
@@ -0,0 +1,137 @@
1
+ /*
2
+ * Summary: API to handle XML Pointers
3
+ * Description: API to handle XML Pointers
4
+ * Base implementation was made accordingly to
5
+ * W3C Candidate Recommendation 7 June 2000
6
+ * http://www.w3.org/TR/2000/CR-xptr-20000607
7
+ *
8
+ * Added support for the element() scheme described in:
9
+ * W3C Proposed Recommendation 13 November 2002
10
+ * http://www.w3.org/TR/2002/PR-xptr-element-20021113/
11
+ *
12
+ * Copy: See Copyright for the status of this software.
13
+ *
14
+ * Author: Daniel Veillard
15
+ */
16
+
17
+ #ifndef __XML_XPTR_H__
18
+ #define __XML_XPTR_H__
19
+
20
+ #include <libxml/xmlversion.h>
21
+
22
+ #ifdef LIBXML_XPTR_ENABLED
23
+
24
+ #include <libxml/tree.h>
25
+ #include <libxml/xpath.h>
26
+
27
+ #ifdef __cplusplus
28
+ extern "C" {
29
+ #endif
30
+
31
+ #ifdef LIBXML_XPTR_LOCS_ENABLED
32
+ /*
33
+ * A Location Set
34
+ */
35
+ typedef struct _xmlLocationSet xmlLocationSet;
36
+ typedef xmlLocationSet *xmlLocationSetPtr;
37
+ struct _xmlLocationSet {
38
+ int locNr; /* number of locations in the set */
39
+ int locMax; /* size of the array as allocated */
40
+ xmlXPathObjectPtr *locTab;/* array of locations */
41
+ };
42
+
43
+ /*
44
+ * Handling of location sets.
45
+ */
46
+
47
+ XML_DEPRECATED
48
+ XMLPUBFUN xmlLocationSetPtr XMLCALL
49
+ xmlXPtrLocationSetCreate (xmlXPathObjectPtr val);
50
+ XML_DEPRECATED
51
+ XMLPUBFUN void XMLCALL
52
+ xmlXPtrFreeLocationSet (xmlLocationSetPtr obj);
53
+ XML_DEPRECATED
54
+ XMLPUBFUN xmlLocationSetPtr XMLCALL
55
+ xmlXPtrLocationSetMerge (xmlLocationSetPtr val1,
56
+ xmlLocationSetPtr val2);
57
+ XML_DEPRECATED
58
+ XMLPUBFUN xmlXPathObjectPtr XMLCALL
59
+ xmlXPtrNewRange (xmlNodePtr start,
60
+ int startindex,
61
+ xmlNodePtr end,
62
+ int endindex);
63
+ XML_DEPRECATED
64
+ XMLPUBFUN xmlXPathObjectPtr XMLCALL
65
+ xmlXPtrNewRangePoints (xmlXPathObjectPtr start,
66
+ xmlXPathObjectPtr end);
67
+ XML_DEPRECATED
68
+ XMLPUBFUN xmlXPathObjectPtr XMLCALL
69
+ xmlXPtrNewRangeNodePoint (xmlNodePtr start,
70
+ xmlXPathObjectPtr end);
71
+ XML_DEPRECATED
72
+ XMLPUBFUN xmlXPathObjectPtr XMLCALL
73
+ xmlXPtrNewRangePointNode (xmlXPathObjectPtr start,
74
+ xmlNodePtr end);
75
+ XML_DEPRECATED
76
+ XMLPUBFUN xmlXPathObjectPtr XMLCALL
77
+ xmlXPtrNewRangeNodes (xmlNodePtr start,
78
+ xmlNodePtr end);
79
+ XML_DEPRECATED
80
+ XMLPUBFUN xmlXPathObjectPtr XMLCALL
81
+ xmlXPtrNewLocationSetNodes (xmlNodePtr start,
82
+ xmlNodePtr end);
83
+ XML_DEPRECATED
84
+ XMLPUBFUN xmlXPathObjectPtr XMLCALL
85
+ xmlXPtrNewLocationSetNodeSet(xmlNodeSetPtr set);
86
+ XML_DEPRECATED
87
+ XMLPUBFUN xmlXPathObjectPtr XMLCALL
88
+ xmlXPtrNewRangeNodeObject (xmlNodePtr start,
89
+ xmlXPathObjectPtr end);
90
+ XML_DEPRECATED
91
+ XMLPUBFUN xmlXPathObjectPtr XMLCALL
92
+ xmlXPtrNewCollapsedRange (xmlNodePtr start);
93
+ XML_DEPRECATED
94
+ XMLPUBFUN void XMLCALL
95
+ xmlXPtrLocationSetAdd (xmlLocationSetPtr cur,
96
+ xmlXPathObjectPtr val);
97
+ XML_DEPRECATED
98
+ XMLPUBFUN xmlXPathObjectPtr XMLCALL
99
+ xmlXPtrWrapLocationSet (xmlLocationSetPtr val);
100
+ XML_DEPRECATED
101
+ XMLPUBFUN void XMLCALL
102
+ xmlXPtrLocationSetDel (xmlLocationSetPtr cur,
103
+ xmlXPathObjectPtr val);
104
+ XML_DEPRECATED
105
+ XMLPUBFUN void XMLCALL
106
+ xmlXPtrLocationSetRemove (xmlLocationSetPtr cur,
107
+ int val);
108
+ #endif /* LIBXML_XPTR_LOCS_ENABLED */
109
+
110
+ /*
111
+ * Functions.
112
+ */
113
+ XMLPUBFUN xmlXPathContextPtr XMLCALL
114
+ xmlXPtrNewContext (xmlDocPtr doc,
115
+ xmlNodePtr here,
116
+ xmlNodePtr origin);
117
+ XMLPUBFUN xmlXPathObjectPtr XMLCALL
118
+ xmlXPtrEval (const xmlChar *str,
119
+ xmlXPathContextPtr ctx);
120
+ #ifdef LIBXML_XPTR_LOCS_ENABLED
121
+ XML_DEPRECATED
122
+ XMLPUBFUN void XMLCALL
123
+ xmlXPtrRangeToFunction (xmlXPathParserContextPtr ctxt,
124
+ int nargs);
125
+ XML_DEPRECATED
126
+ XMLPUBFUN xmlNodePtr XMLCALL
127
+ xmlXPtrBuildNodeList (xmlXPathObjectPtr obj);
128
+ XML_DEPRECATED
129
+ XMLPUBFUN void XMLCALL
130
+ xmlXPtrEvalRangePredicate (xmlXPathParserContextPtr ctxt);
131
+ #endif /* LIBXML_XPTR_LOCS_ENABLED */
132
+ #ifdef __cplusplus
133
+ }
134
+ #endif
135
+
136
+ #endif /* LIBXML_XPTR_ENABLED */
137
+ #endif /* __XML_XPTR_H__ */
@@ -0,0 +1,38 @@
1
+ /*
2
+ * Summary: interface for the XSLT attribute handling
3
+ * Description: this module handles the specificities of attribute
4
+ * and attribute groups processing.
5
+ *
6
+ * Copy: See Copyright for the status of this software.
7
+ *
8
+ * Author: Daniel Veillard
9
+ */
10
+
11
+ #ifndef __XML_XSLT_ATTRIBUTES_H__
12
+ #define __XML_XSLT_ATTRIBUTES_H__
13
+
14
+ #include <libxml/tree.h>
15
+ #include "xsltexports.h"
16
+
17
+ #ifdef __cplusplus
18
+ extern "C" {
19
+ #endif
20
+
21
+ XSLTPUBFUN void XSLTCALL
22
+ xsltParseStylesheetAttributeSet (xsltStylesheetPtr style,
23
+ xmlNodePtr cur);
24
+ XSLTPUBFUN void XSLTCALL
25
+ xsltFreeAttributeSetsHashes (xsltStylesheetPtr style);
26
+ XSLTPUBFUN void XSLTCALL
27
+ xsltApplyAttributeSet (xsltTransformContextPtr ctxt,
28
+ xmlNodePtr node,
29
+ xmlNodePtr inst,
30
+ const xmlChar *attributes);
31
+ XSLTPUBFUN void XSLTCALL
32
+ xsltResolveStylesheetAttributeSet(xsltStylesheetPtr style);
33
+ #ifdef __cplusplus
34
+ }
35
+ #endif
36
+
37
+ #endif /* __XML_XSLT_ATTRIBUTES_H__ */
38
+
@@ -0,0 +1,93 @@
1
+ /*
2
+ * Summary: interface for the document handling
3
+ * Description: implements document loading and cache (multiple
4
+ * document() reference for the same resources must
5
+ * be equal.
6
+ *
7
+ * Copy: See Copyright for the status of this software.
8
+ *
9
+ * Author: Daniel Veillard
10
+ */
11
+
12
+ #ifndef __XML_XSLT_DOCUMENTS_H__
13
+ #define __XML_XSLT_DOCUMENTS_H__
14
+
15
+ #include <libxml/tree.h>
16
+ #include "xsltexports.h"
17
+ #include "xsltInternals.h"
18
+
19
+ #ifdef __cplusplus
20
+ extern "C" {
21
+ #endif
22
+
23
+ XSLTPUBFUN xsltDocumentPtr XSLTCALL
24
+ xsltNewDocument (xsltTransformContextPtr ctxt,
25
+ xmlDocPtr doc);
26
+ XSLTPUBFUN xsltDocumentPtr XSLTCALL
27
+ xsltLoadDocument (xsltTransformContextPtr ctxt,
28
+ const xmlChar *URI);
29
+ XSLTPUBFUN xsltDocumentPtr XSLTCALL
30
+ xsltFindDocument (xsltTransformContextPtr ctxt,
31
+ xmlDocPtr doc);
32
+ XSLTPUBFUN void XSLTCALL
33
+ xsltFreeDocuments (xsltTransformContextPtr ctxt);
34
+
35
+ XSLTPUBFUN xsltDocumentPtr XSLTCALL
36
+ xsltLoadStyleDocument (xsltStylesheetPtr style,
37
+ const xmlChar *URI);
38
+ XSLTPUBFUN xsltDocumentPtr XSLTCALL
39
+ xsltNewStyleDocument (xsltStylesheetPtr style,
40
+ xmlDocPtr doc);
41
+ XSLTPUBFUN void XSLTCALL
42
+ xsltFreeStyleDocuments (xsltStylesheetPtr style);
43
+
44
+ /*
45
+ * Hooks for document loading
46
+ */
47
+
48
+ /**
49
+ * xsltLoadType:
50
+ *
51
+ * Enum defining the kind of loader requirement.
52
+ */
53
+ typedef enum {
54
+ XSLT_LOAD_START = 0, /* loading for a top stylesheet */
55
+ XSLT_LOAD_STYLESHEET = 1, /* loading for a stylesheet include/import */
56
+ XSLT_LOAD_DOCUMENT = 2 /* loading document at transformation time */
57
+ } xsltLoadType;
58
+
59
+ /**
60
+ * xsltDocLoaderFunc:
61
+ * @URI: the URI of the document to load
62
+ * @dict: the dictionary to use when parsing that document
63
+ * @options: parsing options, a set of xmlParserOption
64
+ * @ctxt: the context, either a stylesheet or a transformation context
65
+ * @type: the xsltLoadType indicating the kind of loading required
66
+ *
67
+ * An xsltDocLoaderFunc is a signature for a function which can be
68
+ * registered to load document not provided by the compilation or
69
+ * transformation API themselve, for example when an xsl:import,
70
+ * xsl:include is found at compilation time or when a document()
71
+ * call is made at runtime.
72
+ *
73
+ * Returns the pointer to the document (which will be modified and
74
+ * freed by the engine later), or NULL in case of error.
75
+ */
76
+ typedef xmlDocPtr (*xsltDocLoaderFunc) (const xmlChar *URI,
77
+ xmlDictPtr dict,
78
+ int options,
79
+ void *ctxt,
80
+ xsltLoadType type);
81
+
82
+ XSLTPUBFUN void XSLTCALL
83
+ xsltSetLoaderFunc (xsltDocLoaderFunc f);
84
+
85
+ /* the loader may be needed by extension libraries so it is exported */
86
+ XSLTPUBVAR xsltDocLoaderFunc xsltDocDefaultLoader;
87
+
88
+ #ifdef __cplusplus
89
+ }
90
+ #endif
91
+
92
+ #endif /* __XML_XSLT_DOCUMENTS_H__ */
93
+
@@ -0,0 +1,262 @@
1
+ /*
2
+ * Summary: interface for the extension support
3
+ * Description: This provide the API needed for simple and module
4
+ * extension support.
5
+ *
6
+ * Copy: See Copyright for the status of this software.
7
+ *
8
+ * Author: Daniel Veillard
9
+ */
10
+
11
+ #ifndef __XML_XSLT_EXTENSION_H__
12
+ #define __XML_XSLT_EXTENSION_H__
13
+
14
+ #include <libxml/xpath.h>
15
+ #include "xsltexports.h"
16
+ #include "xsltInternals.h"
17
+
18
+ #ifdef __cplusplus
19
+ extern "C" {
20
+ #endif
21
+
22
+ /**
23
+ * Extension Modules API.
24
+ */
25
+
26
+ /**
27
+ * xsltInitGlobals:
28
+ *
29
+ * Initialize the global variables for extensions
30
+ *
31
+ */
32
+
33
+ XSLTPUBFUN void XSLTCALL
34
+ xsltInitGlobals (void);
35
+
36
+ /**
37
+ * xsltStyleExtInitFunction:
38
+ * @ctxt: an XSLT stylesheet
39
+ * @URI: the namespace URI for the extension
40
+ *
41
+ * A function called at initialization time of an XSLT extension module.
42
+ *
43
+ * Returns a pointer to the module specific data for this transformation.
44
+ */
45
+ typedef void * (*xsltStyleExtInitFunction) (xsltStylesheetPtr style,
46
+ const xmlChar *URI);
47
+
48
+ /**
49
+ * xsltStyleExtShutdownFunction:
50
+ * @ctxt: an XSLT stylesheet
51
+ * @URI: the namespace URI for the extension
52
+ * @data: the data associated to this module
53
+ *
54
+ * A function called at shutdown time of an XSLT extension module.
55
+ */
56
+ typedef void (*xsltStyleExtShutdownFunction) (xsltStylesheetPtr style,
57
+ const xmlChar *URI,
58
+ void *data);
59
+
60
+ /**
61
+ * xsltExtInitFunction:
62
+ * @ctxt: an XSLT transformation context
63
+ * @URI: the namespace URI for the extension
64
+ *
65
+ * A function called at initialization time of an XSLT extension module.
66
+ *
67
+ * Returns a pointer to the module specific data for this transformation.
68
+ */
69
+ typedef void * (*xsltExtInitFunction) (xsltTransformContextPtr ctxt,
70
+ const xmlChar *URI);
71
+
72
+ /**
73
+ * xsltExtShutdownFunction:
74
+ * @ctxt: an XSLT transformation context
75
+ * @URI: the namespace URI for the extension
76
+ * @data: the data associated to this module
77
+ *
78
+ * A function called at shutdown time of an XSLT extension module.
79
+ */
80
+ typedef void (*xsltExtShutdownFunction) (xsltTransformContextPtr ctxt,
81
+ const xmlChar *URI,
82
+ void *data);
83
+
84
+ XSLTPUBFUN int XSLTCALL
85
+ xsltRegisterExtModule (const xmlChar *URI,
86
+ xsltExtInitFunction initFunc,
87
+ xsltExtShutdownFunction shutdownFunc);
88
+ XSLTPUBFUN int XSLTCALL
89
+ xsltRegisterExtModuleFull
90
+ (const xmlChar * URI,
91
+ xsltExtInitFunction initFunc,
92
+ xsltExtShutdownFunction shutdownFunc,
93
+ xsltStyleExtInitFunction styleInitFunc,
94
+ xsltStyleExtShutdownFunction styleShutdownFunc);
95
+
96
+ XSLTPUBFUN int XSLTCALL
97
+ xsltUnregisterExtModule (const xmlChar * URI);
98
+
99
+ XSLTPUBFUN void * XSLTCALL
100
+ xsltGetExtData (xsltTransformContextPtr ctxt,
101
+ const xmlChar *URI);
102
+
103
+ XSLTPUBFUN void * XSLTCALL
104
+ xsltStyleGetExtData (xsltStylesheetPtr style,
105
+ const xmlChar *URI);
106
+ #ifdef XSLT_REFACTORED
107
+ XSLTPUBFUN void * XSLTCALL
108
+ xsltStyleStylesheetLevelGetExtData(
109
+ xsltStylesheetPtr style,
110
+ const xmlChar * URI);
111
+ #endif
112
+ XSLTPUBFUN void XSLTCALL
113
+ xsltShutdownCtxtExts (xsltTransformContextPtr ctxt);
114
+
115
+ XSLTPUBFUN void XSLTCALL
116
+ xsltShutdownExts (xsltStylesheetPtr style);
117
+
118
+ XSLTPUBFUN xsltTransformContextPtr XSLTCALL
119
+ xsltXPathGetTransformContext
120
+ (xmlXPathParserContextPtr ctxt);
121
+
122
+ /*
123
+ * extension functions
124
+ */
125
+ XSLTPUBFUN int XSLTCALL
126
+ xsltRegisterExtModuleFunction
127
+ (const xmlChar *name,
128
+ const xmlChar *URI,
129
+ xmlXPathFunction function);
130
+ XSLTPUBFUN xmlXPathFunction XSLTCALL
131
+ xsltExtModuleFunctionLookup (const xmlChar *name,
132
+ const xmlChar *URI);
133
+ XSLTPUBFUN int XSLTCALL
134
+ xsltUnregisterExtModuleFunction
135
+ (const xmlChar *name,
136
+ const xmlChar *URI);
137
+
138
+ /*
139
+ * extension elements
140
+ */
141
+ typedef xsltElemPreCompPtr (*xsltPreComputeFunction)
142
+ (xsltStylesheetPtr style,
143
+ xmlNodePtr inst,
144
+ xsltTransformFunction function);
145
+
146
+ XSLTPUBFUN xsltElemPreCompPtr XSLTCALL
147
+ xsltNewElemPreComp (xsltStylesheetPtr style,
148
+ xmlNodePtr inst,
149
+ xsltTransformFunction function);
150
+ XSLTPUBFUN void XSLTCALL
151
+ xsltInitElemPreComp (xsltElemPreCompPtr comp,
152
+ xsltStylesheetPtr style,
153
+ xmlNodePtr inst,
154
+ xsltTransformFunction function,
155
+ xsltElemPreCompDeallocator freeFunc);
156
+
157
+ XSLTPUBFUN int XSLTCALL
158
+ xsltRegisterExtModuleElement
159
+ (const xmlChar *name,
160
+ const xmlChar *URI,
161
+ xsltPreComputeFunction precomp,
162
+ xsltTransformFunction transform);
163
+ XSLTPUBFUN xsltTransformFunction XSLTCALL
164
+ xsltExtElementLookup (xsltTransformContextPtr ctxt,
165
+ const xmlChar *name,
166
+ const xmlChar *URI);
167
+ XSLTPUBFUN xsltTransformFunction XSLTCALL
168
+ xsltExtModuleElementLookup
169
+ (const xmlChar *name,
170
+ const xmlChar *URI);
171
+ XSLTPUBFUN xsltPreComputeFunction XSLTCALL
172
+ xsltExtModuleElementPreComputeLookup
173
+ (const xmlChar *name,
174
+ const xmlChar *URI);
175
+ XSLTPUBFUN int XSLTCALL
176
+ xsltUnregisterExtModuleElement
177
+ (const xmlChar *name,
178
+ const xmlChar *URI);
179
+
180
+ /*
181
+ * top-level elements
182
+ */
183
+ typedef void (*xsltTopLevelFunction) (xsltStylesheetPtr style,
184
+ xmlNodePtr inst);
185
+
186
+ XSLTPUBFUN int XSLTCALL
187
+ xsltRegisterExtModuleTopLevel
188
+ (const xmlChar *name,
189
+ const xmlChar *URI,
190
+ xsltTopLevelFunction function);
191
+ XSLTPUBFUN xsltTopLevelFunction XSLTCALL
192
+ xsltExtModuleTopLevelLookup
193
+ (const xmlChar *name,
194
+ const xmlChar *URI);
195
+ XSLTPUBFUN int XSLTCALL
196
+ xsltUnregisterExtModuleTopLevel
197
+ (const xmlChar *name,
198
+ const xmlChar *URI);
199
+
200
+
201
+ /* These 2 functions are deprecated for use within modules. */
202
+ XSLTPUBFUN int XSLTCALL
203
+ xsltRegisterExtFunction (xsltTransformContextPtr ctxt,
204
+ const xmlChar *name,
205
+ const xmlChar *URI,
206
+ xmlXPathFunction function);
207
+ XSLTPUBFUN int XSLTCALL
208
+ xsltRegisterExtElement (xsltTransformContextPtr ctxt,
209
+ const xmlChar *name,
210
+ const xmlChar *URI,
211
+ xsltTransformFunction function);
212
+
213
+ /*
214
+ * Extension Prefix handling API.
215
+ * Those are used by the XSLT (pre)processor.
216
+ */
217
+
218
+ XSLTPUBFUN int XSLTCALL
219
+ xsltRegisterExtPrefix (xsltStylesheetPtr style,
220
+ const xmlChar *prefix,
221
+ const xmlChar *URI);
222
+ XSLTPUBFUN int XSLTCALL
223
+ xsltCheckExtPrefix (xsltStylesheetPtr style,
224
+ const xmlChar *URI);
225
+ XSLTPUBFUN int XSLTCALL
226
+ xsltCheckExtURI (xsltStylesheetPtr style,
227
+ const xmlChar *URI);
228
+ XSLTPUBFUN int XSLTCALL
229
+ xsltInitCtxtExts (xsltTransformContextPtr ctxt);
230
+ XSLTPUBFUN void XSLTCALL
231
+ xsltFreeCtxtExts (xsltTransformContextPtr ctxt);
232
+ XSLTPUBFUN void XSLTCALL
233
+ xsltFreeExts (xsltStylesheetPtr style);
234
+
235
+ XSLTPUBFUN xsltElemPreCompPtr XSLTCALL
236
+ xsltPreComputeExtModuleElement
237
+ (xsltStylesheetPtr style,
238
+ xmlNodePtr inst);
239
+ /*
240
+ * Extension Infos access.
241
+ * Used by exslt initialisation
242
+ */
243
+
244
+ XSLTPUBFUN xmlHashTablePtr XSLTCALL
245
+ xsltGetExtInfo (xsltStylesheetPtr style,
246
+ const xmlChar *URI);
247
+
248
+ /**
249
+ * Test of the extension module API
250
+ */
251
+ XSLTPUBFUN void XSLTCALL
252
+ xsltRegisterTestModule (void);
253
+ XSLTPUBFUN void XSLTCALL
254
+ xsltDebugDumpExtensions (FILE * output);
255
+
256
+
257
+ #ifdef __cplusplus
258
+ }
259
+ #endif
260
+
261
+ #endif /* __XML_XSLT_EXTENSION_H__ */
262
+
@@ -0,0 +1,72 @@
1
+ /*
2
+ * Summary: interface for the non-standard features
3
+ * Description: implement some extension outside the XSLT namespace
4
+ * but not EXSLT with is in a different library.
5
+ *
6
+ * Copy: See Copyright for the status of this software.
7
+ *
8
+ * Author: Daniel Veillard
9
+ */
10
+
11
+ #ifndef __XML_XSLT_EXTRA_H__
12
+ #define __XML_XSLT_EXTRA_H__
13
+
14
+ #include <libxml/xpath.h>
15
+ #include "xsltexports.h"
16
+ #include "xsltInternals.h"
17
+
18
+ #ifdef __cplusplus
19
+ extern "C" {
20
+ #endif
21
+
22
+ /**
23
+ * XSLT_LIBXSLT_NAMESPACE:
24
+ *
25
+ * This is the libxslt namespace for specific extensions.
26
+ */
27
+ #define XSLT_LIBXSLT_NAMESPACE ((xmlChar *) "http://xmlsoft.org/XSLT/namespace")
28
+
29
+ /**
30
+ * XSLT_SAXON_NAMESPACE:
31
+ *
32
+ * This is Michael Kay's Saxon processor namespace for extensions.
33
+ */
34
+ #define XSLT_SAXON_NAMESPACE ((xmlChar *) "http://icl.com/saxon")
35
+
36
+ /**
37
+ * XSLT_XT_NAMESPACE:
38
+ *
39
+ * This is James Clark's XT processor namespace for extensions.
40
+ */
41
+ #define XSLT_XT_NAMESPACE ((xmlChar *) "http://www.jclark.com/xt")
42
+
43
+ /**
44
+ * XSLT_XALAN_NAMESPACE:
45
+ *
46
+ * This is the Apache project XALAN processor namespace for extensions.
47
+ */
48
+ #define XSLT_XALAN_NAMESPACE ((xmlChar *) \
49
+ "org.apache.xalan.xslt.extensions.Redirect")
50
+
51
+
52
+ XSLTPUBFUN void XSLTCALL
53
+ xsltFunctionNodeSet (xmlXPathParserContextPtr ctxt,
54
+ int nargs);
55
+ XSLTPUBFUN void XSLTCALL
56
+ xsltDebug (xsltTransformContextPtr ctxt,
57
+ xmlNodePtr node,
58
+ xmlNodePtr inst,
59
+ xsltElemPreCompPtr comp);
60
+
61
+
62
+ XSLTPUBFUN void XSLTCALL
63
+ xsltRegisterExtras (xsltTransformContextPtr ctxt);
64
+ XSLTPUBFUN void XSLTCALL
65
+ xsltRegisterAllExtras (void);
66
+
67
+ #ifdef __cplusplus
68
+ }
69
+ #endif
70
+
71
+ #endif /* __XML_XSLT_EXTRA_H__ */
72
+
@@ -0,0 +1,78 @@
1
+ /*
2
+ * Summary: interface for the XSLT functions not from XPath
3
+ * Description: a set of extra functions coming from XSLT but not in XPath
4
+ *
5
+ * Copy: See Copyright for the status of this software.
6
+ *
7
+ * Author: Daniel Veillard and Bjorn Reese <breese@users.sourceforge.net>
8
+ */
9
+
10
+ #ifndef __XML_XSLT_FUNCTIONS_H__
11
+ #define __XML_XSLT_FUNCTIONS_H__
12
+
13
+ #include <libxml/xpath.h>
14
+ #include <libxml/xpathInternals.h>
15
+ #include "xsltexports.h"
16
+ #include "xsltInternals.h"
17
+
18
+ #ifdef __cplusplus
19
+ extern "C" {
20
+ #endif
21
+
22
+ /**
23
+ * XSLT_REGISTER_FUNCTION_LOOKUP:
24
+ *
25
+ * Registering macro, not general purpose at all but used in different modules.
26
+ */
27
+ #define XSLT_REGISTER_FUNCTION_LOOKUP(ctxt) \
28
+ xmlXPathRegisterFuncLookup((ctxt)->xpathCtxt, \
29
+ xsltXPathFunctionLookup, \
30
+ (void *)(ctxt->xpathCtxt));
31
+
32
+ XSLTPUBFUN xmlXPathFunction XSLTCALL
33
+ xsltXPathFunctionLookup (void *vctxt,
34
+ const xmlChar *name,
35
+ const xmlChar *ns_uri);
36
+
37
+ /*
38
+ * Interfaces for the functions implementations.
39
+ */
40
+
41
+ XSLTPUBFUN void XSLTCALL
42
+ xsltDocumentFunction (xmlXPathParserContextPtr ctxt,
43
+ int nargs);
44
+ XSLTPUBFUN void XSLTCALL
45
+ xsltKeyFunction (xmlXPathParserContextPtr ctxt,
46
+ int nargs);
47
+ XSLTPUBFUN void XSLTCALL
48
+ xsltUnparsedEntityURIFunction (xmlXPathParserContextPtr ctxt,
49
+ int nargs);
50
+ XSLTPUBFUN void XSLTCALL
51
+ xsltFormatNumberFunction (xmlXPathParserContextPtr ctxt,
52
+ int nargs);
53
+ XSLTPUBFUN void XSLTCALL
54
+ xsltGenerateIdFunction (xmlXPathParserContextPtr ctxt,
55
+ int nargs);
56
+ XSLTPUBFUN void XSLTCALL
57
+ xsltSystemPropertyFunction (xmlXPathParserContextPtr ctxt,
58
+ int nargs);
59
+ XSLTPUBFUN void XSLTCALL
60
+ xsltElementAvailableFunction (xmlXPathParserContextPtr ctxt,
61
+ int nargs);
62
+ XSLTPUBFUN void XSLTCALL
63
+ xsltFunctionAvailableFunction (xmlXPathParserContextPtr ctxt,
64
+ int nargs);
65
+
66
+ /*
67
+ * And the registration
68
+ */
69
+
70
+ XSLTPUBFUN void XSLTCALL
71
+ xsltRegisterAllFunctions (xmlXPathContextPtr ctxt);
72
+
73
+ #ifdef __cplusplus
74
+ }
75
+ #endif
76
+
77
+ #endif /* __XML_XSLT_FUNCTIONS_H__ */
78
+