benchmarkstt.factory module¶
%%{init: {'theme': 'base', 'themeVariables': { 'primaryColor': '#e7f2fa', 'lineColor': '#2980B9' }}}%%
classDiagram
CoreFactory
ClassConfig
Factory
ClassConfigTuple <|-- ClassConfig
Registry <|-- Factory
class ClassConfigTuple {
<<namedtuple>>
name
cls
docs
optional_args
required_args
}
class ClassConfig {
__new__(name, docs, optional_args, required_args)$
}
class Factory {
<<mapping>>
<<contains>>
<<iterable>>
+create(alias, *args, **kwargs)
+is_valid(tocheck)
+keys()
+register(alias=None)
+register_classname(name, alias=None)
+register_namespace(namespace)
+unregister(key)
base_class
namespaces=None
methods=None
normalize_class_name(clsname)$
}
class CoreFactory {
<<mapping>>
<<contains>>
<<iterable>>
+create(*args, **kwargs)
+is_valid(*args, **kwargs)
+keys()
+register(*args, **kwargs)
add_supported_namespace(namespace)$
base_class
allow_duck=None
}
-
class
benchmarkstt.factory.
ClassConfig
(name, cls, docs, optional_args, required_args)[source]¶ Bases:
benchmarkstt.factory.ClassConfigTuple
-
property
docs
¶ Alias for field number 2
-
property
-
class
benchmarkstt.factory.
Factory
(base_class, namespaces=None, methods=None)[source]¶ Bases:
benchmarkstt.registry.Registry
Factory class with auto-loading of namespaces according to a base class.
-
is_valid
(tocheck)[source]¶ Checks that tocheck is a valid class extending base_class
- Parameters
tocheck -- The class to check
- Return type
bool
-
static
normalize_class_name
(clsname)[source]¶ Normalizes the class name for automatic lookup of a class, by default this means lowercasing the class name, but may be overrided by a child class.
- Parameters
clsname -- The class name
- Returns
The normalized class name
- Return type
str
-