Skip to content

vrakesh/Complaince

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Complaince Build Status

A python function parameter and return type-checking decorator

Both the parameters types and return type(optional to check for return type) can be done using a single decorator.

Each parameter can have multiple possible types , mentioned in a tuple

Installation

   pip install complaince

Examples

import using the following

   from complaince.complaince import param_check

When plainly checking parameter types

   @param_check((int,float),(int,float))
   def myfunc(a, b):

This indicates the parameters a,b can be either int or float

   @param_check((int,),(int,))
   def myfunc(a, b):

In this case both a and b have to be int only (tuple definition is a must )

There is are two optional parameters:

  1. level - Key-Value pair indicates warning message to stderr or throw an exception (0 - warning , 1 - exception error) Default is warning i.e 0

  2. ret - Key-Value pair indicating possible return types, in this case too value is a tuple

   @param_check((int,float),(int,float), level = 1, ret = (int,float))
   def myfunc(a, b)

In the above example we will throw an exception if the parameters, return value do not match required types. Return value can be either an in or float

Compatability

Requires python 2.7 or higher Works with python 3.0 and higher

About

A python function parameter and return type-checking decorator

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages