using metaclass __call__ to replace class instance

2005-09-09 Thread Ksenia Marasanova
Hi all, I am creating some library, and want use declarative style in the subclasses as much as possible, while the actual use will be more method-like. Just to give an impression, the library would be something like this: class Baseclass(object): # lot's of code goes here... class

Re: using metaclass __call__ to replace class instance

2005-09-09 Thread Ksenia Marasanova
2005/9/9, Ksenia Marasanova [EMAIL PROTECTED]: class BasemethodMeta(type): def __new__(cls, class_name, bases, new_attrs): cls = type.__new__(cls, class_name, bases, new_attrs) new_attrs['__metaclass__'].cls = cls return cls def __call__(self):

Re: using metaclass __call__ to replace class instance

2005-09-09 Thread Peter Otten
Ksenia Marasanova wrote: class BasemethodMeta(type): def __new__(cls, class_name, bases, new_attrs): cls = type.__new__(cls, class_name, bases, new_attrs) new_attrs['__metaclass__'].cls = cls return cls def __call__(self): return self.cls.get_foo()

Re: using metaclass __call__ to replace class instance

2005-09-09 Thread Ksenia Marasanova
2005/9/9, Peter Otten [EMAIL PROTECTED]: Ksenia Marasanova wrote: class BasemethodMeta(type): def__new__(cls,class_name,bases,new_attrs): cls=type.__new__(cls,class_name,bases,new_attrs) new_attrs['__metaclass__'].cls=cls returncls