Registry¶
-
class
statey.registry.
Registry
¶ A type registry is used to parse annotations into types
-
abstract
get_caster
(from_type: statey.syms.types.Type, to_type: statey.syms.types.Type) → Object¶ Get a caster given from_type and to_type
-
abstract
get_differ
(type: statey.syms.types.Type) → Differ¶ Given a type, get a differ instance to diff the data
-
abstract
get_encoder
(type: statey.syms.types.Type, serializable: bool = False) → Encoder¶ Given a type, return an Encoder instance to encode the type, raising an exc.NoEncoderFound to indicate failure
-
abstract
get_impl_serializer
(impl: ObjectImplementation, type: statey.syms.types.Type) → ObjectImplementationSerializer¶ Get an object implementation serializer for the given implementation and type
-
abstract
get_impl_serializer_from_data
(data: Any) → ObjectImplementationSerializer¶ Get an object implementation serializer from the given data
-
abstract
get_methods
(type: statey.syms.types.Type) → ObjectMethods¶ Get ObjectMethods for the given type
-
abstract
get_namespace_serializer
(ns: Namespace) → NamespaceSerializer¶ Get a namespace serializer for the given namespace
-
abstract
get_namespace_serializer_from_data
(data: Any) → NamespaceSerializer¶ Get a namespace serializer from the given data
-
abstract
get_object
(value: Any) → Object¶ Get a statey object given a value
-
abstract
get_object_serializer
(obj: Object) → ObjectSerializer¶ Get an object serializer for the given object
-
abstract
get_object_serializer_from_data
(data: Any) → ObjectSerializer¶ Get an object serializer from the given data
-
abstract
get_plugin_installer
(name: str) → PluginInstaller¶ Get a plugin installer for a given plugin name
-
abstract
get_provider
(name: str, params: Optional[Dict[str, Any]] = None) → Provider¶ Get a provider with the given name and params
-
abstract
get_semantics
(type: statey.syms.types.Type) → Semantics¶ Given a type, get the semantics to use for objects of that type.
-
abstract
get_session_serializer
(session: Session) → SessionSerializer¶ Get a session serializer for the given session
-
abstract
get_session_serializer_from_data
(data: Any) → SessionSerializer¶ Get a session serializer from the given data
-
abstract
get_state_manager
() → StateManager¶ Get a state manager to use for the current module
-
abstract
get_type
(annotation: Any, meta: Optional[Dict[str, Any]] = None) → statey.syms.types.Type¶ Parse the given annotation and return a Type. This will properly handle dataclasses similarly to how case classes are handled in spark encoding
-
abstract
get_type_serializer
(type: statey.syms.types.Type) → TypeSerializer¶ Given a type, get the type serializer to turn it into a JSON-serializable value.
-
abstract
get_type_serializer_from_data
(data: Any) → TypeSerializer¶ Given serialized data, get a type serializer that can decode the serialized type of into a native Type
-
abstract
infer_type
(obj: Any) → statey.syms.types.Type¶ Attempt to infer the type of obj, falling back on Any
-
object
(*args, **kwargs) → Object¶ Create an object bound to this registry
-
abstract
register
(plugin: Any) → None¶ Register a plugin within this registry
-
abstract
-
class
statey.registry.
HookBasedRegistry
¶ Registry based on pluggy hooks