Blame python/libxml_wrap.h

Packit Service a31ea6
#include <Python.h>
Packit Service a31ea6
#include <libxml/tree.h>
Packit Service a31ea6
#include <libxml/parser.h>
Packit Service a31ea6
#include <libxml/parserInternals.h>
Packit Service a31ea6
#include <libxml/catalog.h>
Packit Service a31ea6
#include <libxml/threads.h>
Packit Service a31ea6
#include <libxml/nanoftp.h>
Packit Service a31ea6
#include <libxml/nanohttp.h>
Packit Service a31ea6
#include <libxml/uri.h>
Packit Service a31ea6
#include <libxml/xpath.h>
Packit Service a31ea6
#include <libxml/xpathInternals.h>
Packit Service a31ea6
#include <libxml/debugXML.h>
Packit Service a31ea6
#include <libxml/HTMLparser.h>
Packit Service a31ea6
#include <libxml/HTMLtree.h>
Packit Service a31ea6
#include <libxml/xinclude.h>
Packit Service a31ea6
#include <libxml/xpointer.h>
Packit Service a31ea6
#include <libxml/xmlunicode.h>
Packit Service a31ea6
#include <libxml/xmlregexp.h>
Packit Service a31ea6
#include <libxml/xmlautomata.h>
Packit Service a31ea6
#include <libxml/xmlreader.h>
Packit Service a31ea6
#ifdef LIBXML_SCHEMAS_ENABLED
Packit Service a31ea6
#include <libxml/relaxng.h>
Packit Service a31ea6
#include <libxml/xmlschemas.h>
Packit Service a31ea6
#endif
Packit Service a31ea6
Packit Service a31ea6
/*
Packit Service a31ea6
 * for older versions of Python, we don't use PyBytes, but keep PyString
Packit Service a31ea6
 * and don't use Capsule but CObjects
Packit Service a31ea6
 */
Packit Service a31ea6
#if PY_VERSION_HEX < 0x02070000
Packit Service a31ea6
#ifndef PyBytes_Check
Packit Service a31ea6
#define PyBytes_Check PyString_Check
Packit Service a31ea6
#define PyBytes_Size PyString_Size
Packit Service a31ea6
#define PyBytes_AsString PyString_AsString
Packit Service a31ea6
#define PyBytes_AS_STRING PyString_AS_STRING
Packit Service a31ea6
#define PyBytes_GET_SIZE PyString_GET_SIZE
Packit Service a31ea6
#endif
Packit Service a31ea6
#ifndef PyCapsule_New
Packit Service a31ea6
#define PyCapsule_New PyCObject_FromVoidPtrAndDesc
Packit Service a31ea6
#define PyCapsule_CheckExact PyCObject_Check
Packit Service a31ea6
#define PyCapsule_GetPointer(o, n) PyCObject_GetDesc((o))
Packit Service a31ea6
#endif
Packit Service a31ea6
#endif
Packit Service a31ea6
Packit Service a31ea6
/**
Packit Service a31ea6
 * ATTRIBUTE_UNUSED:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Macro used to signal to GCC unused function parameters
Packit Service a31ea6
 * Repeated here since the definition is not available when
Packit Service a31ea6
 * compiled outside the libxml2 build tree.
Packit Service a31ea6
 */
Packit Service a31ea6
#ifdef __GNUC__
Packit Service a31ea6
#ifdef ATTRIBUTE_UNUSED
Packit Service a31ea6
#undef ATTRIBUTE_UNUSED
Packit Service a31ea6
#endif
Packit Service a31ea6
#ifndef ATTRIBUTE_UNUSED
Packit Service a31ea6
#define ATTRIBUTE_UNUSED __attribute__ ((__unused__))
Packit Service a31ea6
#endif /* ATTRIBUTE_UNUSED */
Packit Service a31ea6
#else
Packit Service a31ea6
#define ATTRIBUTE_UNUSED
Packit Service a31ea6
#endif
Packit Service a31ea6
Packit Service a31ea6
#define PyxmlNode_Get(v) (((v) == Py_None) ? NULL : \
Packit Service a31ea6
	(((PyxmlNode_Object *)(v))->obj))
