Easy delegation with composition
Project description
Decorate a class with @delegate(attribute_name, method_names) to delegate the methods in method_names to the attribute attribute_name:
In [1]: from smartcompose import delegate
In [2]: @delegate('_n', ('__add__', '__mul__'))
...: class NumberWrapper:
...: def __init__(self, n):
...: self._n = n
...:
In [3]: n = NumberWrapper(10)
In [4]: n + 2
Out[4]: 12
In [5]: n * 3
Out[5]: 30
For now, only compatible with Python 3.
pip install smartcompose
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
smartcompose-0.1.0.tar.gz
(2.6 kB
view hashes)