[gen.fms] fixed xtend guillemets encoding issue

Change-Id: I807b5e5a019dcb4f1092300ed9ee4af4ff1487b3
diff --git a/plugins/org.eclipse.etrice.generator.fsm/src/org/eclipse/etrice/generator/fsm/generic/AbstractStateMachineGenerator.xtend b/plugins/org.eclipse.etrice.generator.fsm/src/org/eclipse/etrice/generator/fsm/generic/AbstractStateMachineGenerator.xtend
index b43e6b0..0b06cd2 100644
--- a/plugins/org.eclipse.etrice.generator.fsm/src/org/eclipse/etrice/generator/fsm/generic/AbstractStateMachineGenerator.xtend
+++ b/plugins/org.eclipse.etrice.generator.fsm/src/org/eclipse/etrice/generator/fsm/generic/AbstractStateMachineGenerator.xtend
@@ -186,11 +186,11 @@
      */
     def public String genEntryAndExitCodes(ExpandedModelComponent xpmc, boolean generateImplementation, boolean omitBase) {
         '''
-        «FOR state : xpmc.stateMachine.getStateList()»
-            «IF !omitBase || xpmc.isOwnObject(state)»
-                «xpmc.genActionCodeMethods(state, generateImplementation)»
-            «ENDIF»
-        «ENDFOR»
+        «FOR state : xpmc.stateMachine.getStateList()»
+            «IF !omitBase || xpmc.isOwnObject(state)»
+                «xpmc.genActionCodeMethods(state, generateImplementation)»
+            «ENDIF»
+        «ENDFOR»
         '''
     }
     
@@ -217,11 +217,11 @@
      */
     def public String genActionCodes(ExpandedModelComponent xpmc, boolean generateImplementation, boolean omitBase) {
         '''
-        «FOR tr : xpmc.stateMachine.allTransitionsRecursive»
-            «IF (!omitBase || xpmc.isOwnObject(tr)) && tr.action.hasDetailCode»
-                «xpmc.genActionCodeMethod(tr, generateImplementation)»
-            «ENDIF»
-        «ENDFOR»
+        «FOR tr : xpmc.stateMachine.allTransitionsRecursive»
+            «IF (!omitBase || xpmc.isOwnObject(tr)) && tr.action.hasDetailCode»
+                «xpmc.genActionCodeMethod(tr, generateImplementation)»
+            «ENDIF»
+        «ENDFOR»
         '''
     }
     
@@ -262,30 +262,30 @@
 		 * parent states while remembering the history
 		 * @param current__et - the current state
 		 * @param to - the final parent state
-		«IF usesHdlr»
+		«IF usesHdlr»
 			 * @param handler__et - entry and exit codes are called only if not handler (for handler TransitionPoints)
-		«ENDIF»
+		«ENDIF»
 		 */
