httk.core.views.backend¶
Classes¶
Abstract base class to be subclassed into classes that keep track of alternative |
Module Contents¶
- class httk.core.views.backend.Backend[BackendT: Backend](backend, **hints)[source]¶
Bases:
abc.ABCAbstract base class to be subclassed into classes that keep track of alternative representations of certain types of data, all adhering to a common API interface.
The class variable backend_classes is a list of all classes that can carry the kind of data the subclass represents.
A system of “hints” are used primarily to disambiguate between multiple valid interpretations of the same input object. Unless otherwise documented for a specific backend, extra hints that do not affect this interpretation are ignored.
A set of backends are meant to be combined with a set of Views.
Concrete backends implement
_backend_adoptto accept an object and return an initialized backend instance, orNoneto decline it. Thekindhint convention is used to disambiguate between multiple valid interpretations.- Parameters:
backend (Any) – Source value or backend being adopted by the concrete backend.
**hints (Any) – Backend-specific initialization hints.
- unwrap()[source]¶
Return the most raw representation possible of this backend, i.e., if it uses a backend with an internal representaion - or if it can (possibly lossly) convert itself into a more raw representation that still would be recognized as a <Something>Like type, that representation will be returned. If this is not possible, the instance itself is returned.
- Returns:
The backend’s most raw available representation.
- Return type:
Any