stubs/sqlalchemy/util/_collections.pyi (247 lines of code) (raw):

import sys from typing import ( AbstractSet, Any, Callable, Dict, FrozenSet, Generic, Iterable, Iterator, List, Mapping, Optional, Set, Tuple, Type, TypeVar, Union, overload, ) _T = TypeVar("_T") _U = TypeVar("_U") _KT = TypeVar("_KT") _VT = TypeVar("_VT") EMPTY_SET: FrozenSet[Any] = ... class AbstractKeyedTuple(Tuple[_T, ...], Generic[_T]): def keys(self) -> List[str]: ... class KeyedTuple(AbstractKeyedTuple[_T]): def __new__(cls, vals, labels: Optional[Any] = ...): ... def __setattr__(self, key, value): ... class ImmutableContainer(object): ... class immutabledict(ImmutableContainer, Dict[_KT, _VT]): clear: Any = ... pop: Any = ... popitem: Any = ... setdefault: Any = ... update: Any = ... def __new__(cls, *args): ... @overload def __init__(self, **kwargs: _VT) -> None: ... @overload def __init__(self, map: Mapping[_KT, _VT], **kwargs: _VT) -> None: ... @overload def __init__(self, iterable: Iterable[Tuple[_KT, _VT]], **kwargs: _VT) -> None: ... def __reduce__( self, ) -> Tuple[Type[immutabledict[_KT, _VT]], Tuple[Dict[_KT, _VT]]]: ... @overload def union( self, d: Mapping[_U, _T] ) -> immutabledict[Union[_U, _KT], Union[_VT, _T]]: ... @overload def union( self, d: Iterable[Tuple[_U, _T]] ) -> immutabledict[Union[_U, _KT], Union[_VT, _T]]: ... class Properties(Generic[_T]): def __init__(self, data) -> None: ... def __len__(self) -> int: ... def __iter__(self) -> Iterator[_T]: ... def __add__(self, other: Iterable[_U]) -> List[Union[_T, _U]]: ... def __setitem__(self, key: str, object: _T) -> None: ... def __getitem__(self, key: str) -> _T: ... def __delitem__(self, key: str) -> None: ... def __setattr__(self, key: str, obj: _T) -> None: ... def __getattr__(self, key: str) -> _T: ... def __contains__(self, key: str) -> bool: ... def as_immutable(self) -> ImmutableProperties[_T]: ... @overload def update(self, value: Mapping[str, _T]) -> None: ... @overload def update(self, value: Iterable[Tuple[str, _T]]) -> None: ... @overload def get(self, k: str) -> Optional[_T]: ... @overload def get(self, k: str, default: Union[_T, _U]) -> Union[_T, _U]: ... def keys(self) -> List[str]: ... def values(self) -> List[_T]: ... def items(self) -> List[Tuple[str, _T]]: ... def has_key(self, key: str) -> bool: ... def clear(self) -> None: ... class OrderedProperties(Properties[_T]): def __init__(self) -> None: ... class ImmutableProperties(ImmutableContainer, Properties[_T]): ... class OrderedDict(Dict[_KT, _VT]): def __reduce__(self): ... def __init__(self, ____sequence: Optional[Any] = ..., **kwargs) -> None: ... def clear(self) -> None: ... def copy(self) -> OrderedDict[_KT, _VT]: ... def __copy__(self) -> OrderedDict[_KT, _VT]: ... if sys.version_info < (3, 0): def sort( self, cmp: Callable[[_VT, _VT], Any] = ..., key: Callable[[_VT], Any] = ..., reverse: bool = ..., ) -> None: ... else: def sort( self, *, key: Optional[Callable[[_VT], Any]] = ..., reverse: bool = ... ) -> None: ... @overload def update(self, ____sequence: Mapping[_KT, _VT], **kwargs: _VT) -> None: ... @overload def update( self, ____sequence: Iterable[Tuple[_KT, _VT]], **kwargs: _VT ) -> None: ... @overload def update(self, **kwargs: _VT) -> None: ... # Signature of "setdefault" incompatible with supertype "dict" and "MutableMapping" def setdefault(self, key: _KT, value: _VT) -> _VT: ... # type: ignore def __iter__(self) -> Iterator[_KT]: ... # Return type of "keys" incompatible with supertype "dict" and "Mapping" def keys(self) -> List[_KT]: ... # type: ignore # Return type of "values" incompatible with supertype "dict" and "Mapping" def values(self) -> List[_VT]: ... # type: ignore # Return type of "items" incompatible with supertype "dict" and "Mapping" def items(self) -> List[Tuple[_KT, _VT]]: ... # type: ignore if sys.version_info < (3, 0): def itervalues(self) -> Iterator[_VT]: ... def iterkeys(self) -> Iterator[_KT]: ... def iteritems(self) -> Iterator[Tuple[_KT, _VT]]: ... def __setitem__(self, key: _KT, object: _VT) -> None: ... def __delitem__(self, key: _KT) -> None: ... @overload def pop(self, key: _KT) -> _VT: ... @overload def pop(self, key: _KT, *default: Union[_VT, _T]) -> Union[_VT, _T]: ... def popitem(self) -> Tuple[_KT, _VT]: ... _OS = TypeVar("_OS", bound=OrderedSet) class OrderedSet(Set[_T]): # TODO: double-check method signatures in this class. # We can potentially find some compromises to avoid a bunch of '# type: ignore's def __init__(self, d: Optional[Iterable[_T]] = ...) -> None: ... def add(self, element: _T) -> None: ... def remove(self, element: _T) -> None: ... def insert(self, pos: int, element: _T) -> None: ... def discard(self, element: _T) -> None: ... def clear(self) -> None: ... def __getitem__(self, key: int) -> _T: ... def __iter__(self) -> Iterator[_T]: ... def __add__(self: _OS, other: Iterable[_T]) -> _OS: ... def update(self: _OS, iterable: Iterable[_T]) -> _OS: ... # type: ignore # signature incompatible with supertype def __ior__(self: _OS, iterable: Iterable[_U]) -> OrderedSet[Union[_T, _U]]: ... def union(self: _OS, other: Iterable[_T]) -> _OS: ... # type: ignore # signature incompatible with supertype def __or__(self: _OS, other: Iterable[_U]) -> OrderedSet[Union[_T, _U]]: ... def intersection(self: _OS, other: Iterable[object]) -> _OS: ... # type: ignore # signature incompatible with supertype def __and__(self: _OS, other: Iterable[object]) -> _OS: ... def symmetric_difference(self: _OS, other: Iterable[_T]) -> _OS: ... def __xor__(self: _OS, other: Iterable[_U]) -> OrderedSet[Union[_T, _U]]: ... def difference(self: _OS, other: Iterable[object]) -> _OS: ... # type: ignore # signature incompatible with supertype def __sub__(self: _OS, other: Iterable[object]) -> _OS: ... def intersection_update(self: _OS, other: Iterable[_T]) -> _OS: ... # type: ignore # signature incompatible with supertype def __iand__(self: _OS, other: Iterable[object]) -> _OS: ... # Return type incompatible with supertype def symmetric_difference_update(self: _OS, other: Iterable[_T]) -> _OS: ... # type: ignore def __ixor__(self: _OS, other: Iterable[_U]) -> OrderedSet[Union[_T, _U]]: ... def difference_update(self: _OS, other: Iterable[object]) -> _OS: ... # type: ignore # signature incompatible with supertype def __isub__(self: _OS, other: Iterable[object]) -> _OS: ... class IdentitySet(object): def __init__(self, iterable: Optional[Any] = ...) -> None: ... def add(self, value): ... def __contains__(self, value): ... def remove(self, value): ... def discard(self, value): ... def pop(self): ... def clear(self): ... def __cmp__(self, other): ... def __eq__(self, other): ... def __ne__(self, other): ... def issubset(self, iterable): ... def __le__(self, other): ... def __lt__(self, other): ... def issuperset(self, iterable): ... def __ge__(self, other): ... def __gt__(self, other): ... def union(self, iterable): ... def __or__(self, other): ... def update(self, iterable): ... def __ior__(self, other): ... def difference(self, iterable): ... def __sub__(self, other): ... def difference_update(self, iterable): ... def __isub__(self, other): ... def intersection(self, iterable): ... def __and__(self, other): ... def intersection_update(self, iterable): ... def __iand__(self, other): ... def symmetric_difference(self, iterable): ... def __xor__(self, other): ... def symmetric_difference_update(self, iterable): ... def __ixor__(self, other): ... def copy(self): ... __copy__: Any = ... def __len__(self): ... def __iter__(self): ... def __hash__(self): ... class WeakSequence(object): def __init__(self, __elements: Any = ...) -> None: ... def append(self, item): ... def __len__(self): ... def __iter__(self): ... def __getitem__(self, index): ... class OrderedIdentitySet(IdentitySet): def __init__(self, iterable: Optional[Any] = ...) -> None: ... class PopulateDict(dict): creator: Any = ... def __init__(self, creator) -> None: ... def __missing__(self, key): ... column_set = set column_dict = dict ordered_column_set = OrderedSet populate_column_dict = PopulateDict def unique_list( seq: Iterable[_T], hashfunc: Optional[Callable[[_T], Any]] = ... ) -> List[_T]: ... class UniqueAppender(object): data: Any = ... def __init__(self, data, via: Optional[Any] = ...) -> None: ... def append(self, item): ... def __iter__(self): ... def coerce_generator_arg(arg): ... def to_list(x, default: Optional[Any] = ...): ... def has_intersection(set_, iterable): ... def to_set(x): ... def to_column_set(x): ... def update_copy(d, _new: Optional[Any] = ..., **kw): ... def flatten_iterator(x): ... class LRUCache(dict): capacity: Any = ... threshold: Any = ... def __init__(self, capacity: int = ..., threshold: float = ...) -> None: ... def get(self, key, default: Optional[Any] = ...): ... def __getitem__(self, key): ... def values(self): ... def setdefault(self, key, value): ... def __setitem__(self, key, value): ... def lightweight_named_tuple(name, fields): ... class ScopedRegistry(object): createfunc: Any = ... scopefunc: Any = ... registry: Any = ... def __init__(self, createfunc, scopefunc) -> None: ... def __call__(self): ... def has(self): ... def set(self, obj): ... def clear(self): ... class ThreadLocalRegistry(ScopedRegistry): createfunc: Any = ... registry: Any = ... def __init__(self, createfunc) -> None: ... def __call__(self): ... def has(self): ... def set(self, obj): ... def clear(self): ...