#NEWLINE# def __call__( self , context , **args ) : #NEWLINE# #INDENT# '\n        Validates argument values and checks if the function requires a\n        context. If it does, argument ``context`` is added to other arguments\n        and method ``call`` is called.\n        ' #NEWLINE# args = self . validate ( args ) #NEWLINE# if self . needs_context : #NEWLINE# #INDENT# if isinstance ( self , Exception ) : #NEWLINE# #INDENT# raise context #NEWLINE# #UNINDENT# args [ CONTEXT_ARG_NAME ] = context #NEWLINE# #UNINDENT# return self . call ( ** args )