Utilities¶
Tools¶
Frozen Class¶
Frozen class.
Example of usage can be found in catalyst.core.state.State
.
Registry¶
Registry. .. todo:: Representative docstring for this module
-
class
catalyst.tools.registry.
Registry
(default_name_key: str, default_meta_factory: Callable[[Union[Type[CT_co], Callable[[...], Any]], Tuple, Mapping[KT, VT_co]], Any] = <function _default_meta_factory>)[source]¶ Bases:
collections.abc.MutableMapping
Universal class allowing to add and access various factories by name.
-
__init__
(default_name_key: str, default_meta_factory: Callable[[Union[Type[CT_co], Callable[[...], Any]], Tuple, Mapping[KT, VT_co]], Any] = <function _default_meta_factory>)[source]¶ Parameters: - default_name_key (str) – Default key containing factory name when creating from config
- default_meta_factory (MetaFactory) – default object that calls factory. Optional. Default just calls factory.
-
add
(factory: Union[Type[CT_co], Callable[[...], Any]] = None, *factories, name: str = None, **named_factories) → Union[Type[CT_co], Callable[[...], Any]][source]¶ Adds factory to registry with it’s
__name__
attribute or provided name. Signature is flexible.Parameters: - factory – Factory instance
- factories – More instances
- name – Provided name for first instance. Use only when pass single instance.
- named_factories – Factory and their names as kwargs
Returns: First factory passed
Return type: (Factory)
-
add_from_module
(module, prefix: Union[str, List[str]] = None) → None[source]¶ Adds all factories present in module. If
__all__
attribute is present, takes ony what mentioned in it.Parameters: - module – module to scan
- prefix (Union[str, List[str]]) – prefix string for all the module’s factories. If prefix is a list, all values will be treated as aliases.
-
get
(name: str) → Union[Type[CT_co], Callable[[...], Any], None][source]¶ Retrieves factory, without creating any objects with it or raises error.
Parameters: name – factory name Returns: factory by name Return type: Factory
-
get_from_params
(*, meta_factory=None, **kwargs) → Union[Any, Tuple[Any, Mapping[str, Any]]][source]¶ Creates instance based in configuration dict with
instantiation_fn
. Ifconfig[name_key]
is None, None is returned.Parameters: - meta_factory – Function that calls factory the right way. If not provided, default is used.
- **kwargs – additional kwargs for factory
Returns: result of calling
instantiate_fn(factory, **config)
-
get_if_str
(obj: Union[str, Type[CT_co], Callable[[...], Any]])[source]¶ Returns object from the registry if
obj
type is string.
-
get_instance
(name: str, *args, meta_factory=None, **kwargs)[source]¶ Creates instance by calling specified factory with
instantiate_fn
.Parameters: - name – factory name
- meta_factory – Function that calls factory the right way. If not provided, default is used
- args – args to pass to the factory
- **kwargs – kwargs to pass to the factory
Returns: created instance
-
Time Manager¶
Simple timer.