Loading plugins/Prototypes/org.etsi.mts.tdl.tx/src/org/etsi/mts/tdl/TDLtx.xtext +46 −48 Original line number Original line Diff line number Diff line Loading @@ -16,7 +16,7 @@ import "http://www.etsi.org/spec/TDL/1.3.1/configurations" as extendedconfigurat //Needs to be the first rule //Needs to be the first rule Package returns tdl::Package: Package returns tdl::Package: {tdl::Package} {tdl::Package} PrefixFragment AnnotationFragment 'Package' 'Package' name=Identifier name=Identifier BEGIN BEGIN Loading Loading @@ -62,7 +62,7 @@ PackageableElement returns tdl::PackageableElement: ElementImport returns tdl::ElementImport: ElementImport returns tdl::ElementImport: {tdl::ElementImport} {tdl::ElementImport} PrefixCommentFragment AnnotationCommentFragment 'Import' 'Import' ('all' | ('all' | (importedElement+=[tdl::PackageableElement|Identifier] (importedElement+=[tdl::PackageableElement|Identifier] Loading @@ -83,7 +83,7 @@ Annotation returns tdl::Annotation: AnnotationType returns tdl::AnnotationType: AnnotationType returns tdl::AnnotationType: {tdl::AnnotationType} {tdl::AnnotationType} PrefixCommentFragment AnnotationCommentFragment 'AnnotationType' 'AnnotationType' name=Identifier name=Identifier extension=Extension? extension=Extension? Loading @@ -91,7 +91,7 @@ AnnotationType returns tdl::AnnotationType: TestObjective returns tdl::TestObjective: TestObjective returns tdl::TestObjective: {tdl::TestObjective} {tdl::TestObjective} PrefixCommentFragment AnnotationCommentFragment 'TestObjective' 'TestObjective' name=Identifier name=Identifier ( ( Loading @@ -108,7 +108,7 @@ Extension returns tdl::Extension: ; ; ConstraintType returns tdl::ConstraintType: ConstraintType returns tdl::ConstraintType: PrefixCommentFragment AnnotationCommentFragment 'Constraint' 'Constraint' name=Identifier name=Identifier ; ; Loading @@ -125,14 +125,14 @@ Constraint returns tdl::Constraint: DataResourceMapping returns tdl::DataResourceMapping: DataResourceMapping returns tdl::DataResourceMapping: {tdl::DataResourceMapping} {tdl::DataResourceMapping} PrefixCommentFragment AnnotationCommentFragment 'Use' 'Use' resourceURI=EString resourceURI=EString 'as' name=Identifier 'as' name=Identifier ; ; DataElementMapping returns tdl::DataElementMapping: DataElementMapping returns tdl::DataElementMapping: PrefixCommentFragment AnnotationCommentFragment 'Map' 'Map' mappableDataElement=[tdl::MappableDataElement|Identifier] mappableDataElement=[tdl::MappableDataElement|Identifier] ('to' elementURI=EString)? ('to' elementURI=EString)? Loading @@ -146,7 +146,7 @@ DataElementMapping returns tdl::DataElementMapping: ; ; ParameterMapping returns tdl::ParameterMapping: ParameterMapping returns tdl::ParameterMapping: PrefixCommentFragment AnnotationCommentFragment parameter=[tdl::Parameter|Identifier] parameter=[tdl::Parameter|Identifier] '->' parameterURI=EString '->' parameterURI=EString ; ; Loading @@ -154,14 +154,14 @@ ParameterMapping returns tdl::ParameterMapping: SimpleDataType_Impl returns tdl::SimpleDataType: SimpleDataType_Impl returns tdl::SimpleDataType: {tdl::SimpleDataType} {tdl::SimpleDataType} PrefixCommentFragment AnnotationCommentFragment 'Type' 'Type' ConstraintFragment? ConstraintFragment? name=Identifier name=Identifier ; ; SimpleDataInstance returns tdl::SimpleDataInstance: SimpleDataInstance returns tdl::SimpleDataInstance: PrefixCommentFragment AnnotationCommentFragment dataType=[tdl::DataType|Identifier] dataType=[tdl::DataType|Identifier] name=Identifier name=Identifier ; ; Loading @@ -169,7 +169,7 @@ SimpleDataInstance returns tdl::SimpleDataInstance: //TODO: alternative specification dialects? //TODO: alternative specification dialects? StructuredDataType returns tdl::StructuredDataType: StructuredDataType returns tdl::StructuredDataType: {tdl::StructuredDataType} {tdl::StructuredDataType} PrefixCommentFragment AnnotationCommentFragment 'Type' 'Type' //TODO: reconsider order (conflicts, also for other types) //TODO: reconsider order (conflicts, also for other types) ConstraintFragment? ConstraintFragment? Loading @@ -181,7 +181,7 @@ StructuredDataType returns tdl::StructuredDataType: ; ; Member returns tdl::Member: Member returns tdl::Member: PrefixCommentFragment AnnotationCommentFragment MemberConstraintFragment? MemberConstraintFragment? (isOptional?='optional')? (isOptional?='optional')? dataType=[tdl::DataType|Identifier] dataType=[tdl::DataType|Identifier] Loading @@ -190,7 +190,7 @@ Member returns tdl::Member: //TODO: alternative specification dialects? //TODO: alternative specification dialects? StructuredDataInstance returns tdl::StructuredDataInstance: StructuredDataInstance returns tdl::StructuredDataInstance: PrefixCommentFragment AnnotationCommentFragment dataType=[tdl::DataType|Identifier] dataType=[tdl::DataType|Identifier] name=Identifier name=Identifier //TODO: use keywords for unassigned member treatment? //TODO: use keywords for unassigned member treatment? Loading @@ -201,7 +201,7 @@ StructuredDataInstance returns tdl::StructuredDataInstance: ; ; MemberAssignment returns tdl::MemberAssignment: MemberAssignment returns tdl::MemberAssignment: PrefixCommentFragment AnnotationCommentFragment member=[tdl::Member|Identifier] member=[tdl::Member|Identifier] '=' memberSpec=StaticDataUse '=' memberSpec=StaticDataUse ; ; Loading @@ -211,7 +211,7 @@ MemberAssignment returns tdl::MemberAssignment: // currently: a bit of reinvention // currently: a bit of reinvention CollectionDataType returns tdl::CollectionDataType: CollectionDataType returns tdl::CollectionDataType: PrefixCommentFragment AnnotationCommentFragment 'Collection' 'Collection' name=Identifier name=Identifier ConstraintFragment? ConstraintFragment? Loading @@ -219,21 +219,21 @@ CollectionDataType returns tdl::CollectionDataType: ; ; CollectionDataInstance returns tdl::CollectionDataInstance: CollectionDataInstance returns tdl::CollectionDataInstance: PrefixCommentFragment AnnotationCommentFragment dataType=[tdl::DataType|Identifier] dataType=[tdl::DataType|Identifier] name=Identifier name=Identifier '[' item+=StaticDataUse* ']' '[' item+=StaticDataUse* ']' ; ; ProcedureSignature returns tdl::ProcedureSignature: ProcedureSignature returns tdl::ProcedureSignature: PrefixCommentFragment AnnotationCommentFragment 'Signature' 'Signature' name=Identifier name=Identifier '(' parameter+=ProcedureParameter ( "," parameter+=ProcedureParameter)* ')' '(' parameter+=ProcedureParameter ( "," parameter+=ProcedureParameter)* ')' ; ; ProcedureParameter returns tdl::ProcedureParameter: ProcedureParameter returns tdl::ProcedureParameter: PrefixFragment AnnotationFragment kind=ParameterKind kind=ParameterKind dataType=[tdl::DataType|Identifier] dataType=[tdl::DataType|Identifier] name=Identifier name=Identifier Loading @@ -248,14 +248,14 @@ Parameter returns tdl::Parameter: Member | FormalParameter | ProcedureParameter; Member | FormalParameter | ProcedureParameter; FormalParameter returns tdl::FormalParameter: FormalParameter returns tdl::FormalParameter: PrefixFragment AnnotationFragment dataType=[tdl::DataType|Identifier] dataType=[tdl::DataType|Identifier] name=Identifier name=Identifier WithCommentFragment? WithCommentFragment? ; ; Variable returns tdl::Variable: Variable returns tdl::Variable: PrefixCommentFragment AnnotationCommentFragment 'variable' 'variable' dataType=[tdl::DataType|Identifier] dataType=[tdl::DataType|Identifier] name=Identifier name=Identifier Loading @@ -268,7 +268,7 @@ Action returns tdl::Action: Action_Impl returns tdl::Action: Action_Impl returns tdl::Action: {tdl::Action} {tdl::Action} PrefixCommentFragment AnnotationCommentFragment 'Action' 'Action' name=Identifier name=Identifier ('(' formalParameter+=FormalParameter ( "," formalParameter+=FormalParameter)* ')')? ('(' formalParameter+=FormalParameter ( "," formalParameter+=FormalParameter)* ')')? Loading @@ -276,7 +276,7 @@ Action_Impl returns tdl::Action: ; ; Function returns tdl::Function: Function returns tdl::Function: PrefixCommentFragment AnnotationCommentFragment 'Function' 'Function' name=Identifier name=Identifier ('(' formalParameter+=FormalParameter ( "," formalParameter+=FormalParameter)* ')')? ('(' formalParameter+=FormalParameter ( "," formalParameter+=FormalParameter)* ')')? Loading @@ -289,7 +289,7 @@ enum UnassignedMemberTreatment returns tdl::UnassignedMemberTreatment: PredefinedFunction returns tdl::PredefinedFunction: PredefinedFunction returns tdl::PredefinedFunction: {tdl::PredefinedFunction} {tdl::PredefinedFunction} PrefixCommentFragment AnnotationCommentFragment 'Predefined' 'Predefined' (name=PredefinedIdentifierBinary (name=PredefinedIdentifierBinary | name=PredefinedIdentifierNot | name=PredefinedIdentifierNot Loading @@ -313,7 +313,7 @@ PredefinedIdentifierSize returns ecore::EString: ; ; EnumDataType returns tdl::EnumDataType: EnumDataType returns tdl::EnumDataType: PrefixCommentFragment AnnotationCommentFragment 'Enumerated' 'Enumerated' name=Identifier name=Identifier BEGIN BEGIN Loading Loading @@ -490,7 +490,7 @@ PredefinedFunctionCallBinary returns tdl::PredefinedFunctionCall: Time returns tdl::Time: Time returns tdl::Time: {tdl::Time} {tdl::Time} PrefixCommentFragment AnnotationCommentFragment 'Time' 'Time' name=Identifier name=Identifier ; ; Loading Loading @@ -520,7 +520,7 @@ TimeConstraint returns tdl::TimeConstraint: Timer returns tdl::Timer: Timer returns tdl::Timer: {tdl::Timer} {tdl::Timer} PrefixCommentFragment AnnotationCommentFragment 'timer' 'timer' name=Identifier name=Identifier ; ; Loading Loading @@ -582,7 +582,7 @@ TimeOut returns tdl::TimeOut: //# Test Configuration //# Test Configuration GateType returns tdl::GateType: GateType returns tdl::GateType: PrefixCommentFragment AnnotationCommentFragment kind=GateTypeKind kind=GateTypeKind 'Gate' 'Gate' name=Identifier name=Identifier Loading @@ -594,7 +594,7 @@ enum GateTypeKind returns tdl::GateTypeKind: Message = 'Message' | Procedure = 'Procedure'; Message = 'Message' | Procedure = 'Procedure'; GateInstance returns tdl::GateInstance: GateInstance returns tdl::GateInstance: PrefixCommentFragment AnnotationCommentFragment 'gate' 'gate' type=[tdl::GateType|Identifier] type=[tdl::GateType|Identifier] name=Identifier name=Identifier Loading @@ -602,7 +602,7 @@ GateInstance returns tdl::GateInstance: ; ; ComponentType returns tdl::ComponentType: ComponentType returns tdl::ComponentType: PrefixCommentFragment AnnotationCommentFragment 'Component' 'Component' name=Identifier name=Identifier (extension=Extension)? (extension=Extension)? Loading @@ -614,7 +614,7 @@ ComponentType returns tdl::ComponentType: ; ; ComponentInstance returns tdl::ComponentInstance: ComponentInstance returns tdl::ComponentInstance: PrefixCommentFragment AnnotationCommentFragment 'create' 'create' role=ComponentInstanceRole role=ComponentInstanceRole name=Identifier name=Identifier Loading @@ -633,7 +633,7 @@ GateReference returns tdl::GateReference: ; ; Connection returns tdl::Connection: Connection returns tdl::Connection: PrefixCommentFragment AnnotationCommentFragment 'connect' 'connect' endPoint+=GateReference 'to' endPoint+=GateReference endPoint+=GateReference 'to' endPoint+=GateReference WithNameFragment? WithNameFragment? Loading @@ -641,7 +641,7 @@ Connection returns tdl::Connection: TestConfiguration returns tdl::TestConfiguration: TestConfiguration returns tdl::TestConfiguration: PrefixCommentFragment AnnotationCommentFragment 'Configuration' 'Configuration' name=Identifier name=Identifier BEGIN BEGIN Loading Loading @@ -713,25 +713,25 @@ SingleCombinedBehaviour returns tdl::SingleCombinedBehaviour: ; ; CompoundBehaviour returns tdl::CompoundBehaviour: CompoundBehaviour returns tdl::CompoundBehaviour: PrefixFragment AnnotationFragment block=Block block=Block ; ; BoundedLoopBehaviour returns tdl::BoundedLoopBehaviour: BoundedLoopBehaviour returns tdl::BoundedLoopBehaviour: PrefixFragment AnnotationFragment 'repeat' 'repeat' numIteration+=LocalLoopExpression (',' numIteration+=LocalLoopExpression)* numIteration+=LocalLoopExpression (',' numIteration+=LocalLoopExpression)* block=Block block=Block ; ; UnboundedLoopBehaviour returns tdl::UnboundedLoopBehaviour: UnboundedLoopBehaviour returns tdl::UnboundedLoopBehaviour: PrefixFragment AnnotationFragment 'repeat' 'repeat' block=Block block=Block ; ; OptionalBehaviour returns tdl::OptionalBehaviour: OptionalBehaviour returns tdl::OptionalBehaviour: PrefixFragment AnnotationFragment 'optionally' 'optionally' block=Block block=Block ; ; Loading @@ -743,7 +743,7 @@ MultipleCombinedBehaviour returns tdl::MultipleCombinedBehaviour: ; ; ConditionalBehaviour returns tdl::ConditionalBehaviour: ConditionalBehaviour returns tdl::ConditionalBehaviour: PrefixFragment AnnotationFragment 'if' block+=Block 'if' block+=Block (=>('else' block+=Block) (=>('else' block+=Block) | (('else' 'if' block+=Block)* | (('else' 'if' block+=Block)* Loading @@ -751,7 +751,7 @@ ConditionalBehaviour returns tdl::ConditionalBehaviour: ; ; AlternativeBehaviour returns tdl::AlternativeBehaviour: AlternativeBehaviour returns tdl::AlternativeBehaviour: PrefixFragment AnnotationFragment 'alternatively' 'alternatively' block+=Block block+=Block //TODO: enforce 2+? //TODO: enforce 2+? Loading @@ -759,7 +759,7 @@ AlternativeBehaviour returns tdl::AlternativeBehaviour: ; ; ParallelBehaviour returns tdl::ParallelBehaviour: ParallelBehaviour returns tdl::ParallelBehaviour: PrefixFragment AnnotationFragment 'run' block+=Block 'run' block+=Block //TODO: enforce 2+? //TODO: enforce 2+? //TODO: simplify keywords / syntax //TODO: simplify keywords / syntax Loading @@ -771,7 +771,7 @@ ExceptionalBehaviour returns tdl::ExceptionalBehaviour: DefaultBehaviour | InterruptBehaviour; DefaultBehaviour | InterruptBehaviour; DefaultBehaviour returns tdl::DefaultBehaviour: DefaultBehaviour returns tdl::DefaultBehaviour: PrefixFragment AnnotationFragment 'default' 'default' ('on' guardedComponent=[tdl::ComponentInstance|Identifier])? ('on' guardedComponent=[tdl::ComponentInstance|Identifier])? block=Block block=Block Loading @@ -779,7 +779,7 @@ DefaultBehaviour returns tdl::DefaultBehaviour: ; ; InterruptBehaviour returns tdl::InterruptBehaviour: InterruptBehaviour returns tdl::InterruptBehaviour: PrefixFragment AnnotationFragment 'interrupt' 'interrupt' ('on' guardedComponent=[tdl::ComponentInstance|Identifier])? ('on' guardedComponent=[tdl::ComponentInstance|Identifier])? block=Block block=Block Loading @@ -787,7 +787,7 @@ InterruptBehaviour returns tdl::InterruptBehaviour: ; ; PeriodicBehaviour returns tdl::PeriodicBehaviour: PeriodicBehaviour returns tdl::PeriodicBehaviour: PrefixFragment AnnotationFragment 'every' 'every' (period+=LocalExpression (',' period+=LocalExpression)*) (period+=LocalExpression (',' period+=LocalExpression)*) block=Block block=Block Loading Loading @@ -936,7 +936,7 @@ TestDescriptionReference returns tdl::TestDescriptionReference: ; ; ComponentInstanceBinding returns tdl::ComponentInstanceBinding: ComponentInstanceBinding returns tdl::ComponentInstanceBinding: PrefixCommentFragment AnnotationCommentFragment 'bind' formalComponent=[tdl::ComponentInstance|Identifier] 'bind' formalComponent=[tdl::ComponentInstance|Identifier] 'to' actualComponent=[tdl::ComponentInstance|Identifier] 'to' actualComponent=[tdl::ComponentInstance|Identifier] ; ; Loading Loading @@ -975,11 +975,11 @@ Assignment returns tdl::Assignment: //## Fragments //## Fragments //Element : Abstract //Element : Abstract fragment PrefixFragment returns tdl::Element: fragment AnnotationFragment returns tdl::Element: ('@' annotation+=Annotation)* ('@' annotation+=Annotation)* ; ; fragment PrefixCommentFragment returns tdl::Element: fragment AnnotationCommentFragment returns tdl::Element: (comment+=Comment)* (comment+=Comment)* ('@' annotation+=Annotation)* ('@' annotation+=Annotation)* ; ; Loading @@ -1000,9 +1000,7 @@ fragment WithCommentFragment returns tdl::Element: fragment WithNameFragment returns tdl::Element: fragment WithNameFragment returns tdl::Element: 'with' 'with' BEGIN BEGIN //At least one element shall be provided? Ambiguity? NameFragment NameFragment? (comment+=Comment)* END END ; ; Loading Loading
plugins/Prototypes/org.etsi.mts.tdl.tx/src/org/etsi/mts/tdl/TDLtx.xtext +46 −48 Original line number Original line Diff line number Diff line Loading @@ -16,7 +16,7 @@ import "http://www.etsi.org/spec/TDL/1.3.1/configurations" as extendedconfigurat //Needs to be the first rule //Needs to be the first rule Package returns tdl::Package: Package returns tdl::Package: {tdl::Package} {tdl::Package} PrefixFragment AnnotationFragment 'Package' 'Package' name=Identifier name=Identifier BEGIN BEGIN Loading Loading @@ -62,7 +62,7 @@ PackageableElement returns tdl::PackageableElement: ElementImport returns tdl::ElementImport: ElementImport returns tdl::ElementImport: {tdl::ElementImport} {tdl::ElementImport} PrefixCommentFragment AnnotationCommentFragment 'Import' 'Import' ('all' | ('all' | (importedElement+=[tdl::PackageableElement|Identifier] (importedElement+=[tdl::PackageableElement|Identifier] Loading @@ -83,7 +83,7 @@ Annotation returns tdl::Annotation: AnnotationType returns tdl::AnnotationType: AnnotationType returns tdl::AnnotationType: {tdl::AnnotationType} {tdl::AnnotationType} PrefixCommentFragment AnnotationCommentFragment 'AnnotationType' 'AnnotationType' name=Identifier name=Identifier extension=Extension? extension=Extension? Loading @@ -91,7 +91,7 @@ AnnotationType returns tdl::AnnotationType: TestObjective returns tdl::TestObjective: TestObjective returns tdl::TestObjective: {tdl::TestObjective} {tdl::TestObjective} PrefixCommentFragment AnnotationCommentFragment 'TestObjective' 'TestObjective' name=Identifier name=Identifier ( ( Loading @@ -108,7 +108,7 @@ Extension returns tdl::Extension: ; ; ConstraintType returns tdl::ConstraintType: ConstraintType returns tdl::ConstraintType: PrefixCommentFragment AnnotationCommentFragment 'Constraint' 'Constraint' name=Identifier name=Identifier ; ; Loading @@ -125,14 +125,14 @@ Constraint returns tdl::Constraint: DataResourceMapping returns tdl::DataResourceMapping: DataResourceMapping returns tdl::DataResourceMapping: {tdl::DataResourceMapping} {tdl::DataResourceMapping} PrefixCommentFragment AnnotationCommentFragment 'Use' 'Use' resourceURI=EString resourceURI=EString 'as' name=Identifier 'as' name=Identifier ; ; DataElementMapping returns tdl::DataElementMapping: DataElementMapping returns tdl::DataElementMapping: PrefixCommentFragment AnnotationCommentFragment 'Map' 'Map' mappableDataElement=[tdl::MappableDataElement|Identifier] mappableDataElement=[tdl::MappableDataElement|Identifier] ('to' elementURI=EString)? ('to' elementURI=EString)? Loading @@ -146,7 +146,7 @@ DataElementMapping returns tdl::DataElementMapping: ; ; ParameterMapping returns tdl::ParameterMapping: ParameterMapping returns tdl::ParameterMapping: PrefixCommentFragment AnnotationCommentFragment parameter=[tdl::Parameter|Identifier] parameter=[tdl::Parameter|Identifier] '->' parameterURI=EString '->' parameterURI=EString ; ; Loading @@ -154,14 +154,14 @@ ParameterMapping returns tdl::ParameterMapping: SimpleDataType_Impl returns tdl::SimpleDataType: SimpleDataType_Impl returns tdl::SimpleDataType: {tdl::SimpleDataType} {tdl::SimpleDataType} PrefixCommentFragment AnnotationCommentFragment 'Type' 'Type' ConstraintFragment? ConstraintFragment? name=Identifier name=Identifier ; ; SimpleDataInstance returns tdl::SimpleDataInstance: SimpleDataInstance returns tdl::SimpleDataInstance: PrefixCommentFragment AnnotationCommentFragment dataType=[tdl::DataType|Identifier] dataType=[tdl::DataType|Identifier] name=Identifier name=Identifier ; ; Loading @@ -169,7 +169,7 @@ SimpleDataInstance returns tdl::SimpleDataInstance: //TODO: alternative specification dialects? //TODO: alternative specification dialects? StructuredDataType returns tdl::StructuredDataType: StructuredDataType returns tdl::StructuredDataType: {tdl::StructuredDataType} {tdl::StructuredDataType} PrefixCommentFragment AnnotationCommentFragment 'Type' 'Type' //TODO: reconsider order (conflicts, also for other types) //TODO: reconsider order (conflicts, also for other types) ConstraintFragment? ConstraintFragment? Loading @@ -181,7 +181,7 @@ StructuredDataType returns tdl::StructuredDataType: ; ; Member returns tdl::Member: Member returns tdl::Member: PrefixCommentFragment AnnotationCommentFragment MemberConstraintFragment? MemberConstraintFragment? (isOptional?='optional')? (isOptional?='optional')? dataType=[tdl::DataType|Identifier] dataType=[tdl::DataType|Identifier] Loading @@ -190,7 +190,7 @@ Member returns tdl::Member: //TODO: alternative specification dialects? //TODO: alternative specification dialects? StructuredDataInstance returns tdl::StructuredDataInstance: StructuredDataInstance returns tdl::StructuredDataInstance: PrefixCommentFragment AnnotationCommentFragment dataType=[tdl::DataType|Identifier] dataType=[tdl::DataType|Identifier] name=Identifier name=Identifier //TODO: use keywords for unassigned member treatment? //TODO: use keywords for unassigned member treatment? Loading @@ -201,7 +201,7 @@ StructuredDataInstance returns tdl::StructuredDataInstance: ; ; MemberAssignment returns tdl::MemberAssignment: MemberAssignment returns tdl::MemberAssignment: PrefixCommentFragment AnnotationCommentFragment member=[tdl::Member|Identifier] member=[tdl::Member|Identifier] '=' memberSpec=StaticDataUse '=' memberSpec=StaticDataUse ; ; Loading @@ -211,7 +211,7 @@ MemberAssignment returns tdl::MemberAssignment: // currently: a bit of reinvention // currently: a bit of reinvention CollectionDataType returns tdl::CollectionDataType: CollectionDataType returns tdl::CollectionDataType: PrefixCommentFragment AnnotationCommentFragment 'Collection' 'Collection' name=Identifier name=Identifier ConstraintFragment? ConstraintFragment? Loading @@ -219,21 +219,21 @@ CollectionDataType returns tdl::CollectionDataType: ; ; CollectionDataInstance returns tdl::CollectionDataInstance: CollectionDataInstance returns tdl::CollectionDataInstance: PrefixCommentFragment AnnotationCommentFragment dataType=[tdl::DataType|Identifier] dataType=[tdl::DataType|Identifier] name=Identifier name=Identifier '[' item+=StaticDataUse* ']' '[' item+=StaticDataUse* ']' ; ; ProcedureSignature returns tdl::ProcedureSignature: ProcedureSignature returns tdl::ProcedureSignature: PrefixCommentFragment AnnotationCommentFragment 'Signature' 'Signature' name=Identifier name=Identifier '(' parameter+=ProcedureParameter ( "," parameter+=ProcedureParameter)* ')' '(' parameter+=ProcedureParameter ( "," parameter+=ProcedureParameter)* ')' ; ; ProcedureParameter returns tdl::ProcedureParameter: ProcedureParameter returns tdl::ProcedureParameter: PrefixFragment AnnotationFragment kind=ParameterKind kind=ParameterKind dataType=[tdl::DataType|Identifier] dataType=[tdl::DataType|Identifier] name=Identifier name=Identifier Loading @@ -248,14 +248,14 @@ Parameter returns tdl::Parameter: Member | FormalParameter | ProcedureParameter; Member | FormalParameter | ProcedureParameter; FormalParameter returns tdl::FormalParameter: FormalParameter returns tdl::FormalParameter: PrefixFragment AnnotationFragment dataType=[tdl::DataType|Identifier] dataType=[tdl::DataType|Identifier] name=Identifier name=Identifier WithCommentFragment? WithCommentFragment? ; ; Variable returns tdl::Variable: Variable returns tdl::Variable: PrefixCommentFragment AnnotationCommentFragment 'variable' 'variable' dataType=[tdl::DataType|Identifier] dataType=[tdl::DataType|Identifier] name=Identifier name=Identifier Loading @@ -268,7 +268,7 @@ Action returns tdl::Action: Action_Impl returns tdl::Action: Action_Impl returns tdl::Action: {tdl::Action} {tdl::Action} PrefixCommentFragment AnnotationCommentFragment 'Action' 'Action' name=Identifier name=Identifier ('(' formalParameter+=FormalParameter ( "," formalParameter+=FormalParameter)* ')')? ('(' formalParameter+=FormalParameter ( "," formalParameter+=FormalParameter)* ')')? Loading @@ -276,7 +276,7 @@ Action_Impl returns tdl::Action: ; ; Function returns tdl::Function: Function returns tdl::Function: PrefixCommentFragment AnnotationCommentFragment 'Function' 'Function' name=Identifier name=Identifier ('(' formalParameter+=FormalParameter ( "," formalParameter+=FormalParameter)* ')')? ('(' formalParameter+=FormalParameter ( "," formalParameter+=FormalParameter)* ')')? Loading @@ -289,7 +289,7 @@ enum UnassignedMemberTreatment returns tdl::UnassignedMemberTreatment: PredefinedFunction returns tdl::PredefinedFunction: PredefinedFunction returns tdl::PredefinedFunction: {tdl::PredefinedFunction} {tdl::PredefinedFunction} PrefixCommentFragment AnnotationCommentFragment 'Predefined' 'Predefined' (name=PredefinedIdentifierBinary (name=PredefinedIdentifierBinary | name=PredefinedIdentifierNot | name=PredefinedIdentifierNot Loading @@ -313,7 +313,7 @@ PredefinedIdentifierSize returns ecore::EString: ; ; EnumDataType returns tdl::EnumDataType: EnumDataType returns tdl::EnumDataType: PrefixCommentFragment AnnotationCommentFragment 'Enumerated' 'Enumerated' name=Identifier name=Identifier BEGIN BEGIN Loading Loading @@ -490,7 +490,7 @@ PredefinedFunctionCallBinary returns tdl::PredefinedFunctionCall: Time returns tdl::Time: Time returns tdl::Time: {tdl::Time} {tdl::Time} PrefixCommentFragment AnnotationCommentFragment 'Time' 'Time' name=Identifier name=Identifier ; ; Loading Loading @@ -520,7 +520,7 @@ TimeConstraint returns tdl::TimeConstraint: Timer returns tdl::Timer: Timer returns tdl::Timer: {tdl::Timer} {tdl::Timer} PrefixCommentFragment AnnotationCommentFragment 'timer' 'timer' name=Identifier name=Identifier ; ; Loading Loading @@ -582,7 +582,7 @@ TimeOut returns tdl::TimeOut: //# Test Configuration //# Test Configuration GateType returns tdl::GateType: GateType returns tdl::GateType: PrefixCommentFragment AnnotationCommentFragment kind=GateTypeKind kind=GateTypeKind 'Gate' 'Gate' name=Identifier name=Identifier Loading @@ -594,7 +594,7 @@ enum GateTypeKind returns tdl::GateTypeKind: Message = 'Message' | Procedure = 'Procedure'; Message = 'Message' | Procedure = 'Procedure'; GateInstance returns tdl::GateInstance: GateInstance returns tdl::GateInstance: PrefixCommentFragment AnnotationCommentFragment 'gate' 'gate' type=[tdl::GateType|Identifier] type=[tdl::GateType|Identifier] name=Identifier name=Identifier Loading @@ -602,7 +602,7 @@ GateInstance returns tdl::GateInstance: ; ; ComponentType returns tdl::ComponentType: ComponentType returns tdl::ComponentType: PrefixCommentFragment AnnotationCommentFragment 'Component' 'Component' name=Identifier name=Identifier (extension=Extension)? (extension=Extension)? Loading @@ -614,7 +614,7 @@ ComponentType returns tdl::ComponentType: ; ; ComponentInstance returns tdl::ComponentInstance: ComponentInstance returns tdl::ComponentInstance: PrefixCommentFragment AnnotationCommentFragment 'create' 'create' role=ComponentInstanceRole role=ComponentInstanceRole name=Identifier name=Identifier Loading @@ -633,7 +633,7 @@ GateReference returns tdl::GateReference: ; ; Connection returns tdl::Connection: Connection returns tdl::Connection: PrefixCommentFragment AnnotationCommentFragment 'connect' 'connect' endPoint+=GateReference 'to' endPoint+=GateReference endPoint+=GateReference 'to' endPoint+=GateReference WithNameFragment? WithNameFragment? Loading @@ -641,7 +641,7 @@ Connection returns tdl::Connection: TestConfiguration returns tdl::TestConfiguration: TestConfiguration returns tdl::TestConfiguration: PrefixCommentFragment AnnotationCommentFragment 'Configuration' 'Configuration' name=Identifier name=Identifier BEGIN BEGIN Loading Loading @@ -713,25 +713,25 @@ SingleCombinedBehaviour returns tdl::SingleCombinedBehaviour: ; ; CompoundBehaviour returns tdl::CompoundBehaviour: CompoundBehaviour returns tdl::CompoundBehaviour: PrefixFragment AnnotationFragment block=Block block=Block ; ; BoundedLoopBehaviour returns tdl::BoundedLoopBehaviour: BoundedLoopBehaviour returns tdl::BoundedLoopBehaviour: PrefixFragment AnnotationFragment 'repeat' 'repeat' numIteration+=LocalLoopExpression (',' numIteration+=LocalLoopExpression)* numIteration+=LocalLoopExpression (',' numIteration+=LocalLoopExpression)* block=Block block=Block ; ; UnboundedLoopBehaviour returns tdl::UnboundedLoopBehaviour: UnboundedLoopBehaviour returns tdl::UnboundedLoopBehaviour: PrefixFragment AnnotationFragment 'repeat' 'repeat' block=Block block=Block ; ; OptionalBehaviour returns tdl::OptionalBehaviour: OptionalBehaviour returns tdl::OptionalBehaviour: PrefixFragment AnnotationFragment 'optionally' 'optionally' block=Block block=Block ; ; Loading @@ -743,7 +743,7 @@ MultipleCombinedBehaviour returns tdl::MultipleCombinedBehaviour: ; ; ConditionalBehaviour returns tdl::ConditionalBehaviour: ConditionalBehaviour returns tdl::ConditionalBehaviour: PrefixFragment AnnotationFragment 'if' block+=Block 'if' block+=Block (=>('else' block+=Block) (=>('else' block+=Block) | (('else' 'if' block+=Block)* | (('else' 'if' block+=Block)* Loading @@ -751,7 +751,7 @@ ConditionalBehaviour returns tdl::ConditionalBehaviour: ; ; AlternativeBehaviour returns tdl::AlternativeBehaviour: AlternativeBehaviour returns tdl::AlternativeBehaviour: PrefixFragment AnnotationFragment 'alternatively' 'alternatively' block+=Block block+=Block //TODO: enforce 2+? //TODO: enforce 2+? Loading @@ -759,7 +759,7 @@ AlternativeBehaviour returns tdl::AlternativeBehaviour: ; ; ParallelBehaviour returns tdl::ParallelBehaviour: ParallelBehaviour returns tdl::ParallelBehaviour: PrefixFragment AnnotationFragment 'run' block+=Block 'run' block+=Block //TODO: enforce 2+? //TODO: enforce 2+? //TODO: simplify keywords / syntax //TODO: simplify keywords / syntax Loading @@ -771,7 +771,7 @@ ExceptionalBehaviour returns tdl::ExceptionalBehaviour: DefaultBehaviour | InterruptBehaviour; DefaultBehaviour | InterruptBehaviour; DefaultBehaviour returns tdl::DefaultBehaviour: DefaultBehaviour returns tdl::DefaultBehaviour: PrefixFragment AnnotationFragment 'default' 'default' ('on' guardedComponent=[tdl::ComponentInstance|Identifier])? ('on' guardedComponent=[tdl::ComponentInstance|Identifier])? block=Block block=Block Loading @@ -779,7 +779,7 @@ DefaultBehaviour returns tdl::DefaultBehaviour: ; ; InterruptBehaviour returns tdl::InterruptBehaviour: InterruptBehaviour returns tdl::InterruptBehaviour: PrefixFragment AnnotationFragment 'interrupt' 'interrupt' ('on' guardedComponent=[tdl::ComponentInstance|Identifier])? ('on' guardedComponent=[tdl::ComponentInstance|Identifier])? block=Block block=Block Loading @@ -787,7 +787,7 @@ InterruptBehaviour returns tdl::InterruptBehaviour: ; ; PeriodicBehaviour returns tdl::PeriodicBehaviour: PeriodicBehaviour returns tdl::PeriodicBehaviour: PrefixFragment AnnotationFragment 'every' 'every' (period+=LocalExpression (',' period+=LocalExpression)*) (period+=LocalExpression (',' period+=LocalExpression)*) block=Block block=Block Loading Loading @@ -936,7 +936,7 @@ TestDescriptionReference returns tdl::TestDescriptionReference: ; ; ComponentInstanceBinding returns tdl::ComponentInstanceBinding: ComponentInstanceBinding returns tdl::ComponentInstanceBinding: PrefixCommentFragment AnnotationCommentFragment 'bind' formalComponent=[tdl::ComponentInstance|Identifier] 'bind' formalComponent=[tdl::ComponentInstance|Identifier] 'to' actualComponent=[tdl::ComponentInstance|Identifier] 'to' actualComponent=[tdl::ComponentInstance|Identifier] ; ; Loading Loading @@ -975,11 +975,11 @@ Assignment returns tdl::Assignment: //## Fragments //## Fragments //Element : Abstract //Element : Abstract fragment PrefixFragment returns tdl::Element: fragment AnnotationFragment returns tdl::Element: ('@' annotation+=Annotation)* ('@' annotation+=Annotation)* ; ; fragment PrefixCommentFragment returns tdl::Element: fragment AnnotationCommentFragment returns tdl::Element: (comment+=Comment)* (comment+=Comment)* ('@' annotation+=Annotation)* ('@' annotation+=Annotation)* ; ; Loading @@ -1000,9 +1000,7 @@ fragment WithCommentFragment returns tdl::Element: fragment WithNameFragment returns tdl::Element: fragment WithNameFragment returns tdl::Element: 'with' 'with' BEGIN BEGIN //At least one element shall be provided? Ambiguity? NameFragment NameFragment? (comment+=Comment)* END END ; ; Loading