(cls, name, bases, dict={})
| 100 | |
| 101 | @classmethod |
| 102 | def subclass(cls, name, bases, dict={}): |
| 103 | if not isinstance(bases, tuple): |
| 104 | bases = (bases,) |
| 105 | key = '.'.join((name, str(bases))) |
| 106 | subclass = cls.cache.get(key) |
| 107 | if subclass is None: |
| 108 | subclass = type(name, bases, dict) |
| 109 | cls.cache[key] = subclass |
| 110 | return subclass |
| 111 | |
| 112 | @classmethod |
| 113 | def object(cls, classname=None, dict={}): |