lxml 6.0.0__cp312-cp312-musllinux_1_2_armv7l.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (174) hide show
  1. lxml/ElementInclude.py +244 -0
  2. lxml/__init__.py +22 -0
  3. lxml/_elementpath.cpython-312-arm-linux-musleabihf.so +0 -0
  4. lxml/_elementpath.py +343 -0
  5. lxml/apihelpers.pxi +1801 -0
  6. lxml/builder.cpython-312-arm-linux-musleabihf.so +0 -0
  7. lxml/builder.py +243 -0
  8. lxml/classlookup.pxi +580 -0
  9. lxml/cleanup.pxi +215 -0
  10. lxml/cssselect.py +101 -0
  11. lxml/debug.pxi +36 -0
  12. lxml/docloader.pxi +178 -0
  13. lxml/doctestcompare.py +488 -0
  14. lxml/dtd.pxi +479 -0
  15. lxml/etree.cpython-312-arm-linux-musleabihf.so +0 -0
  16. lxml/etree.h +244 -0
  17. lxml/etree.pyx +3853 -0
  18. lxml/etree_api.h +204 -0
  19. lxml/extensions.pxi +830 -0
  20. lxml/html/ElementSoup.py +10 -0
  21. lxml/html/__init__.py +1927 -0
  22. lxml/html/_diffcommand.py +86 -0
  23. lxml/html/_difflib.cpython-312-arm-linux-musleabihf.so +0 -0
  24. lxml/html/_difflib.py +2106 -0
  25. lxml/html/_html5builder.py +100 -0
  26. lxml/html/_setmixin.py +56 -0
  27. lxml/html/builder.py +173 -0
  28. lxml/html/clean.py +21 -0
  29. lxml/html/defs.py +135 -0
  30. lxml/html/diff.cpython-312-arm-linux-musleabihf.so +0 -0
  31. lxml/html/diff.py +972 -0
  32. lxml/html/formfill.py +299 -0
  33. lxml/html/html5parser.py +260 -0
  34. lxml/html/soupparser.py +314 -0
  35. lxml/html/usedoctest.py +13 -0
  36. lxml/includes/__init__.pxd +0 -0
  37. lxml/includes/__init__.py +0 -0
  38. lxml/includes/c14n.pxd +25 -0
  39. lxml/includes/config.pxd +3 -0
  40. lxml/includes/dtdvalid.pxd +18 -0
  41. lxml/includes/etree_defs.h +379 -0
  42. lxml/includes/etreepublic.pxd +237 -0
  43. lxml/includes/extlibs/__init__.py +0 -0
  44. lxml/includes/extlibs/libcharset.h +45 -0
  45. lxml/includes/extlibs/localcharset.h +137 -0
  46. lxml/includes/extlibs/zconf.h +543 -0
  47. lxml/includes/extlibs/zlib.h +1938 -0
  48. lxml/includes/htmlparser.pxd +56 -0
  49. lxml/includes/libexslt/__init__.py +0 -0
  50. lxml/includes/libexslt/exslt.h +108 -0
  51. lxml/includes/libexslt/exsltconfig.h +70 -0
  52. lxml/includes/libexslt/exsltexports.h +63 -0
  53. lxml/includes/libxml/HTMLparser.h +339 -0
  54. lxml/includes/libxml/HTMLtree.h +148 -0
  55. lxml/includes/libxml/SAX.h +18 -0
  56. lxml/includes/libxml/SAX2.h +170 -0
  57. lxml/includes/libxml/__init__.py +0 -0
  58. lxml/includes/libxml/c14n.h +115 -0
  59. lxml/includes/libxml/catalog.h +183 -0
  60. lxml/includes/libxml/chvalid.h +230 -0
  61. lxml/includes/libxml/debugXML.h +79 -0
  62. lxml/includes/libxml/dict.h +82 -0
  63. lxml/includes/libxml/encoding.h +307 -0
  64. lxml/includes/libxml/entities.h +147 -0
  65. lxml/includes/libxml/globals.h +25 -0
  66. lxml/includes/libxml/hash.h +251 -0
  67. lxml/includes/libxml/list.h +137 -0
  68. lxml/includes/libxml/nanoftp.h +16 -0
  69. lxml/includes/libxml/nanohttp.h +98 -0
  70. lxml/includes/libxml/parser.h +1633 -0
  71. lxml/includes/libxml/parserInternals.h +591 -0
  72. lxml/includes/libxml/relaxng.h +224 -0
  73. lxml/includes/libxml/schemasInternals.h +959 -0
  74. lxml/includes/libxml/schematron.h +143 -0
  75. lxml/includes/libxml/threads.h +81 -0
  76. lxml/includes/libxml/tree.h +1326 -0
  77. lxml/includes/libxml/uri.h +106 -0
  78. lxml/includes/libxml/valid.h +485 -0
  79. lxml/includes/libxml/xinclude.h +141 -0
  80. lxml/includes/libxml/xlink.h +193 -0
  81. lxml/includes/libxml/xmlIO.h +419 -0
  82. lxml/includes/libxml/xmlautomata.h +163 -0
  83. lxml/includes/libxml/xmlerror.h +962 -0
  84. lxml/includes/libxml/xmlexports.h +96 -0
  85. lxml/includes/libxml/xmlmemory.h +188 -0
  86. lxml/includes/libxml/xmlmodule.h +61 -0
  87. lxml/includes/libxml/xmlreader.h +444 -0
  88. lxml/includes/libxml/xmlregexp.h +116 -0
  89. lxml/includes/libxml/xmlsave.h +111 -0
  90. lxml/includes/libxml/xmlschemas.h +254 -0
  91. lxml/includes/libxml/xmlschemastypes.h +152 -0
  92. lxml/includes/libxml/xmlstring.h +140 -0
  93. lxml/includes/libxml/xmlunicode.h +15 -0
  94. lxml/includes/libxml/xmlversion.h +332 -0
  95. lxml/includes/libxml/xmlwriter.h +489 -0
  96. lxml/includes/libxml/xpath.h +569 -0
  97. lxml/includes/libxml/xpathInternals.h +639 -0
  98. lxml/includes/libxml/xpointer.h +48 -0
  99. lxml/includes/libxslt/__init__.py +0 -0
  100. lxml/includes/libxslt/attributes.h +39 -0
  101. lxml/includes/libxslt/documents.h +93 -0
  102. lxml/includes/libxslt/extensions.h +262 -0
  103. lxml/includes/libxslt/extra.h +72 -0
  104. lxml/includes/libxslt/functions.h +78 -0
  105. lxml/includes/libxslt/imports.h +75 -0
  106. lxml/includes/libxslt/keys.h +53 -0
  107. lxml/includes/libxslt/namespaces.h +68 -0
  108. lxml/includes/libxslt/numbersInternals.h +73 -0
  109. lxml/includes/libxslt/pattern.h +84 -0
  110. lxml/includes/libxslt/preproc.h +43 -0
  111. lxml/includes/libxslt/security.h +104 -0
  112. lxml/includes/libxslt/templates.h +77 -0
  113. lxml/includes/libxslt/transform.h +207 -0
  114. lxml/includes/libxslt/variables.h +118 -0
  115. lxml/includes/libxslt/xslt.h +110 -0
  116. lxml/includes/libxslt/xsltInternals.h +1995 -0
  117. lxml/includes/libxslt/xsltconfig.h +146 -0
  118. lxml/includes/libxslt/xsltexports.h +64 -0
  119. lxml/includes/libxslt/xsltlocale.h +44 -0
  120. lxml/includes/libxslt/xsltutils.h +343 -0
  121. lxml/includes/lxml-version.h +3 -0
  122. lxml/includes/relaxng.pxd +64 -0
  123. lxml/includes/schematron.pxd +34 -0
  124. lxml/includes/tree.pxd +492 -0
  125. lxml/includes/uri.pxd +5 -0
  126. lxml/includes/xinclude.pxd +22 -0
  127. lxml/includes/xmlerror.pxd +852 -0
  128. lxml/includes/xmlparser.pxd +303 -0
  129. lxml/includes/xmlschema.pxd +35 -0
  130. lxml/includes/xpath.pxd +136 -0
  131. lxml/includes/xslt.pxd +190 -0
  132. lxml/isoschematron/__init__.py +348 -0
  133. lxml/isoschematron/resources/rng/iso-schematron.rng +709 -0
  134. lxml/isoschematron/resources/xsl/RNG2Schtrn.xsl +75 -0
  135. lxml/isoschematron/resources/xsl/XSD2Schtrn.xsl +77 -0
  136. lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl +313 -0
  137. lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_dsdl_include.xsl +1160 -0
  138. lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_message.xsl +55 -0
  139. lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_skeleton_for_xslt1.xsl +1796 -0
  140. lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_svrl_for_xslt1.xsl +588 -0
  141. lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt +84 -0
  142. lxml/iterparse.pxi +438 -0
  143. lxml/lxml.etree.h +244 -0
  144. lxml/lxml.etree_api.h +204 -0
  145. lxml/nsclasses.pxi +281 -0
  146. lxml/objectify.cpython-312-arm-linux-musleabihf.so +0 -0
  147. lxml/objectify.pyx +2149 -0
  148. lxml/objectpath.pxi +332 -0
  149. lxml/parser.pxi +2059 -0
  150. lxml/parsertarget.pxi +180 -0
  151. lxml/proxy.pxi +619 -0
  152. lxml/public-api.pxi +178 -0
  153. lxml/pyclasslookup.py +3 -0
  154. lxml/readonlytree.pxi +565 -0
  155. lxml/relaxng.pxi +165 -0
  156. lxml/sax.cpython-312-arm-linux-musleabihf.so +0 -0
  157. lxml/sax.py +286 -0
  158. lxml/saxparser.pxi +875 -0
  159. lxml/schematron.pxi +173 -0
  160. lxml/serializer.pxi +1849 -0
  161. lxml/usedoctest.py +13 -0
  162. lxml/xinclude.pxi +67 -0
  163. lxml/xmlerror.pxi +1654 -0
  164. lxml/xmlid.pxi +179 -0
  165. lxml/xmlschema.pxi +215 -0
  166. lxml/xpath.pxi +487 -0
  167. lxml/xslt.pxi +957 -0
  168. lxml/xsltext.pxi +242 -0
  169. lxml-6.0.0.dist-info/METADATA +163 -0
  170. lxml-6.0.0.dist-info/RECORD +174 -0
  171. lxml-6.0.0.dist-info/WHEEL +5 -0
  172. lxml-6.0.0.dist-info/licenses/LICENSE.txt +31 -0
  173. lxml-6.0.0.dist-info/licenses/LICENSES.txt +29 -0
  174. lxml-6.0.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,303 @@
