[Python-ideas] Access to function objects
Steven D'Aprano
steve at pearwood.info
Tue Aug 9 02:42:47 CEST 2011
Ben Finney wrote:
> The ability to access the undecorated function would be of great help in
> our Django-based project. Django is very decorator-happy, and we are
> trying to introspect code and, given a particular URL, determine the
> innermost function (more precisely, what location in our code) that
> actually handles that URL.
>
> Is that a use-case of interest?
I shouldn't think the proposed __func__ local would be of any use here,
because it is local to the function. As I understand your use-case, you
need to inspect a function from the outside, where __func__ is not
available, and peel back all the decorators to the innermost function.
To do that, I would start by looking at:
function.__closure__[0].cell_contents
and recurse as necessary.
--
Steven
More information about the Python-ideas
mailing list