diff options
Diffstat (limited to 'tools/cru-py/cru/config.py')
-rw-r--r-- | tools/cru-py/cru/config.py | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/tools/cru-py/cru/config.py b/tools/cru-py/cru/config.py index bd8eaf9..b71f042 100644 --- a/tools/cru-py/cru/config.py +++ b/tools/cru-py/cru/config.py @@ -161,3 +161,18 @@ class Configuration(CruUniqueKeyList[ConfigItem[Any], str]): return { item.name: item.value_type.convert_value_to_str(item.value) for item in self } + + def set_value_dict( + self, + value_dict: dict[str, Any], + *, + empty_is_default: bool = True, + allow_convert_from_str: bool = True, + ) -> None: + for name, value in value_dict.items(): + item = self.get(name) + item.set_value( + value, + empty_is_default=empty_is_default, + allow_convert_from_str=allow_convert_from_str, + ) |