added Functor
This commit is contained in:
parent
5b06bb25bd
commit
c7ba7ab8ad
|
|
@ -481,3 +481,18 @@ def printProfile(filename=PyUtilProfileDefaultFilename,
|
|||
for sort in sorts:
|
||||
s.sort_stats(sort)
|
||||
s.print_stats(lines)
|
||||
|
||||
class Functor:
|
||||
def __init__(self, function, *args, **kargs):
|
||||
assert callable(function), "function should be a callable obj"
|
||||
self._function = function
|
||||
self._args = args
|
||||
self._kargs = kargs
|
||||
|
||||
def __call__(self, *args, **kargs):
|
||||
"""call function"""
|
||||
_args = list(self._args)
|
||||
_args.extend(args)
|
||||
_kargs = self._kargs.copy()
|
||||
_kargs.update(kargs)
|
||||
return apply(self._function,_args,_kargs)
|
||||
|
|
|
|||
Loading…
Reference in New Issue