Packit Service a31ea6
Packit Service a31ea6
typedef struct {
Packit Service a31ea6
    PyObject_HEAD
Packit Service a31ea6
    xmlNodePtr obj;
Packit Service a31ea6
} PyxmlNode_Object;
Packit Service a31ea6
Packit Service a31ea6
#define PyxmlXPathContext_Get(v) (((v) == Py_None) ? NULL : \
Packit Service a31ea6
	(((PyxmlXPathContext_Object *)(v))->obj))
Packit Service a31ea6
Packit Service a31ea6
typedef struct {
Packit Service a31ea6
    PyObject_HEAD
Packit Service a31ea6
    xmlXPathContextPtr obj;
Packit Service a31ea6
} PyxmlXPathContext_Object;
Packit Service a31ea6
Packit Service a31ea6
#define PyxmlXPathParserContext_Get(v) (((v) == Py_None) ? NULL : \
Packit Service a31ea6
	(((PyxmlXPathParserContext_Object *)(v))->obj))
Packit Service a31ea6
Packit Service a31ea6
typedef struct {
Packit Service a31ea6
    PyObject_HEAD
Packit Service a31ea6
    xmlXPathParserContextPtr obj;
Packit Service a31ea6
} PyxmlXPathParserContext_Object;
Packit Service a31ea6
Packit Service a31ea6
#define PyparserCtxt_Get(v) (((v) == Py_None) ? NULL : \
Packit Service a31ea6
        (((PyparserCtxt_Object *)(v))->obj))
Packit Service a31ea6
Packit Service a31ea6
typedef struct {
Packit Service a31ea6
    PyObject_HEAD
Packit Service a31ea6
    xmlParserCtxtPtr obj;
Packit Service a31ea6
} PyparserCtxt_Object;
Packit Service a31ea6
Packit Service a31ea6
#define PyValidCtxt_Get(v) (((v) == Py_None) ? NULL : \
Packit Service a31ea6
	(((PyValidCtxt_Object *)(v))->obj))
Packit Service a31ea6
Packit Service a31ea6
typedef struct {
Packit Service a31ea6
	PyObject_HEAD
Packit Service a31ea6
	xmlValidCtxtPtr obj;
Packit Service a31ea6
} PyValidCtxt_Object;
Packit Service a31ea6
Packit Service a31ea6
#define Pycatalog_Get(v) (((v) == Py_None) ? NULL : \
Packit Service a31ea6
        (((Pycatalog_Object *)(v))->obj))
Packit Service a31ea6
Packit Service a31ea6
typedef struct {
Packit Service a31ea6
    PyObject_HEAD
Packit Service a31ea6
    xmlCatalogPtr obj;
Packit Service a31ea6
} Pycatalog_Object;
Packit Service a31ea6
Packit Service a31ea6
#ifdef LIBXML_REGEXP_ENABLED
Packit Service a31ea6
#define PyxmlReg_Get(v) (((v) == Py_None) ? NULL : \
Packit Service a31ea6
        (((PyxmlReg_Object *)(v))->obj))
Packit Service a31ea6
Packit Service a31ea6
typedef struct {
Packit Service a31ea6
    PyObject_HEAD
Packit Service a31ea6
    xmlRegexpPtr obj;
Packit Service a31ea6
} PyxmlReg_Object;
Packit Service a31ea6
#endif /* LIBXML_REGEXP_ENABLED */
Packit Service a31ea6
Packit Service a31ea6
#ifdef LIBXML_READER_ENABLED
Packit Service a31ea6
#define PyxmlTextReader_Get(v) (((v) == Py_None) ? NULL : \
Packit Service a31ea6
        (((PyxmlTextReader_Object *)(v))->obj))
