* Added function_name to obtain the name given to a function.

This commit is contained in:
Wirawan Purwanto
2014-01-31 10:06:33 -05:00
parent 839948a8da
commit 4fbf85d503

View File

@@ -30,3 +30,21 @@ def make_unbound_method(method):
# Assume this is a static method or user-defined external method
# injected into this class.
return method
def function_name(f):
"""Returns the given name of a function (or callable object)."""
try:
# Regular function
return f.func_name
except:
pass
try:
# Instance method
return "%s.%s" % (f.im_class, f.im_func.func_name)
except:
pass
# Callable class instance:
return f.__class__.__name__