nmk.model.config¶
nmk configuration objects
Attributes¶
Pattern to locate config reference in string |
|
Pattern to recognize final config items |
|
Used config item types |
Classes¶
nmk configuration item base class |
|
Static config item (defined in project file) |
|
Merged config item base class |
|
Merged list config item |
|
Merged list config item |
|
Resolved config item class |
Module Contents¶
- nmk.model.config.CONFIG_REF_PATTERN¶
Pattern to locate config reference in string
- nmk.model.config.FINAL_ITEM_PATTERN¶
Pattern to recognize final config items
- nmk.model.config.ConfigTypes¶
Used config item types
- class nmk.model.config.NmkConfig¶
Bases:
abc.ABCnmk configuration item base class
- name: str¶
Item name
- model: object¶
Model instance
- path: pathlib.Path¶
Defining project file path
- property is_final: bool¶
Returns true if current item is a final one
- property value: ConfigTypes¶
Returns current item value
- resolve(cache: bool = True, resolved_from: set[str] | None = None) ConfigTypes¶
Resolves item value
- Parameters:
cache – use cached value, if already resolved
resolved_from – set of item names referencing this item
- Returns:
resolved item value
- property value_type: type[Any]¶
- Abstractmethod:
Value type for this item; to be overridden by sub-classes
- Returns:
value type
- class nmk.model.config.NmkStaticConfig¶
Bases:
NmkConfigStatic config item (defined in project file)
- static_value: str | int | bool | list[Any] | dict[str, Any]¶
Project defined value
- volatile: bool = False¶
Disable cache for this item
- property value_type: type[Any]¶
Value type for this static item
- Returns:
value type
- class nmk.model.config.NmkMergedConfig¶
Bases:
NmkConfigMerged config item base class
- static_list: list[NmkStaticConfig]¶
List of merged static items
- traverse_list(items: list, out_list: list, cache: bool, resolved_from: set[str], holder)¶
Recursive list resolution
- Parameters:
items – list of items to be traversed
out_list – resolved output list
cache – use cache or not
resolved_from – set of item names referencing this item
- traverse_dict(items: dict, out_dict: dict, cache: bool, resolved_from: set[str], holder)¶
Recursive dict resolution
- Parameters:
items – dict of items to be traversed
out_dict – resolved output dict
cache – use cache or not
resolved_from – set of item names referencing this item
- class nmk.model.config.NmkListConfig¶
Bases:
NmkMergedConfigMerged list config item
- property value_type: type[Any]¶
Value type for this item
- Returns:
list type
- class nmk.model.config.NmkDictConfig¶
Bases:
NmkMergedConfigMerged list config item
- property value_type: type[Any]¶
Value type for this item
- Returns:
dict type
- class nmk.model.config.NmkResolvedConfig¶
Bases:
NmkConfigResolved config item class
- resolver: collections.abc.Callable¶
Config resolver instance for this item
- params: NmkDictConfig¶
Resolver parameters
- resolve(cache: bool = True, resolved_from: set[str] = None) str | int | bool | list | dict¶
Resolves item value (with disabled cache if resolver is volatile)
- Parameters:
cache – use cached value, if already resolved
resolved_from – set of item names referencing this item
- Returns:
resolved item value
- property value_type: type[Any]¶
Value type for this item
- Returns:
value type