Example #1
0
def initialize_internal_attributes (C):
    "Prepare a class for life as a child of InternalAttributesClass."
    if C.__dict__.has_key('_internal'): return
    if not issubclass(C, InternalAttributesClass):
        raise ValueError, 'Must be subclass of InternalAttributesClass'
    PropertiedClasses.initialize_property_class (C)
    C._internal = []
    for CP in C.__bases__:
        if issubclass(CP, InternalAttributesClass):
            initialize_internal_attributes(CP)
            for name in CP._internal:
                C._internal.append(name)