Skip to main content

A more fine-grained functools.singledispatch

Project description

Like functools.singledispatch, but will allow to register multiple functions for each class.

If a registered function decides it cannot handle the value after inspecting it, it can give up and let others try their luck:

from allot import allot, Pass

@allot
def f(obj):
    return 'object'

@f.register(int)
def f_small_integer(obj):
    if obj > 10:
        return Pass
    return 'small integer'

assert f('a string') == 'object'
assert f(3) == 'small integer'
assert f(10) == 'object'

Project details


Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
allot-0.2-py3-none-any.whl (38.8 kB) Copy SHA256 hash SHA256 Wheel py3
allot-0.2.tar.gz (18.3 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page