Metadata-Version: 2.1
Name: pyguardian
Version: 0.0.3
Summary: "Runtime type-checking of method parameters."
Home-page: https://github.com/greydevv/pyguardian
Author: Greyson Murray
Author-email: greysonmurray.dev@gmail.com
License: MIT
Platform: UNKNOWN
Classifier: License :: OSI Approved :: MIT License
Classifier: Topic :: Software Development
Classifier: Intended Audience :: Developers
Classifier: Development Status :: 5 - Production/Stable
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Requires-Python: >=3.6
Description-Content-Type: text/markdown
Provides-Extra: test
License-File: LICENSE

# pyguardian

## Description
*pyguardian* is a type-checker for method parameters. Methods are type-checked at runtime via the `guard` decorator:
```python
from pyguardian import guard

@guard(int, int)
def add(a, b):
    return a+b

# Successful call
>>> add(1,2)
3

# Unsccessful call ("2" is not an integer!)
>>> add(1,"2")
InvalidArgumentTypeError: 'add' expects value of type 'int' for parameter 'b' but got 'str'
```

## Installation
```bash
pip install pyguardian
```

## Documentation
See [DOCUMENTATION.md](https://github.com/greysonDEV/pyguardian/blob/master/DOCUMENTATION.md)

## License
*pyguardian* is licensed under the [MIT](https://github.com/greysonDEV/pyguardian/blob/master/LICENSE) License.