1
+ from libc.string cimport const_char
2
+
3
+ from lxml.includes.tree cimport (
4
+ xmlDoc, xmlNode, xmlEntity, xmlDict, xmlDtd, xmlChar, const_xmlChar)
5
+ from lxml.includes.tree cimport xmlInputReadCallback, xmlInputCloseCallback
6
+ from lxml.includes.xmlerror cimport xmlError, xmlStructuredErrorFunc, xmlErrorLevel
7
+
8
+
9
+ cdef extern from "libxml/parser.h" nogil:
10
+ ctypedef void (*startElementNsSAX2Func)(void* ctx,
11
+ const_xmlChar* localname,
12
+ const_xmlChar* prefix,
13
+ const_xmlChar* URI,
14
+ int nb_namespaces,
15
+ const_xmlChar** namespaces,
16
+ int nb_attributes,
17
+ int nb_defaulted,
18
+ const_xmlChar** attributes) noexcept
19
+
20
+ ctypedef void (*endElementNsSAX2Func)(void* ctx,
21
+ const_xmlChar* localname,
22
+ const_xmlChar* prefix,
23
+ const_xmlChar* URI) noexcept
24
+
25
+ ctypedef void (*startElementSAXFunc)(void* ctx, const_xmlChar* name, const_xmlChar** atts) noexcept
26
+
27
+ ctypedef void (*endElementSAXFunc)(void* ctx, const_xmlChar* name) noexcept
28
+
29
+ ctypedef void (*charactersSAXFunc)(void* ctx, const_xmlChar* ch, int len) noexcept
30
+
31
+ ctypedef void (*cdataBlockSAXFunc)(void* ctx, const_xmlChar* value, int len) noexcept
32
+
33
+ ctypedef void (*commentSAXFunc)(void* ctx, const_xmlChar* value) noexcept
34
+
35
+ ctypedef void (*processingInstructionSAXFunc)(void* ctx,
36
+ const_xmlChar* target,
37
+ const_xmlChar* data) noexcept
38
+
39
+ ctypedef void (*internalSubsetSAXFunc)(void* ctx,
40
+ const_xmlChar* name,
41
+ const_xmlChar* externalID,
42
+ const_xmlChar* systemID) noexcept
43
+
44
+ ctypedef void (*endDocumentSAXFunc)(void* ctx) noexcept
45
+
46
+ ctypedef void (*startDocumentSAXFunc)(void* ctx) noexcept
47
+
48
+ ctypedef void (*referenceSAXFunc)(void * ctx, const_xmlChar* name) noexcept
49
+
50
+ ctypedef xmlEntity* (*getEntitySAXFunc)(void* ctx, const_xmlChar* name) noexcept
51
+
52
+ cdef int XML_SAX2_MAGIC
53
+
54
+ cdef extern from "libxml/tree.h" nogil:
55
+ ctypedef struct xmlParserInput:
56
+ int line
57
+ int col
58
+ int length
59
+ const_xmlChar* base
60
+ const_xmlChar* cur
61
+ const_xmlChar* end
62
+ const_char *filename
63
+
64
+ ctypedef struct xmlParserInputBuffer:
65
+ void* context
66
+ xmlInputReadCallback readcallback
67
+ xmlInputCloseCallback closecallback
68
+
69
+ ctypedef struct xmlSAXHandlerV1:
70
+ # same as xmlSAXHandler, but without namespaces
71
+ pass
72
+
73
+ ctypedef struct xmlSAXHandler:
74
+ internalSubsetSAXFunc internalSubset
75
+ startElementNsSAX2Func startElementNs
76
+ endElementNsSAX2Func endElementNs
77
+ startElementSAXFunc startElement
78
+ endElementSAXFunc endElement
79
+ charactersSAXFunc characters
80
+ cdataBlockSAXFunc cdataBlock
81
+ referenceSAXFunc reference
82
+ getEntitySAXFunc getEntity
83
+ commentSAXFunc comment
84
+ processingInstructionSAXFunc processingInstruction
85
+ startDocumentSAXFunc startDocument
86
+ endDocumentSAXFunc endDocument
87
+ int initialized
88
+ xmlStructuredErrorFunc serror
89
+ void* _private
90
+
91
+
92
+ cdef extern from "libxml/SAX2.h" nogil:
93
+ cdef void xmlSAX2StartDocument(void* ctxt)
94
+
95
+
96
+ cdef extern from "libxml/xmlIO.h" nogil:
97
+ cdef xmlParserInputBuffer* xmlAllocParserInputBuffer(int enc)
98
+
99
+
100
+ cdef extern from "libxml/parser.h" nogil:
101
+
102
+ ctypedef enum xmlFeature:
103
+ XML_WITH_THREAD = 1
104
+ XML_WITH_TREE = 2
105
+ XML_WITH_OUTPUT = 3
106
+ XML_WITH_PUSH = 4
107
+ XML_WITH_READER = 5
108
+ XML_WITH_PATTERN = 6
109
+ XML_WITH_WRITER = 7
110
+ XML_WITH_SAX1 = 8
111
+ XML_WITH_FTP = 9
112
+ XML_WITH_HTTP = 10
113
+ XML_WITH_VALID = 11
114
+ XML_WITH_HTML = 12
115
+ XML_WITH_LEGACY = 13
116
+ XML_WITH_C14N = 14
117
+ XML_WITH_CATALOG = 15
118
+ XML_WITH_XPATH = 16
119
+ XML_WITH_XPTR = 17
120
+ XML_WITH_XINCLUDE = 18
121
+ XML_WITH_ICONV = 19
122
+ XML_WITH_ISO8859X = 20
123
+ XML_WITH_UNICODE = 21
124
+ XML_WITH_REGEXP = 22
125
+ XML_WITH_AUTOMATA = 23
126
+ XML_WITH_EXPR = 24
127
+ XML_WITH_SCHEMAS = 25
128
+ XML_WITH_SCHEMATRON = 26
129
+ XML_WITH_MODULES = 27
130
+ XML_WITH_DEBUG = 28
131
+ XML_WITH_DEBUG_MEM = 29
132
+ XML_WITH_DEBUG_RUN = 30
133
+ XML_WITH_ZLIB = 31
134
+ XML_WITH_ICU = 32
135
+ XML_WITH_LZMA = 33
136
+
137
+ cdef bint xmlHasFeature(xmlFeature feature)
138
+
139
+ cdef xmlDict* xmlDictCreate()
140
+ cdef xmlDict* xmlDictCreateSub(xmlDict* subdict)
141
+ cdef void xmlDictFree(xmlDict* sub)
142
+ cdef int xmlDictReference(xmlDict* dict)
143
+
144
+ cdef int XML_COMPLETE_ATTRS # SAX option for adding DTD default attributes
145
+ cdef int XML_SKIP_IDS # SAX option for not building an XML ID dict
146
+
147
+ ctypedef enum xmlParserInputState:
148
+ XML_PARSER_EOF = -1 # nothing is to be parsed
149
+ XML_PARSER_START = 0 # nothing has been parsed
150
+ XML_PARSER_MISC = 1 # Misc* before int subset
151
+ XML_PARSER_PI = 2 # Within a processing instruction
152
+ XML_PARSER_DTD = 3 # within some DTD content
153
+ XML_PARSER_PROLOG = 4 # Misc* after internal subset
154
+ XML_PARSER_COMMENT = 5 # within a comment
155
+ XML_PARSER_START_TAG = 6 # within a start tag
156
+ XML_PARSER_CONTENT = 7 # within the content
157
+ XML_PARSER_CDATA_SECTION = 8 # within a CDATA section
158
+ XML_PARSER_END_TAG = 9 # within a closing tag
159
+ XML_PARSER_ENTITY_DECL = 10 # within an entity declaration
160
+ XML_PARSER_ENTITY_VALUE = 11 # within an entity value in a decl
161
+ XML_PARSER_ATTRIBUTE_VALUE = 12 # within an attribute value
162
+ XML_PARSER_SYSTEM_LITERAL = 13 # within a SYSTEM value
163
+ XML_PARSER_EPILOG = 14 # the Misc* after the last end tag
164
+ XML_PARSER_IGNORE = 15 # within an IGNORED section
165
+ XML_PARSER_PUBLIC_LITERAL = 16 # within a PUBLIC value
166
+
167
+
168
+ ctypedef struct xmlParserCtxt:
169
+ xmlDoc* myDoc
170
+ xmlDict* dict
171
+ int dictNames
172
+ void* _private
173
+ bint wellFormed
174
+ bint recovery
175
+ int options
176
+ bint disableSAX
177
+ int errNo
178
+ xmlParserInputState instate
179
+ bint replaceEntities
180
+ int loadsubset # != 0 if enabled, int value == why
181
+ bint validate
182
+ xmlError lastError
183
+ xmlNode* node
184
+ xmlSAXHandler* sax
185
+ void* userData
186
+ int* spaceTab
187
+ int spaceMax
188
+ int nsNr
189
+ bint html
190
+ bint progressive
191
+ int inSubset
192
+ int charset
193
+ xmlParserInput* input
194
+ int inputNr
195
+ xmlParserInput* inputTab[]
196
+
197
+ ctypedef enum xmlParserOption:
198
+ XML_PARSE_RECOVER = 1 # recover on errors
199
+ XML_PARSE_NOENT = 2 # substitute entities
200
+ XML_PARSE_DTDLOAD = 4 # load the external subset
201
+ XML_PARSE_DTDATTR = 8 # default DTD attributes
202
+ XML_PARSE_DTDVALID = 16 # validate with the DTD
203
+ XML_PARSE_NOERROR = 32 # suppress error reports
204
+ XML_PARSE_NOWARNING = 64 # suppress warning reports
205
+ XML_PARSE_PEDANTIC = 128 # pedantic error reporting
206
+ XML_PARSE_NOBLANKS = 256 # remove blank nodes
207
+ XML_PARSE_SAX1 = 512 # use the SAX1 interface internally
208
+ XML_PARSE_XINCLUDE = 1024 # Implement XInclude substitution
209
+ XML_PARSE_NONET = 2048 # Forbid network access
210
+ XML_PARSE_NODICT = 4096 # Do not reuse the context dictionary
211
+ XML_PARSE_NSCLEAN = 8192 # remove redundant namespaces declarations
212
+ XML_PARSE_NOCDATA = 16384 # merge CDATA as text nodes
213
+ XML_PARSE_NOXINCNODE = 32768 # do not generate XINCLUDE START/END nodes
214
+ # libxml2 2.6.21+ only:
215
+ XML_PARSE_COMPACT = 65536 # compact small text nodes
216
+ # libxml2 2.7.0+ only:
217
+ XML_PARSE_OLD10 = 131072 # parse using XML-1.0 before update 5
218
+ XML_PARSE_NOBASEFIX = 262144 # do not fixup XINCLUDE xml:base uris
219
+ XML_PARSE_HUGE = 524288 # relax any hardcoded limit from the parser
220
+ # libxml2 2.7.3+ only:
221
+ XML_PARSE_OLDSAX = 1048576 # parse using SAX2 interface before 2.7.0
222
+ # libxml2 2.8.0+ only:
223
+ XML_PARSE_IGNORE_ENC = 2097152 # ignore internal document encoding hint
224
+ # libxml2 2.9.0+ only:
225
+ XML_PARSE_BIG_LINES = 4194304 # Store big lines numbers in text PSVI field
226
+
227
+ cdef void xmlInitParser()
228
+ cdef void xmlCleanupParser()
229
+
230
+ cdef int xmlLineNumbersDefault(int onoff)
231
+ cdef xmlParserCtxt* xmlNewParserCtxt()
232
+ cdef xmlParserInput* xmlNewIOInputStream(xmlParserCtxt* ctxt,
233
+ xmlParserInputBuffer* input,
234
+ int enc)
235
+ cdef int xmlCtxtUseOptions(xmlParserCtxt* ctxt, int options)
236
+ cdef void xmlFreeParserCtxt(xmlParserCtxt* ctxt)
237
+ cdef void xmlCtxtReset(xmlParserCtxt* ctxt)
238
+ cdef void xmlClearParserCtxt(xmlParserCtxt* ctxt)
239
+ cdef int xmlParseChunk(xmlParserCtxt* ctxt,
240
+ char* chunk, int size, int terminate)
241
+ cdef xmlDoc* xmlCtxtReadDoc(xmlParserCtxt* ctxt,
242
+ char* cur, char* URL, char* encoding,
243
+ int options)
244
+ cdef xmlDoc* xmlCtxtReadFile(xmlParserCtxt* ctxt,
245
+ char* filename, char* encoding,
246
+ int options)
247
+ cdef xmlDoc* xmlCtxtReadIO(xmlParserCtxt* ctxt,
248
+ xmlInputReadCallback ioread,
249
+ xmlInputCloseCallback ioclose,
250
+ void* ioctx,
251
+ char* URL, char* encoding,
252
+ int options)
253
+ cdef xmlDoc* xmlCtxtReadMemory(xmlParserCtxt* ctxt,
254
+ char* buffer, int size,
255
+ char* filename, const_char* encoding,
256
+ int options)
257
+
258
+ cdef void xmlErrParser(xmlParserCtxt* ctxt, xmlNode* node,
259
+ int domain, int code, xmlErrorLevel level,
260
+ const xmlChar *str1, const xmlChar *str2, const xmlChar *str3,
261
+ int int1, const char *msg, ...)
262
+
263
+
264
+ # iterparse:
265
+
266
+ cdef xmlParserCtxt* xmlCreatePushParserCtxt(xmlSAXHandler* sax,
267
+ void* user_data,
268
+ char* chunk,
269
+ int size,
270
+ char* filename)
271
+
272
+ cdef int xmlCtxtResetPush(xmlParserCtxt* ctxt,
273
+ char* chunk,
274
+ int size,
275
+ char* filename,
276
+ char* encoding)
277
+
278
+ # entity loaders:
279
+
280
+ ctypedef xmlParserInput* (*xmlExternalEntityLoader)(
281
+ const_char * URL, const_char * ID, xmlParserCtxt* context) noexcept
282
+ cdef xmlExternalEntityLoader xmlGetExternalEntityLoader()
283
+ cdef void xmlSetExternalEntityLoader(xmlExternalEntityLoader f)
284
+
285
+ cdef xmlEntity* xmlSAX2GetEntity(void* ctxt, const_xmlChar* name) noexcept
286
+
287
+ # DTDs:
288
+
289
+ cdef xmlDtd* xmlParseDTD(const_xmlChar* ExternalID, const_xmlChar* SystemID)
290
+ cdef xmlDtd* xmlIOParseDTD(xmlSAXHandler* sax,
291
+ xmlParserInputBuffer* input,
292
+ int enc)
293
+
294
+
295
+ cdef extern from "libxml/parserInternals.h" nogil:
296
+ cdef xmlParserInput* xmlNewInputStream(xmlParserCtxt* ctxt)
297
+ cdef xmlParserInput* xmlNewStringInputStream(xmlParserCtxt* ctxt,
298
+ char* buffer)
299
+ cdef xmlParserInput* xmlNewInputFromFile(xmlParserCtxt* ctxt,
300
+ char* filename)
301
+ cdef void xmlFreeInputStream(xmlParserInput* input)
302
+ cdef int xmlSwitchEncoding(xmlParserCtxt* ctxt, int enc)
303
+ cdef bint xmlCtxtIsStopped(xmlParserCtxt* ctxt)
@@ -0,0 +1,35 @@
1
+ from lxml.includes.tree cimport xmlDoc
2
+ from lxml.includes.xmlparser cimport xmlSAXHandler
3
+ from lxml.includes.xmlerror cimport xmlStructuredErrorFunc
4
+
5
+ cdef extern from "libxml/xmlschemas.h" nogil:
6
+ ctypedef struct xmlSchema
7
+ ctypedef struct xmlSchemaParserCtxt
8
+
9
+ ctypedef struct xmlSchemaSAXPlugStruct
10
+ ctypedef struct xmlSchemaValidCtxt
11
+
12
+ ctypedef enum xmlSchemaValidOption:
13
+ XML_SCHEMA_VAL_VC_I_CREATE = 1
14
+
15
+ cdef xmlSchemaValidCtxt* xmlSchemaNewValidCtxt(xmlSchema* schema) nogil
16
+ cdef void xmlSchemaSetParserStructuredErrors(xmlSchemaParserCtxt* ctxt,
17
+ xmlStructuredErrorFunc serror, void *ctx)
18
+ cdef void xmlSchemaSetValidStructuredErrors(xmlSchemaValidCtxt* ctxt,
19
+ xmlStructuredErrorFunc serror, void *ctx)
20
+
21
+ cdef int xmlSchemaValidateDoc(xmlSchemaValidCtxt* ctxt, xmlDoc* doc) nogil
22
+ cdef xmlSchema* xmlSchemaParse(xmlSchemaParserCtxt* ctxt) nogil
23
+ cdef xmlSchemaParserCtxt* xmlSchemaNewParserCtxt(char* URL) nogil
24
+ cdef xmlSchemaParserCtxt* xmlSchemaNewDocParserCtxt(xmlDoc* doc) nogil
25
+ cdef void xmlSchemaFree(xmlSchema* schema) nogil
26
+ cdef void xmlSchemaFreeParserCtxt(xmlSchemaParserCtxt* ctxt) nogil
27
+ cdef void xmlSchemaFreeValidCtxt(xmlSchemaValidCtxt* ctxt) nogil
28
+ cdef int xmlSchemaSetValidOptions(xmlSchemaValidCtxt* ctxt,
29
+ int options) nogil
30
+
31
+ cdef xmlSchemaSAXPlugStruct* xmlSchemaSAXPlug(xmlSchemaValidCtxt* ctxt,
32
+ xmlSAXHandler** sax,
33
+ void** data) nogil
34
+ cdef int xmlSchemaSAXUnplug(xmlSchemaSAXPlugStruct* sax_plug)
35
+ cdef int xmlSchemaIsValid(xmlSchemaValidCtxt* ctxt)
@@ -0,0 +1,136 @@
1
+ from lxml.includes cimport tree
2
+ from lxml.includes cimport xmlerror
3
+
4
+ from libc.string cimport const_char
5
+ from lxml.includes.tree cimport xmlChar, const_xmlChar
6
+
7
+
8
+ cdef extern from "libxml/xpath.h" nogil:
9
+ ctypedef enum xmlXPathObjectType:
10
+ XPATH_UNDEFINED = 0
11
+ XPATH_NODESET = 1
12
+ XPATH_BOOLEAN = 2
13
+ XPATH_NUMBER = 3
14
+ XPATH_STRING = 4
15
+ XPATH_POINT = 5
16
+ XPATH_RANGE = 6
17
+ XPATH_LOCATIONSET = 7
18
+ XPATH_USERS = 8
19
+ XPATH_XSLT_TREE = 9
20
+
21
+ ctypedef enum xmlXPathError:
22
+ XPATH_EXPRESSION_OK = 0
23
+ XPATH_NUMBER_ERROR = 1
24
+ XPATH_UNFINISHED_LITERAL_ERROR = 2
25
+ XPATH_START_LITERAL_ERROR = 3
26
+ XPATH_VARIABLE_REF_ERROR = 4
27
+ XPATH_UNDEF_VARIABLE_ERROR = 5
28
+ XPATH_INVALID_PREDICATE_ERROR = 6
29
+ XPATH_EXPR_ERROR = 7
30
+ XPATH_UNCLOSED_ERROR = 8
31
+ XPATH_UNKNOWN_FUNC_ERROR = 9
32
+ XPATH_INVALID_OPERAND = 10
33
+ XPATH_INVALID_TYPE = 11
34
+ XPATH_INVALID_ARITY = 12
35
+ XPATH_INVALID_CTXT_SIZE = 13
36
+ XPATH_INVALID_CTXT_POSITION = 14
37
+ XPATH_MEMORY_ERROR = 15
38
+ XPTR_SYNTAX_ERROR = 16
39
+ XPTR_RESOURCE_ERROR = 17
40
+ XPTR_SUB_RESOURCE_ERROR = 18
41
+ XPATH_UNDEF_PREFIX_ERROR = 19
42
+ XPATH_ENCODING_ERROR = 20
43
+ XPATH_INVALID_CHAR_ERROR = 21
44
+ XPATH_INVALID_CTXT = 22
45
+
46
+ ctypedef struct xmlNodeSet:
47
+ int nodeNr
48
+ int nodeMax
49
+ tree.xmlNode** nodeTab
50
+
51
+ ctypedef struct xmlXPathObject:
52
+ xmlXPathObjectType type
53
+ xmlNodeSet* nodesetval
54
+ bint boolval
55
+ double floatval
56
+ xmlChar* stringval
57
+
58
+ ctypedef struct xmlXPathContext:
59
+ tree.xmlDoc* doc
60
+ tree.xmlNode* node
61
+ tree.xmlDict* dict
62
+ tree.xmlHashTable* nsHash
63
+ const_xmlChar* function
64
+ const_xmlChar* functionURI
65
+ xmlerror.xmlStructuredErrorFunc error
66
+ xmlerror.xmlError lastError
67
+ void* userData
68
+
69
+ ctypedef struct xmlXPathParserContext:
70
+ xmlXPathContext* context
71
+ xmlXPathObject* value
72
+ tree.xmlNode* ancestor
73
+ int error
74
+
75
+ ctypedef struct xmlXPathCompExpr
76
+
77
+ ctypedef void (*xmlXPathFunction)(xmlXPathParserContext* ctxt, int nargs)
78
+ ctypedef xmlXPathFunction (*xmlXPathFuncLookupFunc)(void* ctxt,
79
+ const_xmlChar* name,
80
+ const_xmlChar* ns_uri)
81
+
82
+ cdef xmlXPathContext* xmlXPathNewContext(tree.xmlDoc* doc)
83
+ cdef xmlXPathObject* xmlXPathEvalExpression(const_xmlChar* str,
84
+ xmlXPathContext* ctxt)
85
+ cdef xmlXPathObject* xmlXPathCompiledEval(xmlXPathCompExpr* comp,
86
+ xmlXPathContext* ctxt)
87
+ cdef xmlXPathCompExpr* xmlXPathCompile(const_xmlChar* str)
88
+ cdef xmlXPathCompExpr* xmlXPathCtxtCompile(xmlXPathContext* ctxt,
89
+ const_xmlChar* str)
90
+ cdef void xmlXPathFreeContext(xmlXPathContext* ctxt)
91
+ cdef void xmlXPathFreeCompExpr(xmlXPathCompExpr* comp)
92
+ cdef void xmlXPathFreeObject(xmlXPathObject* obj)
93
+ cdef int xmlXPathRegisterNs(xmlXPathContext* ctxt,
94
+ const_xmlChar* prefix, const_xmlChar* ns_uri)
95
+
96
+ cdef xmlNodeSet* xmlXPathNodeSetCreate(tree.xmlNode* val)
97
+ cdef void xmlXPathFreeNodeSet(xmlNodeSet* val)
98
+
99
+
100
+ cdef extern from "libxml/xpathInternals.h" nogil:
101
+ cdef int xmlXPathRegisterFunc(xmlXPathContext* ctxt,
102
+ const_xmlChar* name,
103
+ xmlXPathFunction f)
104
+ cdef int xmlXPathRegisterFuncNS(xmlXPathContext* ctxt,
105
+ const_xmlChar* name,
106
+ const_xmlChar* ns_uri,
107
+ xmlXPathFunction f)
108
+ cdef void xmlXPathRegisterFuncLookup(xmlXPathContext *ctxt,
109
+ xmlXPathFuncLookupFunc f,
110
+ void *funcCtxt)
111
+ cdef int xmlXPathRegisterVariable(xmlXPathContext *ctxt,
112
+ const_xmlChar* name,
113
+ xmlXPathObject* value)
114
+ cdef int xmlXPathRegisterVariableNS(xmlXPathContext *ctxt,
115
+ const_xmlChar* name,
116
+ const_xmlChar* ns_uri,
117
+ xmlXPathObject* value)
118
+ cdef void xmlXPathRegisteredVariablesCleanup(xmlXPathContext *ctxt)
119
+ cdef void xmlXPathRegisteredNsCleanup(xmlXPathContext *ctxt)
120
+ cdef xmlXPathObject* valuePop (xmlXPathParserContext *ctxt)
121
+ cdef int valuePush(xmlXPathParserContext* ctxt, xmlXPathObject *value)
122
+
123
+ cdef xmlXPathObject* xmlXPathNewCString(const_char *val)
124
+ cdef xmlXPathObject* xmlXPathWrapCString(const_char * val)
125
+ cdef xmlXPathObject* xmlXPathNewString(const_xmlChar *val)
126
+ cdef xmlXPathObject* xmlXPathWrapString(const_xmlChar * val)
127
+ cdef xmlXPathObject* xmlXPathNewFloat(double val)
128
+ cdef xmlXPathObject* xmlXPathNewBoolean(int val)
129
+ cdef xmlXPathObject* xmlXPathNewNodeSet(tree.xmlNode* val)
130
+ cdef xmlXPathObject* xmlXPathNewValueTree(tree.xmlNode* val)
131
+ cdef void xmlXPathNodeSetAdd(xmlNodeSet* cur,
132
+ tree.xmlNode* val)
133
+ cdef void xmlXPathNodeSetAddUnique(xmlNodeSet* cur,
134
+ tree.xmlNode* val)
135
+ cdef xmlXPathObject* xmlXPathWrapNodeSet(xmlNodeSet* val)
136
+ cdef void xmlXPathErr(xmlXPathParserContext* ctxt, int error)
lxml/includes/xslt.pxd ADDED
@@ -0,0 +1,190 @@
1
+ from lxml.includes.tree cimport xmlDoc, xmlNode, xmlDict, xmlChar, const_xmlChar, xmlOutputBuffer
2
+ from lxml.includes.xmlerror cimport xmlGenericErrorFunc
3
+ from lxml.includes.xpath cimport xmlXPathContext, xmlXPathFunction
4
+
5
+ from libc.string cimport const_char
6
+
7
+ cdef extern from "libxslt/xslt.h":
8
+ cdef int xsltLibxsltVersion
9
+ cdef int xsltMaxDepth
10
+
11
+ cdef extern from "libxslt/xsltconfig.h":
12
+ cdef int LIBXSLT_VERSION
13
+
14
+ cdef extern from "libxslt/xsltInternals.h" nogil:
15
+ ctypedef enum xsltTransformState:
16
+ XSLT_STATE_OK # 0
17
+ XSLT_STATE_ERROR # 1
18
+ XSLT_STATE_STOPPED # 2
19
+
20
+ ctypedef struct xsltDocument:
21
+ xmlDoc* doc
22
+
23
+ ctypedef struct xsltStylesheet:
24
+ xmlChar* encoding
25
+ xmlDoc* doc
26
+ int errors
27
+
28
+ ctypedef struct xsltTransformContext:
29
+ xsltStylesheet* style
30
+ xmlXPathContext* xpathCtxt
31
+ xsltDocument* document
32
+ void* _private
33
+ xmlDict* dict
34
+ int profile
35
+ xmlNode* node
36
+ xmlDoc* output
37
+ xmlNode* insert
38
+ xmlNode* inst
39
+ xsltTransformState state
40
+
41
+ ctypedef struct xsltStackElem
42
+
43
+ ctypedef struct xsltTemplate
44
+
45
+ cdef xsltStylesheet* xsltParseStylesheetDoc(xmlDoc* doc)
46
+ cdef void xsltFreeStylesheet(xsltStylesheet* sheet)
47
+
48
+ cdef extern from "libxslt/imports.h" nogil:
49
+ # actually defined in "etree_defs.h"
50
+ cdef void LXML_GET_XSLT_ENCODING(const_xmlChar* result_var, xsltStylesheet* style)
51
+
52
+ cdef extern from "libxslt/extensions.h" nogil:
53
+ ctypedef void (*xsltTransformFunction)(xsltTransformContext* ctxt,
54
+ xmlNode* context_node,
55
+ xmlNode* inst,
56
+ void* precomp_unused) noexcept
57
+
58
+ cdef int xsltRegisterExtFunction(xsltTransformContext* ctxt,
59
+ const_xmlChar* name,
60
+ const_xmlChar* URI,
61
+ xmlXPathFunction function)
62
+ cdef int xsltRegisterExtModuleFunction(const_xmlChar* name, const_xmlChar* URI,
63
+ xmlXPathFunction function)
64
+ cdef int xsltUnregisterExtModuleFunction(const_xmlChar* name, const_xmlChar* URI)
65
+ cdef xmlXPathFunction xsltExtModuleFunctionLookup(
66
+ const_xmlChar* name, const_xmlChar* URI)
67
+ cdef int xsltRegisterExtPrefix(xsltStylesheet* style,
68
+ const_xmlChar* prefix, const_xmlChar* URI)
69
+ cdef int xsltRegisterExtElement(xsltTransformContext* ctxt,
70
+ const_xmlChar* name, const_xmlChar* URI,
71
+ xsltTransformFunction function)
72
+
73
+ cdef extern from "libxslt/documents.h" nogil:
74
+ ctypedef enum xsltLoadType:
75
+ XSLT_LOAD_START
76
+ XSLT_LOAD_STYLESHEET
77
+ XSLT_LOAD_DOCUMENT
78
+
79
+ ctypedef xmlDoc* (*xsltDocLoaderFunc)(const_xmlChar* URI, xmlDict* dict,
80
+ int options,
81
+ void* ctxt,
82
+ xsltLoadType type) noexcept
83
+ cdef xsltDocLoaderFunc xsltDocDefaultLoader
84
+ cdef void xsltSetLoaderFunc(xsltDocLoaderFunc f)
85
+
86
+ cdef extern from "libxslt/transform.h" nogil:
87
+ cdef xmlDoc* xsltApplyStylesheet(xsltStylesheet* style, xmlDoc* doc,
88
+ const_char** params)
89
+ cdef xmlDoc* xsltApplyStylesheetUser(xsltStylesheet* style, xmlDoc* doc,
90
+ const_char** params, const_char* output,
91
+ void* profile,
92
+ xsltTransformContext* context)
93
+ cdef void xsltProcessOneNode(xsltTransformContext* ctxt,
94
+ xmlNode* contextNode,
95
+ xsltStackElem* params)
96
+ cdef xsltTransformContext* xsltNewTransformContext(xsltStylesheet* style,
97
+ xmlDoc* doc)
98
+ cdef void xsltFreeTransformContext(xsltTransformContext* context)
99
+ cdef void xsltApplyOneTemplate(xsltTransformContext* ctxt,
100
+ xmlNode* contextNode, xmlNode* list,
101
+ xsltTemplate* templ,
102
+ xsltStackElem* params)
103
+
104
+
105
+ cdef extern from "libxslt/xsltutils.h" nogil:
106
+ cdef int xsltSaveResultToString(xmlChar** doc_txt_ptr,
107
+ int* doc_txt_len,
108
+ xmlDoc* result,
109
+ xsltStylesheet* style)
110
+ cdef int xsltSaveResultToFilename(const_char *URL,
111
+ xmlDoc* result,
112
+ xsltStylesheet* style,
113
+ int compression)
114
+ cdef int xsltSaveResultTo(xmlOutputBuffer* buf,
115
+ xmlDoc* result,
116
+ xsltStylesheet* style)
117
+ cdef xmlGenericErrorFunc xsltGenericError
118
+ cdef void *xsltGenericErrorContext
119
+ cdef void xsltSetGenericErrorFunc(
120
+ void* ctxt, void (*handler)(void* ctxt, char* msg, ...) nogil)
121
+ cdef void xsltSetTransformErrorFunc(
122
+ xsltTransformContext*, void* ctxt,
123
+ void (*handler)(void* ctxt, char* msg, ...) nogil)
124
+ cdef void xsltTransformError(xsltTransformContext* ctxt,
125
+ xsltStylesheet* style,
126
+ xmlNode* node, char* msg, ...)
127
+ cdef void xsltSetCtxtParseOptions(
128
+ xsltTransformContext* ctxt, int options)
129
+
130
+
131
+ cdef extern from "libxslt/security.h" nogil:
132
+ ctypedef struct xsltSecurityPrefs
133
+ ctypedef enum xsltSecurityOption:
134
+ XSLT_SECPREF_READ_FILE = 1
135
+ XSLT_SECPREF_WRITE_FILE = 2
136
+ XSLT_SECPREF_CREATE_DIRECTORY = 3
137
+ XSLT_SECPREF_READ_NETWORK = 4
138
+ XSLT_SECPREF_WRITE_NETWORK = 5
139
+
140
+ ctypedef int (*xsltSecurityCheck)(xsltSecurityPrefs* sec,
141
+ xsltTransformContext* ctxt,
142
+ char* value) noexcept
143
+
144
+ cdef xsltSecurityPrefs* xsltNewSecurityPrefs()
145
+ cdef void xsltFreeSecurityPrefs(xsltSecurityPrefs* sec)
146
+ cdef int xsltSecurityForbid(xsltSecurityPrefs* sec,
147
+ xsltTransformContext* ctxt,
148
+ char* value)
149
+ cdef int xsltSecurityAllow(xsltSecurityPrefs* sec,
150
+ xsltTransformContext* ctxt,
151
+ char* value)
152
+ cdef int xsltSetSecurityPrefs(xsltSecurityPrefs* sec,
153
+ xsltSecurityOption option,
154
+ xsltSecurityCheck func)
155
+ cdef xsltSecurityCheck xsltGetSecurityPrefs(
156
+ xsltSecurityPrefs* sec,
157
+ xsltSecurityOption option)
158
+ cdef int xsltSetCtxtSecurityPrefs(xsltSecurityPrefs* sec,
159
+ xsltTransformContext* ctxt)
160
+ cdef xmlDoc* xsltGetProfileInformation(xsltTransformContext* ctxt)
161
+
162
+ cdef extern from "libxslt/variables.h" nogil:
163
+ cdef int xsltQuoteUserParams(xsltTransformContext* ctxt,
164
+ const_char** params)
165
+ cdef int xsltQuoteOneUserParam(xsltTransformContext* ctxt,
166
+ const_xmlChar* name,
167
+ const_xmlChar* value)
168
+
169
+ cdef extern from "libxslt/extra.h" nogil:
170
+ const_xmlChar* XSLT_LIBXSLT_NAMESPACE
171
+ const_xmlChar* XSLT_XALAN_NAMESPACE
172
+ const_xmlChar* XSLT_SAXON_NAMESPACE
173
+ const_xmlChar* XSLT_XT_NAMESPACE
174
+
175
+ cdef xmlXPathFunction xsltFunctionNodeSet
176
+ cdef void xsltRegisterAllExtras()
177
+
178
+ cdef extern from "libexslt/exslt.h" nogil:
179
+ cdef void exsltRegisterAll()
180
+
181
+ # libexslt 1.1.25+
182
+ const_xmlChar* EXSLT_DATE_NAMESPACE
183
+ const_xmlChar* EXSLT_SETS_NAMESPACE
184
+ const_xmlChar* EXSLT_MATH_NAMESPACE
185
+ const_xmlChar* EXSLT_STRINGS_NAMESPACE
186
+
187
+ cdef int exsltDateXpathCtxtRegister(xmlXPathContext* ctxt, const_xmlChar* prefix)
188
+ cdef int exsltSetsXpathCtxtRegister(xmlXPathContext* ctxt, const_xmlChar* prefix)
189
+ cdef int exsltMathXpathCtxtRegister(xmlXPathContext* ctxt, const_xmlChar* prefix)
190
+ cdef int exsltStrXpathCtxtRegister(xmlXPathContext* ctxt, const_xmlChar* prefix)