|
| declare_attrs (cls, *args, **kwargs) |
| Initialize the attributes of this node.
|
|
| __init__ (self, *args, **kwargs) |
|
| require_one_of (cls, *args) |
| Require that at least one of the given keys is present.
|
|
| require_all_or_none_of (cls, *args) |
| Require that all or none of the given keys are present.
|
|
"DictNode" | combine (self, "DictNode" other) |
| Combines this dictionary with another dictionary.
|
|
"DictNode" | from_yaml_files (cls, *Union[str, List[str]] files, Dict[str, Any] jinja_parse_data=None, **kwargs) |
| Loads a dictionary from one more more yaml files.
|
|
Any | __getitem__ (self, Any __key) |
| Get the value at the given key or index.
|
|
None | __setitem__ (self, Any __key, Any __value) |
| Set the value at the given key or index.
|
|
Any | get (self, Any __key, Any __default=None) |
| Gets a key from the dictionary.
|
|
Any | setdefault (self, Any __key, Any __default=None) |
| Sets the default value for a key.
|
|
Any | pop (self, Any __key, Any __default=None) |
| Pops a key from the dictionary.
|
|
None | check_unrecognized (self, *args, **kwargs) |
| Check for unrecognized keys in this node and all subnodes.
|
|
| __getattr__ (self, name) |
| Index into the attributes or the contents of this node.
|
|
| __setattr__ (self, name, value) |
|
| get_specifiers_from_processors (cls, "BaseSpecification" spec) |
| Get the specifiers that have been set from processors.
|
|
| reset_specifiers_from_processors (cls, Optional[Type] processor=None) |
| Reset the specifiers that have been set from processors.
|
|
| reset_processor_elems (cls, Optional[Type] processor=None) |
|
| recognize_all (cls, bool recognize_all=True) |
| Set whether all attributes under this node should be recognized.
|
|
str | get_tag (self) |
| Get the tag of this node.
|
|
Iterable[Tuple[Union[str, int], Any]] | items (self) |
| Get iterable of (key, value) or (index, value) pairs.
|
|
T | combine_index (self, Union[str, int] key, T value) |
| Combine the value at the given key with the given value.
|
|
str | get_name (self, Union[Set, None] seen=None) |
| Get the name of this node.
|
|
Any | recursive_apply (self, callable func, bool self_first=False, set applied_to=None) |
| Apply a function to this node and all subnodes.
|
|
| clean_empties (self) |
| Remove empty nodes from this node and all subnodes.
|
|
bool | isempty (self) |
| Return True if this node is empty.
|
|
bool | isempty_recursive (self) |
| Return True if this node or all subnodes are empty.
|
|
| add_attr (cls, str key_or_tag, Optional[Union[type, Tuple[type,...], Tuple[None,...], Tuple[str,...], None]] required_type=None, Any default=default_unspecified_, Optional[Callable] callfunc=None, Optional[bool] part_name_match=None, Optional[bool] no_change_key=None, Any _processor_responsible_for_removing=None, Optional[Dict[str, TypeSpecifier]] _add_checker_to=None) |
| Initialize a type specifier for this class.
|
|
List[T] | get_nodes_of_type (self, Type[T] node_type) |
| Return a list of all subnodes of a given type.
|
|
Callable | get_setter_lambda (self, Union[str, int] keytag) |
| Get a function that can be used to set a value in this node.
|
|
Callable | get_combiner_lambda (self, Union[str, int] keytag) |
| Get a function that can be used to combine a value to this node.
|
|
List[Tuple[Any, Callable]] | get_setters_for_keytag (self, str keytag, bool recursive=True) |
| Get a list of tuples of the form (value, setter) for all keys/tags in this node that match the given key/tag.
|
|
List[Tuple[Any, Callable]] | get_combiners_for_keytag (self, str keytag, bool recursive=True) |
| Get a list of tuples of the form (value, combiner) for all keys/tags in this node that match the given key/tag.
|
|
List[Tuple[Any, Callable]] | get_setters_for_type (self, Type t, bool recursive=True) |
| Get a list of tuples of the form (value, setter) for all keys/tags in this node that match the given type.
|
|
List[Tuple[Any, Callable]] | get_combiners_for_type (self, Type t, bool recursive=True) |
| Get a list of tuples of the form (value, combiner) for all keys/tags in this node that match the given type.
|
|
| __str__ (self) |
| Return the name of this node.
|
|
| __format__ (self, format_spec) |
| Formats the name of this node.
|
|
bool | is_defined_non_default_non_empty (self, str key) |
| Returns True if the given key is defined in this node and is not the default value and is not empty.
|
|
| parse_expressions (self, Optional[Dict[str, Any]] symbol_table=None, Optional[set] parsed_ids=None, Optional[Callable] callfunc=None) |
| Parse expressions in this node and all subnodes.
|
|
| unique_class_name (cls) |
| Return a unique name for this class.
|
|
|
"BaseSpecification" | get_global_spec () |
| Get the global specification object.
|
|
| set_global_spec ("BaseSpecification" spec) |
| Set the global specification object.
|
|
Any | try_combine (Any a, Any b, Union["Node", None] innonde=None, Union[int, str, None] index=None) |
| Try to combine two values.
|
|
| _update_combine_pre_parse (self, dict other) |
|
None | _check_alias (self, key) |
|
Dict[str, TypeSpecifier] | _get_type_specifiers (cls, "BaseSpecification" spec) |
| Get the type specifiers for this node.
|
|
| _get_all_recognized (self) |
|
Dict[Union[str, int], TypeSpecifier] | _get_index2checker (self, Optional[List[Tuple[str, Any]]] key2elem=None) |
|
| _parse_elem (self, Union[str, int] key, TypeSpecifier check, Any value_override=None) |
|
| _parse_elems (self) |
|
| _parse_extra_elems (self, List[Tuple[str, Any]] key2elem) |
|
| _check_unrecognized (self, ignore_empty=False, ignore_should_have_been_removed_by=False) |
|
| _parse_expression (self, Union[str, int] index, Dict[str, Any] symbol_table, Optional[TypeSpecifier] checker=None) |
|
str | _get_tag (x) |
|
| _require_one_of = _require_one_of |
|
| _require_all_or_none_of = _require_all_or_none_of |
|
tuple | _init_args = (args, kwargs) |
|
bool | _default_parse = False |
|
Top-level Globals key.
Attributes: version (str): Version of the Timeloop file. environment_variables (EnvironmentVariables): Environment variables to be used. expression_custom_functions (ExpressionCustomFunctions): Paths to Python files containing functions to be used in expressions.