Viewing file: typing.py (1.73 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
"""Helpers for use with type annotation.
Use the empty classes in this module when annotating the types of Pyrsistent objects, instead of using the actual collection class.
For example,
from pyrsistent import pvector from pyrsistent.typing import PVector
myvector: PVector[str] = pvector(['a', 'b', 'c'])
""" from __future__ import absolute_import
try: from typing import Container from typing import Hashable from typing import Generic from typing import Iterable from typing import Mapping from typing import Sequence from typing import Sized from typing import TypeVar
__all__ = [ 'CheckedPMap', 'CheckedPSet', 'CheckedPVector', 'PBag', 'PDeque', 'PList', 'PMap', 'PSet', 'PVector', ]
T = TypeVar('T') KT = TypeVar('KT') VT = TypeVar('VT')
class CheckedPMap(Mapping[KT, VT], Hashable): pass
# PSet.add and PSet.discard have different type signatures than that of Set. class CheckedPSet(Generic[T], Hashable): pass
class CheckedPVector(Sequence[T], Hashable): pass
class PBag(Container[T], Iterable[T], Sized, Hashable): pass
class PDeque(Sequence[T], Hashable): pass
class PList(Sequence[T], Hashable): pass
class PMap(Mapping[KT, VT], Hashable): pass
# PSet.add and PSet.discard have different type signatures than that of Set. class PSet(Generic[T], Hashable): pass
class PVector(Sequence[T], Hashable): pass
class PVectorEvolver(Generic[T]): pass
class PMapEvolver(Generic[KT, VT]): pass
class PSetEvolver(Generic[T]): pass except ImportError: pass
|