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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5e60257a429217825fa7d46d68afda10f0627af595cea025cccd10eeca50abad |
|
MD5 | f7341d33b908e26b27d1701208c77aec |
|
BLAKE2b-256 | f8b13d982f2d84aca2cfe0075be658e5958278131c4e9fdca2c1e6c2351de7f2 |
File details
Details for the file decorate_all-0.1.1-py3-none-any.whl
.
File metadata
- Download URL: decorate_all-0.1.1-py3-none-any.whl
- Upload date:
- Size: 1.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0e1ebdb1d61386f67f592638dbde8d5867bacd42389a82aa47cc5695f7853e39 |
|
MD5 | e13926744e7fde6ba1f22e6b6a83bb51 |
|
BLAKE2b-256 | f46456ab2f97247305c7285403d2f6e2d33c65e1d32367e4b5f80a789aea2e4d |