Skip to content

A better functools (more signature-preserving than current impl, and with more features) #2

@smarie

Description

@smarie

functools is a great module to manipulate functions. However the created functions are not user-friendly :

  • functools.partial does not provide user-friendly name, help/signature, and docstring
  • functools.wraps does not truly preserve signature. See details here

Besides there is no counterpart to partial (adding parameters). Nor is there any user-friendly way to generalize to any signature modification or dynamic method creation.

I created makefun to cover all of these issues. I relied on dynamic code compilation (the trick that decorator uses). But it is probably less efficient than embedding it in the python framework itself. So a PEP would probably be useful here, what do you think ?

Related stackoverflow posts:

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions