| LSSTApplications
    20.0.0
    LSSTDataManagementBasePackage | 
| Classes | |
| class | TemplateMeta | 
| Functions | |
| def | isAttributeSafeToTransfer (name, value) | 
| def | continueClass (cls) | 
| def | inClass (cls, name=None) | 
| Variables | |
| INTRINSIC_SPECIAL_ATTRIBUTES | |
| def lsst.utils.wrappers.continueClass | ( | cls | ) | 
Re-open the decorated class, adding any new definitions into the original.
For example:
.. code-block:: python
    class Foo:
        pass
    @continueClass
    class Foo:
        def run(self):
            return None
is equivalent to:
.. code-block:: python
    class Foo:
        def run(self):
            return None
.. warning::
    Python's built-in `super` function does not behave properly in classes
    decorated with `continueClass`.  Base class methods must be invoked
    directly using their explicit types instead. 
Definition at line 59 of file wrappers.py.
| def lsst.utils.wrappers.inClass | ( | cls, | |
| name = None | |||
| ) | 
Add the decorated function to the given class as a method.
For example:
.. code-block:: python
    class Foo:
        pass
    @inClass(Foo)
    def run(self):
        return None
is equivalent to:
.. code-block:: python
    class Foo:
        def run(self):
            return None
Standard decorators like ``classmethod``, ``staticmethod``, and
``property`` may be used *after* this decorator.  Custom decorators
may only be used if they return an object with a ``__name__`` attribute
or the ``name`` optional argument is provided.
 
Definition at line 102 of file wrappers.py.
| def lsst.utils.wrappers.isAttributeSafeToTransfer | ( | name, | |
| value | |||
| ) | 
Return True if an attribute is safe to monkeypatch-transfer to another class. This rejects special methods that are defined automatically for all classes, leaving only those explicitly defined in a class decorated by `continueClass` or registered with an instance of `TemplateMeta`.
Definition at line 45 of file wrappers.py.
| lsst.utils.wrappers.INTRINSIC_SPECIAL_ATTRIBUTES | 
Definition at line 32 of file wrappers.py.
 1.8.18
 1.8.18