Untitled
public text v1 · immutableclass Wrapper:
def __init__(self,innerClass,**kw):
self.obj = innerClass(**kw)
def __getattr__(self,name):
innerAttr = getattr(self.obj,name)
if callable(innerAttr):
print name
return innerAttr
def MetaWrapper(innerClass):
def f():
return Wrapper(innerClass)
return f
#return lambda ): Wrapper(innerClass)
class A:
def cucu(self):
print 8
AA = MetaWrapper(A)
>>> a= A()
>>> a.cucu()
8
>>> aa= AA()
>>> aa.cucu()
cucu
8