Browse Source

Print out enumerator simply by printing its name (#488).

Thomas Kutz 9 years ago
parent
commit
9003714512

+ 3 - 0
plugins/org.yakindu.sct.generator.c/src/org/yakindu/sct/generator/c/ExpressionCode.xtend

@@ -50,6 +50,7 @@ import org.yakindu.sct.model.stext.stext.EventValueReferenceExpression
 import org.yakindu.sct.model.stext.stext.OperationDefinition
 import org.yakindu.sct.model.stext.stext.VariableDefinition
 import org.yakindu.base.types.Operation
+import org.yakindu.base.types.Enumerator
 
 class ExpressionCode {
 
@@ -92,6 +93,8 @@ class ExpressionCode {
 		code»«ENDFOR»)'''
 
 	def dispatch CharSequence code(FeatureCall it, org.yakindu.base.types.Property target) '''«it.owner.code».«target.access»'''
+	
+	def dispatch CharSequence code(FeatureCall it, Enumerator target) '''«target.access»'''
 
 	/* HANDLING LITERALS */
 	def dispatch CharSequence code(Literal it) '''#error unknown literal type «getClass().name» '''

+ 7 - 1
plugins/org.yakindu.sct.generator.c/src/org/yakindu/sct/generator/c/Naming.xtend

@@ -13,7 +13,9 @@ package org.yakindu.sct.generator.c
 import com.google.inject.Inject
 import java.util.List
 import org.eclipse.emf.ecore.EObject
+import org.yakindu.base.types.Enumerator
 import org.yakindu.base.types.Event
+import org.yakindu.base.types.Operation
 import org.yakindu.sct.generator.core.types.ICodegenTypeSystemAccess
 import org.yakindu.sct.model.sexec.ExecutionFlow
 import org.yakindu.sct.model.sexec.Step
@@ -246,7 +248,11 @@ class Naming {
 		'''«name.asEscapedIdentifier»'''
 	}
 
-	def dispatch access(org.yakindu.base.types.Operation it) {
+	def dispatch access(Operation it) {
+		'''«name.asEscapedIdentifier»'''
+	}
+	
+	def dispatch access(Enumerator it) {
 		'''«name.asEscapedIdentifier»'''
 	}