Go to file
dependabot[bot] 2f4fdd560d
Bump mypy from 0.800 to 0.812 (#61)
Bumps [mypy](https://github.com/python/mypy) from 0.800 to 0.812.
- [Release notes](https://github.com/python/mypy/releases)
- [Commits](https://github.com/python/mypy/compare/v0.800...v0.812)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-02-22 20:02:05 -05:00
.github Bump toolmantim/release-drafter from v5.13.0 to v5.14.0 (#59) 2021-02-15 14:56:36 -05:00
docs Fix doctests for has_multimethods decorator 2020-10-24 15:16:57 -04:00
generic Enable docformatter pre-commit checks 2020-09-15 19:50:55 -04:00
tests Enable docformatter pre-commit checks 2020-09-15 19:50:55 -04:00
.flake8 Enable flake8 checks on __init__.py files 2020-08-28 22:27:10 -04:00
.gitignore Add isort, check-toml, and check-yaml to pre-commit 2020-08-28 22:08:26 -04:00
.pre-commit-config.yaml [pre-commit.ci] pre-commit autoupdate (#52) 2021-01-25 16:51:39 -05:00
CODE_OF_CONDUCT.md Update code of conduct to version 2 [skip-ci] 2020-08-26 22:17:34 -04:00
CONTRIBUTING.md Add code of conduct and contributing guide [skip-ci] 2020-08-26 22:12:54 -04:00
COPYRIGHT.txt Added Copyright and license info. 2010-08-23 21:07:22 +04:00
LICENSE.txt Added Copyright and license info. 2010-08-23 21:07:22 +04:00
mypy.ini Fix linting errors 2019-11-09 11:08:06 +01:00
poetry.lock Bump mypy from 0.800 to 0.812 (#61) 2021-02-22 20:02:05 -05:00
pyproject.toml Bump mypy from 0.800 to 0.812 (#61) 2021-02-22 20:02:05 -05:00
README.md Remove Travis badge, add Gitter badge, and enable code climate 2019-11-25 12:29:48 -05:00

Generic programming library for Python

Build state Maintainability Test Coverage Documentation Status Code style: black Gitter

Generic is a library for Generic programming, also known as Multiple dispatch.

The Generic library supports:

  • multi-dispatch: like functools.singledispatch, but for more than one parameter
  • multi-methods: multi-dispatch, but for methods
  • event dispatching: based on a hierarchical event structure (event objects)

You can read documentation hosted at excellent readthedocs.org project. Development takes place on github.

Changes

1.0.0

  • Updated documentation on Readthedocs
  • Fix multimethod.otherwise clause

1.0.0b1

  • Ported the code to Python 3.7, Python 2 is no longer supported
  • Multimethods now have their own module
  • The interface now mimics functools.singledispatch:
    • the when method has been renamed to register
    • overriding of methods is no longer possible

0.3.1

  • Minor fixes in distribution.

0.3

  • Event management with event inheritance support.

0.2

  • Methods with multidispatch by object type and positional arguments.
  • Override multifunctions with override method.

0.1

  • Registry with simple and type axes.
  • Functions with multidispatch by positional arguments.