Packit Service a31ea6
Packit Service a31ea6
typedef struct {
Packit Service a31ea6
    PyObject_HEAD
Packit Service a31ea6
    xmlTextReaderPtr obj;
Packit Service a31ea6
} PyxmlTextReader_Object;
Packit Service a31ea6
Packit Service a31ea6
#define PyxmlTextReaderLocator_Get(v) (((v) == Py_None) ? NULL : \
Packit Service a31ea6
        (((PyxmlTextReaderLocator_Object *)(v))->obj))
Packit Service a31ea6
Packit Service a31ea6
typedef struct {
Packit Service a31ea6
    PyObject_HEAD
Packit Service a31ea6
    xmlTextReaderLocatorPtr obj;
Packit Service a31ea6
} PyxmlTextReaderLocator_Object;
Packit Service a31ea6
#endif
Packit Service a31ea6
Packit Service a31ea6
#define PyURI_Get(v) (((v) == Py_None) ? NULL : \
Packit Service a31ea6
	(((PyURI_Object *)(v))->obj))
Packit Service a31ea6
Packit Service a31ea6
typedef struct {
Packit Service a31ea6
    PyObject_HEAD
Packit Service a31ea6
    xmlErrorPtr obj;
Packit Service a31ea6
} PyError_Object;
Packit Service a31ea6
Packit Service a31ea6
#define PyError_Get(v) (((v) == Py_None) ? NULL : \
Packit Service a31ea6
	(((PyError_Object *)(v))->obj))
Packit Service a31ea6
Packit Service a31ea6
typedef struct {
Packit Service a31ea6
    PyObject_HEAD
Packit Service a31ea6
    xmlOutputBufferPtr obj;
Packit Service a31ea6
} PyoutputBuffer_Object;
Packit Service a31ea6
Packit Service a31ea6
#define PyoutputBuffer_Get(v) (((v) == Py_None) ? NULL : \
Packit Service a31ea6
	(((PyoutputBuffer_Object *)(v))->obj))
Packit Service a31ea6
Packit Service a31ea6
typedef struct {
Packit Service a31ea6
    PyObject_HEAD
Packit Service a31ea6
    xmlParserInputBufferPtr obj;
Packit Service a31ea6
} PyinputBuffer_Object;
Packit Service a31ea6
Packit Service a31ea6
#define PyinputBuffer_Get(v) (((v) == Py_None) ? NULL : \
Packit Service a31ea6
	(((PyinputBuffer_Object *)(v))->obj))
Packit Service a31ea6
Packit Service a31ea6
typedef struct {
Packit Service a31ea6
    PyObject_HEAD
Packit Service a31ea6
    xmlURIPtr obj;
Packit Service a31ea6
} PyURI_Object;
Packit Service a31ea6
Packit Service a31ea6
/* FILE * have their own internal representation */
Packit Service a31ea6
#if PY_MAJOR_VERSION >= 3
Packit Service a31ea6
FILE *libxml_PyFileGet(PyObject *f);
Packit Service a31ea6
void libxml_PyFileRelease(FILE *f);
Packit Service a31ea6
#define PyFile_Get(v) (((v) == Py_None) ? NULL : libxml_PyFileGet(v))
Packit Service a31ea6
#define PyFile_Release(f) libxml_PyFileRelease(f)
Packit Service a31ea6
#else
Packit Service a31ea6
#define PyFile_Get(v) (((v) == Py_None) ? NULL : \
Packit Service a31ea6
	(PyFile_Check(v) ? (PyFile_AsFile(v)) : stdout))
Packit Service a31ea6
#define PyFile_Release(f)
Packit Service a31ea6
#endif
Packit Service a31ea6
Packit Service a31ea6
#ifdef LIBXML_SCHEMAS_ENABLED
Packit Service a31ea6
typedef struct {
Packit Service a31ea6
    PyObject_HEAD
Packit Service a31ea6
    xmlRelaxNGPtr obj;
Packit Service a31ea6
} PyrelaxNgSchema_Object;
Packit Service a31ea6
Packit Service a31ea6
#define PyrelaxNgSchema_Get(v) (((v) == Py_None) ? NULL : \
Packit Service a31ea6
	(((PyrelaxNgSchema_Object *)(v))->obj))
