Skip to main content

A simple attribution checker implemented as a decorator

Project description

attrcheck: attribution checker

This module provides a simple attribution checker implemented as a decorator. All functionality are provided as keyword arguments of the decorator.

Sample example of usage is following:

>>> from attrcheck import attrcheck
>>> @attrcheck(x=['real'], y=['index', 'strip'], z=dir(list))
... def foo(x, y, z=[]): pass

The code above means the following:

>>> def foo(x, y, z=[]):
...     if not hasattr(x, 'real'):
...         raise AttributeError
...     if not hasattr(y, 'index'):
...         raise AttributeError
...     if not hasattr(y, 'strip'):
...         raise AttributeError
...     for name in dir(list):
...         if not hasattr(z, name):
...             raise AttributeError

In addition, attrcheck can check default argument values. Thus, the following code throws AttributeError.

>>> @attrcheck(y=dir(str))
... def bar(x, y=[]): pass

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

attrcheck-0.1.2.tar.gz (2.4 kB view hashes)

Uploaded Source

Built Distributions

attrcheck-0.1.2-py3.2.egg (5.8 kB view hashes)

Uploaded Source

attrcheck-0.1.2-py2.7.egg (5.8 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page