-		«IF generateImplementation»
-			«privAccess»void «opScopePriv»exitTo(«selfPtr»«stateType» current__et, «stateType» to«IF usesHdlr», «boolType» handler__et«ENDIF») {
+		«IF generateImplementation»
+			«privAccess»void «opScopePriv»exitTo(«selfPtr»«stateType» current__et, «stateType» to«IF usesHdlr», «boolType» handler__et«ENDIF») {
 				while (current__et!=to) {
 					switch (current__et) {
-						«FOR state : xpmc.stateMachine.getBaseStateList()»
-							case «state.getGenStateId()»:
-								«IF state.hasExitCode(true)»«IF usesHdlr»if (!handler__et) «ENDIF»«state.getExitCodeOperationName()»(«langExt.selfPointer(false)»);«ENDIF»
-								«setHistory(state.getParentStateId(), state.getGenStateId())»;
-								current__et = «state.getParentStateId()»;
+						«FOR state : xpmc.stateMachine.getBaseStateList()»
+							case «state.getGenStateId()»:
+								«IF state.hasExitCode(true)»«IF usesHdlr»if (!handler__et) «ENDIF»«state.getExitCodeOperationName()»(«langExt.selfPointer(false)»);«ENDIF»
+								«setHistory(state.getParentStateId(), state.getGenStateId())»;
+								current__et = «state.getParentStateId()»;
 								break;
-						«ENDFOR»
+						«ENDFOR»
 						default:
 							/* should not occur */
 							break;
 					}
 				}
 			}
-		«ELSE»
-			void exitTo(«selfPtr»«stateType» current__et, «stateType» to«IF usesHdlr», «boolType» handler__et«ENDIF»);
-		«ENDIF»
+		«ELSE»
+			void exitTo(«selfPtr»«stateType» current__et, «stateType» to«IF usesHdlr», «boolType» handler__et«ENDIF»);
+		«ENDIF»
 		
 		/**
 		 * calls action, entry and exit codes along a transition chain. The generic data are cast to typed data
@@ -294,141 +294,141 @@
 		 * @param generic_data__et - the generic data pointer
 		 * @return the +/- ID of the final state either with a positive sign, that indicates to execute the state's entry code, or a negative sign vice versa
 		 */
-		«IF generateImplementation»
-			«privAccess»«stateType» «opScopePriv»executeTransitionChain(«selfPtr»int chain__et«IF handleEvents», «constIfItemPtr» ifitem, «langExt.voidPointer» generic_data__et«ENDIF») {
+		«IF generateImplementation»
+			«privAccess»«stateType» «opScopePriv»executeTransitionChain(«selfPtr»int chain__et«IF handleEvents», «constIfItemPtr» ifitem, «langExt.voidPointer» generic_data__et«ENDIF») {
 				switch (chain__et) {
-					«var allchains = xpmc.getTransitionChains()»
-					«FOR tc : allchains»
-						case «tc.genChainId»:
+					«var allchains = xpmc.getTransitionChains()»
+					«FOR tc : allchains»
+						case «tc.genChainId»:
 						{
-							«transitionChainGenerator.generateExecuteChain(xpmc, tc)»
+							«transitionChainGenerator.generateExecuteChain(xpmc, tc)»
 						}
-					«ENDFOR»
+					«ENDFOR»
 						default:
 							/* should not occur */
 							break;
 				}
 				return NO_STATE;
 			}
-		«ELSE»
-			«stateType» executeTransitionChain(«selfPtr»int chain__et«IF handleEvents», «constIfItemPtr» ifitem, «langExt.voidPointer» generic_data__et«ENDIF»);
-		«ENDIF»
+		«ELSE»
+			«stateType» executeTransitionChain(«selfPtr»int chain__et«IF handleEvents», «constIfItemPtr» ifitem, «langExt.voidPointer» generic_data__et«ENDIF»);
+		«ENDIF»
 		
 		/**
 		 * calls entry codes while entering a state's history. The ID of the final leaf state is returned
 		 * @param state__et - the state which is entered
-		«IF usesHdlr»
+		«IF usesHdlr»
 			 * @param handler__et - entry code is executed if not handler
-		«ENDIF»
+		«ENDIF»
 		 * @return - the ID of the final leaf state
 		 */
-		«IF generateImplementation»
-			«privAccess»«stateType» «opScopePriv»enterHistory(«selfPtr»«stateType» state__et«IF usesHdlr», «boolType» handler__et«ENDIF») {
-				«boolType» skip_entry__et = «langExt.booleanConstant(false)»;
+		«IF generateImplementation»
+			«privAccess»«stateType» «opScopePriv»enterHistory(«selfPtr»«stateType» state__et«IF usesHdlr», «boolType» handler__et«ENDIF») {
+				«boolType» skip_entry__et = «langExt.booleanConstant(false)»;
 				if (state__et >= STATE_MAX) {
-					state__et = «IF !langExt.usesInheritance»(«stateType»)«ENDIF» (state__et - STATE_MAX);
-					skip_entry__et = «langExt.booleanConstant(true)»;
+					state__et = «IF !langExt.usesInheritance»(«stateType»)«ENDIF» (state__et - STATE_MAX);
+					skip_entry__et = «langExt.booleanConstant(true)»;
 				}
-				while («langExt.booleanConstant(true)») {
+				while («langExt.booleanConstant(true)») {
 					switch (state__et) {
-						«FOR state : xpmc.stateMachine.getBaseStateList()»
-						case «state.getGenStateId()»:
-							«IF state.hasEntryCode(true)»if (!(skip_entry__et«IF usesHdlr» || handler__et«ENDIF»)) «state.getEntryCodeOperationName()»(«langExt.selfPointer(false)»);«ENDIF»
-							«IF state.isLeaf()»
+						«FOR state : xpmc.stateMachine.getBaseStateList()»
+						case «state.getGenStateId()»:
+							«IF state.hasEntryCode(true)»if (!(skip_entry__et«IF usesHdlr» || handler__et«ENDIF»)) «state.getEntryCodeOperationName()»(«langExt.selfPointer(false)»);«ENDIF»
+							«IF state.isLeaf()»
 								/* in leaf state: return state id */
-								return «state.getGenStateId()»;
-							«ELSE»
+								return «state.getGenStateId()»;
+							«ELSE»
 								/* state has a sub graph */
-								«IF state.subgraph.hasInitTransition()»
+								«IF state.subgraph.hasInitTransition()»
 									/* with init transition */
-									if («getHistory(state.getGenStateId())»==NO_STATE) {
-										«var sub_initt = state.subgraph.getInitTransition()»
-										state__et = executeTransitionChain(«langExt.selfPointer(true)»«xpmc.getChain(sub_initt).genChainId»«IF handleEvents», «langExt.nullPointer», «langExt.nullPointer»«ENDIF»);
+									if («getHistory(state.getGenStateId())»==NO_STATE) {
+										«var sub_initt = state.subgraph.getInitTransition()»
+										state__et = executeTransitionChain(«langExt.selfPointer(true)»«xpmc.getChain(sub_initt).genChainId»«IF handleEvents», «langExt.nullPointer», «langExt.nullPointer»«ENDIF»);
 									}
 									else {
-										state__et = «getHistory(state.getGenStateId())»;
+										state__et = «getHistory(state.getGenStateId())»;
 									}
-								«ELSE»
+								«ELSE»
 									/* without init transition */
-									state__et = «getHistory(state.getGenStateId())»;
-								«ENDIF»
+									state__et = «getHistory(state.getGenStateId())»;
+								«ENDIF»
 								break;
-							«ENDIF»
-						«ENDFOR»
+							«ENDIF»
+						«ENDFOR»
 						case STATE_TOP:
-							state__et = «getHistory("STATE_TOP")»;
+							state__et = «getHistory("STATE_TOP")»;
 							break;
 						default:
 							/* should not occur */
 							break;
 					}
-					skip_entry__et = «langExt.booleanConstant(false)»;
+					skip_entry__et = «langExt.booleanConstant(false)»;
 				}
-				«unreachableReturn»
+				«unreachableReturn»
 			}
-		«ELSE»
-			«stateType» enterHistory(«selfPtr»«stateType» state__et«IF usesHdlr», «boolType» handler__et«ENDIF»);
-		«ENDIF»
+		«ELSE»
+			«stateType» enterHistory(«selfPtr»«stateType» state__et«IF usesHdlr», «boolType» handler__et«ENDIF»);
+		«ENDIF»
 		
-		«IF generateImplementation»
-			«publicIf»void «opScope»executeInitTransition(«selfOnly») {
-				«var initt = xpmc.stateMachine.getInitTransition()»
-				int chain__et = «xpmc.getChain(initt).genChainId»;
-				«stateType» next__et = «opScopePriv»executeTransitionChain(«langExt.selfPointer(true)»chain__et«IF handleEvents», «langExt.nullPointer», «langExt.nullPointer»«ENDIF»);
-				next__et = «opScopePriv»enterHistory(«langExt.selfPointer(true)»next__et«IF usesHdlr», «langExt.booleanConstant(false)»«ENDIF»);
-				setState(«langExt.selfPointer(true)»next__et);
+		«IF generateImplementation»
+			«publicIf»void «opScope»executeInitTransition(«selfOnly») {
+				«var initt = xpmc.stateMachine.getInitTransition()»
+				int chain__et = «xpmc.getChain(initt).genChainId»;
+				«stateType» next__et = «opScopePriv»executeTransitionChain(«langExt.selfPointer(true)»chain__et«IF handleEvents», «langExt.nullPointer», «langExt.nullPointer»«ENDIF»);
+				next__et = «opScopePriv»enterHistory(«langExt.selfPointer(true)»next__et«IF usesHdlr», «langExt.booleanConstant(false)»«ENDIF»);
+				setState(«langExt.selfPointer(true)»next__et);
 			}
-		«ELSE»
-			void «opScope»executeInitTransition(«selfOnly»);
-		«ENDIF»
+		«ELSE»
+			void «opScope»executeInitTransition(«selfOnly»);
+		«ENDIF»
 		
 		/* receiveEvent contains the main implementation of the FSM */
-		«IF generateImplementation»
-			«publicIf»void «opScope»receiveEventInternal(«langExt.selfPointer(mc.className, handleEvents)»«IF handleEvents»«ifItemPtr» ifitem, int localId, int evt, «langExt.voidPointer» generic_data__et«ENDIF») {
-				«IF async»
-					int trigger__et = (ifitem==«langExt.nullPointer»)? POLLING : localId + EVT_SHIFT*evt;
-				«ELSEIF eventDriven»
+		«IF generateImplementation»
+			«publicIf»void «opScope»receiveEventInternal(«langExt.selfPointer(mc.className, handleEvents)»«IF handleEvents»«ifItemPtr» ifitem, int localId, int evt, «langExt.voidPointer» generic_data__et«ENDIF») {
+				«IF async»
+					int trigger__et = (ifitem==«langExt.nullPointer»)? POLLING : localId + EVT_SHIFT*evt;
+				«ELSEIF eventDriven»
 					int trigger__et = localId + EVT_SHIFT*evt;
-				«ENDIF»
+				«ENDIF»
 				int chain__et = NOT_CAUGHT;
-				«stateType» catching_state__et = NO_STATE;
-				«IF usesHdlr»
-				«boolType» is_handler__et = «langExt.booleanConstant(false)»;
-				«ENDIF»
-				«IF async || eventDriven»
-					«markVariableUsed("trigger__et")»
-				«ENDIF»
+				«stateType» catching_state__et = NO_STATE;
+				«IF usesHdlr»
+				«boolType» is_handler__et = «langExt.booleanConstant(false)»;
+				«ENDIF»
+				«IF async || eventDriven»
+					«markVariableUsed("trigger__et")»
+				«ENDIF»
 				
-				«IF handleEvents»
+				«IF handleEvents»
 					if (!handleSystemEvent(ifitem, evt, generic_data__et)) {
-						«genStateSwitch(xpmc, usesHdlr)»
+						«genStateSwitch(xpmc, usesHdlr)»
 					}
-				«ELSE»
-					«genStateSwitch(xpmc, usesHdlr)»
-				«ENDIF»
+				«ELSE»
+					«genStateSwitch(xpmc, usesHdlr)»
+				«ENDIF»
 				if (chain__et != NOT_CAUGHT) {
-					«opScopePriv»exitTo(«langExt.selfPointer(true)»getState(«langExt.selfPointer(false)»), catching_state__et«IF usesHdlr», is_handler__et«ENDIF»);
+					«opScopePriv»exitTo(«langExt.selfPointer(true)»getState(«langExt.selfPointer(false)»), catching_state__et«IF usesHdlr», is_handler__et«ENDIF»);
 					{
-						«stateType» next__et = «opScopePriv»executeTransitionChain(«langExt.selfPointer(true)»chain__et«IF handleEvents», ifitem, generic_data__et«ENDIF»);
-						next__et = «opScopePriv»enterHistory(«langExt.selfPointer(true)»next__et«IF usesHdlr», is_handler__et«ENDIF»);
-						setState(«langExt.selfPointer(true)»next__et);
-						«finalAction()»
+						«stateType» next__et = «opScopePriv»executeTransitionChain(«langExt.selfPointer(true)»chain__et«IF handleEvents», ifitem, generic_data__et«ENDIF»);
+						next__et = «opScopePriv»enterHistory(«langExt.selfPointer(true)»next__et«IF usesHdlr», is_handler__et«ENDIF»);
+						setState(«langExt.selfPointer(true)»next__et);
+						«finalAction()»
 					}
 				}
 			}
-		«ELSE»
-			void «opScope»receiveEventInternal(«langExt.selfPointer(mc.className, handleEvents)»«IF handleEvents»«ifItemPtr» ifitem, int localId, int evt, «langExt.voidPointer» generic_data__et«ENDIF»);
-		«ENDIF»
-		«IF handleEvents»
-			«IF generateImplementation»
-				«publicIf»void «opScope»receiveEvent(«langExt.selfPointer(mc.className, true)»«ifItemPtr» ifitem, int evt, «langExt.voidPointer» generic_data__et) {
-					int localId = (ifitem==«langExt.nullPointer»)? 0 : ifitem«getLocalId»;
-					«opScope»receiveEventInternal(«langExt.selfPointer(true)»ifitem, localId, evt, generic_data__et);
+		«ELSE»
+			void «opScope»receiveEventInternal(«langExt.selfPointer(mc.className, handleEvents)»«IF handleEvents»«ifItemPtr» ifitem, int localId, int evt, «langExt.voidPointer» generic_data__et«ENDIF»);
+		«ENDIF»
+		«IF handleEvents»
+			«IF generateImplementation»
+				«publicIf»void «opScope»receiveEvent(«langExt.selfPointer(mc.className, true)»«ifItemPtr» ifitem, int evt, «langExt.voidPointer» generic_data__et) {
+					int localId = (ifitem==«langExt.nullPointer»)? 0 : ifitem«getLocalId»;
+					«opScope»receiveEventInternal(«langExt.selfPointer(true)»ifitem, localId, evt, generic_data__et);
 				}
-			«ELSE»
-				void «opScope»receiveEvent(«langExt.selfPointer(true)»«ifItemPtr» ifitem, int evt, «langExt.voidPointer» generic_data__et);
-			«ENDIF»
-		«ENDIF»
+			«ELSE»
+				void «opScope»receiveEvent(«langExt.selfPointer(true)»«ifItemPtr» ifitem, int evt, «langExt.voidPointer» generic_data__et);
+			«ENDIF»
+		«ENDIF»
         '''
     }
     
@@ -439,12 +439,12 @@
      * @return the generated code
      */
     def public String genDoCodes(State state) {'''
-        «IF state.hasDoCode(true)»
-            «state.getDoCodeOperationName()»(«langExt.selfPointer(false)»);
-        «ENDIF»
-        «IF state.eContainer.eContainer instanceof State»
-            «genDoCodes(state.eContainer.eContainer as State)»
-        «ENDIF»
+        «IF state.hasDoCode(true)»
+            «state.getDoCodeOperationName()»(«langExt.selfPointer(false)»);
+        «ENDIF»
+        «IF state.eContainer.eContainer instanceof State»
+            «genDoCodes(state.eContainer.eContainer as State)»
+        «ENDIF»
     '''}
     
     /**
@@ -461,33 +461,33 @@
         var eventDriven = xpmc.modelComponent.commType==ComponentCommunicationType::EVENT_DRIVEN
         var dataDriven = xpmc.modelComponent.commType==ComponentCommunicationType::DATA_DRIVEN
         '''
-            switch (getState(«langExt.selfPointer(false)»)) {
-                «FOR state : xpmc.stateMachine.getLeafStateList()»
-                case «state.getGenStateId()»:
-                    «IF async»
-                        «var atlist =  xpmc.getActiveTriggers(state)»
-                        «IF !atlist.isEmpty»
+            switch (getState(«langExt.selfPointer(false)»)) {
+                «FOR state : xpmc.stateMachine.getLeafStateList()»
+                case «state.getGenStateId()»:
+                    «IF async»
+                        «var atlist =  xpmc.getActiveTriggers(state)»
+                        «IF !atlist.isEmpty»
                             switch(trigger__et) {
                                 case POLLING:
-                                    «genDataDrivenTriggers(xpmc, state, usesHdlr)»
+                                    «genDataDrivenTriggers(xpmc, state, usesHdlr)»
                                     break;
-                                «genEventDrivenTriggers(xpmc, state, atlist, usesHdlr)»
+                                «genEventDrivenTriggers(xpmc, state, atlist, usesHdlr)»
                             }
-                        «ELSE»
-                                «genDataDrivenTriggers(xpmc, state, usesHdlr)»
-                        «ENDIF»
-                    «ELSEIF dataDriven»
-                            «genDataDrivenTriggers(xpmc, state, usesHdlr)»
-                    «ELSEIF eventDriven»
-                        «var atlist =  xpmc.getActiveTriggers(state)»
-                        «IF !atlist.isEmpty»
+                        «ELSE»
+                                «genDataDrivenTriggers(xpmc, state, usesHdlr)»
+                        «ENDIF»
+                    «ELSEIF dataDriven»
+                            «genDataDrivenTriggers(xpmc, state, usesHdlr)»
+                    «ELSEIF eventDriven»
+                        «var atlist =  xpmc.getActiveTriggers(state)»
+                        «IF !atlist.isEmpty»
                             switch(trigger__et) {
-                                    «genEventDrivenTriggers(xpmc, state, atlist, usesHdlr)»
+                                    «genEventDrivenTriggers(xpmc, state, atlist, usesHdlr)»
                             }
-                        «ENDIF»
-                    «ENDIF»
+                        «ENDIF»
+                    «ENDIF»
                     break;
-                «ENDFOR»
+                «ENDFOR»
                 default:
                     /* should not occur */
                     break;
@@ -506,22 +506,22 @@
      */
     def public genDataDrivenTriggers(ExpandedModelComponent xpmc, State state, boolean usesHdlr) {
         '''
-            «genDoCodes(state)»
-            «var transitions = xpmc.getOutgoingTransitionsHierarchical(state).filter(t|t instanceof GuardedTransition)»
-            «FOR tr : transitions»
-                if («guard((tr as GuardedTransition), "", xpmc)»)
+            «genDoCodes(state)»
+            «var transitions = xpmc.getOutgoingTransitionsHierarchical(state).filter(t|t instanceof GuardedTransition)»
+            «FOR tr : transitions»
+                if («guard((tr as GuardedTransition), "", xpmc)»)
                 {
-                    «var chain = xpmc.getChain(tr)»
-                    chain__et = «chain.genChainId»;
-                    catching_state__et = «chain.stateContext.genStateId»;
-                    «IF chain.isHandler() && usesHdlr»
+                    «var chain = xpmc.getChain(tr)»
+                    chain__et = «chain.genChainId»;
+                    catching_state__et = «chain.stateContext.genStateId»;
+                    «IF chain.isHandler() && usesHdlr»
                         is_handler__et = TRUE;
-                    «ENDIF»
+                    «ENDIF»
                 }
-                «IF tr!=transitions.last»
+                «IF tr!=transitions.last»
                     else 
-                «ENDIF»
-            «ENDFOR»
+                «ENDIF»
+            «ENDFOR»
         '''
     }
     
@@ -537,24 +537,24 @@
      */
     def public genEventDrivenTriggers(ExpandedModelComponent xpmc, State state, List<ActiveTrigger> atlist, boolean usesHdlr) {
         '''
-            «FOR at : atlist»
-                case «xpmc.getTriggerCodeName(at)»:
-                    «var needData = at.hasGuard»
-                    «IF needData»{ «langExt.getTypedDataDefinition(at.msg)»«ENDIF»
-                    «FOR tt : at.transitions SEPARATOR " else "»
-                        «var chain = xpmc.getChain(tt)»
-                        «guard(chain.getTransition as TriggeredTransition, at.trigger, xpmc)»
+            «FOR at : atlist»
+                case «xpmc.getTriggerCodeName(at)»:
+                    «var needData = at.hasGuard»
+                    «IF needData»{ «langExt.getTypedDataDefinition(at.msg)»«ENDIF»
+                    «FOR tt : at.transitions SEPARATOR " else "»
+                        «var chain = xpmc.getChain(tt)»
+                        «guard(chain.getTransition as TriggeredTransition, at.trigger, xpmc)»
                         {
-                            chain__et = «chain.genChainId»;
-                            catching_state__et = «chain.stateContext.genStateId»;
-                            «IF chain.isHandler() && usesHdlr»
-                                is_handler__et = «langExt.booleanConstant(true)»;
-                            «ENDIF»
+                            chain__et = «chain.genChainId»;
+                            catching_state__et = «chain.stateContext.genStateId»;
+                            «IF chain.isHandler() && usesHdlr»
+                                is_handler__et = «langExt.booleanConstant(true)»;
+                            «ENDIF»
                         }
-                    «ENDFOR»
-                    «IF needData»}«ENDIF»
+                    «ENDFOR»
+                    «IF needData»}«ENDIF»
                 break;
-            «ENDFOR»
+            «ENDFOR»
             default:
                 /* should not occur */
                 break;