All Projects → gaphor → generic

gaphor / generic

Licence: other
Generic programming library for Python

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to generic

TableViewExtension
This extension simplify registering any cell, reusing and other verbosity steps.
Stars: ✭ 13 (-74%)
Mutual labels:  generic, generic-programming
GenericRecyclerAdapter
Easiest way to use RecyclerView. Reduce boilerplate code! You don't need to write adapters for listing pages anymore!
Stars: ✭ 53 (+6%)
Mutual labels:  generic, generic-programming
EntitasGenericAddon
Addon to Entitas that allows using generic methods instead of code generator and uses type inference to insure compile time correctness
Stars: ✭ 17 (-66%)
Mutual labels:  generic
heidi
heidi : tidy data in Haskell
Stars: ✭ 24 (-52%)
Mutual labels:  generic-programming
Generic-SQL-Audit-Trail
A generic audit trail based on triggers and dynamic SQL.
Stars: ✭ 15 (-70%)
Mutual labels:  generic
dart sealed
Dart and Flutter sealed class generator and annotations, with match methods and other utilities. There is also super_enum compatible API.
Stars: ✭ 16 (-68%)
Mutual labels:  generic
generic
generic streamlink plugin
Stars: ✭ 18 (-64%)
Mutual labels:  generic
go-ringbuf
Lock-free MPMC Ring Buffer (Generic) for SMP, in golang. Some posts in chinese:
Stars: ✭ 43 (-14%)
Mutual labels:  generic-programming
go course
個人多年來學習與實作上的心得筆記
Stars: ✭ 25 (-50%)
Mutual labels:  generic
react-native-card-button
Fully customizable Card Button via Paraboly for React Native.
Stars: ✭ 16 (-68%)
Mutual labels:  generic
QuickDB
A Generic CoreData Manager to accept any type of objects. Fastest way for adding a Database to your project.
Stars: ✭ 16 (-68%)
Mutual labels:  generic
Observable
A generic ObservableObject for every property!
Stars: ✭ 41 (-18%)
Mutual labels:  generic
Processor
Ontology-driven Linked Data processor and server for SPARQL backends. Apache License.
Stars: ✭ 54 (+8%)
Mutual labels:  generic
Genumerics
Genumerics is a high-performance .NET library for generic numeric operations
Stars: ✭ 16 (-68%)
Mutual labels:  generic
GenericTensor
The only library allowing to create Tensors (matrices extension) with custom types
Stars: ✭ 42 (-16%)
Mutual labels:  generic
generic
flexible data type for Go
Stars: ✭ 43 (-14%)
Mutual labels:  generic
pressio
Model reduction for linear and nonlinear dynamical systems: core C++ library
Stars: ✭ 35 (-30%)
Mutual labels:  generic-programming
omnipersistence
Utilities for JPA, JDBC and DataSources
Stars: ✭ 24 (-52%)
Mutual labels:  generic
Johnny
Melodic Caching for Swift
Stars: ✭ 36 (-28%)
Mutual labels:  generic
Astview
Astview is a graphical viewer for abstract syntax trees
Stars: ✭ 20 (-60%)
Mutual labels:  generic

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.1.0

  • Rename master branch to main
  • generic.event.Manager executes all handlers and throws an ExceptionGroup in case of errors

1.0.1

  • Add Support for Python 3.10, Drop Support for Python 3.7
  • Enable Pre-commit Hooks for isort, toml, yaml, pyupgrade, docformatter, and flake8
  • Migrate to GitHub Actions

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.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].