Package 'decorators'
Title: |
Extend the Behaviour of a Function without Explicitly Modifying
it |
Description: |
A decorator is a function that receives a function,
extends its behaviour, and returned the altered function. Any
caller that uses the decorated function uses the same interface
as it were the original, undecorated function. Decorators serve
two primary uses: (1) Enhancing the response of a function as
it sends data to a second component; (2) Supporting multiple
optional behaviours. An example of the first use is a timer
decorator that runs a function, outputs its execution time on
the console, and returns the original function's result. An
example of the second use is input type validation decorator
that during running time tests whether the caller has passed
input arguments of a particular class. Decorators can reduce
execution time, say by memoization, or reduce bugs by adding
defensive programming routines. |
Authors: |
Harel Lustiger [aut, cre] ,
Tidylab [cph, fnd] |
Maintainer: |
Harel Lustiger <[email protected]> |
License: |
MIT + file LICENSE |
Version: |
0.3.0 |
Built: |
2024-11-12 04:25:47 UTC |
Source: |
https://github.com/tidylab/decorators |
Help Index