strict-hint

Strict type runtime checks for arguments and return types.


Keywords
type, hint
License
MIT
Install
pip install strict-hint==0.3.0

Documentation

Strict hint

Strict hint provides a way to do runtime type checks based based on type hint annotations introduced by PEP-484.

Usage is quite simple, just add type annotations to a function or method and decorate it with @strict:

from strict_hint import strict

@strict
def add(a: int: b: int) -> int:
    return a+b

If non int will be passed, a TypeError will be raised. Same will happen if function would return different type than expected.

Type checks support (for arguments and returned values):
  • all primitive type hints: int, float, list, tuple, set, dict, etc.,
  • standard interpreter types eg.: FunctionType and other,
  • tuples of types, eg: (int, float) will allow for both types to be accepted,
  • default values, also of different type than annotation: eg. a: int = None
  • used defined classes and class inheritance