lxml.etree_api.h
1 /* Generated by Cython 0.29.32 */ 2 3 #ifndef __PYX_HAVE_API__lxml__etree 4 #define __PYX_HAVE_API__lxml__etree 5 #ifdef __MINGW64__ 6 #define MS_WIN64 7 #endif 8 #include "Python.h" 9 #include "lxml.etree.h" 10 11 static struct LxmlElement *(*__pyx_api_f_4lxml_5etree_deepcopyNodeToDocument)(struct LxmlDocument *, xmlNode *) = 0; 12 #define deepcopyNodeToDocument __pyx_api_f_4lxml_5etree_deepcopyNodeToDocument 13 static struct LxmlElementTree *(*__pyx_api_f_4lxml_5etree_elementTreeFactory)(struct LxmlElement *) = 0; 14 #define elementTreeFactory __pyx_api_f_4lxml_5etree_elementTreeFactory 15 static struct LxmlElementTree *(*__pyx_api_f_4lxml_5etree_newElementTree)(struct LxmlElement *, PyObject *) = 0; 16 #define newElementTree __pyx_api_f_4lxml_5etree_newElementTree 17 static struct LxmlElementTree *(*__pyx_api_f_4lxml_5etree_adoptExternalDocument)(xmlDoc *, PyObject *, int) = 0; 18 #define adoptExternalDocument __pyx_api_f_4lxml_5etree_adoptExternalDocument 19 static struct LxmlElement *(*__pyx_api_f_4lxml_5etree_elementFactory)(struct LxmlDocument *, xmlNode *) = 0; 20 #define elementFactory __pyx_api_f_4lxml_5etree_elementFactory 21 static struct LxmlElement *(*__pyx_api_f_4lxml_5etree_makeElement)(PyObject *, struct LxmlDocument *, PyObject *, PyObject *, PyObject *, PyObject *, PyObject *) = 0; 22 #define makeElement __pyx_api_f_4lxml_5etree_makeElement 23 static struct LxmlElement *(*__pyx_api_f_4lxml_5etree_makeSubElement)(struct LxmlElement *, PyObject *, PyObject *, PyObject *, PyObject *, PyObject *) = 0; 24 #define makeSubElement __pyx_api_f_4lxml_5etree_makeSubElement 25 static void (*__pyx_api_f_4lxml_5etree_setElementClassLookupFunction)(_element_class_lookup_function, PyObject *) = 0; 26 #define setElementClassLookupFunction __pyx_api_f_4lxml_5etree_setElementClassLookupFunction 27 static PyObject *(*__pyx_api_f_4lxml_5etree_lookupDefaultElementClass)(PyObject *, PyObject *, xmlNode *) = 0; 28 #define lookupDefaultElementClass __pyx_api_f_4lxml_5etree_lookupDefaultElementClass 29 static PyObject *(*__pyx_api_f_4lxml_5etree_lookupNamespaceElementClass)(PyObject *, PyObject *, xmlNode *) = 0; 30 #define lookupNamespaceElementClass __pyx_api_f_4lxml_5etree_lookupNamespaceElementClass 31 static PyObject *(*__pyx_api_f_4lxml_5etree_callLookupFallback)(struct LxmlFallbackElementClassLookup *, struct LxmlDocument *, xmlNode *) = 0; 32 #define callLookupFallback __pyx_api_f_4lxml_5etree_callLookupFallback 33 static int (*__pyx_api_f_4lxml_5etree_tagMatches)(xmlNode *, const xmlChar *, const xmlChar *) = 0; 34 #define tagMatches __pyx_api_f_4lxml_5etree_tagMatches 35 static struct LxmlDocument *(*__pyx_api_f_4lxml_5etree_documentOrRaise)(PyObject *) = 0; 36 #define documentOrRaise __pyx_api_f_4lxml_5etree_documentOrRaise 37 static struct LxmlElement *(*__pyx_api_f_4lxml_5etree_rootNodeOrRaise)(PyObject *) = 0; 38 #define rootNodeOrRaise __pyx_api_f_4lxml_5etree_rootNodeOrRaise 39 static int (*__pyx_api_f_4lxml_5etree_hasText)(xmlNode *) = 0; 40 #define hasText __pyx_api_f_4lxml_5etree_hasText 41 static int (*__pyx_api_f_4lxml_5etree_hasTail)(xmlNode *) = 0; 42 #define hasTail __pyx_api_f_4lxml_5etree_hasTail 43 static PyObject *(*__pyx_api_f_4lxml_5etree_textOf)(xmlNode *) = 0; 44 #define textOf __pyx_api_f_4lxml_5etree_textOf 45 static PyObject *(*__pyx_api_f_4lxml_5etree_tailOf)(xmlNode *) = 0; 46 #define tailOf __pyx_api_f_4lxml_5etree_tailOf 47 static int (*__pyx_api_f_4lxml_5etree_setNodeText)(xmlNode *, PyObject *) = 0; 48 #define setNodeText __pyx_api_f_4lxml_5etree_setNodeText 49 static int (*__pyx_api_f_4lxml_5etree_setTailText)(xmlNode *, PyObject *) = 0; 50 #define setTailText __pyx_api_f_4lxml_5etree_setTailText 51 static PyObject *(*__pyx_api_f_4lxml_5etree_attributeValue)(xmlNode *, xmlAttr *) = 0; 52 #define attributeValue __pyx_api_f_4lxml_5etree_attributeValue 53 static PyObject *(*__pyx_api_f_4lxml_5etree_attributeValueFromNsName)(xmlNode *, const xmlChar *, const xmlChar *) = 0; 54 #define attributeValueFromNsName __pyx_api_f_4lxml_5etree_attributeValueFromNsName 55 static PyObject *(*__pyx_api_f_4lxml_5etree_getAttributeValue)(struct LxmlElement *, PyObject *, PyObject *) = 0; 56 #define getAttributeValue __pyx_api_f_4lxml_5etree_getAttributeValue 57 static PyObject *(*__pyx_api_f_4lxml_5etree_iterattributes)(struct LxmlElement *, int) = 0; 58 #define iterattributes __pyx_api_f_4lxml_5etree_iterattributes 59 static PyObject *(*__pyx_api_f_4lxml_5etree_collectAttributes)(xmlNode *, int) = 0; 60 #define collectAttributes __pyx_api_f_4lxml_5etree_collectAttributes 61 static int (*__pyx_api_f_4lxml_5etree_setAttributeValue)(struct LxmlElement *, PyObject *, PyObject *) = 0; 62 #define setAttributeValue __pyx_api_f_4lxml_5etree_setAttributeValue 63 static int (*__pyx_api_f_4lxml_5etree_delAttribute)(struct LxmlElement *, PyObject *) = 0; 64 #define delAttribute __pyx_api_f_4lxml_5etree_delAttribute 65 static int (*__pyx_api_f_4lxml_5etree_delAttributeFromNsName)(xmlNode *, const xmlChar *, const xmlChar *) = 0; 66 #define delAttributeFromNsName __pyx_api_f_4lxml_5etree_delAttributeFromNsName 67 static int (*__pyx_api_f_4lxml_5etree_hasChild)(xmlNode *) = 0; 68 #define hasChild __pyx_api_f_4lxml_5etree_hasChild 69 static xmlNode *(*__pyx_api_f_4lxml_5etree_findChild)(xmlNode *, Py_ssize_t) = 0; 70 #define findChild __pyx_api_f_4lxml_5etree_findChild 71 static xmlNode *(*__pyx_api_f_4lxml_5etree_findChildForwards)(xmlNode *, Py_ssize_t) = 0; 72 #define findChildForwards __pyx_api_f_4lxml_5etree_findChildForwards 73 static xmlNode *(*__pyx_api_f_4lxml_5etree_findChildBackwards)(xmlNode *, Py_ssize_t) = 0; 74 #define findChildBackwards __pyx_api_f_4lxml_5etree_findChildBackwards 75 static xmlNode *(*__pyx_api_f_4lxml_5etree_nextElement)(xmlNode *) = 0; 76 #define nextElement __pyx_api_f_4lxml_5etree_nextElement 77 static xmlNode *(*__pyx_api_f_4lxml_5etree_previousElement)(xmlNode *) = 0; 78 #define previousElement __pyx_api_f_4lxml_5etree_previousElement 79 static void (*__pyx_api_f_4lxml_5etree_appendChild)(struct LxmlElement *, struct LxmlElement *) = 0; 80 #define appendChild __pyx_api_f_4lxml_5etree_appendChild 81 static int (*__pyx_api_f_4lxml_5etree_appendChildToElement)(struct LxmlElement *, struct LxmlElement *) = 0; 82 #define appendChildToElement __pyx_api_f_4lxml_5etree_appendChildToElement 83 static PyObject *(*__pyx_api_f_4lxml_5etree_pyunicode)(const xmlChar *) = 0; 84 #define pyunicode __pyx_api_f_4lxml_5etree_pyunicode 85 static PyObject *(*__pyx_api_f_4lxml_5etree_utf8)(PyObject *) = 0; 86 #define utf8 __pyx_api_f_4lxml_5etree_utf8 87 static PyObject *(*__pyx_api_f_4lxml_5etree_getNsTag)(PyObject *) = 0; 88 #define getNsTag __pyx_api_f_4lxml_5etree_getNsTag 89 static PyObject *(*__pyx_api_f_4lxml_5etree_getNsTagWithEmptyNs)(PyObject *) = 0; 90 #define getNsTagWithEmptyNs __pyx_api_f_4lxml_5etree_getNsTagWithEmptyNs 91 static PyObject *(*__pyx_api_f_4lxml_5etree_namespacedName)(xmlNode *) = 0; 92 #define namespacedName __pyx_api_f_4lxml_5etree_namespacedName 93 static PyObject *(*__pyx_api_f_4lxml_5etree_namespacedNameFromNsName)(const xmlChar *, const xmlChar *) = 0; 94 #define namespacedNameFromNsName __pyx_api_f_4lxml_5etree_namespacedNameFromNsName 95 static void (*__pyx_api_f_4lxml_5etree_iteratorStoreNext)(struct LxmlElementIterator *, struct LxmlElement *) = 0; 96 #define iteratorStoreNext __pyx_api_f_4lxml_5etree_iteratorStoreNext 97 static void (*__pyx_api_f_4lxml_5etree_initTagMatch)(struct LxmlElementTagMatcher *, PyObject *) = 0; 98 #define initTagMatch __pyx_api_f_4lxml_5etree_initTagMatch 99 static xmlNs *(*__pyx_api_f_4lxml_5etree_findOrBuildNodeNsPrefix)(struct LxmlDocument *, xmlNode *, const xmlChar *, const xmlChar *) = 0; 100 #define findOrBuildNodeNsPrefix __pyx_api_f_4lxml_5etree_findOrBuildNodeNsPrefix 101 #if !defined(__Pyx_PyIdentifier_FromString) 102 #if PY_MAJOR_VERSION < 3 103 #define __Pyx_PyIdentifier_FromString(s) PyString_FromString(s) 104 #else 105 #define __Pyx_PyIdentifier_FromString(s) PyUnicode_FromString(s) 106 #endif 107 #endif 108 109 #ifndef __PYX_HAVE_RT_ImportFunction 110 #define __PYX_HAVE_RT_ImportFunction 111 static int __Pyx_ImportFunction(PyObject *module, const char *funcname, void (**f)(void), const char *sig) { 112 PyObject *d = 0; 113 PyObject *cobj = 0; 114 union { 115 void (*fp)(void); 116 void *p; 117 } tmp; 118 d = PyObject_GetAttrString(module, (char *)"__pyx_capi__"); 119 if (!d) 120 goto bad; 121 cobj = PyDict_GetItemString(d, funcname); 122 if (!cobj) { 123 PyErr_Format(PyExc_ImportError, 124 "%.200s does not export expected C function %.200s", 125 PyModule_GetName(module), funcname); 126 goto bad; 127 } 128 #if PY_VERSION_HEX >= 0x02070000 129 if (!PyCapsule_IsValid(cobj, sig)) { 130 PyErr_Format(PyExc_TypeError, 131 "C function %.200s.%.200s has wrong signature (expected %.500s, got %.500s)", 132 PyModule_GetName(module), funcname, sig, PyCapsule_GetName(cobj)); 133 goto bad; 134 } 135 tmp.p = PyCapsule_GetPointer(cobj, sig); 136 #else 137 {const char *desc, *s1, *s2; 138 desc = (const char *)PyCObject_GetDesc(cobj); 139 if (!desc) 140 goto bad; 141 s1 = desc; s2 = sig; 142 while (*s1 != '\0' && *s1 == *s2) { s1++; s2++; } 143 if (*s1 != *s2) { 144 PyErr_Format(PyExc_TypeError, 145 "C function %.200s.%.200s has wrong signature (expected %.500s, got %.500s)", 146 PyModule_GetName(module), funcname, sig, desc); 147 goto bad; 148 } 149 tmp.p = PyCObject_AsVoidPtr(cobj);} 150 #endif 151 *f = tmp.fp; 152 if (!(*f)) 153 goto bad; 154 Py_DECREF(d); 155 return 0; 156 bad: 157 Py_XDECREF(d); 158 return -1; 159 } 160 #endif 161 162 163 static int import_lxml__etree(void) { 164 PyObject *module = 0; 165 module = PyImport_ImportModule("lxml.etree"); 166 if (!module) goto bad; 167 if (__Pyx_ImportFunction(module, "deepcopyNodeToDocument", (void (**)(void))&__pyx_api_f_4lxml_5etree_deepcopyNodeToDocument, "struct LxmlElement *(struct LxmlDocument *, xmlNode *)") < 0) goto bad; 168 if (__Pyx_ImportFunction(module, "elementTreeFactory", (void (**)(void))&__pyx_api_f_4lxml_5etree_elementTreeFactory, "struct LxmlElementTree *(struct LxmlElement *)") < 0) goto bad; 169 if (__Pyx_ImportFunction(module, "newElementTree", (void (**)(void))&__pyx_api_f_4lxml_5etree_newElementTree, "struct LxmlElementTree *(struct LxmlElement *, PyObject *)") < 0) goto bad; 170 if (__Pyx_ImportFunction(module, "adoptExternalDocument", (void (**)(void))&__pyx_api_f_4lxml_5etree_adoptExternalDocument, "struct LxmlElementTree *(xmlDoc *, PyObject *, int)") < 0) goto bad; 171 if (__Pyx_ImportFunction(module, "elementFactory", (void (**)(void))&__pyx_api_f_4lxml_5etree_elementFactory, "struct LxmlElement *(struct LxmlDocument *, xmlNode *)") < 0) goto bad; 172 if (__Pyx_ImportFunction(module, "makeElement", (void (**)(void))&__pyx_api_f_4lxml_5etree_makeElement, "struct LxmlElement *(PyObject *, struct LxmlDocument *, PyObject *, PyObject *, PyObject *, PyObject *, PyObject *)") < 0) goto bad; 173 if (__Pyx_ImportFunction(module, "makeSubElement", (void (**)(void))&__pyx_api_f_4lxml_5etree_makeSubElement, "struct LxmlElement *(struct LxmlElement *, PyObject *, PyObject *, PyObject *, PyObject *, PyObject *)") < 0) goto bad; 174 if (__Pyx_ImportFunction(module, "setElementClassLookupFunction", (void (**)(void))&__pyx_api_f_4lxml_5etree_setElementClassLookupFunction, "void (_element_class_lookup_function, PyObject *)") < 0) goto bad; 175 if (__Pyx_ImportFunction(module, "lookupDefaultElementClass", (void (**)(void))&__pyx_api_f_4lxml_5etree_lookupDefaultElementClass, "PyObject *(PyObject *, PyObject *, xmlNode *)") < 0) goto bad; 176 if (__Pyx_ImportFunction(module, "lookupNamespaceElementClass", (void (**)(void))&__pyx_api_f_4lxml_5etree_lookupNamespaceElementClass, "PyObject *(PyObject *, PyObject *, xmlNode *)") < 0) goto bad; 177 if (__Pyx_ImportFunction(module, "callLookupFallback", (void (**)(void))&__pyx_api_f_4lxml_5etree_callLookupFallback, "PyObject *(struct LxmlFallbackElementClassLookup *, struct LxmlDocument *, xmlNode *)") < 0) goto bad; 178 if (__Pyx_ImportFunction(module, "tagMatches", (void (**)(void))&__pyx_api_f_4lxml_5etree_tagMatches, "int (xmlNode *, const xmlChar *, const xmlChar *)") < 0) goto bad; 179 if (__Pyx_ImportFunction(module, "documentOrRaise", (void (**)(void))&__pyx_api_f_4lxml_5etree_documentOrRaise, "struct LxmlDocument *(PyObject *)") < 0) goto bad; 180 if (__Pyx_ImportFunction(module, "rootNodeOrRaise", (void (**)(void))&__pyx_api_f_4lxml_5etree_rootNodeOrRaise, "struct LxmlElement *(PyObject *)") < 0) goto bad; 181 if (__Pyx_ImportFunction(module, "hasText", (void (**)(void))&__pyx_api_f_4lxml_5etree_hasText, "int (xmlNode *)") < 0) goto bad; 182 if (__Pyx_ImportFunction(module, "hasTail", (void (**)(void))&__pyx_api_f_4lxml_5etree_hasTail, "int (xmlNode *)") < 0) goto bad; 183 if (__Pyx_ImportFunction(module, "textOf", (void (**)(void))&__pyx_api_f_4lxml_5etree_textOf, "PyObject *(xmlNode *)") < 0) goto bad; 184 if (__Pyx_ImportFunction(module, "tailOf", (void (**)(void))&__pyx_api_f_4lxml_5etree_tailOf, "PyObject *(xmlNode *)") < 0) goto bad; 185 if (__Pyx_ImportFunction(module, "setNodeText", (void (**)(void))&__pyx_api_f_4lxml_5etree_setNodeText, "int (xmlNode *, PyObject *)") < 0) goto bad; 186 if (__Pyx_ImportFunction(module, "setTailText", (void (**)(void))&__pyx_api_f_4lxml_5etree_setTailText, "int (xmlNode *, PyObject *)") < 0) goto bad; 187 if (__Pyx_ImportFunction(module, "attributeValue", (void (**)(void))&__pyx_api_f_4lxml_5etree_attributeValue, "PyObject *(xmlNode *, xmlAttr *)") < 0) goto bad; 188 if (__Pyx_ImportFunction(module, "attributeValueFromNsName", (void (**)(void))&__pyx_api_f_4lxml_5etree_attributeValueFromNsName, "PyObject *(xmlNode *, const xmlChar *, const xmlChar *)") < 0) goto bad; 189 if (__Pyx_ImportFunction(module, "getAttributeValue", (void (**)(void))&__pyx_api_f_4lxml_5etree_getAttributeValue, "PyObject *(struct LxmlElement *, PyObject *, PyObject *)") < 0) goto bad; 190 if (__Pyx_ImportFunction(module, "iterattributes", (void (**)(void))&__pyx_api_f_4lxml_5etree_iterattributes, "PyObject *(struct LxmlElement *, int)") < 0) goto bad; 191 if (__Pyx_ImportFunction(module, "collectAttributes", (void (**)(void))&__pyx_api_f_4lxml_5etree_collectAttributes, "PyObject *(xmlNode *, int)") < 0) goto bad; 192 if (__Pyx_ImportFunction(module, "setAttributeValue", (void (**)(void))&__pyx_api_f_4lxml_5etree_setAttributeValue, "int (struct LxmlElement *, PyObject *, PyObject *)") < 0) goto bad; 193 if (__Pyx_ImportFunction(module, "delAttribute", (void (**)(void))&__pyx_api_f_4lxml_5etree_delAttribute, "int (struct LxmlElement *, PyObject *)") < 0) goto bad; 194 if (__Pyx_ImportFunction(module, "delAttributeFromNsName", (void (**)(void))&__pyx_api_f_4lxml_5etree_delAttributeFromNsName, "int (xmlNode *, const xmlChar *, const xmlChar *)") < 0) goto bad; 195 if (__Pyx_ImportFunction(module, "hasChild", (void (**)(void))&__pyx_api_f_4lxml_5etree_hasChild, "int (xmlNode *)") < 0) goto bad; 196 if (__Pyx_ImportFunction(module, "findChild", (void (**)(void))&__pyx_api_f_4lxml_5etree_findChild, "xmlNode *(xmlNode *, Py_ssize_t)") < 0) goto bad; 197 if (__Pyx_ImportFunction(module, "findChildForwards", (void (**)(void))&__pyx_api_f_4lxml_5etree_findChildForwards, "xmlNode *(xmlNode *, Py_ssize_t)") < 0) goto bad; 198 if (__Pyx_ImportFunction(module, "findChildBackwards", (void (**)(void))&__pyx_api_f_4lxml_5etree_findChildBackwards, "xmlNode *(xmlNode *, Py_ssize_t)") < 0) goto bad; 199 if (__Pyx_ImportFunction(module, "nextElement", (void (**)(void))&__pyx_api_f_4lxml_5etree_nextElement, "xmlNode *(xmlNode *)") < 0) goto bad; 200 if (__Pyx_ImportFunction(module, "previousElement", (void (**)(void))&__pyx_api_f_4lxml_5etree_previousElement, "xmlNode *(xmlNode *)") < 0) goto bad; 201 if (__Pyx_ImportFunction(module, "appendChild", (void (**)(void))&__pyx_api_f_4lxml_5etree_appendChild, "void (struct LxmlElement *, struct LxmlElement *)") < 0) goto bad; 202 if (__Pyx_ImportFunction(module, "appendChildToElement", (void (**)(void))&__pyx_api_f_4lxml_5etree_appendChildToElement, "int (struct LxmlElement *, struct LxmlElement *)") < 0) goto bad; 203 if (__Pyx_ImportFunction(module, "pyunicode", (void (**)(void))&__pyx_api_f_4lxml_5etree_pyunicode, "PyObject *(const xmlChar *)") < 0) goto bad; 204 if (__Pyx_ImportFunction(module, "utf8", (void (**)(void))&__pyx_api_f_4lxml_5etree_utf8, "PyObject *(PyObject *)") < 0) goto bad; 205 if (__Pyx_ImportFunction(module, "getNsTag", (void (**)(void))&__pyx_api_f_4lxml_5etree_getNsTag, "PyObject *(PyObject *)") < 0) goto bad; 206 if (__Pyx_ImportFunction(module, "getNsTagWithEmptyNs", (void (**)(void))&__pyx_api_f_4lxml_5etree_getNsTagWithEmptyNs, "PyObject *(PyObject *)") < 0) goto bad; 207 if (__Pyx_ImportFunction(module, "namespacedName", (void (**)(void))&__pyx_api_f_4lxml_5etree_namespacedName, "PyObject *(xmlNode *)") < 0) goto bad; 208 if (__Pyx_ImportFunction(module, "namespacedNameFromNsName", (void (**)(void))&__pyx_api_f_4lxml_5etree_namespacedNameFromNsName, "PyObject *(const xmlChar *, const xmlChar *)") < 0) goto bad; 209 if (__Pyx_ImportFunction(module, "iteratorStoreNext", (void (**)(void))&__pyx_api_f_4lxml_5etree_iteratorStoreNext, "void (struct LxmlElementIterator *, struct LxmlElement *)") < 0) goto bad; 210 if (__Pyx_ImportFunction(module, "initTagMatch", (void (**)(void))&__pyx_api_f_4lxml_5etree_initTagMatch, "void (struct LxmlElementTagMatcher *, PyObject *)") < 0) goto bad; 211 if (__Pyx_ImportFunction(module, "findOrBuildNodeNsPrefix", (void (**)(void))&__pyx_api_f_4lxml_5etree_findOrBuildNodeNsPrefix, "xmlNs *(struct LxmlDocument *, xmlNode *, const xmlChar *, const xmlChar *)") < 0) goto bad; 212 Py_DECREF(module); module = 0; 213 return 0; 214 bad: 215 Py_XDECREF(module); 216 return -1; 217 } 218 219 #endif /* !__PYX_HAVE_API__lxml__etree */