From e29b89ec574cda06b2e859f8ff2a3c339a7227bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Freitas?= Date: Mon, 6 Jan 2025 22:06:15 +0000 Subject: [PATCH] Generate code using pascal case --- plugins/fcp_cpp/fcp_cpp/dynamic.h.j2 | 2 +- plugins/fcp_cpp/fcp_cpp/fcp.h.j2 | 6 +++--- plugins/fcp_cpp/fcp_cpp/generator.py | 6 ++++++ 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/plugins/fcp_cpp/fcp_cpp/dynamic.h.j2 b/plugins/fcp_cpp/fcp_cpp/dynamic.h.j2 index b643e1e..73276c3 100644 --- a/plugins/fcp_cpp/fcp_cpp/dynamic.h.j2 +++ b/plugins/fcp_cpp/fcp_cpp/dynamic.h.j2 @@ -157,7 +157,7 @@ class DynamicSchema : public ISchema { fields.push_back( StructField{ struct_field.GetName().GetData(), - struct_field.GetField_id().GetData(), + struct_field.GetFieldId().GetData(), *type } ); diff --git a/plugins/fcp_cpp/fcp_cpp/fcp.h.j2 b/plugins/fcp_cpp/fcp_cpp/fcp.h.j2 index 41bff29..b11a181 100644 --- a/plugins/fcp_cpp/fcp_cpp/fcp.h.j2 +++ b/plugins/fcp_cpp/fcp_cpp/fcp.h.j2 @@ -150,18 +150,18 @@ struct {{struct.name}} { {%- endfor %} } {% for signal in struct.fields %} - {{signal.name | capitalize}}Type Get{{signal.name | capitalize}}() const { + {{signal.name | capitalize}}Type Get{{signal.name | to_pascal_case}}() const { return {{signal.name}}_; } {% endfor -%} {% for signal in struct.fields %} - {{signal.name | capitalize}}Type& View{{signal.name | capitalize}}() { + {{signal.name | capitalize}}Type& View{{signal.name | to_pascal_case}}() { return {{signal.name}}_; } {% endfor %} inline bool operator==(const {{struct.name}}& rhs) const { - return {% for signal in struct.fields %}{{signal.name}}_ == rhs.Get{{signal.name | capitalize}}(){% if not loop.last %} + return {% for signal in struct.fields %}{{signal.name}}_ == rhs.Get{{signal.name | to_pascal_case}}(){% if not loop.last %} {{'\t'}}&& {% endif %}{% endfor %}; } diff --git a/plugins/fcp_cpp/fcp_cpp/generator.py b/plugins/fcp_cpp/fcp_cpp/generator.py index 8defb6c..44611ff 100644 --- a/plugins/fcp_cpp/fcp_cpp/generator.py +++ b/plugins/fcp_cpp/fcp_cpp/generator.py @@ -85,6 +85,11 @@ def to_wrapper_cpp_type(input: Type) -> str: raise ValueError("Cannot convert type to C++ type") +def to_pascal_case(name: str) -> str: + """Convert snake case to pascal case.""" + return "".join([n.capitalize() for n in name.split("_")]) + + class CanEncoding: """Can encoding representation used in templates.""" @@ -153,6 +158,7 @@ def generate(self, fcp: FcpV2, ctx: Any) -> Dict[str, Union[str, Path]]: env = jinja2.Environment(loader=loader) env.globals["to_wrapper_cpp_type"] = to_wrapper_cpp_type + env.filters["to_pascal_case"] = to_pascal_case return [ {