Generic services for propertied objects
||Base class providing support for property-using objects|
The Propertied class provides a number of basicproperty
support features which are helpful in many situations.
These features are not required by the properties, instead
they are common services which can be provided because of
the properties, such as automatic cloning, fairly intelligent
repr representations, and automatic initialization of properties
from named initialization arguments. The class also provides
some basic introspection features.
||Methods defined here:|
- __init__(self, *arguments, **namedarguments)
- Propertied object initialisation, allows passing in initial values for properties by name
- Get a friendly representation of the object
- clone(self, **newValues)
- Clone this object, with optional new property values
This method calls the __init__ method of your class with
the current property values of your class. Providing newValues
(a dictionary) overrides property settings with new values.
- Get properties dictionary (key:value) for use in cloning of the instance
By default you get getProperties()' values, with an
attempt made to use the property's name, then the property's
direct "__get__" method.
- toString(self, indentation='', alreadyDone=None, indentString=' ')
- Get a nicely formatted representation of this object
This version assumes that getProperties returns
the list of properties which should be presented,
it recursively calls it's children with greater
indents to get their representations.
indentation -- current string indentation level
alreadyDone -- set of object ids which are already finished
XXX Needs a far better API, likely a stand-alone class
without the automatic inheritance problems here :(
Class methods defined here:
- getProperties(cls) from type
- Get the BasicProperty properties for a particular object's class
Data and other attributes defined here:
- __dict__ = <dictproxy object at 0x01FC6BD0>
- dictionary for instance variables (if defined)
- __weakref__ = <attribute '__weakref__' of 'Propertied' objects>
- list of weak references to the object (if defined)