adaptix.provider package

Module contents

exception adaptix.provider.AggregateCannotProvide(
message: str,
exceptions: Sequence[CannotProvide],
*,
is_terminal: bool = False,
is_demonstrative: bool = False,
parent_notes_gen: Callable[[], Sequence[str]] | None = None,
)

Bases: ExceptionGroup[CannotProvide], CannotProvide

derive(
excs: Sequence[CannotProvide],
) AggregateCannotProvide
derive_upcasting(
excs: Sequence[CannotProvide],
) CannotProvide

Same as method derive but allow passing an empty sequence

classmethod make(
message: str,
exceptions: Sequence[CannotProvide],
*,
is_terminal: bool = False,
is_demonstrative: bool = False,
parent_notes_gen: Callable[[], Sequence[str]] | None = None,
) CannotProvide
exception adaptix.provider.CannotProvide(
message: str = '',
*,
is_terminal: bool = False,
is_demonstrative: bool = False,
parent_notes_gen: Callable[[], Sequence[str]] | None = None,
)

Bases: Exception

class adaptix.provider.Chain(
value,
)

Bases: Enum

FIRST = 'FIRST'
LAST = 'LAST'
class adaptix.provider.LocStackPattern(
stack: tuple[LocStackChecker, ...],
)

Bases: object

property ANY: AnyLocStackChecker
build_loc_stack_checker() LocStackChecker
generic_arg(
pos: int,
pred: str | Pattern | type | Any | LocStackChecker | LocStackPattern,
) Pat
class adaptix.provider.Mediator

Bases: DirectMediator, ABC, Generic[ResponseT]

Mediator is an object that gives provider access to other providers and that stores the state of the current search.

Mediator is a proxy to providers of retort.

abstractmethod cached_call(
func: Callable[[...], T],
*args: Any,
**kwargs: Any,
) T
abstractmethod provide_from_next() ResponseT

Forward current request to providers that placed after current provider at the recipe.

class adaptix.provider.Provider

Bases: ABC

An object that can process Request instances

abstractmethod get_request_handlers() Sequence[tuple[type[Request], RequestChecker, Callable[[Mediator[ResponseT], RequestT], ResponseT]]]
class adaptix.provider.Request

Bases: Generic[T]

An object that contains data to be processed by Provider.

Generic argument indicates which object should be returned after request processing.

Request must always be a hashable object

adaptix.provider.create_loc_stack_checker(
pred: str | Pattern | type | Any | LocStackChecker | LocStackPattern,
) LocStackChecker