Packit Service a31ea6
Packit Service a31ea6
typedef struct {
Packit Service a31ea6
    PyObject_HEAD
Packit Service a31ea6
    xmlRelaxNGParserCtxtPtr obj;
Packit Service a31ea6
} PyrelaxNgParserCtxt_Object;
Packit Service a31ea6
Packit Service a31ea6
#define PyrelaxNgParserCtxt_Get(v) (((v) == Py_None) ? NULL : \
Packit Service a31ea6
	(((PyrelaxNgParserCtxt_Object *)(v))->obj))
Packit Service a31ea6
Packit Service a31ea6
typedef struct {
Packit Service a31ea6
    PyObject_HEAD
Packit Service a31ea6
    xmlRelaxNGValidCtxtPtr obj;
Packit Service a31ea6
} PyrelaxNgValidCtxt_Object;
Packit Service a31ea6
Packit Service a31ea6
#define PyrelaxNgValidCtxt_Get(v) (((v) == Py_None) ? NULL : \
Packit Service a31ea6
	(((PyrelaxNgValidCtxt_Object *)(v))->obj))
Packit Service a31ea6
Packit Service a31ea6
typedef struct {
Packit Service a31ea6
	PyObject_HEAD
Packit Service a31ea6
	xmlSchemaPtr obj;
Packit Service a31ea6
} PySchema_Object;
Packit Service a31ea6
Packit Service a31ea6
#define PySchema_Get(v) (((v) == Py_None) ? NULL : \
Packit Service a31ea6
	(((PySchema_Object *)(v))->obj))
Packit Service a31ea6
Packit Service a31ea6
typedef struct {
Packit Service a31ea6
	PyObject_HEAD
Packit Service a31ea6
	xmlSchemaParserCtxtPtr obj;
Packit Service a31ea6
} PySchemaParserCtxt_Object;
Packit Service a31ea6
Packit Service a31ea6
#define PySchemaParserCtxt_Get(v) (((v) == Py_None) ? NULL : \
Packit Service a31ea6
	(((PySchemaParserCtxt_Object *)(v))->obj))
Packit Service a31ea6
Packit Service a31ea6
typedef struct {
Packit Service a31ea6
	PyObject_HEAD
Packit Service a31ea6
	xmlSchemaValidCtxtPtr obj;
Packit Service a31ea6
} PySchemaValidCtxt_Object;
Packit Service a31ea6
Packit Service a31ea6
#define PySchemaValidCtxt_Get(v) (((v) == Py_None) ? NULL : \
Packit Service a31ea6
	(((PySchemaValidCtxt_Object *)(v))->obj))
