404

[ Avaa Bypassed ]




Upload:

Command:

elspacio@3.12.71.166: ~ $
"""Python version compatibility support for minidom."""

# This module should only be imported using "import *".
#
# The following names are defined:
#
#   NodeList      -- lightest possible NodeList implementation
#
#   EmptyNodeList -- lightest possible NodeList that is guaranteed to
#                    remain empty (immutable)
#
#   StringTypes   -- tuple of defined string types
#
#   defproperty   -- function used in conjunction with GetattrMagic;
#                    using these together is needed to make them work
#                    as efficiently as possible in both Python 2.2+
#                    and older versions.  For example:
#
#                        class MyClass(GetattrMagic):
#                            def _get_myattr(self):
#                                return something
#
#                        defproperty(MyClass, "myattr",
#                                    "return some value")
#
#                    For Python 2.2 and newer, this will construct a
#                    property object on the class, which avoids
#                    needing to override __getattr__().  It will only
#                    work for read-only attributes.
#
#                    For older versions of Python, inheriting from
#                    GetattrMagic will use the traditional
#                    __getattr__() hackery to achieve the same effect,
#                    but less efficiently.
#
#                    defproperty() should be used for each version of
#                    the relevant _get_<property>() function.

__all__ = ["NodeList", "EmptyNodeList", "StringTypes", "defproperty"]

import xml.dom

try:
    unicode
except NameError:
    StringTypes = type(''),
else:
    StringTypes = type(''), type(unicode(''))


class NodeList(list):
    __slots__ = ()

    def item(self, index):
        if 0 <= index < len(self):
            return self[index]

    def _get_length(self):
        return len(self)

    def _set_length(self, value):
        raise xml.dom.NoModificationAllowedErr(
            "attempt to modify read-only attribute 'length'")

    length = property(_get_length, _set_length,
                      doc="The number of nodes in the NodeList.")

    # For backward compatibility
    def __setstate__(self, state):
        if state is None:
            state = []
        self[:] = state


class EmptyNodeList(tuple):
    __slots__ = ()

    def __add__(self, other):
        NL = NodeList()
        NL.extend(other)
        return NL

    def __radd__(self, other):
        NL = NodeList()
        NL.extend(other)
        return NL

    def item(self, index):
        return None

    def _get_length(self):
        return 0

    def _set_length(self, value):
        raise xml.dom.NoModificationAllowedErr(
            "attempt to modify read-only attribute 'length'")

    length = property(_get_length, _set_length,
                      doc="The number of nodes in the NodeList.")


def defproperty(klass, name, doc):
    get = getattr(klass, ("_get_" + name)).im_func
    def set(self, value, name=name):
        raise xml.dom.NoModificationAllowedErr(
            "attempt to modify read-only attribute " + repr(name))
    assert not hasattr(klass, "_set_" + name), \
           "expected not to find _set_" + name
    prop = property(get, set, doc=doc)
    setattr(klass, name, prop)

Filemanager

Name Type Size Permission Actions
NodeFilter.py File 937 B 0644
NodeFilter.pyc File 1.1 KB 0644
NodeFilter.pyo File 1.1 KB 0644
__init__.py File 3.9 KB 0644
__init__.pyc File 6.33 KB 0644
__init__.pyo File 6.33 KB 0644
domreg.py File 3.44 KB 0644
domreg.pyc File 3.3 KB 0644
domreg.pyo File 3.3 KB 0644
expatbuilder.py File 35.53 KB 0644
expatbuilder.pyc File 32.22 KB 0644
expatbuilder.pyo File 31.61 KB 0644
minicompat.py File 3.28 KB 0644
minicompat.pyc File 3.35 KB 0644
minicompat.pyo File 3.24 KB 0644
minidom.py File 64.72 KB 0644
minidom.pyc File 64.07 KB 0644
minidom.pyo File 63.94 KB 0644
pulldom.py File 11.69 KB 0644
pulldom.pyc File 12.77 KB 0644
pulldom.pyo File 12.77 KB 0644
xmlbuilder.py File 12.05 KB 0644
xmlbuilder.pyc File 14.98 KB 0644
xmlbuilder.pyo File 14.94 KB 0644