From e350d9d86293affb470e391daa1c5ffca1da5fe3 Mon Sep 17 00:00:00 2001 From: Dovydas Skauranskas <109866625+DovydasSkauranskas@users.noreply.github.com> Date: Sat, 21 Feb 2026 16:42:13 +0200 Subject: [PATCH 1/3] SymTypeExpression fuer MCTupleType --- .../symboltable/completers/TypesCompleter.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/language/src/main/java/de/monticore/lang/sysmlv2/symboltable/completers/TypesCompleter.java b/language/src/main/java/de/monticore/lang/sysmlv2/symboltable/completers/TypesCompleter.java index 0c1f1baa..8b9247a5 100644 --- a/language/src/main/java/de/monticore/lang/sysmlv2/symboltable/completers/TypesCompleter.java +++ b/language/src/main/java/de/monticore/lang/sysmlv2/symboltable/completers/TypesCompleter.java @@ -25,6 +25,7 @@ import de.monticore.types.check.SymTypeExpression; import de.monticore.types.check.SymTypeExpressionFactory; import de.monticore.types.mccollectiontypes._ast.ASTMCGenericType; +import de.monticore.types.mcstructuraltypes._ast.ASTMCTupleType; import de.se_rwth.commons.logging.Log; import java.util.ArrayList; @@ -47,7 +48,17 @@ private List getTypeCompletion(List specia for(var mcType: astTyping.getSuperTypesList()) { SymTypeExpression res = null; - if(mcType instanceof ASTMCGenericType) { + if(mcType instanceof ASTMCTupleType) { + var tupleType = (ASTMCTupleType) mcType; + List componentTypes = new ArrayList<>(); + for(var componentMcType : tupleType.getMCTypeList()) { + componentTypes.add(SymTypeExpressionFactory.createTypeExpression( + componentMcType.printType(), + (IBasicSymbolsScope) componentMcType.getEnclosingScope())); + } + res = SymTypeExpressionFactory.createTuple(componentTypes); + } + else if(mcType instanceof ASTMCGenericType) { // We still have to print when the type is generic because the defining symbol does not give info about the // instantiation with type arguments res = SymTypeExpressionFactory.createTypeExpression( From 06bd6322e076250dc85cbf74d6ac9b3fbc2069a6 Mon Sep 17 00:00:00 2001 From: Dovydas Skauranskas <109866625+DovydasSkauranskas@users.noreply.github.com> Date: Sat, 21 Feb 2026 16:54:08 +0200 Subject: [PATCH 2/3] type.hasTypeInfo() check --- .../sysmlv2/types/SysMLv2DeriveSymTypeOfCommonExpressions.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/language/src/main/java/de/monticore/lang/sysmlv2/types/SysMLv2DeriveSymTypeOfCommonExpressions.java b/language/src/main/java/de/monticore/lang/sysmlv2/types/SysMLv2DeriveSymTypeOfCommonExpressions.java index 2cbd75bb..cbacad46 100644 --- a/language/src/main/java/de/monticore/lang/sysmlv2/types/SysMLv2DeriveSymTypeOfCommonExpressions.java +++ b/language/src/main/java/de/monticore/lang/sysmlv2/types/SysMLv2DeriveSymTypeOfCommonExpressions.java @@ -69,7 +69,7 @@ public boolean isIntegralType(SymTypeExpression type) { protected void calculateFieldAccessAboutPortUsage(SymTypeExpression type) { if (this.isStream) { //case for isStream == true - if (type.getTypeInfo().getName().contains("Stream")) { + if (type.hasTypeInfo() && type.getTypeInfo().getName().contains("Stream")) { //type is already Stream, set TypeCheckResult getTypeCheckResult().setResult(type); } else { From 859f836faeec66e6031780d9f5ce197f35171e3e Mon Sep 17 00:00:00 2001 From: Dovydas Skauranskas <109866625+DovydasSkauranskas@users.noreply.github.com> Date: Thu, 12 Mar 2026 07:21:45 +0200 Subject: [PATCH 3/3] Version erhoeht --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index a178dd01..631a7c8b 100644 --- a/gradle.properties +++ b/gradle.properties @@ -25,4 +25,4 @@ assertj_version = 3.21.0 junit_version = 5.8.2 # Version of published artifacts -version = 7.8.25 +version = 7.8.26