Packit Service a31ea6
Packit Service a31ea6
#endif /* LIBXML_SCHEMAS_ENABLED */
Packit Service a31ea6
Packit Service a31ea6
PyObject * libxml_intWrap(int val);
Packit Service a31ea6
PyObject * libxml_longWrap(long val);
Packit Service a31ea6
PyObject * libxml_xmlCharPtrWrap(xmlChar *str);
Packit Service a31ea6
PyObject * libxml_constxmlCharPtrWrap(const xmlChar *str);
Packit Service a31ea6
PyObject * libxml_charPtrWrap(char *str);
Packit Service a31ea6
PyObject * libxml_constcharPtrWrap(const char *str);
Packit Service a31ea6
PyObject * libxml_charPtrConstWrap(const char *str);
Packit Service a31ea6
PyObject * libxml_xmlCharPtrConstWrap(const xmlChar *str);
Packit Service a31ea6
PyObject * libxml_xmlDocPtrWrap(xmlDocPtr doc);
Packit Service a31ea6
PyObject * libxml_xmlNodePtrWrap(xmlNodePtr node);
Packit Service a31ea6
PyObject * libxml_xmlAttrPtrWrap(xmlAttrPtr attr);
Packit Service a31ea6
PyObject * libxml_xmlNsPtrWrap(xmlNsPtr ns);
Packit Service a31ea6
PyObject * libxml_xmlAttributePtrWrap(xmlAttributePtr ns);
Packit Service a31ea6
PyObject * libxml_xmlElementPtrWrap(xmlElementPtr ns);
Packit Service a31ea6
PyObject * libxml_doubleWrap(double val);
Packit Service a31ea6
PyObject * libxml_xmlXPathContextPtrWrap(xmlXPathContextPtr ctxt);
Packit Service a31ea6
PyObject * libxml_xmlParserCtxtPtrWrap(xmlParserCtxtPtr ctxt);
Packit Service a31ea6
PyObject * libxml_xmlXPathParserContextPtrWrap(xmlXPathParserContextPtr ctxt);
Packit Service a31ea6
PyObject * libxml_xmlXPathObjectPtrWrap(xmlXPathObjectPtr obj);
Packit Service a31ea6
PyObject * libxml_xmlValidCtxtPtrWrap(xmlValidCtxtPtr valid);
Packit Service a31ea6
PyObject * libxml_xmlCatalogPtrWrap(xmlCatalogPtr obj);
Packit Service a31ea6
PyObject * libxml_xmlURIPtrWrap(xmlURIPtr uri);
Packit Service a31ea6
PyObject * libxml_xmlOutputBufferPtrWrap(xmlOutputBufferPtr buffer);
Packit Service a31ea6
PyObject * libxml_xmlParserInputBufferPtrWrap(xmlParserInputBufferPtr buffer);
Packit Service a31ea6
#ifdef LIBXML_REGEXP_ENABLED
Packit Service a31ea6
PyObject * libxml_xmlRegexpPtrWrap(xmlRegexpPtr regexp);
Packit Service a31ea6
#endif /* LIBXML_REGEXP_ENABLED */
Packit Service a31ea6
#ifdef LIBXML_READER_ENABLED
Packit Service a31ea6
PyObject * libxml_xmlTextReaderPtrWrap(xmlTextReaderPtr reader);
Packit Service a31ea6
PyObject * libxml_xmlTextReaderLocatorPtrWrap(xmlTextReaderLocatorPtr locator);
Packit Service a31ea6
#endif
Packit Service a31ea6
Packit Service a31ea6
xmlXPathObjectPtr libxml_xmlXPathObjectPtrConvert(PyObject * obj);
Packit Service a31ea6
#ifdef LIBXML_SCHEMAS_ENABLED
Packit Service a31ea6
PyObject * libxml_xmlRelaxNGPtrWrap(xmlRelaxNGPtr ctxt);
Packit Service a31ea6
PyObject * libxml_xmlRelaxNGParserCtxtPtrWrap(xmlRelaxNGParserCtxtPtr ctxt);
Packit Service a31ea6
PyObject * libxml_xmlRelaxNGValidCtxtPtrWrap(xmlRelaxNGValidCtxtPtr valid);
Packit Service a31ea6
PyObject * libxml_xmlSchemaPtrWrap(xmlSchemaPtr ctxt);
Packit Service a31ea6
PyObject * libxml_xmlSchemaParserCtxtPtrWrap(xmlSchemaParserCtxtPtr ctxt);
Packit Service a31ea6
PyObject * libxml_xmlSchemaValidCtxtPtrWrap(xmlSchemaValidCtxtPtr valid);
Packit Service a31ea6
#endif /* LIBXML_SCHEMAS_ENABLED */
Packit Service a31ea6
PyObject * libxml_xmlErrorPtrWrap(xmlErrorPtr error);
Packit Service a31ea6
PyObject * libxml_xmlSchemaSetValidErrors(PyObject * self, PyObject * args);
Packit Service a31ea6
PyObject * libxml_xmlRegisterInputCallback(PyObject *self, PyObject *args);
Packit Service a31ea6
PyObject * libxml_xmlUnregisterInputCallback(PyObject *self, PyObject *args);
Packit Service a31ea6
PyObject * libxml_xmlNodeRemoveNsDef(PyObject * self, PyObject * args);