# Advice
[Aspect-oriented programming](https://en.wikipedia.org/wiki/Aspect-oriented_programming)
## TODO
1. FIX starred import
1. Patch already imported objects (`patch_project`)
## Usage
```python
import aop
def multiply(context):
print(context.args)
print(context.kwargs)
yield
context.result *= 100
aop.register(
handler=multiply,
modules=aop.match(equals='math'),
targets=aop.match(regexp='(sin|cos)')
)
```
Ok, let's check:
```python
In [2]: import math
In [3]: math.cos(0)
(0,)
{}
Out[3]: 100.0
```
[Aspect-oriented programming](https://en.wikipedia.org/wiki/Aspect-oriented_programming)
## TODO
1. FIX starred import
1. Patch already imported objects (`patch_project`)
## Usage
```python
import aop
def multiply(context):
print(context.args)
print(context.kwargs)
yield
context.result *= 100
aop.register(
handler=multiply,
modules=aop.match(equals='math'),
targets=aop.match(regexp='(sin|cos)')
)
```
Ok, let's check:
```python
In [2]: import math
In [3]: math.cos(0)
(0,)
{}
Out[3]: 100.0
```
Release files for aop 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| aop-0.2.0.tar.gz | 4.4 kB | Details |
Release files / aop-0.2.0.tar.gz
| Download URL | aop-0.2.0.tar.gz |
|---|---|
| Size | 4.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2bb26687689e115307fc06264867528181798d5d00982412e1aeb1f387159ac4
|
|
BLAKE2b-256 checksum How to use checksums |
d452535986e3568ac6f14737e272b65d7eae99beb586bf1b88457ef805df34fc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.11.0 pkginfo/1.4.2 requests/2.9.1 setuptools/36.5.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.5.2
|