Loading de.ugoe.cs.swe.TTCN3/src/de/ugoe/cs/swe/TTCN3.xtext +8 −7 Original line number Diff line number Diff line Loading @@ -221,10 +221,10 @@ ActionText: {ActionText} FREE_TEXT | Expression; BehaviourStatements: testcase=TestcaseInstance | function=FunctionInstance | return=ReturnStatement | alt=AltConstruct | interleaved=InterleavedConstruct | label=LabelStatement | goto=GotoStatement | {BehaviourStatements} REPEATSTATEMENT | deactivate=DeactivateStatement | altstep=AltstepInstance | activate=ActivateOp | {BehaviourStatements} BREAKSTATEMENT | {BehaviourStatements} CONTINUESTATEMENT; testcase=TestcaseInstance | function=FunctionInstance | return=ReturnStatement | alt=AltConstruct | interleaved=InterleavedConstruct | label=LabelStatement | goto=GotoStatement | {BehaviourStatements} REPEATSTATEMENT | deactivate=DeactivateStatement | altstep=AltstepInstance | activate=ActivateOp | {BehaviourStatements} BREAKSTATEMENT | {BehaviourStatements} CONTINUESTATEMENT; ActivateOp: ACTIVATEKEYWORD LPAREN AltstepInstance RPAREN; Loading Loading @@ -1048,7 +1048,8 @@ ReferencedValue: ref=[RefValue|IDENTIFIER] ext+=ExtendedFieldReference*; RefValue: SingleConstDef | ModuleParameter | SingleVarInstance | FieldReference | FormalTemplatePar | SingleTempVarInstance; SingleConstDef | ModuleParameter | SingleVarInstance | FieldReference | FormalTemplatePar | SingleTempVarInstance | FormalValuePar; // IDENTIFIER omitted PredefinedValue: Loading Loading @@ -1200,8 +1201,8 @@ FunctionFormalPar: value=FormalValuePar | timer=FormalTimerPar | template=FormalTemplatePar | port=FormalPortPar; FormalValuePar: (INPARKEYWORD | INOUTPARKEYWORD | OUTPARKEYWORD)? type=Type name=IDENTIFIER (ASSIGNMENTCHAR (expression=Expression | MINUS))?; (inOut=(INPARKEYWORD | INOUTPARKEYWORD | OUTPARKEYWORD))? type=Type name=IDENTIFIER (ASSIGNMENTCHAR (expression=Expression | MINUS))?; FormalTimerPar: INOUTPARKEYWORD? TIMERKEYWORD name=IDENTIFIER; Loading de.ugoe.cs.swe.TTCN3/src/de/ugoe/cs/swe/common/TTCN3ScopeHelper.xtend +11 −0 Original line number Diff line number Diff line Loading @@ -31,6 +31,7 @@ import de.ugoe.cs.swe.tTCN3.RecordOfDefNamed import de.ugoe.cs.swe.tTCN3.SetOfDefNamed import de.ugoe.cs.swe.tTCN3.AltstepDef import de.ugoe.cs.swe.tTCN3.SingleTempVarInstance import de.ugoe.cs.swe.tTCN3.TemplateDef class TTCN3ScopeHelper { Loading Loading @@ -145,6 +146,16 @@ class TTCN3ScopeHelper { } } def static void scopeTemplateParameter(TemplateDef template, ArrayList<EObject> list) { for (TemplateOrValueFormalPar p : template.base.parList.params) { if (p.value != null) { list.add(p.value) } else if (p.template != null) { list.add(p.template) } } } def static void scopeTemplateOrValueFormalParList(TemplateOrValueFormalParList paramsList, ArrayList<EObject> list) { var RefValue value; Loading de.ugoe.cs.swe.TTCN3/src/de/ugoe/cs/swe/scoping/TTCN3ScopeProvider.xtend +2 −0 Original line number Diff line number Diff line Loading @@ -86,6 +86,8 @@ class TTCN3ScopeProvider extends AbstractDeclarativeScopeProvider { parent.list.scopeModuleVariable(list) } else if (parent instanceof ModuleParDef) { parent.scopeModuleParDef(list) } else if (parent instanceof TemplateDef) { parent.scopeTemplateParameter(list) } parent = parent.eContainer } Loading Loading
de.ugoe.cs.swe.TTCN3/src/de/ugoe/cs/swe/TTCN3.xtext +8 −7 Original line number Diff line number Diff line Loading @@ -221,10 +221,10 @@ ActionText: {ActionText} FREE_TEXT | Expression; BehaviourStatements: testcase=TestcaseInstance | function=FunctionInstance | return=ReturnStatement | alt=AltConstruct | interleaved=InterleavedConstruct | label=LabelStatement | goto=GotoStatement | {BehaviourStatements} REPEATSTATEMENT | deactivate=DeactivateStatement | altstep=AltstepInstance | activate=ActivateOp | {BehaviourStatements} BREAKSTATEMENT | {BehaviourStatements} CONTINUESTATEMENT; testcase=TestcaseInstance | function=FunctionInstance | return=ReturnStatement | alt=AltConstruct | interleaved=InterleavedConstruct | label=LabelStatement | goto=GotoStatement | {BehaviourStatements} REPEATSTATEMENT | deactivate=DeactivateStatement | altstep=AltstepInstance | activate=ActivateOp | {BehaviourStatements} BREAKSTATEMENT | {BehaviourStatements} CONTINUESTATEMENT; ActivateOp: ACTIVATEKEYWORD LPAREN AltstepInstance RPAREN; Loading Loading @@ -1048,7 +1048,8 @@ ReferencedValue: ref=[RefValue|IDENTIFIER] ext+=ExtendedFieldReference*; RefValue: SingleConstDef | ModuleParameter | SingleVarInstance | FieldReference | FormalTemplatePar | SingleTempVarInstance; SingleConstDef | ModuleParameter | SingleVarInstance | FieldReference | FormalTemplatePar | SingleTempVarInstance | FormalValuePar; // IDENTIFIER omitted PredefinedValue: Loading Loading @@ -1200,8 +1201,8 @@ FunctionFormalPar: value=FormalValuePar | timer=FormalTimerPar | template=FormalTemplatePar | port=FormalPortPar; FormalValuePar: (INPARKEYWORD | INOUTPARKEYWORD | OUTPARKEYWORD)? type=Type name=IDENTIFIER (ASSIGNMENTCHAR (expression=Expression | MINUS))?; (inOut=(INPARKEYWORD | INOUTPARKEYWORD | OUTPARKEYWORD))? type=Type name=IDENTIFIER (ASSIGNMENTCHAR (expression=Expression | MINUS))?; FormalTimerPar: INOUTPARKEYWORD? TIMERKEYWORD name=IDENTIFIER; Loading
de.ugoe.cs.swe.TTCN3/src/de/ugoe/cs/swe/common/TTCN3ScopeHelper.xtend +11 −0 Original line number Diff line number Diff line Loading @@ -31,6 +31,7 @@ import de.ugoe.cs.swe.tTCN3.RecordOfDefNamed import de.ugoe.cs.swe.tTCN3.SetOfDefNamed import de.ugoe.cs.swe.tTCN3.AltstepDef import de.ugoe.cs.swe.tTCN3.SingleTempVarInstance import de.ugoe.cs.swe.tTCN3.TemplateDef class TTCN3ScopeHelper { Loading Loading @@ -145,6 +146,16 @@ class TTCN3ScopeHelper { } } def static void scopeTemplateParameter(TemplateDef template, ArrayList<EObject> list) { for (TemplateOrValueFormalPar p : template.base.parList.params) { if (p.value != null) { list.add(p.value) } else if (p.template != null) { list.add(p.template) } } } def static void scopeTemplateOrValueFormalParList(TemplateOrValueFormalParList paramsList, ArrayList<EObject> list) { var RefValue value; Loading
de.ugoe.cs.swe.TTCN3/src/de/ugoe/cs/swe/scoping/TTCN3ScopeProvider.xtend +2 −0 Original line number Diff line number Diff line Loading @@ -86,6 +86,8 @@ class TTCN3ScopeProvider extends AbstractDeclarativeScopeProvider { parent.list.scopeModuleVariable(list) } else if (parent instanceof ModuleParDef) { parent.scopeModuleParDef(list) } else if (parent instanceof TemplateDef) { parent.scopeTemplateParameter(list) } parent = parent.eContainer } Loading