From 3b9bc4febfda14564cec2ed27617467b211fb9b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ander=20Gonz=C3=A1lez=20Tom=C3=A9?= Date: Mon, 27 Oct 2025 10:49:33 +0000 Subject: [PATCH 1/3] Account for nested map params --- .../generate_parameter_library_py/parse_yaml.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/generate_parameter_library_py/generate_parameter_library_py/parse_yaml.py b/generate_parameter_library_py/generate_parameter_library_py/parse_yaml.py index aa90f3b5..3e0bc88c 100644 --- a/generate_parameter_library_py/generate_parameter_library_py/parse_yaml.py +++ b/generate_parameter_library_py/generate_parameter_library_py/parse_yaml.py @@ -101,8 +101,9 @@ def int_to_integer_str(value: str): def get_dynamic_parameter_field(yaml_parameter_name: str): tmp = yaml_parameter_name.split('.') - parameter_field = tmp[-1] - return parameter_field + num_nested = [i for i, val in enumerate(tmp) if is_mapped_parameter(val)] + field = tmp[(max(num_nested)+1):] if len(num_nested) else tmp[-1] + return '.'.join(field) def get_dynamic_mapped_parameter(yaml_parameter_name: str): @@ -115,8 +116,8 @@ def get_dynamic_mapped_parameter(yaml_parameter_name: str): def get_dynamic_struct_name(yaml_parameter_name: str): tmp = yaml_parameter_name.split('.') - num_nested = sum([is_mapped_parameter(val) for val in tmp]) - struct_name = tmp[: -(num_nested + 1)] + num_nested = [i for i, val in enumerate(tmp) if is_mapped_parameter(val)] + struct_name = tmp[:(min(num_nested))] if len(num_nested) else "" return '.'.join(struct_name) @@ -806,7 +807,7 @@ def parse_params(self, name, value, nested_name_list): var = VariableDeclaration(code_gen_variable) # check if runtime parameter - is_runtime_parameter = is_mapped_parameter(self.struct_tree.struct_name) + is_runtime_parameter = is_mapped_parameter(param_name) if is_runtime_parameter: declare_parameter_set = SetRuntimeParameter(param_name, code_gen_variable) From 71cf8e2b7a2eb2a0c145702e43f259e94c1d69bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ander=20Gonz=C3=A1lez=20Tom=C3=A9?= Date: Mon, 27 Oct 2025 11:48:21 +0000 Subject: [PATCH 2/3] Fix code style --- .../generate_parameter_library_py/parse_yaml.py | 4 ++-- .../include/parameter_traits/parameter_traits.hpp | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/generate_parameter_library_py/generate_parameter_library_py/parse_yaml.py b/generate_parameter_library_py/generate_parameter_library_py/parse_yaml.py index 3e0bc88c..da4707c7 100644 --- a/generate_parameter_library_py/generate_parameter_library_py/parse_yaml.py +++ b/generate_parameter_library_py/generate_parameter_library_py/parse_yaml.py @@ -102,7 +102,7 @@ def int_to_integer_str(value: str): def get_dynamic_parameter_field(yaml_parameter_name: str): tmp = yaml_parameter_name.split('.') num_nested = [i for i, val in enumerate(tmp) if is_mapped_parameter(val)] - field = tmp[(max(num_nested)+1):] if len(num_nested) else tmp[-1] + field = tmp[(max(num_nested) + 1) :] if len(num_nested) else tmp[-1] return '.'.join(field) @@ -117,7 +117,7 @@ def get_dynamic_mapped_parameter(yaml_parameter_name: str): def get_dynamic_struct_name(yaml_parameter_name: str): tmp = yaml_parameter_name.split('.') num_nested = [i for i, val in enumerate(tmp) if is_mapped_parameter(val)] - struct_name = tmp[:(min(num_nested))] if len(num_nested) else "" + struct_name = tmp[: (min(num_nested))] if len(num_nested) else '' return '.'.join(struct_name) diff --git a/parameter_traits/include/parameter_traits/parameter_traits.hpp b/parameter_traits/include/parameter_traits/parameter_traits.hpp index f1e731a9..a44b484e 100644 --- a/parameter_traits/include/parameter_traits/parameter_traits.hpp +++ b/parameter_traits/include/parameter_traits/parameter_traits.hpp @@ -43,8 +43,8 @@ template [[deprecated( "When returning tl::expected you can call fmt::format " "directly.")]] auto -ERROR(const std::string& format, Args... args) - -> tl::expected { +ERROR(const std::string& format, + Args... args) -> tl::expected { return tl::make_unexpected(fmt::format(format, args...)); } From 2436f3df80b36b08720aec9ce62b85ccd11790af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ander=20Gonz=C3=A1lez=20Tom=C3=A9?= Date: Mon, 27 Oct 2025 11:53:53 +0000 Subject: [PATCH 3/3] Revert cpp format changes --- .../include/parameter_traits/parameter_traits.hpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/parameter_traits/include/parameter_traits/parameter_traits.hpp b/parameter_traits/include/parameter_traits/parameter_traits.hpp index a44b484e..f1e731a9 100644 --- a/parameter_traits/include/parameter_traits/parameter_traits.hpp +++ b/parameter_traits/include/parameter_traits/parameter_traits.hpp @@ -43,8 +43,8 @@ template [[deprecated( "When returning tl::expected you can call fmt::format " "directly.")]] auto -ERROR(const std::string& format, - Args... args) -> tl::expected { +ERROR(const std::string& format, Args... args) + -> tl::expected { return tl::make_unexpected(fmt::format(format, args...)); }