Skip to main content

Apply a decorator to all functions in a module.

Project description

Py-Decorate-All

Apply a decorator to all functions in a module.

Installation

pip install decorate-all

Example Usage

from decorate_all import decorate_all_functions
decorate_all_functions(my_decorator, my_module)

decorator (function): the decorator to apply to functions module_name (string): the name of the module to apply the decorator to

If you want to apply the decorator to functions in the current module, pass __name__ the module as make sure to call decorate_all_functions after defining the functions to decorate, i.e. at the end of the script to apply to all functions.

Here is an example for applying a decorator to all functions in a script: (works in a module or interactive console (REPL))

from decorate_all import decorate_all_functions

def test_function():
    print("Hello there")


def demo_decorator(func):
    def wrapper(*args, **kwargs):
        result = func(*args, **kwargs)
        return "Decorator was here!"
    
    return wrapper

decorate_all_functions(demo_decorator, __name__)

print(test_function())

The output of the above code is:

Hello there
Decorator was here!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

decorate_all-0.1.1.tar.gz (1.6 kB view details)

Uploaded Source

Built Distribution

decorate_all-0.1.1-py3-none-any.whl (1.9 kB view details)

Uploaded Python 3

File details

Details for the file decorate_all-0.1.1.tar.gz.

File metadata

  • Download URL: decorate_all-0.1.1.tar.gz
  • Upload date:
  • Size: 1.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for decorate_all-0.1.1.tar.gz
Algorithm Hash digest
SHA256 5e60257a429217825fa7d46d68afda10f0627af595cea025cccd10eeca50abad
MD5 f7341d33b908e26b27d1701208c77aec
BLAKE2b-256 f8b13d982f2d84aca2cfe0075be658e5958278131c4e9fdca2c1e6c2351de7f2

See more details on using hashes here.

File details

Details for the file decorate_all-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for decorate_all-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0e1ebdb1d61386f67f592638dbde8d5867bacd42389a82aa47cc5695f7853e39
MD5 e13926744e7fde6ba1f22e6b6a83bb51
BLAKE2b-256 f46456ab2f97247305c7285403d2f6e2d33c65e1d32367e4b5f80a789aea2e4d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page