Loading de.ugoe.cs.swe.TTCN3/src/de/ugoe/cs/swe/TTCN3.xtext +18 −18 Original line number Diff line number Diff line Loading @@ -410,18 +410,22 @@ FunctionActualParList: asssign+=FunctionActualParAssignment)*); FunctionActualParAssignment: template=TemplateInstanceAssignment | component=ComponentRefAssignment | array=ArrayIdentifierRefAssignment; template=TemplateInstanceAssignment | component=ComponentRefAssignment | port=PortRefAssignment | timer=TimerRefAssignment; // FormalValuePar according to antlr implementation ComponentRefAssignment: ref=[FormalValuePar|IDENTIFIER] ASSIGNMENTCHAR value=ComponentRef; //TODO: check ref ArrayIdentifierRefAssignment: name=IDENTIFIER ASSIGNMENTCHAR value=ArrayIdentifierRef; PortRefAssignment: port=[FormalPortPar|IDENTIFIER] ASSIGNMENTCHAR value=PortRef; TimerRefAssignment: timer=[FormalTimerPar|IDENTIFIER] ASSIGNMENTCHAR value=[TimerVarInstance|IDENTIFIER]; FunctionActualPar: idRef=ArrayIdentifierRef | template=InLineTemplate | component=ComponentRef | {FunctionActualPar} MINUS; template=InLineTemplate | component=ComponentRef | timer=[TimerVarInstance|IDENTIFIER] | port=PortRef | {FunctionActualPar} MINUS; ComponentRef: ref=ComponentOrDefaultReference | system=SYSTEMKEYWORD | self=SELFOP | mtc=MTCKEYWORD; Loading Loading @@ -455,10 +459,6 @@ TimerRefOrAny: TimerRefOrAll: ref=[TimerVarInstance|IDENTIFIER] | {TimerRefOrAll} ALLKEYWORD timer=TIMERKEYWORD; //TODO: references ArrayIdentifierRef: name=IDENTIFIER arryRefs+=ArrayOrBitRef*; BasicStatements: log=LogStatement | block=StatementBlock | loop=LoopConstruct | conditional=ConditionalConstruct | select=SelectCaseConstruct | assign=Assignment; Loading Loading @@ -557,16 +557,16 @@ ClearStatement: port=PortOrAll DOT CLEAROPKEYWORD; PortOrAll: ref=ArrayIdentifierRef | {PortOrAll} ALLKEYWORD PORTKEYWORD; port=[PortElement|IDENTIFIER] arrayRefs+=ArrayOrBitRef* | {PortOrAll} ALLKEYWORD PORTKEYWORD; RaiseStatement: array=ArrayIdentifierRef DOT op=PortRaiseOp; port=[PortElement|IDENTIFIER] arrayRefs+=ArrayOrBitRef* DOT op=PortRaiseOp; PortRaiseOp: RAISEKEYWORD LPAREN signature=[SignatureDef|QualifiedIdentifier] COMMA template=InLineTemplate RPAREN to=ToClause?; ReplyStatement: array=ArrayIdentifierRef DOT op=PortReplyOp; port=[PortElement|IDENTIFIER] arrayRefs+=ArrayOrBitRef* DOT op=PortReplyOp; PortReplyOp: REPLYKEYWORD LPAREN template=InLineTemplate value=ReplyValue? RPAREN to=ToClause?; Loading @@ -575,7 +575,7 @@ ReplyValue: VALUEKEYWORD expr=Expression; CallStatement: array=ArrayIdentifierRef DOT op=PortCallOp body=PortCallBody?; port=[PortElement|IDENTIFIER] arrayRefs+=ArrayOrBitRef* DOT op=PortCallOp body=PortCallBody?; PortCallOp: CALLOPKEYWORD LPAREN params=CallParameters RPAREN to=ToClause?; Loading Loading @@ -1074,7 +1074,7 @@ ExtendedFieldReference: RefValue: SingleConstDef | ModuleParameter | FieldReference | FormalTemplatePar | SingleTempVarInstance | Enumeration | FunctionRef | TimerVarInstance | FormalPortPar | BaseTemplate; FunctionRef | TimerVarInstance | FormalPortPar; // IDENTIFIER omitted PredefinedValue: Loading Loading @@ -1179,7 +1179,7 @@ RunningTimerOp: timerRef=TimerRefOrAny DOT RUNNINGKEYWORD; ReadTimerOp: arrayRed=ArrayIdentifierRef DOT READKEYWORD; timer=[TimerVarInstance|IDENTIFIER] DOT READKEYWORD; PermutationMatch: PERMUTATIONKEYWORD list=ListOfTemplates; Loading Loading
de.ugoe.cs.swe.TTCN3/src/de/ugoe/cs/swe/TTCN3.xtext +18 −18 Original line number Diff line number Diff line Loading @@ -410,18 +410,22 @@ FunctionActualParList: asssign+=FunctionActualParAssignment)*); FunctionActualParAssignment: template=TemplateInstanceAssignment | component=ComponentRefAssignment | array=ArrayIdentifierRefAssignment; template=TemplateInstanceAssignment | component=ComponentRefAssignment | port=PortRefAssignment | timer=TimerRefAssignment; // FormalValuePar according to antlr implementation ComponentRefAssignment: ref=[FormalValuePar|IDENTIFIER] ASSIGNMENTCHAR value=ComponentRef; //TODO: check ref ArrayIdentifierRefAssignment: name=IDENTIFIER ASSIGNMENTCHAR value=ArrayIdentifierRef; PortRefAssignment: port=[FormalPortPar|IDENTIFIER] ASSIGNMENTCHAR value=PortRef; TimerRefAssignment: timer=[FormalTimerPar|IDENTIFIER] ASSIGNMENTCHAR value=[TimerVarInstance|IDENTIFIER]; FunctionActualPar: idRef=ArrayIdentifierRef | template=InLineTemplate | component=ComponentRef | {FunctionActualPar} MINUS; template=InLineTemplate | component=ComponentRef | timer=[TimerVarInstance|IDENTIFIER] | port=PortRef | {FunctionActualPar} MINUS; ComponentRef: ref=ComponentOrDefaultReference | system=SYSTEMKEYWORD | self=SELFOP | mtc=MTCKEYWORD; Loading Loading @@ -455,10 +459,6 @@ TimerRefOrAny: TimerRefOrAll: ref=[TimerVarInstance|IDENTIFIER] | {TimerRefOrAll} ALLKEYWORD timer=TIMERKEYWORD; //TODO: references ArrayIdentifierRef: name=IDENTIFIER arryRefs+=ArrayOrBitRef*; BasicStatements: log=LogStatement | block=StatementBlock | loop=LoopConstruct | conditional=ConditionalConstruct | select=SelectCaseConstruct | assign=Assignment; Loading Loading @@ -557,16 +557,16 @@ ClearStatement: port=PortOrAll DOT CLEAROPKEYWORD; PortOrAll: ref=ArrayIdentifierRef | {PortOrAll} ALLKEYWORD PORTKEYWORD; port=[PortElement|IDENTIFIER] arrayRefs+=ArrayOrBitRef* | {PortOrAll} ALLKEYWORD PORTKEYWORD; RaiseStatement: array=ArrayIdentifierRef DOT op=PortRaiseOp; port=[PortElement|IDENTIFIER] arrayRefs+=ArrayOrBitRef* DOT op=PortRaiseOp; PortRaiseOp: RAISEKEYWORD LPAREN signature=[SignatureDef|QualifiedIdentifier] COMMA template=InLineTemplate RPAREN to=ToClause?; ReplyStatement: array=ArrayIdentifierRef DOT op=PortReplyOp; port=[PortElement|IDENTIFIER] arrayRefs+=ArrayOrBitRef* DOT op=PortReplyOp; PortReplyOp: REPLYKEYWORD LPAREN template=InLineTemplate value=ReplyValue? RPAREN to=ToClause?; Loading @@ -575,7 +575,7 @@ ReplyValue: VALUEKEYWORD expr=Expression; CallStatement: array=ArrayIdentifierRef DOT op=PortCallOp body=PortCallBody?; port=[PortElement|IDENTIFIER] arrayRefs+=ArrayOrBitRef* DOT op=PortCallOp body=PortCallBody?; PortCallOp: CALLOPKEYWORD LPAREN params=CallParameters RPAREN to=ToClause?; Loading Loading @@ -1074,7 +1074,7 @@ ExtendedFieldReference: RefValue: SingleConstDef | ModuleParameter | FieldReference | FormalTemplatePar | SingleTempVarInstance | Enumeration | FunctionRef | TimerVarInstance | FormalPortPar | BaseTemplate; FunctionRef | TimerVarInstance | FormalPortPar; // IDENTIFIER omitted PredefinedValue: Loading Loading @@ -1179,7 +1179,7 @@ RunningTimerOp: timerRef=TimerRefOrAny DOT RUNNINGKEYWORD; ReadTimerOp: arrayRed=ArrayIdentifierRef DOT READKEYWORD; timer=[TimerVarInstance|IDENTIFIER] DOT READKEYWORD; PermutationMatch: PERMUTATIONKEYWORD list=ListOfTemplates; Loading