Reflective annotation library for python
Project description
Description
Annotation library like Java’s annotation with reflective concerns for Python.
Links
Installation
pip install b3j0f.annotation
Features
What does mean annotations in a reflective way:
one annotation can annotate several objects at a time (modules, classes, functions, instances, builtins, annotation like themselves, etc.).
such as a reflective object, they could have their own behavior and lifecycle independently to annotated elements.
This library provides the base Annotation class in order to specialize your own annotations, and several examples of useful annotation given in different modules such as:
async: dedicated to asynchronous programming.
interception: annotations able to intercept callable object calls.
call: inherits from interception module and provides annotations which allow to do checking on callable objects.
check: annotations which check some conditions such as type of annotated targets, max number of annotated elements, etc.
oop: useful in object oriented programming like allowing to weave mixins.
Examples
Perspectives
Cython implementation.
Donation
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 Distributions
Built Distribution
File details
Details for the file b3j0f.annotation-0.3.6.zip
.
File metadata
- Download URL: b3j0f.annotation-0.3.6.zip
- Upload date:
- Size: 47.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 00f630a61fd9b78321c2cd7b24aa9efa46673c35dab219ed7e883199b2c7cd35 |
|
MD5 | 56c856248189c527cea83b4c1633b3ec |
|
BLAKE2b-256 | b7294126ba66de28b506d18a2bc1c68add91b30b65f1b2039e6bcaec032f2b35 |
File details
Details for the file b3j0f.annotation-0.3.6.tar.gz
.
File metadata
- Download URL: b3j0f.annotation-0.3.6.tar.gz
- Upload date:
- Size: 26.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bb46848c81bb1f3a3276c57e8530af70f8e53093df767efa57f56a5d83578387 |
|
MD5 | 75bd88aeaf21342616a45fa1706e7bfc |
|
BLAKE2b-256 | f84bb248c8a9f7d9df9e7031fb937aac92dcb7fe2edf7d46190b8cc19cab7c1d |
File details
Details for the file b3j0f.annotation-0.3.6.tar.bz2
.
File metadata
- Download URL: b3j0f.annotation-0.3.6.tar.bz2
- Upload date:
- Size: 23.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e2bd1147ecb9eb20b726dfd2ffe5b9a7662fc90095d1898db0628d78fd426c5a |
|
MD5 | d64a8b653da9c04af97017bee3f4b775 |
|
BLAKE2b-256 | e2fd71901feaa93366db4f24af1accfa2479702ddf5d8a11879ca223a6fc9260 |
File details
Details for the file b3j0f.annotation-0.3.6-py2.py3-none-any.whl
.
File metadata
- Download URL: b3j0f.annotation-0.3.6-py2.py3-none-any.whl
- Upload date:
- Size: 42.8 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 37a1569d5c81e087aface1f3e462dccd3f97752858c4da7f2540f89928364ec6 |
|
MD5 | f3c2de0ca555eaa35e86b4aed7a0052c |
|
BLAKE2b-256 | 5e6bce0a58fb38fdf62893baea21df90b1b971b29111861f89d64fd4cccb55e9 |