lxml 5.3.2__cp310-cp310-win32.win32.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 (175) hide show
  1. lxml/ElementInclude.py +244 -0
  2. lxml/__init__.py +22 -0
  3. lxml/_elementpath.cp310-win32.pyd +0 -0
  4. lxml/_elementpath.py +341 -0
  5. lxml/apihelpers.pxi +1793 -0
  6. lxml/builder.cp310-win32.pyd +0 -0
  7. lxml/builder.py +232 -0
  8. lxml/classlookup.pxi +580 -0
  9. lxml/cleanup.pxi +215 -0
  10. lxml/cssselect.py +101 -0
  11. lxml/debug.pxi +90 -0
  12. lxml/docloader.pxi +178 -0
  13. lxml/doctestcompare.py +488 -0
  14. lxml/dtd.pxi +479 -0
  15. lxml/etree.cp310-win32.pyd +0 -0
  16. lxml/etree.h +248 -0
  17. lxml/etree.pyx +3732 -0
  18. lxml/etree_api.h +195 -0
  19. lxml/extensions.pxi +833 -0
  20. lxml/html/ElementSoup.py +10 -0
  21. lxml/html/__init__.py +1923 -0
  22. lxml/html/_diffcommand.py +86 -0
  23. lxml/html/_html5builder.py +100 -0
  24. lxml/html/_setmixin.py +56 -0
  25. lxml/html/builder.py +133 -0
  26. lxml/html/clean.py +21 -0
  27. lxml/html/defs.py +135 -0
  28. lxml/html/diff.cp310-win32.pyd +0 -0
  29. lxml/html/diff.py +878 -0
  30. lxml/html/formfill.py +299 -0
  31. lxml/html/html5parser.py +260 -0
  32. lxml/html/soupparser.py +314 -0
  33. lxml/html/usedoctest.py +13 -0
  34. lxml/includes/__init__.pxd +0 -0
  35. lxml/includes/__init__.py +0 -0
  36. lxml/includes/c14n.pxd +25 -0
  37. lxml/includes/config.pxd +3 -0
  38. lxml/includes/dtdvalid.pxd +18 -0
  39. lxml/includes/etree_defs.h +379 -0
  40. lxml/includes/etreepublic.pxd +237 -0
  41. lxml/includes/extlibs/__init__.py +0 -0
  42. lxml/includes/extlibs/zconf.h +543 -0
  43. lxml/includes/extlibs/zlib.h +1938 -0
  44. lxml/includes/htmlparser.pxd +56 -0
  45. lxml/includes/libexslt/__init__.py +0 -0
  46. lxml/includes/libexslt/exslt.h +108 -0
  47. lxml/includes/libexslt/exsltconfig.h +70 -0
  48. lxml/includes/libexslt/exsltexports.h +63 -0
  49. lxml/includes/libexslt/libexslt.h +29 -0
  50. lxml/includes/libxml/HTMLparser.h +320 -0
  51. lxml/includes/libxml/HTMLtree.h +147 -0
  52. lxml/includes/libxml/SAX.h +204 -0
  53. lxml/includes/libxml/SAX2.h +173 -0
  54. lxml/includes/libxml/__init__.py +0 -0
  55. lxml/includes/libxml/c14n.h +128 -0
  56. lxml/includes/libxml/catalog.h +182 -0
  57. lxml/includes/libxml/chvalid.h +230 -0
  58. lxml/includes/libxml/debugXML.h +217 -0
  59. lxml/includes/libxml/dict.h +81 -0
  60. lxml/includes/libxml/encoding.h +233 -0
  61. lxml/includes/libxml/entities.h +151 -0
  62. lxml/includes/libxml/globals.h +529 -0
  63. lxml/includes/libxml/hash.h +236 -0
  64. lxml/includes/libxml/list.h +137 -0
  65. lxml/includes/libxml/nanoftp.h +186 -0
  66. lxml/includes/libxml/nanohttp.h +81 -0
  67. lxml/includes/libxml/parser.h +1265 -0
  68. lxml/includes/libxml/parserInternals.h +662 -0
  69. lxml/includes/libxml/pattern.h +100 -0
  70. lxml/includes/libxml/relaxng.h +218 -0
  71. lxml/includes/libxml/schemasInternals.h +958 -0
  72. lxml/includes/libxml/schematron.h +142 -0
  73. lxml/includes/libxml/threads.h +94 -0
  74. lxml/includes/libxml/tree.h +1314 -0
  75. lxml/includes/libxml/uri.h +94 -0
  76. lxml/includes/libxml/valid.h +448 -0
  77. lxml/includes/libxml/xinclude.h +129 -0
  78. lxml/includes/libxml/xlink.h +189 -0
  79. lxml/includes/libxml/xmlIO.h +369 -0
  80. lxml/includes/libxml/xmlautomata.h +146 -0
  81. lxml/includes/libxml/xmlerror.h +919 -0
  82. lxml/includes/libxml/xmlexports.h +50 -0
  83. lxml/includes/libxml/xmlmemory.h +228 -0
  84. lxml/includes/libxml/xmlmodule.h +57 -0
  85. lxml/includes/libxml/xmlreader.h +428 -0
  86. lxml/includes/libxml/xmlregexp.h +222 -0
  87. lxml/includes/libxml/xmlsave.h +88 -0
  88. lxml/includes/libxml/xmlschemas.h +246 -0
  89. lxml/includes/libxml/xmlschemastypes.h +152 -0
  90. lxml/includes/libxml/xmlstring.h +140 -0
  91. lxml/includes/libxml/xmlunicode.h +202 -0
  92. lxml/includes/libxml/xmlversion.h +526 -0
  93. lxml/includes/libxml/xmlwriter.h +488 -0
  94. lxml/includes/libxml/xpath.h +575 -0
  95. lxml/includes/libxml/xpathInternals.h +632 -0
  96. lxml/includes/libxml/xpointer.h +137 -0
  97. lxml/includes/libxslt/__init__.py +0 -0
  98. lxml/includes/libxslt/attributes.h +39 -0
  99. lxml/includes/libxslt/documents.h +93 -0
  100. lxml/includes/libxslt/extensions.h +262 -0
  101. lxml/includes/libxslt/extra.h +72 -0
  102. lxml/includes/libxslt/functions.h +78 -0
  103. lxml/includes/libxslt/imports.h +75 -0
  104. lxml/includes/libxslt/keys.h +53 -0
  105. lxml/includes/libxslt/libxslt.h +36 -0
  106. lxml/includes/libxslt/namespaces.h +68 -0
  107. lxml/includes/libxslt/numbersInternals.h +73 -0
  108. lxml/includes/libxslt/preproc.h +43 -0
  109. lxml/includes/libxslt/security.h +104 -0
  110. lxml/includes/libxslt/templates.h +77 -0
  111. lxml/includes/libxslt/transform.h +207 -0
  112. lxml/includes/libxslt/trio.h +216 -0
  113. lxml/includes/libxslt/triodef.h +220 -0
  114. lxml/includes/libxslt/variables.h +118 -0
  115. lxml/includes/libxslt/win32config.h +51 -0
  116. lxml/includes/libxslt/xslt.h +110 -0
  117. lxml/includes/libxslt/xsltInternals.h +1992 -0
  118. lxml/includes/libxslt/xsltconfig.h +179 -0
  119. lxml/includes/libxslt/xsltexports.h +64 -0
  120. lxml/includes/libxslt/xsltlocale.h +44 -0
  121. lxml/includes/libxslt/xsltutils.h +343 -0
  122. lxml/includes/lxml-version.h +3 -0
  123. lxml/includes/relaxng.pxd +64 -0
  124. lxml/includes/schematron.pxd +34 -0
  125. lxml/includes/tree.pxd +494 -0
  126. lxml/includes/uri.pxd +5 -0
  127. lxml/includes/xinclude.pxd +22 -0
  128. lxml/includes/xmlerror.pxd +852 -0
  129. lxml/includes/xmlparser.pxd +265 -0
  130. lxml/includes/xmlschema.pxd +35 -0
  131. lxml/includes/xpath.pxd +136 -0
  132. lxml/includes/xslt.pxd +190 -0
  133. lxml/isoschematron/__init__.py +348 -0
  134. lxml/isoschematron/resources/rng/iso-schematron.rng +709 -0
  135. lxml/isoschematron/resources/xsl/RNG2Schtrn.xsl +75 -0
  136. lxml/isoschematron/resources/xsl/XSD2Schtrn.xsl +77 -0
  137. lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl +313 -0
  138. lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_dsdl_include.xsl +1160 -0
  139. lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_message.xsl +55 -0
  140. lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_skeleton_for_xslt1.xsl +1796 -0
  141. lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_svrl_for_xslt1.xsl +588 -0
  142. lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt +84 -0
  143. lxml/iterparse.pxi +438 -0
  144. lxml/lxml.etree.h +248 -0
  145. lxml/lxml.etree_api.h +195 -0
  146. lxml/nsclasses.pxi +281 -0
  147. lxml/objectify.cp310-win32.pyd +0 -0
  148. lxml/objectify.pyx +2145 -0
  149. lxml/objectpath.pxi +332 -0
  150. lxml/parser.pxi +2000 -0
  151. lxml/parsertarget.pxi +180 -0
  152. lxml/proxy.pxi +619 -0
  153. lxml/public-api.pxi +178 -0
  154. lxml/pyclasslookup.py +3 -0
  155. lxml/readonlytree.pxi +565 -0
  156. lxml/relaxng.pxi +165 -0
  157. lxml/sax.cp310-win32.pyd +0 -0
  158. lxml/sax.py +275 -0
  159. lxml/saxparser.pxi +875 -0
  160. lxml/schematron.pxi +168 -0
  161. lxml/serializer.pxi +1781 -0
  162. lxml/usedoctest.py +13 -0
  163. lxml/xinclude.pxi +67 -0
  164. lxml/xmlerror.pxi +1654 -0
  165. lxml/xmlid.pxi +179 -0
  166. lxml/xmlschema.pxi +215 -0
  167. lxml/xpath.pxi +487 -0
  168. lxml/xslt.pxi +950 -0
  169. lxml/xsltext.pxi +242 -0
  170. lxml-5.3.2.dist-info/METADATA +100 -0
  171. lxml-5.3.2.dist-info/RECORD +175 -0
  172. lxml-5.3.2.dist-info/WHEEL +5 -0
  173. lxml-5.3.2.dist-info/licenses/LICENSE.txt +29 -0
  174. lxml-5.3.2.dist-info/licenses/LICENSES.txt +29 -0
  175. lxml-5.3.2.dist-info/top_level.txt +1 -0
