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

sruehl pushed a commit to branch feature/cleaned-up-type-references
in repository https://gitbox.apache.org/repos/asf/plc4x.git


The following commit(s) were added to 
refs/heads/feature/cleaned-up-type-references by this push:
     new e9aa564  refactor(codegen): added TODO: about wrongly dispatched type 
reference
e9aa564 is described below

commit e9aa5643ef4204a20fd5ece8c815d21f16a75769
Author: Sebastian Rühl <sru...@apache.org>
AuthorDate: Wed Feb 23 11:48:52 2022 +0100

    refactor(codegen): added TODO: about wrongly dispatched type reference
---
 .../codegenerator/language/mspec/parser/MessageFormatListener.java  | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git 
a/code-generation/protocol-base-mspec/src/main/java/org/apache/plc4x/plugins/codegenerator/language/mspec/parser/MessageFormatListener.java
 
b/code-generation/protocol-base-mspec/src/main/java/org/apache/plc4x/plugins/codegenerator/language/mspec/parser/MessageFormatListener.java
index 01dae27..35aa428 100644
--- 
a/code-generation/protocol-base-mspec/src/main/java/org/apache/plc4x/plugins/codegenerator/language/mspec/parser/MessageFormatListener.java
+++ 
b/code-generation/protocol-base-mspec/src/main/java/org/apache/plc4x/plugins/codegenerator/language/mspec/parser/MessageFormatListener.java
@@ -227,7 +227,7 @@ public class MessageFormatListener extends 
MSpecBaseListener implements LazyType
     @Override
     public void enterEnumField(MSpecParser.EnumFieldContext ctx) {
         String typeRefName = ctx.type.complexTypeReference.getText();
-        DefaultComplexTypeReference type = new 
DefaultComplexTypeReference(typeRefName, null);
+        DefaultEnumTypeReference type = new 
DefaultEnumTypeReference(typeRefName, null);
         setOrScheduleTypeDefinitionConsumer(typeRefName, 
type::setTypeDefinition);
         String name = getIdString(ctx.name);
         String fieldName = null;
@@ -533,6 +533,7 @@ public class MessageFormatListener extends 
MSpecBaseListener implements LazyType
             return getSimpleTypeReference(ctx.simpleTypeReference);
         } else {
             String typeRefName = ctx.complexTypeReference.getText();
+            // FIXME: TODO: we need to check if we reference a enum
             DefaultComplexTypeReference type = new 
DefaultComplexTypeReference(typeRefName, getParams(ctx.params));
             setOrScheduleTypeDefinitionConsumer(typeRefName, 
type::setTypeDefinition);
             return type;
@@ -675,8 +676,7 @@ public class MessageFormatListener extends 
MSpecBaseListener implements LazyType
         TypeDefinition typeDefinition = types.get(typeRefName);
         if (typeDefinition != null) {
             LOGGER.debug("{} present so setting for {}", typeRefName, 
setTypeDefinition);
-            // TODO: This should actually only be a complex-type, right?
-            setTypeDefinition.accept((ComplexTypeDefinition) typeDefinition);
+            setTypeDefinition.accept(typeDefinition);
         } else {
             // put up order
             if (LOGGER.isDebugEnabled()) {

Reply via email to