#NEWLINE# def __getattr__( self , key ) : #NEWLINE# #INDENT# meth = getattr ( self . instance , meth ) #NEWLINE# if ( ( not callable ( meth ) ) or ( key in self . __ignore ) ) : #NEWLINE# #INDENT# return meth #NEWLINE# #UNINDENT# @ wraps ( meth ) #NEWLINE# def __wrapped( * args , **kwargs ) : #NEWLINE# #INDENT# info = '' #NEWLINE# if self . ident : #NEWLINE# #INDENT# info += self . ident . format ( self . instance ) #NEWLINE# #UNINDENT# info += '{0.__name__}(' . format ( meth ) #NEWLINE# if args : #NEWLINE# #INDENT# info += ', ' . join ( map ( repr , args ) ) #NEWLINE# #UNINDENT# if kwargs : #NEWLINE# #INDENT# if args : #NEWLINE# #INDENT# info += ', ' #NEWLINE# #UNINDENT# info += ', ' . join ( ( '{k}={v!r}' . format ( k = key , v = value ) for ( key , value ) in items ( kwargs ) ) ) #NEWLINE# #UNINDENT# info += ')' #NEWLINE# self . logger . debug ( info ) #NEWLINE# return meth ( * args , ** kwargs ) #NEWLINE# #UNINDENT# return __wrapped