Module pynction.functors
Expand source code
from typing import Callable, Generic, TypeVar
from typing_extensions import Protocol
T_cov = TypeVar("T_cov", covariant=True)
T2 = TypeVar("T2")
class Functor(Generic[T_cov], Protocol):
def map(self, f: Callable[[T_cov], T2]) -> "Functor[T2]":
raise NotImplementedError
Sub-modules
pynction.functors.function
Classes
class Functor (*args, **kwargs)-
Abstract base class for generic types.
A generic type is typically declared by inheriting from this class parameterized with one or more type variables. For example, a generic mapping type might be defined as::
class Mapping(Generic[KT, VT]): def getitem(self, key: KT) -> VT: … # Etc.
This class can then be used as follows::
def lookup_name(mapping: Mapping[KT, VT], key: KT, default: VT) -> VT: try: return mapping[key] except KeyError: return default
Expand source code
class Functor(Generic[T_cov], Protocol): def map(self, f: Callable[[T_cov], T2]) -> "Functor[T2]": raise NotImplementedErrorAncestors
- typing.Generic
- typing_extensions.Protocol
Subclasses
Methods
def map(self, f: Callable[[+T_cov], ~T2]) ‑> Functor[~T2]-
Expand source code
def map(self, f: Callable[[T_cov], T2]) -> "Functor[T2]": raise NotImplementedError