Help in using introspection to simplify repetitive code
Terry Reedy
tjreedy at udel.edu
Sun Aug 20 16:59:23 EDT 2006
More information about the Python-list mailing list
Sun Aug 20 16:59:23 EDT 2006
- Previous message (by thread): newbie question about import tools
- Next message (by thread): Help in using introspection to simplify repetitive code
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
<jsceballos at gmail.com> wrote in message news:1156090845.875872.41220 at 75g2000cwc.googlegroups.com... > Hello. > I'm writing a proxy class, i.e: a class whose methods mostly delegate > their functionality to other class object. Most of the methods (which > are quite a lot) defined in the class would end up being: > > def thisIsTheMethodName(self): > self._handlerClass.thisIsTheMethodName() Are these parameterless static methods or should this be self._handlerClass.thisIsTheMethodName(self) or does self get auto-bound even though not a _handlerClass instance? (I have never needed or done such delegation.) > The handler object is the same in all methods. > > I was wondering if there is a way to simplify this proxy class, maybe > using some pythonic technique like metaclasses, introspection... any > suggestion is appreciated. My immediate thought would be to start with _forwarded = set(......) # of forwarded method names def __getattr__(self, name): if name in _forwarded: return getattr(self._handlerClass, name) but I am not sure if this gives the right wrapping and binding. Terry Jan Reedy
- Previous message (by thread): newbie question about import tools
- Next message (by thread): Help in using introspection to simplify repetitive code
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list