You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@plc4x.apache.org by sr...@apache.org on 2021/09/28 10:09:13 UTC

[plc4x] 02/04: refactor(codegen): add more tracing calls to CLanguageTemplateHelper

This is an automated email from the ASF dual-hosted git repository.

sruehl pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/plc4x.git

commit cc0d864fc6dc10e2a423a840edd13b303671ca0b
Author: Sebastian Rühl <sr...@apache.org>
AuthorDate: Tue Sep 28 11:49:46 2021 +0200

    refactor(codegen): add more tracing calls to CLanguageTemplateHelper
---
 .../org/apache/plc4x/language/c/CLanguageTemplateHelper.java     | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/code-generation/language-c/src/main/java/org/apache/plc4x/language/c/CLanguageTemplateHelper.java b/code-generation/language-c/src/main/java/org/apache/plc4x/language/c/CLanguageTemplateHelper.java
index ae47e56..f91751d 100644
--- a/code-generation/language-c/src/main/java/org/apache/plc4x/language/c/CLanguageTemplateHelper.java
+++ b/code-generation/language-c/src/main/java/org/apache/plc4x/language/c/CLanguageTemplateHelper.java
@@ -874,12 +874,13 @@ public class CLanguageTemplateHelper extends BaseFreemarkerLanguageTemplateHelpe
             }
         }
         if (isSerializerArg) {
+            tracer = tracer.dive("is serializer arg");
             StringBuilder sb = new StringBuilder(variableLiteral.getName());
             if (variableLiteral.getChild().isPresent()) {
                 sb.append(".");
                 appendVariableExpressionRest(sb, baseType, variableLiteral.getChild().get());
             }
-            return sb.toString();
+            return tracer + sb.toString();
         }
         if (isTypeArg) {
             tracer = tracer.dive("is type arg");
@@ -921,6 +922,7 @@ public class CLanguageTemplateHelper extends BaseFreemarkerLanguageTemplateHelpe
         StringBuilder sb = new StringBuilder("_message->");
         // If this is a property of a sub-type, add the sub-type name to the property.
         if (baseType != thisType) {
+            tracer = tracer.dive("this is not this type");
             sb.append(camelCaseToSnakeCase(baseType.getName())).append("_");
         }
 
@@ -1091,7 +1093,9 @@ public class CLanguageTemplateHelper extends BaseFreemarkerLanguageTemplateHelpe
     }
 
     private void appendVariableExpressionRest(StringBuilder sb, TypeDefinition baseType, VariableLiteral variableLiteral) {
+        Tracer tracer = Tracer.start("appendVariableExpressionRest");
         if (variableLiteral.isIndexed()) {
+            tracer = tracer.dive("isindexed");
             sb.insert(0, "plc4c_utils_list_get_value(");
             sb.append(camelCaseToSnakeCase(variableLiteral.getName()));
             sb.append(", ").append(variableLiteral.getIndex()).append(")");
@@ -1100,11 +1104,12 @@ public class CLanguageTemplateHelper extends BaseFreemarkerLanguageTemplateHelpe
         }
         // Suppress any "lengthInBytes" properties as these are handled differently in C
         variableLiteral.getChild()
-            .filter(child -> "lengthInBytes".equals(child.getName()))
+            .filter(child -> !"lengthInBytes".equals(child.getName()))
             .ifPresent(child -> {
                 sb.append(".");
                 appendVariableExpressionRest(sb, baseType, child);
             });
+        sb.append(tracer);
     }
 
     public int getNumBits(SimpleTypeReference simpleTypeReference) {