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()) {