@@ -0,0 +1,34 @@
1
+ from lxml.includes cimport xmlerror
2
+ from lxml.includes.tree cimport xmlDoc
3
+
4
+ cdef extern from "libxml/schematron.h" nogil:
5
+ ctypedef struct xmlSchematron
6
+ ctypedef struct xmlSchematronParserCtxt
7
+ ctypedef struct xmlSchematronValidCtxt
8
+
9
+ ctypedef enum xmlSchematronValidOptions:
10
+ XML_SCHEMATRON_OUT_QUIET = 1 # quiet no report
11
+ XML_SCHEMATRON_OUT_TEXT = 2 # build a textual report
12
+ XML_SCHEMATRON_OUT_XML = 4 # output SVRL
13
+ XML_SCHEMATRON_OUT_ERROR = 8 # output via xmlStructuredErrorFunc
14
+ XML_SCHEMATRON_OUT_FILE = 256 # output to a file descriptor
15
+ XML_SCHEMATRON_OUT_BUFFER = 512 # output to a buffer
16
+ XML_SCHEMATRON_OUT_IO = 1024 # output to I/O mechanism
17
+
18
+ cdef xmlSchematronParserCtxt* xmlSchematronNewDocParserCtxt(
19
+ xmlDoc* doc)
20
+ cdef xmlSchematronParserCtxt* xmlSchematronNewParserCtxt(
21
+ char* filename) nogil
22
+ cdef xmlSchematronValidCtxt* xmlSchematronNewValidCtxt(
23
+ xmlSchematron* schema, int options)
24
+
25
+ cdef xmlSchematron* xmlSchematronParse(xmlSchematronParserCtxt* ctxt)
26
+ cdef int xmlSchematronValidateDoc(xmlSchematronValidCtxt* ctxt,
27
+ xmlDoc* instance)
28
+
29
+ cdef void xmlSchematronFreeParserCtxt(xmlSchematronParserCtxt* ctxt)
30
+ cdef void xmlSchematronFreeValidCtxt(xmlSchematronValidCtxt* ctxt)
31
+ cdef void xmlSchematronFree(xmlSchematron* schema)
32
+ cdef void xmlSchematronSetValidStructuredErrors(
33
+ xmlSchematronValidCtxt* ctxt,
34
+ xmlerror.xmlStructuredErrorFunc error_func, void *data)
lxml/includes/tree.pxd ADDED
@@ -0,0 +1,494 @@
1
+ from libc cimport stdio
2
+ from libc.string cimport const_char, const_uchar
3
+
4
+ cdef extern from "lxml-version.h":
5
+ # deprecated declaration, use etreepublic.pxd instead
6
+ cdef char* LXML_VERSION_STRING
7
+
8
+ cdef extern from "libxml/xmlversion.h":
9
+ cdef const_char* xmlParserVersion
10
+ cdef int LIBXML_VERSION
11
+
12
+ cdef extern from "libxml/xmlstring.h" nogil:
13
+ ctypedef unsigned char xmlChar
14
+ ctypedef const xmlChar const_xmlChar "const xmlChar"
15
+ cdef int xmlStrlen(const_xmlChar* str)
16
+ cdef xmlChar* xmlStrdup(const_xmlChar* cur)
17
+ cdef int xmlStrncmp(const_xmlChar* str1, const_xmlChar* str2, int length)
18
+ cdef int xmlStrcmp(const_xmlChar* str1, const_xmlChar* str2)
19
+ cdef int xmlStrcasecmp(const xmlChar *str1, const xmlChar *str2)
20
+ cdef const_xmlChar* xmlStrstr(const_xmlChar* str1, const_xmlChar* str2)
21
+ cdef const_xmlChar* xmlStrchr(const_xmlChar* str1, xmlChar ch)
22
+ cdef const_xmlChar* _xcstr "(const xmlChar*)PyBytes_AS_STRING" (object s)
23
+
24
+ cdef extern from "libxml/encoding.h" nogil:
25
+ ctypedef enum xmlCharEncoding:
26
+ XML_CHAR_ENCODING_ERROR = -1 # No char encoding detected
27
+ XML_CHAR_ENCODING_NONE = 0 # No char encoding detected
28
+ XML_CHAR_ENCODING_UTF8 = 1 # UTF-8
29
+ XML_CHAR_ENCODING_UTF16LE = 2 # UTF-16 little endian
30
+ XML_CHAR_ENCODING_UTF16BE = 3 # UTF-16 big endian
31
+ XML_CHAR_ENCODING_UCS4LE = 4 # UCS-4 little endian
32
+ XML_CHAR_ENCODING_UCS4BE = 5 # UCS-4 big endian
33
+ XML_CHAR_ENCODING_EBCDIC = 6 # EBCDIC uh!
34
+ XML_CHAR_ENCODING_UCS4_2143 = 7 # UCS-4 unusual ordering
35
+ XML_CHAR_ENCODING_UCS4_3412 = 8 # UCS-4 unusual ordering
36
+ XML_CHAR_ENCODING_UCS2 = 9 # UCS-2
37
+ XML_CHAR_ENCODING_8859_1 = 10 # ISO-8859-1 ISO Latin 1
38
+ XML_CHAR_ENCODING_8859_2 = 11 # ISO-8859-2 ISO Latin 2
39
+ XML_CHAR_ENCODING_8859_3 = 12 # ISO-8859-3
40
+ XML_CHAR_ENCODING_8859_4 = 13 # ISO-8859-4
41
+ XML_CHAR_ENCODING_8859_5 = 14 # ISO-8859-5
42
+ XML_CHAR_ENCODING_8859_6 = 15 # ISO-8859-6
43
+ XML_CHAR_ENCODING_8859_7 = 16 # ISO-8859-7
44
+ XML_CHAR_ENCODING_8859_8 = 17 # ISO-8859-8
45
+ XML_CHAR_ENCODING_8859_9 = 18 # ISO-8859-9
46
+ XML_CHAR_ENCODING_2022_JP = 19 # ISO-2022-JP
47
+ XML_CHAR_ENCODING_SHIFT_JIS = 20 # Shift_JIS
48
+ XML_CHAR_ENCODING_EUC_JP = 21 # EUC-JP
49
+ XML_CHAR_ENCODING_ASCII = 22 # pure ASCII
50
+
51
+ ctypedef struct xmlCharEncodingHandler:
52
+ char* name
53
+
54
+ cdef xmlCharEncodingHandler* xmlFindCharEncodingHandler(char* name)
55
+ cdef xmlCharEncodingHandler* xmlGetCharEncodingHandler(
56
+ xmlCharEncoding enc)
57
+ cdef int xmlCharEncCloseFunc(xmlCharEncodingHandler* handler)
58
+ cdef xmlCharEncoding xmlDetectCharEncoding(const_xmlChar* text, int len)
59
+ cdef const_char* xmlGetCharEncodingName(xmlCharEncoding enc)
60
+ cdef xmlCharEncoding xmlParseCharEncoding(char* name)
61
+ ctypedef int (*xmlCharEncodingOutputFunc)(
62
+ unsigned char *out_buf, int *outlen, const_uchar *in_buf, int *inlen)
63
+
64
+ cdef extern from "libxml/chvalid.h" nogil:
65
+ cdef int xmlIsChar_ch(char c)
66
+ cdef int xmlIsCharQ(int ch)
67
+
68
+ cdef extern from "libxml/hash.h":
69
+ ctypedef struct xmlHashTable
70
+ ctypedef void (*xmlHashScanner)(void* payload, void* data, const_xmlChar* name) noexcept # may require GIL!
71
+ void xmlHashScan(xmlHashTable* table, xmlHashScanner f, void* data) nogil
72
+ void* xmlHashLookup(xmlHashTable* table, const_xmlChar* name) nogil
73
+ ctypedef void (*xmlHashDeallocator)(void *payload, xmlChar *name) noexcept
74
+ cdef xmlHashTable* xmlHashCreate(int size) nogil
75
+ cdef xmlHashTable* xmlHashCreateDict(int size, xmlDict *dict) nogil
76
+ cdef int xmlHashSize(xmlHashTable* table) nogil
77
+ cdef void xmlHashFree(xmlHashTable* table, xmlHashDeallocator f) nogil
78
+
79
+ cdef extern from * nogil: # actually "libxml/dict.h"
80
+ # libxml/dict.h appears to be broken to include in C
81
+ ctypedef struct xmlDict
82
+ cdef const_xmlChar* xmlDictLookup(xmlDict* dict, const_xmlChar* name, int len)
83
+ cdef const_xmlChar* xmlDictExists(xmlDict* dict, const_xmlChar* name, int len)
84
+ cdef int xmlDictOwns(xmlDict* dict, const_xmlChar* name)
85
+ cdef size_t xmlDictSize(xmlDict* dict)
86
+
87
+ cdef extern from "libxml/tree.h" nogil:
88
+ ctypedef struct xmlDoc
89
+ ctypedef struct xmlAttr
90
+ ctypedef struct xmlNotationTable
91
+
92
+ ctypedef enum xmlElementType:
93
+ XML_ELEMENT_NODE= 1
94
+ XML_ATTRIBUTE_NODE= 2
95
+ XML_TEXT_NODE= 3
96
+ XML_CDATA_SECTION_NODE= 4
97
+ XML_ENTITY_REF_NODE= 5
98
+ XML_ENTITY_NODE= 6
99
+ XML_PI_NODE= 7
100
+ XML_COMMENT_NODE= 8
101
+ XML_DOCUMENT_NODE= 9
102
+ XML_DOCUMENT_TYPE_NODE= 10
103
+ XML_DOCUMENT_FRAG_NODE= 11
104
+ XML_NOTATION_NODE= 12
105
+ XML_HTML_DOCUMENT_NODE= 13
106
+ XML_DTD_NODE= 14
107
+ XML_ELEMENT_DECL= 15
108
+ XML_ATTRIBUTE_DECL= 16
109
+ XML_ENTITY_DECL= 17
110
+ XML_NAMESPACE_DECL= 18
111
+ XML_XINCLUDE_START= 19
112
+ XML_XINCLUDE_END= 20
113
+
114
+ ctypedef enum xmlElementTypeVal:
115
+ XML_ELEMENT_TYPE_UNDEFINED= 0
116
+ XML_ELEMENT_TYPE_EMPTY= 1
117
+ XML_ELEMENT_TYPE_ANY= 2
118
+ XML_ELEMENT_TYPE_MIXED= 3
119
+ XML_ELEMENT_TYPE_ELEMENT= 4
120
+
121
+ ctypedef enum xmlElementContentType:
122
+ XML_ELEMENT_CONTENT_PCDATA= 1
123
+ XML_ELEMENT_CONTENT_ELEMENT= 2
124
+ XML_ELEMENT_CONTENT_SEQ= 3
125
+ XML_ELEMENT_CONTENT_OR= 4
126
+
127
+ ctypedef enum xmlElementContentOccur:
128
+ XML_ELEMENT_CONTENT_ONCE= 1
129
+ XML_ELEMENT_CONTENT_OPT= 2
130
+ XML_ELEMENT_CONTENT_MULT= 3
131
+ XML_ELEMENT_CONTENT_PLUS= 4
132
+
133
+ ctypedef enum xmlAttributeType:
134
+ XML_ATTRIBUTE_CDATA = 1
135
+ XML_ATTRIBUTE_ID= 2
136
+ XML_ATTRIBUTE_IDREF= 3
137
+ XML_ATTRIBUTE_IDREFS= 4
138
+ XML_ATTRIBUTE_ENTITY= 5
139
+ XML_ATTRIBUTE_ENTITIES= 6
140
+ XML_ATTRIBUTE_NMTOKEN= 7
141
+ XML_ATTRIBUTE_NMTOKENS= 8
142
+ XML_ATTRIBUTE_ENUMERATION= 9
143
+ XML_ATTRIBUTE_NOTATION= 10
144
+
145
+ ctypedef enum xmlAttributeDefault:
146
+ XML_ATTRIBUTE_NONE= 1
147
+ XML_ATTRIBUTE_REQUIRED= 2
148
+ XML_ATTRIBUTE_IMPLIED= 3
149
+ XML_ATTRIBUTE_FIXED= 4
150
+
151
+ ctypedef enum xmlEntityType:
152
+ XML_INTERNAL_GENERAL_ENTITY= 1
153
+ XML_EXTERNAL_GENERAL_PARSED_ENTITY= 2
154
+ XML_EXTERNAL_GENERAL_UNPARSED_ENTITY= 3
155
+ XML_INTERNAL_PARAMETER_ENTITY= 4
156
+ XML_EXTERNAL_PARAMETER_ENTITY= 5
157
+ XML_INTERNAL_PREDEFINED_ENTITY= 6
158
+
159
+ ctypedef enum xmlDocProperties:
160
+ XML_DOC_WELLFORMED = 1 # /* document is XML well formed */
161
+ XML_DOC_NSVALID = 2 # /* document is Namespace valid */
162
+ XML_DOC_OLD10 = 4 # /* parsed with old XML-1.0 parser */
163
+ XML_DOC_DTDVALID = 8 # /* DTD validation was successful */
164
+ XML_DOC_XINCLUDE = 16 # /* XInclude substitution was done */
165
+ XML_DOC_USERBUILT = 32 # /* Document was built using the API
166
+ # and not by parsing an instance */
167
+ XML_DOC_INTERNAL = 64 # /* built for internal processing */
168
+ XML_DOC_HTML = 128 # /* parsed or built HTML document */
169
+
170
+ ctypedef struct xmlNs:
171
+ const_xmlChar* href
172
+ const_xmlChar* prefix
173
+ xmlNs* next
174
+
175
+ ctypedef struct xmlNode:
176
+ void* _private
177
+ xmlElementType type
178
+ const_xmlChar* name
179
+ xmlNode* children
180
+ xmlNode* last
181
+ xmlNode* parent
182
+ xmlNode* next
183
+ xmlNode* prev
184
+ xmlDoc* doc
185
+ xmlChar* content
186
+ xmlAttr* properties
187
+ xmlNs* ns
188
+ xmlNs* nsDef
189
+ unsigned short line
190
+
191
+ ctypedef struct xmlElementContent:
192
+ xmlElementContentType type
193
+ xmlElementContentOccur ocur
194
+ const_xmlChar *name
195
+ xmlElementContent *c1
196
+ xmlElementContent *c2
197
+ xmlElementContent *parent
198
+ const_xmlChar *prefix
199
+
200
+ ctypedef struct xmlEnumeration:
201
+ xmlEnumeration *next
202
+ const_xmlChar *name
203
+
204
+ ctypedef struct xmlAttribute:
205
+ void* _private
206
+ xmlElementType type
207
+ const_xmlChar* name
208
+ xmlNode* children
209
+ xmlNode* last
210
+ xmlDtd* parent
211
+ xmlNode* next
212
+ xmlNode* prev
213
+ xmlDoc* doc
214
+ xmlAttribute* nexth
215
+ xmlAttributeType atype
216
+ xmlAttributeDefault def_ "def"
217
+ const_xmlChar* defaultValue
218
+ xmlEnumeration* tree
219
+ const_xmlChar* prefix
220
+ const_xmlChar* elem
221
+
222
+ ctypedef struct xmlElement:
223
+ void* _private
224
+ xmlElementType type
225
+ const_xmlChar* name
226
+ xmlNode* children
227
+ xmlNode* last
228
+ xmlNode* parent
229
+ xmlNode* next
230
+ xmlNode* prev
231
+ xmlDoc* doc
232
+ xmlElementTypeVal etype
233
+ xmlElementContent* content
234
+ xmlAttribute* attributes
235
+ const_xmlChar* prefix
236
+ void *contModel
237
+
238
+ ctypedef struct xmlEntity:
239
+ void* _private
240
+ xmlElementType type
241
+ const_xmlChar* name
242
+ xmlNode* children
243
+ xmlNode* last
244
+ xmlDtd* parent
245
+ xmlNode* next
246
+ xmlNode* prev
247
+ xmlDoc* doc
248
+ xmlChar* orig
249
+ xmlChar* content
250
+ int length
251
+ xmlEntityType etype
252
+ const_xmlChar* ExternalID
253
+ const_xmlChar* SystemID
254
+ xmlEntity* nexte
255
+ const_xmlChar* URI
256
+ int owner
257
+ int checked
258
+
259
+ ctypedef struct xmlDtd:
260
+ const_xmlChar* name
261
+ const_xmlChar* ExternalID
262
+ const_xmlChar* SystemID
263
+ void* notations
264
+ void* entities
265
+ void* pentities
266
+ void* attributes
267
+ void* elements
268
+ xmlNode* children
269
+ xmlNode* last
270
+ xmlDoc* doc
271
+
272
+ ctypedef struct xmlDoc:
273
+ xmlElementType type
274
+ char* name
275
+ xmlNode* children
276
+ xmlNode* last
277
+ xmlNode* parent
278
+ xmlNode* next
279
+ xmlNode* prev
280
+ xmlDoc* doc
281
+ xmlDict* dict
282
+ xmlHashTable* ids
283
+ int standalone
284
+ const_xmlChar* version
285
+ const_xmlChar* encoding
286
+ const_xmlChar* URL
287
+ void* _private
288
+ xmlDtd* intSubset
289
+ xmlDtd* extSubset
290
+ int properties
291
+
292
+ ctypedef struct xmlAttr:
293
+ void* _private
294
+ xmlElementType type
295
+ const_xmlChar* name
296
+ xmlNode* children
297
+ xmlNode* last
298
+ xmlNode* parent
299
+ xmlAttr* next
300
+ xmlAttr* prev
301
+ xmlDoc* doc
302
+ xmlNs* ns
303
+ xmlAttributeType atype
304
+
305
+ ctypedef struct xmlID:
306
+ const_xmlChar* value
307
+ const_xmlChar* name
308
+ xmlAttr* attr
309
+ xmlDoc* doc
310
+
311
+ ctypedef struct xmlBuffer
312
+
313
+ ctypedef struct xmlBuf # new in libxml2 2.9
314
+
315
+ ctypedef struct xmlOutputBuffer:
316
+ xmlBuf* buffer
317
+ xmlBuf* conv
318
+ int error
319
+
320
+ const_xmlChar* XML_XML_NAMESPACE
321
+
322
+ cdef void xmlFreeDoc(xmlDoc* cur)
323
+ cdef void xmlFreeDtd(xmlDtd* cur)
324
+ cdef void xmlFreeNode(xmlNode* cur)
325
+ cdef void xmlFreeNsList(xmlNs* ns)
326
+ cdef void xmlFreeNs(xmlNs* ns)
327
+ cdef void xmlFree(void* buf)
328
+
329
+ cdef xmlNode* xmlNewNode(xmlNs* ns, const_xmlChar* name)
330
+ cdef xmlNode* xmlNewDocText(xmlDoc* doc, const_xmlChar* content)
331
+ cdef xmlNode* xmlNewDocComment(xmlDoc* doc, const_xmlChar* content)
332
+ cdef xmlNode* xmlNewDocPI(xmlDoc* doc, const_xmlChar* name, const_xmlChar* content)
333
+ cdef xmlNode* xmlNewReference(xmlDoc* doc, const_xmlChar* name)
334
+ cdef xmlNode* xmlNewCDataBlock(xmlDoc* doc, const_xmlChar* text, int len)
335
+ cdef xmlNs* xmlNewNs(xmlNode* node, const_xmlChar* href, const_xmlChar* prefix)
336
+ cdef xmlNode* xmlAddChild(xmlNode* parent, xmlNode* cur)
337
+ cdef xmlNode* xmlReplaceNode(xmlNode* old, xmlNode* cur)
338
+ cdef xmlNode* xmlAddPrevSibling(xmlNode* cur, xmlNode* elem)
339
+ cdef xmlNode* xmlAddNextSibling(xmlNode* cur, xmlNode* elem)
340
+ cdef xmlNode* xmlNewDocNode(xmlDoc* doc, xmlNs* ns,
341
+ const_xmlChar* name, const_xmlChar* content)
342
+ cdef xmlDoc* xmlNewDoc(const_xmlChar* version)
343
+ cdef xmlAttr* xmlNewProp(xmlNode* node, const_xmlChar* name, const_xmlChar* value)
344
+ cdef xmlAttr* xmlNewNsProp(xmlNode* node, xmlNs* ns,
345
+ const_xmlChar* name, const_xmlChar* value)
346
+ cdef xmlChar* xmlGetNoNsProp(xmlNode* node, const_xmlChar* name)
347
+ cdef xmlChar* xmlGetNsProp(xmlNode* node, const_xmlChar* name, const_xmlChar* nameSpace)
348
+ cdef void xmlSetNs(xmlNode* node, xmlNs* ns)
349
+ cdef xmlAttr* xmlSetProp(xmlNode* node, const_xmlChar* name, const_xmlChar* value)
350
+ cdef xmlAttr* xmlSetNsProp(xmlNode* node, xmlNs* ns,
351
+ const_xmlChar* name, const_xmlChar* value)
352
+ cdef int xmlRemoveID(xmlDoc* doc, xmlAttr* cur)
353
+ cdef int xmlRemoveProp(xmlAttr* cur)
354
+ cdef void xmlFreePropList(xmlAttr* cur)
355
+ cdef xmlChar* xmlGetNodePath(xmlNode* node)
356
+ cdef void xmlDocDumpMemory(xmlDoc* cur, char** mem, int* size)
357
+ cdef void xmlDocDumpMemoryEnc(xmlDoc* cur, char** mem, int* size,
358
+ char* encoding)
359
+ cdef int xmlSaveFileTo(xmlOutputBuffer* out, xmlDoc* cur,
360
+ char* encoding)
361
+
362
+ cdef void xmlUnlinkNode(xmlNode* cur)
363
+ cdef xmlNode* xmlDocSetRootElement(xmlDoc* doc, xmlNode* root)
364
+ cdef xmlNode* xmlDocGetRootElement(xmlDoc* doc)
365
+ cdef void xmlSetTreeDoc(xmlNode* tree, xmlDoc* doc)
366
+ cdef xmlAttr* xmlHasProp(xmlNode* node, const_xmlChar* name)
367
+ cdef xmlAttr* xmlHasNsProp(xmlNode* node, const_xmlChar* name, const_xmlChar* nameSpace)
368
+ cdef xmlChar* xmlNodeGetContent(xmlNode* cur)
369
+ cdef int xmlNodeBufGetContent(xmlBuffer* buffer, xmlNode* cur)
370
+ cdef xmlNs* xmlSearchNs(xmlDoc* doc, xmlNode* node, const_xmlChar* prefix)
371
+ cdef xmlNs* xmlSearchNsByHref(xmlDoc* doc, xmlNode* node, const_xmlChar* href)
372
+ cdef int xmlIsBlankNode(xmlNode* node)
373
+ cdef long xmlGetLineNo(xmlNode* node)
374
+ cdef void xmlElemDump(stdio.FILE* f, xmlDoc* doc, xmlNode* cur)
375
+ cdef void xmlNodeDumpOutput(xmlOutputBuffer* buf,
376
+ xmlDoc* doc, xmlNode* cur, int level,
377
+ int format, const_char* encoding)
378
+ cdef void xmlBufAttrSerializeTxtContent(xmlOutputBuffer *buf, xmlDoc *doc,
379
+ xmlAttr *attr, const_xmlChar *string)
380
+ cdef void xmlNodeSetName(xmlNode* cur, const_xmlChar* name)
381
+ cdef void xmlNodeSetContent(xmlNode* cur, const_xmlChar* content)
382
+ cdef xmlDtd* xmlCopyDtd(xmlDtd* dtd)
383
+ cdef xmlDoc* xmlCopyDoc(xmlDoc* doc, int recursive)
384
+ cdef xmlNode* xmlCopyNode(xmlNode* node, int extended)
385
+ cdef xmlNode* xmlDocCopyNode(xmlNode* node, xmlDoc* doc, int extended)
386
+ cdef int xmlReconciliateNs(xmlDoc* doc, xmlNode* tree)
387
+ cdef xmlNs* xmlNewReconciliedNs(xmlDoc* doc, xmlNode* tree, xmlNs* ns)
388
+ cdef xmlBuffer* xmlBufferCreate()
389
+ cdef void xmlBufferWriteChar(xmlBuffer* buf, char* string)
390
+ cdef void xmlBufferFree(xmlBuffer* buf)
391
+ cdef const_xmlChar* xmlBufferContent(xmlBuffer* buf)
392
+ cdef int xmlBufferLength(xmlBuffer* buf)
393
+ cdef const_xmlChar* xmlBufContent(xmlBuf* buf) # new in libxml2 2.9
394
+ cdef size_t xmlBufUse(xmlBuf* buf) # new in libxml2 2.9
395
+ cdef int xmlKeepBlanksDefault(int val)
396
+ cdef xmlChar* xmlNodeGetBase(xmlDoc* doc, xmlNode* node)
397
+ cdef xmlDtd* xmlCreateIntSubset(xmlDoc* doc, const_xmlChar* name,
398
+ const_xmlChar* ExternalID, const_xmlChar* SystemID)
399
+ cdef void xmlNodeSetBase(xmlNode* node, const_xmlChar* uri)
400
+ cdef int xmlValidateNCName(const_xmlChar* value, int space)
401
+
402
+ cdef extern from "libxml/uri.h" nogil:
403
+ cdef const_xmlChar* xmlBuildURI(const_xmlChar* href, const_xmlChar* base)
404
+
405
+ cdef extern from "libxml/HTMLtree.h" nogil:
406
+ cdef void htmlNodeDumpFormatOutput(xmlOutputBuffer* buf,
407
+ xmlDoc* doc, xmlNode* cur,
408
+ char* encoding, int format)
409
+ cdef xmlDoc* htmlNewDoc(const_xmlChar* uri, const_xmlChar* externalID)
410
+
411
+ cdef extern from "libxml/valid.h" nogil:
412
+ cdef xmlAttr* xmlGetID(xmlDoc* doc, const_xmlChar* ID)
413
+ cdef void xmlDumpNotationTable(xmlBuffer* buffer,
414
+ xmlNotationTable* table)
415
+ cdef int xmlValidateNameValue(const_xmlChar* value)
416
+
417
+ cdef extern from "libxml/xmlIO.h":
418
+ cdef int xmlOutputBufferWrite(xmlOutputBuffer* out,
419
+ int len, const_char* str) nogil
420
+ cdef int xmlOutputBufferWriteString(xmlOutputBuffer* out, const_char* str) nogil
421
+ cdef int xmlOutputBufferWriteEscape(xmlOutputBuffer* out,
422
+ const_xmlChar* str,
423
+ xmlCharEncodingOutputFunc escapefunc) nogil
424
+ cdef int xmlOutputBufferFlush(xmlOutputBuffer* out) nogil
425
+ cdef int xmlOutputBufferClose(xmlOutputBuffer* out) nogil
426
+
427
+ ctypedef int (*xmlInputReadCallback)(void* context,
428
+ char* buffer, int len) noexcept nogil
429
+ ctypedef int (*xmlInputCloseCallback)(void* context) noexcept nogil
430
+
431
+ ctypedef int (*xmlOutputWriteCallback)(void* context,
432
+ char* buffer, int len) noexcept
433
+ ctypedef int (*xmlOutputCloseCallback)(void* context) noexcept
434
+
435
+ cdef xmlOutputBuffer* xmlAllocOutputBuffer(
436
+ xmlCharEncodingHandler* encoder) nogil
437
+ cdef xmlOutputBuffer* xmlOutputBufferCreateIO(
438
+ xmlOutputWriteCallback iowrite,
439
+ xmlOutputCloseCallback ioclose,
440
+ void * ioctx,
441
+ xmlCharEncodingHandler* encoder) nogil
442
+ cdef xmlOutputBuffer* xmlOutputBufferCreateFile(
443
+ stdio.FILE* file, xmlCharEncodingHandler* encoder) nogil
444
+ cdef xmlOutputBuffer* xmlOutputBufferCreateFilename(
445
+ char* URI, xmlCharEncodingHandler* encoder, int compression) nogil
446
+
447
+ cdef extern from "libxml/xmlsave.h" nogil:
448
+ ctypedef struct xmlSaveCtxt
449
+
450
+ ctypedef enum xmlSaveOption:
451
+ XML_SAVE_FORMAT = 1 # format save output (2.6.17)
452
+ XML_SAVE_NO_DECL = 2 # drop the xml declaration (2.6.21)
453
+ XML_SAVE_NO_EMPTY = 4 # no empty tags (2.6.22)
454
+ XML_SAVE_NO_XHTML = 8 # disable XHTML1 specific rules (2.6.22)
455
+ XML_SAVE_XHTML = 16 # force XHTML1 specific rules (2.7.2)
456
+ XML_SAVE_AS_XML = 32 # force XML serialization on HTML doc (2.7.2)
457
+ XML_SAVE_AS_HTML = 64 # force HTML serialization on XML doc (2.7.2)
458
+
459
+ cdef xmlSaveCtxt* xmlSaveToFilename(char* filename, char* encoding,
460
+ int options)
461
+ cdef xmlSaveCtxt* xmlSaveToBuffer(xmlBuffer* buffer, char* encoding,
462
+ int options) # libxml2 2.6.23
463
+ cdef long xmlSaveDoc(xmlSaveCtxt* ctxt, xmlDoc* doc)
464
+ cdef long xmlSaveTree(xmlSaveCtxt* ctxt, xmlNode* node)
465
+ cdef int xmlSaveClose(xmlSaveCtxt* ctxt)
466
+ cdef int xmlSaveFlush(xmlSaveCtxt* ctxt)
467
+ cdef int xmlSaveSetAttrEscape(xmlSaveCtxt* ctxt, void* escape_func)
468
+ cdef int xmlSaveSetEscape(xmlSaveCtxt* ctxt, void* escape_func)
469
+
470
+ cdef extern from "libxml/globals.h" nogil:
471
+ cdef int xmlThrDefKeepBlanksDefaultValue(int onoff)
472
+ cdef int xmlThrDefLineNumbersDefaultValue(int onoff)
473
+ cdef int xmlThrDefIndentTreeOutput(int onoff)
474
+
475
+ cdef extern from "libxml/xmlmemory.h" nogil:
476
+ cdef void* xmlMalloc(size_t size)
477
+ cdef int xmlMemBlocks()
478
+ cdef int xmlMemUsed()
479
+ cdef void xmlMemDisplay(stdio.FILE* file)
480
+ cdef void xmlMemDisplayLast(stdio.FILE* file, long num_bytes)
481
+ cdef void xmlMemShow(stdio.FILE* file, int count)
482
+
483
+ cdef extern from "etree_defs.h" nogil:
484
+ cdef bint _isElement(xmlNode* node)
485
+ cdef bint _isElementOrXInclude(xmlNode* node)
486
+ cdef const_xmlChar* _getNs(xmlNode* node)
487
+ cdef void BEGIN_FOR_EACH_ELEMENT_FROM(xmlNode* tree_top,
488
+ xmlNode* start_node,
489
+ bint inclusive)
490
+ cdef void END_FOR_EACH_ELEMENT_FROM(xmlNode* start_node)
491
+ cdef void BEGIN_FOR_EACH_FROM(xmlNode* tree_top,
492
+ xmlNode* start_node,
493
+ bint inclusive)
494
+ cdef void END_FOR_EACH_FROM(xmlNode* start_node)
lxml/includes/uri.pxd ADDED
@@ -0,0 +1,5 @@
1
+ cdef extern from "libxml/uri.h" nogil:
2
+ ctypedef struct xmlURI
3
+
4
+ cdef xmlURI* xmlParseURI(char* str)
5
+ cdef void xmlFreeURI(xmlURI* uri)
@@ -0,0 +1,22 @@
1
+ from lxml.includes.tree cimport xmlDoc, xmlNode
2
+
3
+ cdef extern from "libxml/xinclude.h" nogil:
4
+
5
+ ctypedef struct xmlXIncludeCtxt
6
+
7
+ cdef int xmlXIncludeProcess(xmlDoc* doc)
8
+ cdef int xmlXIncludeProcessFlags(xmlDoc* doc, int parser_opts)
9
+ cdef int xmlXIncludeProcessTree(xmlNode* doc)
10
+ cdef int xmlXIncludeProcessTreeFlags(xmlNode* doc, int parser_opts)
11
+
12
+ # libxml2 >= 2.7.4
13
+ cdef int xmlXIncludeProcessTreeFlagsData(
14
+ xmlNode* doc, int parser_opts, void* data)
15
+
16
+ cdef xmlXIncludeCtxt* xmlXIncludeNewContext(xmlDoc* doc)
17
+ cdef int xmlXIncludeProcessNode(xmlXIncludeCtxt* ctxt, xmlNode* node)
18
+ cdef int xmlXIncludeSetFlags(xmlXIncludeCtxt* ctxt, int flags)
19
+
20
+ # libxml2 >= 2.6.27
21
+ cdef int xmlXIncludeProcessFlagsData(
22
+ xmlDoc* doc, int flags, void* data)