| /* |
| * generated by Xtext |
| */ |
| package org.eclipse.qvtd.xtext.qvtcore.services; |
| |
| import com.google.inject.Singleton; |
| import com.google.inject.Inject; |
| |
| import java.util.List; |
| |
| import org.eclipse.xtext.*; |
| import org.eclipse.xtext.service.GrammarProvider; |
| import org.eclipse.xtext.service.AbstractElementFinder.*; |
| |
| import org.eclipse.qvtd.xtext.qvtcorebase.services.QVTcoreBaseGrammarAccess; |
| import org.eclipse.ocl.xtext.essentialocl.services.EssentialOCLGrammarAccess; |
| import org.eclipse.ocl.xtext.base.services.BaseGrammarAccess; |
| |
| @Singleton |
| public class QVTcoreGrammarAccess extends AbstractGrammarElementFinder { |
| |
| |
| public class TopLevelCSElements extends AbstractParserRuleElementFinder { |
| private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "TopLevelCS"); |
| private final Group cGroup = (Group)rule.eContents().get(1); |
| private final Alternatives cAlternatives_0 = (Alternatives)cGroup.eContents().get(0); |
| private final Assignment cOwnedImportsAssignment_0_0 = (Assignment)cAlternatives_0.eContents().get(0); |
| private final RuleCall cOwnedImportsImportCSParserRuleCall_0_0_0 = (RuleCall)cOwnedImportsAssignment_0_0.eContents().get(0); |
| private final Assignment cOwnedLibrariesAssignment_0_1 = (Assignment)cAlternatives_0.eContents().get(1); |
| private final RuleCall cOwnedLibrariesLibraryCSParserRuleCall_0_1_0 = (RuleCall)cOwnedLibrariesAssignment_0_1.eContents().get(0); |
| private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1); |
| private final Assignment cOwnedMappingsAssignment_1_0 = (Assignment)cAlternatives_1.eContents().get(0); |
| private final RuleCall cOwnedMappingsMappingCSParserRuleCall_1_0_0 = (RuleCall)cOwnedMappingsAssignment_1_0.eContents().get(0); |
| private final Assignment cOwnedTransformationsAssignment_1_1 = (Assignment)cAlternatives_1.eContents().get(1); |
| private final RuleCall cOwnedTransformationsTransformationCSParserRuleCall_1_1_0 = (RuleCall)cOwnedTransformationsAssignment_1_1.eContents().get(0); |
| private final Assignment cOwnedQueriesAssignment_1_2 = (Assignment)cAlternatives_1.eContents().get(2); |
| private final RuleCall cOwnedQueriesQueryCSParserRuleCall_1_2_0 = (RuleCall)cOwnedQueriesAssignment_1_2.eContents().get(0); |
| |
| //TopLevelCS: |
| // (ownedImports+=ImportCS | / *ownedInclude+=IncludeCS |* / ownedLibraries+=LibraryCS)* (ownedMappings+=MappingCS | |
| // ownedTransformations+=TransformationCS | ownedQueries+=QueryCS)*; |
| @Override public ParserRule getRule() { return rule; } |
| |
| //(ownedImports+=ImportCS | / *ownedInclude+=IncludeCS |* / ownedLibraries+=LibraryCS)* (ownedMappings+=MappingCS | |
| //ownedTransformations+=TransformationCS | ownedQueries+=QueryCS)* |
| public Group getGroup() { return cGroup; } |
| |
| //(ownedImports+=ImportCS | / *ownedInclude+=IncludeCS |* / ownedLibraries+=LibraryCS)* |
| public Alternatives getAlternatives_0() { return cAlternatives_0; } |
| |
| //ownedImports+=ImportCS |
| public Assignment getOwnedImportsAssignment_0_0() { return cOwnedImportsAssignment_0_0; } |
| |
| //ImportCS |
| public RuleCall getOwnedImportsImportCSParserRuleCall_0_0_0() { return cOwnedImportsImportCSParserRuleCall_0_0_0; } |
| |
| /// *ownedInclude+=IncludeCS |* / ownedLibraries+=LibraryCS |
| public Assignment getOwnedLibrariesAssignment_0_1() { return cOwnedLibrariesAssignment_0_1; } |
| |
| //LibraryCS |
| public RuleCall getOwnedLibrariesLibraryCSParserRuleCall_0_1_0() { return cOwnedLibrariesLibraryCSParserRuleCall_0_1_0; } |
| |
| //(ownedMappings+=MappingCS | ownedTransformations+=TransformationCS | ownedQueries+=QueryCS)* |
| public Alternatives getAlternatives_1() { return cAlternatives_1; } |
| |
| //ownedMappings+=MappingCS |
| public Assignment getOwnedMappingsAssignment_1_0() { return cOwnedMappingsAssignment_1_0; } |
| |
| //MappingCS |
| public RuleCall getOwnedMappingsMappingCSParserRuleCall_1_0_0() { return cOwnedMappingsMappingCSParserRuleCall_1_0_0; } |
| |
| //ownedTransformations+=TransformationCS |
| public Assignment getOwnedTransformationsAssignment_1_1() { return cOwnedTransformationsAssignment_1_1; } |
| |
| //TransformationCS |
| public RuleCall getOwnedTransformationsTransformationCSParserRuleCall_1_1_0() { return cOwnedTransformationsTransformationCSParserRuleCall_1_1_0; } |
| |
| //ownedQueries+=QueryCS |
| public Assignment getOwnedQueriesAssignment_1_2() { return cOwnedQueriesAssignment_1_2; } |
| |
| //QueryCS |
| public RuleCall getOwnedQueriesQueryCSParserRuleCall_1_2_0() { return cOwnedQueriesQueryCSParserRuleCall_1_2_0; } |
| } |
| |
| public class MappingCSElements extends AbstractParserRuleElementFinder { |
| private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "MappingCS"); |
| private final Group cGroup = (Group)rule.eContents().get(1); |
| private final Action cMappingCSAction_0 = (Action)cGroup.eContents().get(0); |
| private final Keyword cMapKeyword_1 = (Keyword)cGroup.eContents().get(1); |
| private final Assignment cNameAssignment_2 = (Assignment)cGroup.eContents().get(2); |
| private final RuleCall cNameUnrestrictedNameParserRuleCall_2_0 = (RuleCall)cNameAssignment_2.eContents().get(0); |
| private final Group cGroup_3 = (Group)cGroup.eContents().get(3); |
| private final Keyword cInKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0); |
| private final Assignment cInAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1); |
| private final CrossReference cInTransformationCrossReference_3_1_0 = (CrossReference)cInAssignment_3_1.eContents().get(0); |
| private final RuleCall cInTransformationUnrestrictedNameParserRuleCall_3_1_0_1 = (RuleCall)cInTransformationCrossReference_3_1_0.eContents().get(1); |
| private final Group cGroup_4 = (Group)cGroup.eContents().get(4); |
| private final Keyword cRefinesKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0); |
| private final Assignment cRefinesAssignment_4_1 = (Assignment)cGroup_4.eContents().get(1); |
| private final CrossReference cRefinesMappingCrossReference_4_1_0 = (CrossReference)cRefinesAssignment_4_1.eContents().get(0); |
| private final RuleCall cRefinesMappingUnrestrictedNameParserRuleCall_4_1_0_1 = (RuleCall)cRefinesMappingCrossReference_4_1_0.eContents().get(1); |
| private final Group cGroup_4_2 = (Group)cGroup_4.eContents().get(2); |
| private final Keyword cCommaKeyword_4_2_0 = (Keyword)cGroup_4_2.eContents().get(0); |
| private final Assignment cRefinesAssignment_4_2_1 = (Assignment)cGroup_4_2.eContents().get(1); |
| private final CrossReference cRefinesMappingCrossReference_4_2_1_0 = (CrossReference)cRefinesAssignment_4_2_1.eContents().get(0); |
| private final RuleCall cRefinesMappingUnrestrictedNameParserRuleCall_4_2_1_0_1 = (RuleCall)cRefinesMappingCrossReference_4_2_1_0.eContents().get(1); |
| private final Keyword cLeftCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5); |
| private final Assignment cDomainsAssignment_6 = (Assignment)cGroup.eContents().get(6); |
| private final RuleCall cDomainsNamedDomainCSParserRuleCall_6_0 = (RuleCall)cDomainsAssignment_6.eContents().get(0); |
| private final Group cGroup_7 = (Group)cGroup.eContents().get(7); |
| private final Keyword cWhereKeyword_7_0 = (Keyword)cGroup_7.eContents().get(0); |
| private final Assignment cMiddleAssignment_7_1 = (Assignment)cGroup_7.eContents().get(1); |
| private final RuleCall cMiddleUnnamedDomainCSParserRuleCall_7_1_0 = (RuleCall)cMiddleAssignment_7_1.eContents().get(0); |
| private final Assignment cOwnedComposedMappingsAssignment_8 = (Assignment)cGroup.eContents().get(8); |
| private final RuleCall cOwnedComposedMappingsMappingCSParserRuleCall_8_0 = (RuleCall)cOwnedComposedMappingsAssignment_8.eContents().get(0); |
| private final Keyword cRightCurlyBracketKeyword_9 = (Keyword)cGroup.eContents().get(9); |
| |
| //MappingCS: |
| // {MappingCS} "map" name=UnrestrictedName? ("in" in=[qvtbase::Transformation|UnrestrictedName])? ("refines" |
| // refines+=[qvtcore::Mapping|UnrestrictedName] ("," refines+=[qvtcore::Mapping|UnrestrictedName])*)? "{" |
| // domains+=NamedDomainCS* ("where" middle=UnnamedDomainCS)? ownedComposedMappings+=MappingCS* "}"; |
| @Override public ParserRule getRule() { return rule; } |
| |
| //{MappingCS} "map" name=UnrestrictedName? ("in" in=[qvtbase::Transformation|UnrestrictedName])? ("refines" |
| //refines+=[qvtcore::Mapping|UnrestrictedName] ("," refines+=[qvtcore::Mapping|UnrestrictedName])*)? "{" |
| //domains+=NamedDomainCS* ("where" middle=UnnamedDomainCS)? ownedComposedMappings+=MappingCS* "}" |
| public Group getGroup() { return cGroup; } |
| |
| //{MappingCS} |
| public Action getMappingCSAction_0() { return cMappingCSAction_0; } |
| |
| //"map" |
| public Keyword getMapKeyword_1() { return cMapKeyword_1; } |
| |
| //name=UnrestrictedName? |
| public Assignment getNameAssignment_2() { return cNameAssignment_2; } |
| |
| //UnrestrictedName |
| public RuleCall getNameUnrestrictedNameParserRuleCall_2_0() { return cNameUnrestrictedNameParserRuleCall_2_0; } |
| |
| //("in" in=[qvtbase::Transformation|UnrestrictedName])? |
| public Group getGroup_3() { return cGroup_3; } |
| |
| //"in" |
| public Keyword getInKeyword_3_0() { return cInKeyword_3_0; } |
| |
| //in=[qvtbase::Transformation|UnrestrictedName] |
| public Assignment getInAssignment_3_1() { return cInAssignment_3_1; } |
| |
| //[qvtbase::Transformation|UnrestrictedName] |
| public CrossReference getInTransformationCrossReference_3_1_0() { return cInTransformationCrossReference_3_1_0; } |
| |
| //UnrestrictedName |
| public RuleCall getInTransformationUnrestrictedNameParserRuleCall_3_1_0_1() { return cInTransformationUnrestrictedNameParserRuleCall_3_1_0_1; } |
| |
| //("refines" refines+=[qvtcore::Mapping|UnrestrictedName] ("," refines+=[qvtcore::Mapping|UnrestrictedName])*)? |
| public Group getGroup_4() { return cGroup_4; } |
| |
| //"refines" |
| public Keyword getRefinesKeyword_4_0() { return cRefinesKeyword_4_0; } |
| |
| //refines+=[qvtcore::Mapping|UnrestrictedName] |
| public Assignment getRefinesAssignment_4_1() { return cRefinesAssignment_4_1; } |
| |
| //[qvtcore::Mapping|UnrestrictedName] |
| public CrossReference getRefinesMappingCrossReference_4_1_0() { return cRefinesMappingCrossReference_4_1_0; } |
| |
| //UnrestrictedName |
| public RuleCall getRefinesMappingUnrestrictedNameParserRuleCall_4_1_0_1() { return cRefinesMappingUnrestrictedNameParserRuleCall_4_1_0_1; } |
| |
| //("," refines+=[qvtcore::Mapping|UnrestrictedName])* |
| public Group getGroup_4_2() { return cGroup_4_2; } |
| |
| //"," |
| public Keyword getCommaKeyword_4_2_0() { return cCommaKeyword_4_2_0; } |
| |
| //refines+=[qvtcore::Mapping|UnrestrictedName] |
| public Assignment getRefinesAssignment_4_2_1() { return cRefinesAssignment_4_2_1; } |
| |
| //[qvtcore::Mapping|UnrestrictedName] |
| public CrossReference getRefinesMappingCrossReference_4_2_1_0() { return cRefinesMappingCrossReference_4_2_1_0; } |
| |
| //UnrestrictedName |
| public RuleCall getRefinesMappingUnrestrictedNameParserRuleCall_4_2_1_0_1() { return cRefinesMappingUnrestrictedNameParserRuleCall_4_2_1_0_1; } |
| |
| //"{" |
| public Keyword getLeftCurlyBracketKeyword_5() { return cLeftCurlyBracketKeyword_5; } |
| |
| //domains+=NamedDomainCS* |
| public Assignment getDomainsAssignment_6() { return cDomainsAssignment_6; } |
| |
| //NamedDomainCS |
| public RuleCall getDomainsNamedDomainCSParserRuleCall_6_0() { return cDomainsNamedDomainCSParserRuleCall_6_0; } |
| |
| //("where" middle=UnnamedDomainCS)? |
| public Group getGroup_7() { return cGroup_7; } |
| |
| //"where" |
| public Keyword getWhereKeyword_7_0() { return cWhereKeyword_7_0; } |
| |
| //middle=UnnamedDomainCS |
| public Assignment getMiddleAssignment_7_1() { return cMiddleAssignment_7_1; } |
| |
| //UnnamedDomainCS |
| public RuleCall getMiddleUnnamedDomainCSParserRuleCall_7_1_0() { return cMiddleUnnamedDomainCSParserRuleCall_7_1_0; } |
| |
| //ownedComposedMappings+=MappingCS* |
| public Assignment getOwnedComposedMappingsAssignment_8() { return cOwnedComposedMappingsAssignment_8; } |
| |
| //MappingCS |
| public RuleCall getOwnedComposedMappingsMappingCSParserRuleCall_8_0() { return cOwnedComposedMappingsMappingCSParserRuleCall_8_0; } |
| |
| //"}" |
| public Keyword getRightCurlyBracketKeyword_9() { return cRightCurlyBracketKeyword_9; } |
| } |
| |
| |
| private final TopLevelCSElements pTopLevelCS; |
| private final MappingCSElements pMappingCS; |
| |
| private final Grammar grammar; |
| |
| private final QVTcoreBaseGrammarAccess gaQVTcoreBase; |
| |
| @Inject |
| public QVTcoreGrammarAccess(GrammarProvider grammarProvider, |
| QVTcoreBaseGrammarAccess gaQVTcoreBase) { |
| this.grammar = internalFindGrammar(grammarProvider); |
| this.gaQVTcoreBase = gaQVTcoreBase; |
| this.pTopLevelCS = new TopLevelCSElements(); |
| this.pMappingCS = new MappingCSElements(); |
| } |
| |
| protected Grammar internalFindGrammar(GrammarProvider grammarProvider) { |
| Grammar grammar = grammarProvider.getGrammar(this); |
| while (grammar != null) { |
| if ("org.eclipse.qvtd.xtext.qvtcore.QVTcore".equals(grammar.getName())) { |
| return grammar; |
| } |
| List<Grammar> grammars = grammar.getUsedGrammars(); |
| if (!grammars.isEmpty()) { |
| grammar = grammars.iterator().next(); |
| } else { |
| return null; |
| } |
| } |
| return grammar; |
| } |
| |
| @Override |
| public Grammar getGrammar() { |
| return grammar; |
| } |
| |
| |
| public QVTcoreBaseGrammarAccess getQVTcoreBaseGrammarAccess() { |
| return gaQVTcoreBase; |
| } |
| |
| |
| //TopLevelCS: |
| // (ownedImports+=ImportCS | / *ownedInclude+=IncludeCS |* / ownedLibraries+=LibraryCS)* (ownedMappings+=MappingCS | |
| // ownedTransformations+=TransformationCS | ownedQueries+=QueryCS)*; |
| public TopLevelCSElements getTopLevelCSAccess() { |
| return pTopLevelCS; |
| } |
| |
| public ParserRule getTopLevelCSRule() { |
| return getTopLevelCSAccess().getRule(); |
| } |
| |
| //MappingCS: |
| // {MappingCS} "map" name=UnrestrictedName? ("in" in=[qvtbase::Transformation|UnrestrictedName])? ("refines" |
| // refines+=[qvtcore::Mapping|UnrestrictedName] ("," refines+=[qvtcore::Mapping|UnrestrictedName])*)? "{" |
| // domains+=NamedDomainCS* ("where" middle=UnnamedDomainCS)? ownedComposedMappings+=MappingCS* "}"; |
| public MappingCSElements getMappingCSAccess() { |
| return pMappingCS; |
| } |
| |
| public ParserRule getMappingCSRule() { |
| return getMappingCSAccess().getRule(); |
| } |
| |
| //BottomPatternCS: |
| // "{" (unrealizedVariables+=UnrealizedVariableCS | realizedVariables+=RealizedVariableCS) ("," |
| // (unrealizedVariables+=UnrealizedVariableCS | realizedVariables+=RealizedVariableCS))* ("|" |
| // constraints+=PredicateOrAssignmentCS*)? "}" | {BottomPatternCS} "{" constraints+=PredicateOrAssignmentCS* "}"; |
| public QVTcoreBaseGrammarAccess.BottomPatternCSElements getBottomPatternCSAccess() { |
| return gaQVTcoreBase.getBottomPatternCSAccess(); |
| } |
| |
| public ParserRule getBottomPatternCSRule() { |
| return getBottomPatternCSAccess().getRule(); |
| } |
| |
| //DirectionCS: |
| // {DirectionCS} name=UnrestrictedName? ("imports" imports+=[pivot::Package|UnrestrictedName] ("," |
| // imports+=[pivot::Package|UnrestrictedName])*)? ("uses" uses+=[qvtcorebase::CoreDomain|UnrestrictedName] ("," |
| // uses+=[qvtcorebase::CoreDomain|UnrestrictedName])*)?; |
| public QVTcoreBaseGrammarAccess.DirectionCSElements getDirectionCSAccess() { |
| return gaQVTcoreBase.getDirectionCSAccess(); |
| } |
| |
| public ParserRule getDirectionCSRule() { |
| return getDirectionCSAccess().getRule(); |
| } |
| |
| ////EnforcementOperationCS: ('creation'|'deletion') ExpCS ';'; |
| // GuardPatternCS: |
| // {GuardPatternCS} "(" (unrealizedVariables+=GuardVariableCS ("," unrealizedVariables+=GuardVariableCS)*)? ("|" |
| // ownedPredicates+=PredicateCS*)? ")" // FIXME Redundant but avoids serializer failure on Class2RDBMS.qvtc |
| // | |
| // {GuardPatternCS} "(" (unrealizedVariables+=GuardVariableCS ("," unrealizedVariables+=GuardVariableCS)*)? ")" | |
| // {GuardPatternCS} "(" ownedPredicates+=PredicateCS* ")"; |
| public QVTcoreBaseGrammarAccess.GuardPatternCSElements getGuardPatternCSAccess() { |
| return gaQVTcoreBase.getGuardPatternCSAccess(); |
| } |
| |
| public ParserRule getGuardPatternCSRule() { |
| return getGuardPatternCSAccess().getRule(); |
| } |
| |
| ////Variable := VariableName �:� TypeDeclaration |
| // GuardVariableCS returns UnrealizedVariableCS: |
| // name=UnrestrictedName ":" ownedType=TypeExpCS; |
| public QVTcoreBaseGrammarAccess.GuardVariableCSElements getGuardVariableCSAccess() { |
| return gaQVTcoreBase.getGuardVariableCSAccess(); |
| } |
| |
| public ParserRule getGuardVariableCSRule() { |
| return getGuardVariableCSAccess().getRule(); |
| } |
| |
| //ImportCS returns base::ImportCS: |
| // "import" (name=Identifier ":")? ownedPathName=URIPathNameCS (isAll?="::" "*")? ";"; |
| public QVTcoreBaseGrammarAccess.ImportCSElements getImportCSAccess() { |
| return gaQVTcoreBase.getImportCSAccess(); |
| } |
| |
| public ParserRule getImportCSRule() { |
| return getImportCSAccess().getRule(); |
| } |
| |
| ////IncludeCS returns IncludeCS: |
| // // 'include' namespace=[pivot::Namespace|URI] ';'; |
| // LibraryCS returns base::LibraryCS: |
| // "library" referredPackage=[pivot::Package|URI] ";"; |
| public QVTcoreBaseGrammarAccess.LibraryCSElements getLibraryCSAccess() { |
| return gaQVTcoreBase.getLibraryCSAccess(); |
| } |
| |
| public ParserRule getLibraryCSRule() { |
| return getLibraryCSAccess().getRule(); |
| } |
| |
| //NamedDomainCS returns DomainCS: |
| // check?="check"? enforce?="enforce"? direction=[qvtbase::TypedModel|UnrestrictedName] guardPattern=GuardPatternCS |
| // bottomPattern=BottomPatternCS; |
| public QVTcoreBaseGrammarAccess.NamedDomainCSElements getNamedDomainCSAccess() { |
| return gaQVTcoreBase.getNamedDomainCSAccess(); |
| } |
| |
| public ParserRule getNamedDomainCSRule() { |
| return getNamedDomainCSAccess().getRule(); |
| } |
| |
| //ParamDeclarationCS: |
| // name=UnrestrictedName ":" ownedType=TypeExpCS; |
| public QVTcoreBaseGrammarAccess.ParamDeclarationCSElements getParamDeclarationCSAccess() { |
| return gaQVTcoreBase.getParamDeclarationCSAccess(); |
| } |
| |
| public ParserRule getParamDeclarationCSRule() { |
| return getParamDeclarationCSAccess().getRule(); |
| } |
| |
| //PredicateCS: |
| // ownedCondition=ExpCS ";"; |
| public QVTcoreBaseGrammarAccess.PredicateCSElements getPredicateCSAccess() { |
| return gaQVTcoreBase.getPredicateCSAccess(); |
| } |
| |
| public ParserRule getPredicateCSRule() { |
| return getPredicateCSAccess().getRule(); |
| } |
| |
| ////Constraint ::= Predicate | Assignment |
| // //Predicate ::= BooleanOCLExpr |
| // |
| ////Assignement ::= [�default�] SlotOwnerOCLExpr�.�PropertyName �:=� ValueOCLExpr |
| // PredicateOrAssignmentCS returns |
| //AssignmentCS: |
| // default?="default"? target=ExpCS (":=" initialiser=ExpCS)? ";"; |
| public QVTcoreBaseGrammarAccess.PredicateOrAssignmentCSElements getPredicateOrAssignmentCSAccess() { |
| return gaQVTcoreBase.getPredicateOrAssignmentCSAccess(); |
| } |
| |
| public ParserRule getPredicateOrAssignmentCSRule() { |
| return getPredicateOrAssignmentCSAccess().getRule(); |
| } |
| |
| //QueryCS: |
| // "query" pathName=ScopeNameCS name=UnrestrictedName "(" (inputParamDeclaration+=ParamDeclarationCS ("," |
| // inputParamDeclaration+=ParamDeclarationCS)*)? ")" ":" ownedType=TypeExpCS (";" | "{" expression=ExpCS "}"); |
| public QVTcoreBaseGrammarAccess.QueryCSElements getQueryCSAccess() { |
| return gaQVTcoreBase.getQueryCSAccess(); |
| } |
| |
| public ParserRule getQueryCSRule() { |
| return getQueryCSAccess().getRule(); |
| } |
| |
| ////<query> ::= 'query' <PathNameCS> |
| // // '(' [<paramDeclaration> (',' <paramDeclaration>)*] ')' |
| // |
| //// ':' <TypeCS> |
| // // (';' | '{' <OCLExpressionCS> '}') |
| // ScopeNameCS returns base::PathNameCS: |
| // ownedPathElements+=FirstPathElementCS "::" (ownedPathElements+=NextPathElementCS "::")*; |
| public QVTcoreBaseGrammarAccess.ScopeNameCSElements getScopeNameCSAccess() { |
| return gaQVTcoreBase.getScopeNameCSAccess(); |
| } |
| |
| public ParserRule getScopeNameCSRule() { |
| return getScopeNameCSAccess().getRule(); |
| } |
| |
| //TransformationCS: |
| // "transformation" pathName=ScopeNameCS? name=UnreservedName "{" (directions+=DirectionCS ";")* "}"; |
| public QVTcoreBaseGrammarAccess.TransformationCSElements getTransformationCSAccess() { |
| return gaQVTcoreBase.getTransformationCSAccess(); |
| } |
| |
| public ParserRule getTransformationCSRule() { |
| return getTransformationCSAccess().getRule(); |
| } |
| |
| ////Variable := VariableName �:� TypeDeclaration |
| // UnrealizedVariableCS: |
| // name=UnrestrictedName (":" ownedType=TypeExpCS)? (":=" ownedInitExpression=ExpCS)?; |
| public QVTcoreBaseGrammarAccess.UnrealizedVariableCSElements getUnrealizedVariableCSAccess() { |
| return gaQVTcoreBase.getUnrealizedVariableCSAccess(); |
| } |
| |
| public ParserRule getUnrealizedVariableCSRule() { |
| return getUnrealizedVariableCSAccess().getRule(); |
| } |
| |
| ////RealizedVariable := �realized� VariableName �:� TypeDeclaration |
| // RealizedVariableCS: |
| // "realize" name=UnrestrictedName ":" ownedType=TypeExpCS; |
| public QVTcoreBaseGrammarAccess.RealizedVariableCSElements getRealizedVariableCSAccess() { |
| return gaQVTcoreBase.getRealizedVariableCSAccess(); |
| } |
| |
| public ParserRule getRealizedVariableCSRule() { |
| return getRealizedVariableCSAccess().getRule(); |
| } |
| |
| //UnnamedDomainCS returns DomainCS: |
| // {DomainCS} guardPattern=GuardPatternCS bottomPattern=BottomPatternCS; |
| public QVTcoreBaseGrammarAccess.UnnamedDomainCSElements getUnnamedDomainCSAccess() { |
| return gaQVTcoreBase.getUnnamedDomainCSAccess(); |
| } |
| |
| public ParserRule getUnnamedDomainCSRule() { |
| return getUnnamedDomainCSAccess().getRule(); |
| } |
| |
| ////| 'where' |
| // UnrestrictedName returns ecore::EString: |
| // EssentialOCLUnrestrictedName //| 'creation' |
| // //| 'default' |
| // //| 'deletion' |
| // //| 'include' |
| // | "check" | "enforce" | |
| // "import" | "imports" | "library" | "map" | "query" | "realize" | "refines" | "transformation" | "uses"; |
| public QVTcoreBaseGrammarAccess.UnrestrictedNameElements getUnrestrictedNameAccess() { |
| return gaQVTcoreBase.getUnrestrictedNameAccess(); |
| } |
| |
| public ParserRule getUnrestrictedNameRule() { |
| return getUnrestrictedNameAccess().getRule(); |
| } |
| |
| ////generate essentialOCLCST "http://www.eclipse.org/ocl/3.0.0/EssentialOCLCST" |
| // Model returns ContextCS: |
| // ownedExpression=ExpCS; |
| public EssentialOCLGrammarAccess.ModelElements getModelAccess() { |
| return gaQVTcoreBase.getModelAccess(); |
| } |
| |
| public ParserRule getModelRule() { |
| return getModelAccess().getRule(); |
| } |
| |
| /// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * / |
| //EssentialOCLReservedKeyword: |
| // "and" | "else" | "endif" | "if" | "implies" | "in" | "let" | "not" | "or" | "then" | "xor"; |
| public EssentialOCLGrammarAccess.EssentialOCLReservedKeywordElements getEssentialOCLReservedKeywordAccess() { |
| return gaQVTcoreBase.getEssentialOCLReservedKeywordAccess(); |
| } |
| |
| public ParserRule getEssentialOCLReservedKeywordRule() { |
| return getEssentialOCLReservedKeywordAccess().getRule(); |
| } |
| |
| /// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * / |
| //EssentialOCLUnaryOperatorName: |
| // "-" | "not"; |
| public EssentialOCLGrammarAccess.EssentialOCLUnaryOperatorNameElements getEssentialOCLUnaryOperatorNameAccess() { |
| return gaQVTcoreBase.getEssentialOCLUnaryOperatorNameAccess(); |
| } |
| |
| public ParserRule getEssentialOCLUnaryOperatorNameRule() { |
| return getEssentialOCLUnaryOperatorNameAccess().getRule(); |
| } |
| |
| /// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * / |
| //EssentialOCLInfixOperatorName: |
| // "*" | "/" | "+" | "-" | ">" | "<" | ">=" | "<=" | "=" | "<>" | "and" | "or" | "xor" | "implies"; |
| public EssentialOCLGrammarAccess.EssentialOCLInfixOperatorNameElements getEssentialOCLInfixOperatorNameAccess() { |
| return gaQVTcoreBase.getEssentialOCLInfixOperatorNameAccess(); |
| } |
| |
| public ParserRule getEssentialOCLInfixOperatorNameRule() { |
| return getEssentialOCLInfixOperatorNameAccess().getRule(); |
| } |
| |
| /// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * / |
| //EssentialOCLNavigationOperatorName: |
| // "." | "->" | "?." | "?->"; |
| public EssentialOCLGrammarAccess.EssentialOCLNavigationOperatorNameElements getEssentialOCLNavigationOperatorNameAccess() { |
| return gaQVTcoreBase.getEssentialOCLNavigationOperatorNameAccess(); |
| } |
| |
| public ParserRule getEssentialOCLNavigationOperatorNameRule() { |
| return getEssentialOCLNavigationOperatorNameAccess().getRule(); |
| } |
| |
| //BinaryOperatorName: |
| // InfixOperatorName | NavigationOperatorName; |
| public EssentialOCLGrammarAccess.BinaryOperatorNameElements getBinaryOperatorNameAccess() { |
| return gaQVTcoreBase.getBinaryOperatorNameAccess(); |
| } |
| |
| public ParserRule getBinaryOperatorNameRule() { |
| return getBinaryOperatorNameAccess().getRule(); |
| } |
| |
| //// Intended to be overrideable |
| // InfixOperatorName: |
| // EssentialOCLInfixOperatorName; |
| public EssentialOCLGrammarAccess.InfixOperatorNameElements getInfixOperatorNameAccess() { |
| return gaQVTcoreBase.getInfixOperatorNameAccess(); |
| } |
| |
| public ParserRule getInfixOperatorNameRule() { |
| return getInfixOperatorNameAccess().getRule(); |
| } |
| |
| //// Intended to be overrideable |
| // NavigationOperatorName: |
| // EssentialOCLNavigationOperatorName; |
| public EssentialOCLGrammarAccess.NavigationOperatorNameElements getNavigationOperatorNameAccess() { |
| return gaQVTcoreBase.getNavigationOperatorNameAccess(); |
| } |
| |
| public ParserRule getNavigationOperatorNameRule() { |
| return getNavigationOperatorNameAccess().getRule(); |
| } |
| |
| //// Intended to be overrideable |
| // UnaryOperatorName: |
| // EssentialOCLUnaryOperatorName; |
| public EssentialOCLGrammarAccess.UnaryOperatorNameElements getUnaryOperatorNameAccess() { |
| return gaQVTcoreBase.getUnaryOperatorNameAccess(); |
| } |
| |
| public ParserRule getUnaryOperatorNameRule() { |
| return getUnaryOperatorNameAccess().getRule(); |
| } |
| |
| ////--------------------------------------------------------------------- |
| // // Names |
| // |
| ////--------------------------------------------------------------------- |
| // |
| /// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * / |
| //EssentialOCLUnrestrictedName returns ecore::EString: |
| // Identifier; |
| public EssentialOCLGrammarAccess.EssentialOCLUnrestrictedNameElements getEssentialOCLUnrestrictedNameAccess() { |
| return gaQVTcoreBase.getEssentialOCLUnrestrictedNameAccess(); |
| } |
| |
| public ParserRule getEssentialOCLUnrestrictedNameRule() { |
| return getEssentialOCLUnrestrictedNameAccess().getRule(); |
| } |
| |
| /// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * / |
| //EssentialOCLUnreservedName returns ecore::EString: |
| // UnrestrictedName | CollectionTypeIdentifier | PrimitiveTypeIdentifier | "Tuple"; |
| public EssentialOCLGrammarAccess.EssentialOCLUnreservedNameElements getEssentialOCLUnreservedNameAccess() { |
| return gaQVTcoreBase.getEssentialOCLUnreservedNameAccess(); |
| } |
| |
| public ParserRule getEssentialOCLUnreservedNameRule() { |
| return getEssentialOCLUnreservedNameAccess().getRule(); |
| } |
| |
| //// Intended to be overridden |
| // UnreservedName returns ecore::EString: |
| // EssentialOCLUnreservedName; |
| public EssentialOCLGrammarAccess.UnreservedNameElements getUnreservedNameAccess() { |
| return gaQVTcoreBase.getUnreservedNameAccess(); |
| } |
| |
| public ParserRule getUnreservedNameRule() { |
| return getUnreservedNameAccess().getRule(); |
| } |
| |
| //URIPathNameCS returns base::PathNameCS: |
| // ownedPathElements+=URIFirstPathElementCS ("::" ownedPathElements+=NextPathElementCS)*; |
| public EssentialOCLGrammarAccess.URIPathNameCSElements getURIPathNameCSAccess() { |
| return gaQVTcoreBase.getURIPathNameCSAccess(); |
| } |
| |
| public ParserRule getURIPathNameCSRule() { |
| return getURIPathNameCSAccess().getRule(); |
| } |
| |
| //URIFirstPathElementCS returns base::PathElementCS: |
| // referredElement=[pivot::NamedElement|UnrestrictedName] | {base::PathElementWithURICS} |
| // referredElement=[pivot::Namespace|URI]; |
| public EssentialOCLGrammarAccess.URIFirstPathElementCSElements getURIFirstPathElementCSAccess() { |
| return gaQVTcoreBase.getURIFirstPathElementCSAccess(); |
| } |
| |
| public ParserRule getURIFirstPathElementCSRule() { |
| return getURIFirstPathElementCSAccess().getRule(); |
| } |
| |
| ////--------------------------------------------------------------------- |
| // // Types |
| // |
| ////--------------------------------------------------------------------- |
| // PrimitiveTypeIdentifier: |
| // "Boolean" | "Integer" | "Real" | "String" | "UnlimitedNatural" | "OclAny" | "OclInvalid" | "OclVoid"; |
| public EssentialOCLGrammarAccess.PrimitiveTypeIdentifierElements getPrimitiveTypeIdentifierAccess() { |
| return gaQVTcoreBase.getPrimitiveTypeIdentifierAccess(); |
| } |
| |
| public ParserRule getPrimitiveTypeIdentifierRule() { |
| return getPrimitiveTypeIdentifierAccess().getRule(); |
| } |
| |
| //PrimitiveTypeCS returns base::PrimitiveTypeRefCS: |
| // name=PrimitiveTypeIdentifier; |
| public EssentialOCLGrammarAccess.PrimitiveTypeCSElements getPrimitiveTypeCSAccess() { |
| return gaQVTcoreBase.getPrimitiveTypeCSAccess(); |
| } |
| |
| public ParserRule getPrimitiveTypeCSRule() { |
| return getPrimitiveTypeCSAccess().getRule(); |
| } |
| |
| //CollectionTypeIdentifier returns ecore::EString: |
| // "Set" | "Bag" | "Sequence" | "Collection" | "OrderedSet"; |
| public EssentialOCLGrammarAccess.CollectionTypeIdentifierElements getCollectionTypeIdentifierAccess() { |
| return gaQVTcoreBase.getCollectionTypeIdentifierAccess(); |
| } |
| |
| public ParserRule getCollectionTypeIdentifierRule() { |
| return getCollectionTypeIdentifierAccess().getRule(); |
| } |
| |
| //CollectionTypeCS: |
| // name=CollectionTypeIdentifier ("(" ownedType=TypeExpCS ")")?; |
| public EssentialOCLGrammarAccess.CollectionTypeCSElements getCollectionTypeCSAccess() { |
| return gaQVTcoreBase.getCollectionTypeCSAccess(); |
| } |
| |
| public ParserRule getCollectionTypeCSRule() { |
| return getCollectionTypeCSAccess().getRule(); |
| } |
| |
| //TupleTypeCS returns base::TupleTypeCS: |
| // name="Tuple" ("(" (ownedParts+=TuplePartCS ("," ownedParts+=TuplePartCS)*)? ")")?; |
| public EssentialOCLGrammarAccess.TupleTypeCSElements getTupleTypeCSAccess() { |
| return gaQVTcoreBase.getTupleTypeCSAccess(); |
| } |
| |
| public ParserRule getTupleTypeCSRule() { |
| return getTupleTypeCSAccess().getRule(); |
| } |
| |
| //TuplePartCS returns base::TuplePartCS: |
| // name=UnrestrictedName ":" ownedType=TypeExpCS; |
| public EssentialOCLGrammarAccess.TuplePartCSElements getTuplePartCSAccess() { |
| return gaQVTcoreBase.getTuplePartCSAccess(); |
| } |
| |
| public ParserRule getTuplePartCSRule() { |
| return getTuplePartCSAccess().getRule(); |
| } |
| |
| ////--------------------------------------------------------------------- |
| // // Literals |
| // |
| ////--------------------------------------------------------------------- |
| // CollectionLiteralExpCS: |
| // ownedType=CollectionTypeCS "{" (ownedParts+=CollectionLiteralPartCS ("," ownedParts+=CollectionLiteralPartCS)*)? "}"; |
| public EssentialOCLGrammarAccess.CollectionLiteralExpCSElements getCollectionLiteralExpCSAccess() { |
| return gaQVTcoreBase.getCollectionLiteralExpCSAccess(); |
| } |
| |
| public ParserRule getCollectionLiteralExpCSRule() { |
| return getCollectionLiteralExpCSAccess().getRule(); |
| } |
| |
| //CollectionLiteralPartCS: |
| // ownedExpression=ExpCS (".." ownedLastExpression=ExpCS)? | ownedExpression=PatternExpCS; |
| public EssentialOCLGrammarAccess.CollectionLiteralPartCSElements getCollectionLiteralPartCSAccess() { |
| return gaQVTcoreBase.getCollectionLiteralPartCSAccess(); |
| } |
| |
| public ParserRule getCollectionLiteralPartCSRule() { |
| return getCollectionLiteralPartCSAccess().getRule(); |
| } |
| |
| //CollectionPatternCS: |
| // ownedType=CollectionTypeCS "{" (ownedParts+=PatternExpCS ("," ownedParts+=PatternExpCS)* ("++" |
| // restVariableName=Identifier))? "}"; |
| public EssentialOCLGrammarAccess.CollectionPatternCSElements getCollectionPatternCSAccess() { |
| return gaQVTcoreBase.getCollectionPatternCSAccess(); |
| } |
| |
| public ParserRule getCollectionPatternCSRule() { |
| return getCollectionPatternCSAccess().getRule(); |
| } |
| |
| //// PatternPartCS |
| // ConstructorPartCS: |
| // referredProperty=[pivot::Property|UnrestrictedName] "=" ownedInitExpression=(ExpCS | PatternExpCS); |
| public EssentialOCLGrammarAccess.ConstructorPartCSElements getConstructorPartCSAccess() { |
| return gaQVTcoreBase.getConstructorPartCSAccess(); |
| } |
| |
| public ParserRule getConstructorPartCSRule() { |
| return getConstructorPartCSAccess().getRule(); |
| } |
| |
| //PatternExpCS: |
| // patternVariableName=UnrestrictedName? ":" ownedPatternType=TypeExpCS; |
| public EssentialOCLGrammarAccess.PatternExpCSElements getPatternExpCSAccess() { |
| return gaQVTcoreBase.getPatternExpCSAccess(); |
| } |
| |
| public ParserRule getPatternExpCSRule() { |
| return getPatternExpCSAccess().getRule(); |
| } |
| |
| //LambdaLiteralExpCS: |
| // "Lambda" "{" ownedExpressionCS=ExpCS "}"; |
| public EssentialOCLGrammarAccess.LambdaLiteralExpCSElements getLambdaLiteralExpCSAccess() { |
| return gaQVTcoreBase.getLambdaLiteralExpCSAccess(); |
| } |
| |
| public ParserRule getLambdaLiteralExpCSRule() { |
| return getLambdaLiteralExpCSAccess().getRule(); |
| } |
| |
| //PrimitiveLiteralExpCS: |
| // NumberLiteralExpCS | StringLiteralExpCS | BooleanLiteralExpCS | UnlimitedNaturalLiteralExpCS | InvalidLiteralExpCS | |
| // NullLiteralExpCS; |
| public EssentialOCLGrammarAccess.PrimitiveLiteralExpCSElements getPrimitiveLiteralExpCSAccess() { |
| return gaQVTcoreBase.getPrimitiveLiteralExpCSAccess(); |
| } |
| |
| public ParserRule getPrimitiveLiteralExpCSRule() { |
| return getPrimitiveLiteralExpCSAccess().getRule(); |
| } |
| |
| //TupleLiteralExpCS: |
| // "Tuple" "{" ownedParts+=TupleLiteralPartCS ("," ownedParts+=TupleLiteralPartCS)* "}"; |
| public EssentialOCLGrammarAccess.TupleLiteralExpCSElements getTupleLiteralExpCSAccess() { |
| return gaQVTcoreBase.getTupleLiteralExpCSAccess(); |
| } |
| |
| public ParserRule getTupleLiteralExpCSRule() { |
| return getTupleLiteralExpCSAccess().getRule(); |
| } |
| |
| //TupleLiteralPartCS: |
| // name=UnrestrictedName (":" ownedType=TypeExpCS)? "=" ownedInitExpression=ExpCS; |
| public EssentialOCLGrammarAccess.TupleLiteralPartCSElements getTupleLiteralPartCSAccess() { |
| return gaQVTcoreBase.getTupleLiteralPartCSAccess(); |
| } |
| |
| public ParserRule getTupleLiteralPartCSRule() { |
| return getTupleLiteralPartCSAccess().getRule(); |
| } |
| |
| //NumberLiteralExpCS: |
| // symbol=NUMBER_LITERAL; |
| public EssentialOCLGrammarAccess.NumberLiteralExpCSElements getNumberLiteralExpCSAccess() { |
| return gaQVTcoreBase.getNumberLiteralExpCSAccess(); |
| } |
| |
| public ParserRule getNumberLiteralExpCSRule() { |
| return getNumberLiteralExpCSAccess().getRule(); |
| } |
| |
| //StringLiteralExpCS: |
| // segments+=StringLiteral+; |
| public EssentialOCLGrammarAccess.StringLiteralExpCSElements getStringLiteralExpCSAccess() { |
| return gaQVTcoreBase.getStringLiteralExpCSAccess(); |
| } |
| |
| public ParserRule getStringLiteralExpCSRule() { |
| return getStringLiteralExpCSAccess().getRule(); |
| } |
| |
| //BooleanLiteralExpCS: |
| // symbol="true" | symbol="false"; |
| public EssentialOCLGrammarAccess.BooleanLiteralExpCSElements getBooleanLiteralExpCSAccess() { |
| return gaQVTcoreBase.getBooleanLiteralExpCSAccess(); |
| } |
| |
| public ParserRule getBooleanLiteralExpCSRule() { |
| return getBooleanLiteralExpCSAccess().getRule(); |
| } |
| |
| //UnlimitedNaturalLiteralExpCS: |
| // {UnlimitedNaturalLiteralExpCS} "*"; |
| public EssentialOCLGrammarAccess.UnlimitedNaturalLiteralExpCSElements getUnlimitedNaturalLiteralExpCSAccess() { |
| return gaQVTcoreBase.getUnlimitedNaturalLiteralExpCSAccess(); |
| } |
| |
| public ParserRule getUnlimitedNaturalLiteralExpCSRule() { |
| return getUnlimitedNaturalLiteralExpCSAccess().getRule(); |
| } |
| |
| //InvalidLiteralExpCS: |
| // {InvalidLiteralExpCS} "invalid"; |
| public EssentialOCLGrammarAccess.InvalidLiteralExpCSElements getInvalidLiteralExpCSAccess() { |
| return gaQVTcoreBase.getInvalidLiteralExpCSAccess(); |
| } |
| |
| public ParserRule getInvalidLiteralExpCSRule() { |
| return getInvalidLiteralExpCSAccess().getRule(); |
| } |
| |
| //NullLiteralExpCS: |
| // {NullLiteralExpCS} "null"; |
| public EssentialOCLGrammarAccess.NullLiteralExpCSElements getNullLiteralExpCSAccess() { |
| return gaQVTcoreBase.getNullLiteralExpCSAccess(); |
| } |
| |
| public ParserRule getNullLiteralExpCSRule() { |
| return getNullLiteralExpCSAccess().getRule(); |
| } |
| |
| //TypeLiteralCS returns base::TypedRefCS: |
| // PrimitiveTypeCS | CollectionTypeCS | TupleTypeCS; |
| public EssentialOCLGrammarAccess.TypeLiteralCSElements getTypeLiteralCSAccess() { |
| return gaQVTcoreBase.getTypeLiteralCSAccess(); |
| } |
| |
| public ParserRule getTypeLiteralCSRule() { |
| return getTypeLiteralCSAccess().getRule(); |
| } |
| |
| //TypeLiteralWithMultiplicityCS returns base::TypedRefCS: |
| // TypeLiteralCS ownedMultiplicity=MultiplicityCS?; |
| public EssentialOCLGrammarAccess.TypeLiteralWithMultiplicityCSElements getTypeLiteralWithMultiplicityCSAccess() { |
| return gaQVTcoreBase.getTypeLiteralWithMultiplicityCSAccess(); |
| } |
| |
| public ParserRule getTypeLiteralWithMultiplicityCSRule() { |
| return getTypeLiteralWithMultiplicityCSAccess().getRule(); |
| } |
| |
| //TypeLiteralExpCS: |
| // ownedType=TypeLiteralWithMultiplicityCS; |
| public EssentialOCLGrammarAccess.TypeLiteralExpCSElements getTypeLiteralExpCSAccess() { |
| return gaQVTcoreBase.getTypeLiteralExpCSAccess(); |
| } |
| |
| public ParserRule getTypeLiteralExpCSRule() { |
| return getTypeLiteralExpCSAccess().getRule(); |
| } |
| |
| //TypeNameExpCS: |
| // ownedPathName=PathNameCS (ownedCurlyBracketedClause=CurlyBracketedClauseCS ("{" ownedPatternGuard=ExpCS "}")?)?; |
| public EssentialOCLGrammarAccess.TypeNameExpCSElements getTypeNameExpCSAccess() { |
| return gaQVTcoreBase.getTypeNameExpCSAccess(); |
| } |
| |
| public ParserRule getTypeNameExpCSRule() { |
| return getTypeNameExpCSAccess().getRule(); |
| } |
| |
| //TypeExpCS returns base::TypedRefCS: |
| // (TypeNameExpCS | TypeLiteralCS | CollectionPatternCS) ownedMultiplicity=MultiplicityCS?; |
| public EssentialOCLGrammarAccess.TypeExpCSElements getTypeExpCSAccess() { |
| return gaQVTcoreBase.getTypeExpCSAccess(); |
| } |
| |
| public ParserRule getTypeExpCSRule() { |
| return getTypeExpCSAccess().getRule(); |
| } |
| |
| ////--------------------------------------------------------------------- |
| // // Expressions |
| // |
| ////--------------------------------------------------------------------- |
| // |
| //// An ExpCS permits a LetExpCS only in the final term to ensure |
| // |
| //// that let is right associative, whereas infix operators are left associative. |
| // |
| //// a = 64 / 16 / let b : Integer in 8 / let c : Integer in 4 |
| // // is |
| // |
| //// a = (64 / 16) / (let b : Integer in 8 / (let c : Integer in 4 )) |
| // |
| /// * An expression elaborates a prefixed expression with zero or more binary operator and expression suffixes. |
| // * An optionally prefixed let expression is permitted except when suffixed with further expressions.* / |
| //ExpCS: |
| // PrefixedPrimaryExpCS ({InfixExpCS.ownedLeft=current} name=BinaryOperatorName ownedRight=ExpCS)? |
| // // ({InfixExpCS} ownedSource=PrefixedExpCS name=BinaryOperatorName ownedArgument=ExpCS) |
| // //| PrefixedExpCS |
| // |
| // // the above takes exponential or worse time for backtracking, below is fast |
| // | PrefixedLetExpCS; |
| public EssentialOCLGrammarAccess.ExpCSElements getExpCSAccess() { |
| return gaQVTcoreBase.getExpCSAccess(); |
| } |
| |
| public ParserRule getExpCSRule() { |
| return getExpCSAccess().getRule(); |
| } |
| |
| /// * A prefixed let expression elaborates a let expression with zero or more unary prefix operators. * / PrefixedLetExpCS |
| //returns ExpCS: |
| // {PrefixExpCS} name=UnaryOperatorName ownedRight=PrefixedLetExpCS | LetExpCS; |
| public EssentialOCLGrammarAccess.PrefixedLetExpCSElements getPrefixedLetExpCSAccess() { |
| return gaQVTcoreBase.getPrefixedLetExpCSAccess(); |
| } |
| |
| public ParserRule getPrefixedLetExpCSRule() { |
| return getPrefixedLetExpCSAccess().getRule(); |
| } |
| |
| /// * A prefixed primary expression elaborates a primary expression with zero or more unary prefix operators. * / |
| //PrefixedPrimaryExpCS returns ExpCS: |
| // {PrefixExpCS} name=UnaryOperatorName ownedRight=PrefixedPrimaryExpCS | PrimaryExpCS; |
| public EssentialOCLGrammarAccess.PrefixedPrimaryExpCSElements getPrefixedPrimaryExpCSAccess() { |
| return gaQVTcoreBase.getPrefixedPrimaryExpCSAccess(); |
| } |
| |
| public ParserRule getPrefixedPrimaryExpCSRule() { |
| return getPrefixedPrimaryExpCSAccess().getRule(); |
| } |
| |
| /// * A primary expression identifies the basic expressions from which more complex expressions may be constructed. * / |
| //PrimaryExpCS returns ExpCS: |
| // NestedExpCS | IfExpCS | SelfExpCS | PrimitiveLiteralExpCS | TupleLiteralExpCS | CollectionLiteralExpCS | |
| // LambdaLiteralExpCS | TypeLiteralExpCS | NameExpCS; |
| public EssentialOCLGrammarAccess.PrimaryExpCSElements getPrimaryExpCSAccess() { |
| return gaQVTcoreBase.getPrimaryExpCSAccess(); |
| } |
| |
| public ParserRule getPrimaryExpCSRule() { |
| return getPrimaryExpCSAccess().getRule(); |
| } |
| |
| /// * A name expression is a generalised rule for expressions that start with a name and which may be followed by square, round or |
| // * curly bracket clauses and optionally an @pre as well.* / |
| //NameExpCS: |
| // ownedPathName=PathNameCS ownedSquareBracketedClauses+=SquareBracketedClauseCS* |
| // ownedRoundBracketedClause=RoundBracketedClauseCS? ownedCurlyBracketedClause=CurlyBracketedClauseCS? (isPre?="@" |
| // "pre")?; |
| public EssentialOCLGrammarAccess.NameExpCSElements getNameExpCSAccess() { |
| return gaQVTcoreBase.getNameExpCSAccess(); |
| } |
| |
| public ParserRule getNameExpCSRule() { |
| return getNameExpCSAccess().getRule(); |
| } |
| |
| /// * A curly bracket clause is a generalized rule for the literal arguments of collections, maps, tuples and type constructors.* / |
| //CurlyBracketedClauseCS: |
| // {CurlyBracketedClauseCS} "{" ((ownedParts+=ConstructorPartCS ("," ownedParts+=ConstructorPartCS)*)? | |
| // value=StringLiteral) "}"; |
| public EssentialOCLGrammarAccess.CurlyBracketedClauseCSElements getCurlyBracketedClauseCSAccess() { |
| return gaQVTcoreBase.getCurlyBracketedClauseCSAccess(); |
| } |
| |
| public ParserRule getCurlyBracketedClauseCSRule() { |
| return getCurlyBracketedClauseCSAccess().getRule(); |
| } |
| |
| /// * A curly bracket clause is a generalized rule for template specialisations and operations arguments.* / |
| //RoundBracketedClauseCS: |
| // {RoundBracketedClauseCS} "(" (ownedArguments+=NavigatingArgCS ownedArguments+=NavigatingCommaArgCS* |
| // (ownedArguments+=NavigatingSemiArgCS ownedArguments+=NavigatingCommaArgCS*)? (ownedArguments+=NavigatingBarArgCS |
| // ownedArguments+=NavigatingCommaArgCS*)*)? ")"; |
| public EssentialOCLGrammarAccess.RoundBracketedClauseCSElements getRoundBracketedClauseCSAccess() { |
| return gaQVTcoreBase.getRoundBracketedClauseCSAccess(); |
| } |
| |
| public ParserRule getRoundBracketedClauseCSRule() { |
| return getRoundBracketedClauseCSAccess().getRule(); |
| } |
| |
| /// * A square bracket clause is a generalized rule for association class qualifiers and roles.* / SquareBracketedClauseCS: |
| // "[" ownedTerms+=ExpCS ("," ownedTerms+=ExpCS)* "]"; |
| public EssentialOCLGrammarAccess.SquareBracketedClauseCSElements getSquareBracketedClauseCSAccess() { |
| return gaQVTcoreBase.getSquareBracketedClauseCSAccess(); |
| } |
| |
| public ParserRule getSquareBracketedClauseCSRule() { |
| return getSquareBracketedClauseCSAccess().getRule(); |
| } |
| |
| /// * A navigating argument is a generalized rule for the first argument in a round bracket clause. This is typically the first operation |
| // * parameter or an iterator. * / |
| //// Type-less init is an illegal infix expression |
| // NavigatingArgCS: |
| // ownedNameExpression=NavigatingArgExpCS (":" ownedType=TypeExpCS ("=" ownedInitExpression=ExpCS)? | "in" |
| // ownedInitExpression=ExpCS)? | ":" ownedType=TypeExpCS; |
| public EssentialOCLGrammarAccess.NavigatingArgCSElements getNavigatingArgCSAccess() { |
| return gaQVTcoreBase.getNavigatingArgCSAccess(); |
| } |
| |
| public ParserRule getNavigatingArgCSRule() { |
| return getNavigatingArgCSAccess().getRule(); |
| } |
| |
| /// * A navigating bar argument is a generalized rule for a bar-prefixed argument in a round bracket clause. This is typically the body of an iteration. * / |
| //// Type-less init is an illegal infix expression |
| // NavigatingBarArgCS returns NavigatingArgCS: |
| // prefix="|" ownedNameExpression=NavigatingArgExpCS (":" ownedType=TypeExpCS ("=" ownedInitExpression=ExpCS)?)?; |
| public EssentialOCLGrammarAccess.NavigatingBarArgCSElements getNavigatingBarArgCSAccess() { |
| return gaQVTcoreBase.getNavigatingBarArgCSAccess(); |
| } |
| |
| public ParserRule getNavigatingBarArgCSRule() { |
| return getNavigatingBarArgCSAccess().getRule(); |
| } |
| |
| /// * A navigating comma argument is a generalized rule for non-first argument in a round bracket clause. These are typically non-first operation |
| // * parameters or a second iterator. * / |
| //// Type-less init is an illegal infix expression |
| // NavigatingCommaArgCS returns NavigatingArgCS: |
| // prefix="," ownedNameExpression=NavigatingArgExpCS (":" ownedType=TypeExpCS ("=" ownedInitExpression=ExpCS)? | "in" |
| // ownedInitExpression=ExpCS)?; |
| public EssentialOCLGrammarAccess.NavigatingCommaArgCSElements getNavigatingCommaArgCSAccess() { |
| return gaQVTcoreBase.getNavigatingCommaArgCSAccess(); |
| } |
| |
| public ParserRule getNavigatingCommaArgCSRule() { |
| return getNavigatingCommaArgCSAccess().getRule(); |
| } |
| |
| /// * A navigating semi argument is a generalized rule for a semicolon prefixed argument in a round bracket clause. This is typically an iterate accumulator. * / |
| //// Type-less init is an illegal infix expression |
| // NavigatingSemiArgCS returns NavigatingArgCS: |
| // prefix=";" ownedNameExpression=NavigatingArgExpCS (":" ownedType=TypeExpCS ("=" ownedInitExpression=ExpCS)?)?; |
| public EssentialOCLGrammarAccess.NavigatingSemiArgCSElements getNavigatingSemiArgCSAccess() { |
| return gaQVTcoreBase.getNavigatingSemiArgCSAccess(); |
| } |
| |
| public ParserRule getNavigatingSemiArgCSRule() { |
| return getNavigatingSemiArgCSAccess().getRule(); |
| } |
| |
| //// Intended to be overridden |
| // // '?' -- defined by Complete OCL |
| // NavigatingArgExpCS returns ExpCS: |
| // ExpCS; |
| public EssentialOCLGrammarAccess.NavigatingArgExpCSElements getNavigatingArgExpCSAccess() { |
| return gaQVTcoreBase.getNavigatingArgExpCSAccess(); |
| } |
| |
| public ParserRule getNavigatingArgExpCSRule() { |
| return getNavigatingArgExpCSAccess().getRule(); |
| } |
| |
| //IfExpCS: |
| // "if" ownedCondition=(ExpCS | PatternExpCS) "then" ownedThenExpression=ExpCS // ifThenExpressions+=IfThenExpCS |
| // |
| // ownedIfThenExpressions+=ElseIfThenExpCS* "else" ownedElseExpression=ExpCS "endif"; |
| public EssentialOCLGrammarAccess.IfExpCSElements getIfExpCSAccess() { |
| return gaQVTcoreBase.getIfExpCSAccess(); |
| } |
| |
| public ParserRule getIfExpCSRule() { |
| return getIfExpCSAccess().getRule(); |
| } |
| |
| ////IfThenExpCS returns IfThenExpCS: |
| // // 'if' condition=ExpCS |
| // // 'then' thenExpression=ExpCS |
| // //; |
| // ElseIfThenExpCS |
| //returns IfThenExpCS: |
| // "elseif" ownedCondition=ExpCS "then" ownedThenExpression=ExpCS; |
| public EssentialOCLGrammarAccess.ElseIfThenExpCSElements getElseIfThenExpCSAccess() { |
| return gaQVTcoreBase.getElseIfThenExpCSAccess(); |
| } |
| |
| public ParserRule getElseIfThenExpCSRule() { |
| return getElseIfThenExpCSAccess().getRule(); |
| } |
| |
| //LetExpCS: |
| // "let" ownedVariables+=LetVariableCS ("," ownedVariables+=LetVariableCS)* "in" ownedInExpression=ExpCS; |
| public EssentialOCLGrammarAccess.LetExpCSElements getLetExpCSAccess() { |
| return gaQVTcoreBase.getLetExpCSAccess(); |
| } |
| |
| public ParserRule getLetExpCSRule() { |
| return getLetExpCSAccess().getRule(); |
| } |
| |
| //LetVariableCS: |
| // name=UnrestrictedName ownedRoundBracketedClause=RoundBracketedClauseCS? (":" ownedType=TypeExpCS)? "=" |
| // ownedInitExpression=ExpCS; |
| public EssentialOCLGrammarAccess.LetVariableCSElements getLetVariableCSAccess() { |
| return gaQVTcoreBase.getLetVariableCSAccess(); |
| } |
| |
| public ParserRule getLetVariableCSRule() { |
| return getLetVariableCSAccess().getRule(); |
| } |
| |
| //NestedExpCS: |
| // "(" ownedExpression=ExpCS ")"; |
| public EssentialOCLGrammarAccess.NestedExpCSElements getNestedExpCSAccess() { |
| return gaQVTcoreBase.getNestedExpCSAccess(); |
| } |
| |
| public ParserRule getNestedExpCSRule() { |
| return getNestedExpCSAccess().getRule(); |
| } |
| |
| //SelfExpCS: |
| // {SelfExpCS} "self"; |
| public EssentialOCLGrammarAccess.SelfExpCSElements getSelfExpCSAccess() { |
| return gaQVTcoreBase.getSelfExpCSAccess(); |
| } |
| |
| public ParserRule getSelfExpCSRule() { |
| return getSelfExpCSAccess().getRule(); |
| } |
| |
| //MultiplicityBoundsCS: |
| // lowerBound=LOWER (".." upperBound=UPPER)?; |
| public BaseGrammarAccess.MultiplicityBoundsCSElements getMultiplicityBoundsCSAccess() { |
| return gaQVTcoreBase.getMultiplicityBoundsCSAccess(); |
| } |
| |
| public ParserRule getMultiplicityBoundsCSRule() { |
| return getMultiplicityBoundsCSAccess().getRule(); |
| } |
| |
| //MultiplicityCS: |
| // "[" (MultiplicityBoundsCS | MultiplicityStringCS) "]"; |
| public BaseGrammarAccess.MultiplicityCSElements getMultiplicityCSAccess() { |
| return gaQVTcoreBase.getMultiplicityCSAccess(); |
| } |
| |
| public ParserRule getMultiplicityCSRule() { |
| return getMultiplicityCSAccess().getRule(); |
| } |
| |
| //MultiplicityStringCS: |
| // stringBounds=("*" | "+" | "?"); |
| public BaseGrammarAccess.MultiplicityStringCSElements getMultiplicityStringCSAccess() { |
| return gaQVTcoreBase.getMultiplicityStringCSAccess(); |
| } |
| |
| public ParserRule getMultiplicityStringCSRule() { |
| return getMultiplicityStringCSAccess().getRule(); |
| } |
| |
| //PathNameCS: |
| // ownedPathElements+=FirstPathElementCS ("::" ownedPathElements+=NextPathElementCS)*; |
| public BaseGrammarAccess.PathNameCSElements getPathNameCSAccess() { |
| return gaQVTcoreBase.getPathNameCSAccess(); |
| } |
| |
| public ParserRule getPathNameCSRule() { |
| return getPathNameCSAccess().getRule(); |
| } |
| |
| //FirstPathElementCS returns PathElementCS: |
| // referredElement=[pivot::NamedElement|UnrestrictedName]; |
| public BaseGrammarAccess.FirstPathElementCSElements getFirstPathElementCSAccess() { |
| return gaQVTcoreBase.getFirstPathElementCSAccess(); |
| } |
| |
| public ParserRule getFirstPathElementCSRule() { |
| return getFirstPathElementCSAccess().getRule(); |
| } |
| |
| //NextPathElementCS returns PathElementCS: |
| // referredElement=[pivot::NamedElement|UnreservedName]; |
| public BaseGrammarAccess.NextPathElementCSElements getNextPathElementCSAccess() { |
| return gaQVTcoreBase.getNextPathElementCSAccess(); |
| } |
| |
| public ParserRule getNextPathElementCSRule() { |
| return getNextPathElementCSAccess().getRule(); |
| } |
| |
| //TemplateBindingCS: |
| // "(" ownedSubstitutions+=TemplateParameterSubstitutionCS ("," ownedSubstitutions+=TemplateParameterSubstitutionCS)* |
| // ")"; |
| public BaseGrammarAccess.TemplateBindingCSElements getTemplateBindingCSAccess() { |
| return gaQVTcoreBase.getTemplateBindingCSAccess(); |
| } |
| |
| public ParserRule getTemplateBindingCSRule() { |
| return getTemplateBindingCSAccess().getRule(); |
| } |
| |
| //TemplateParameterSubstitutionCS: |
| // ownedActualParameter=TypeRefCS; |
| public BaseGrammarAccess.TemplateParameterSubstitutionCSElements getTemplateParameterSubstitutionCSAccess() { |
| return gaQVTcoreBase.getTemplateParameterSubstitutionCSAccess(); |
| } |
| |
| public ParserRule getTemplateParameterSubstitutionCSRule() { |
| return getTemplateParameterSubstitutionCSAccess().getRule(); |
| } |
| |
| //TemplateSignatureCS: |
| // "(" ownedParameters+=TypeParameterCS ("," ownedParameters+=TypeParameterCS)* ")"; |
| public BaseGrammarAccess.TemplateSignatureCSElements getTemplateSignatureCSAccess() { |
| return gaQVTcoreBase.getTemplateSignatureCSAccess(); |
| } |
| |
| public ParserRule getTemplateSignatureCSRule() { |
| return getTemplateSignatureCSAccess().getRule(); |
| } |
| |
| //TypeParameterCS: |
| // name=UnrestrictedName ("extends" ownedExtends+=TypedRefCS ("&&" ownedExtends+=TypedRefCS)* | "super" |
| // ownedSuper=TypedRefCS)?; |
| public BaseGrammarAccess.TypeParameterCSElements getTypeParameterCSAccess() { |
| return gaQVTcoreBase.getTypeParameterCSAccess(); |
| } |
| |
| public ParserRule getTypeParameterCSRule() { |
| return getTypeParameterCSAccess().getRule(); |
| } |
| |
| //TypeRefCS: |
| // TypedRefCS | WildcardTypeRefCS; |
| public BaseGrammarAccess.TypeRefCSElements getTypeRefCSAccess() { |
| return gaQVTcoreBase.getTypeRefCSAccess(); |
| } |
| |
| public ParserRule getTypeRefCSRule() { |
| return getTypeRefCSAccess().getRule(); |
| } |
| |
| //TypedRefCS: |
| // TypedTypeRefCS; |
| public BaseGrammarAccess.TypedRefCSElements getTypedRefCSAccess() { |
| return gaQVTcoreBase.getTypedRefCSAccess(); |
| } |
| |
| public ParserRule getTypedRefCSRule() { |
| return getTypedRefCSAccess().getRule(); |
| } |
| |
| //TypedTypeRefCS: |
| // ownedPathName=PathNameCS ownedBinding=TemplateBindingCS?; |
| public BaseGrammarAccess.TypedTypeRefCSElements getTypedTypeRefCSAccess() { |
| return gaQVTcoreBase.getTypedTypeRefCSAccess(); |
| } |
| |
| public ParserRule getTypedTypeRefCSRule() { |
| return getTypedTypeRefCSAccess().getRule(); |
| } |
| |
| //WildcardTypeRefCS: |
| // {WildcardTypeRefCS} "?" ("extends" ownedExtends=TypedRefCS | "super" ownedSuper=TypedRefCS)?; |
| public BaseGrammarAccess.WildcardTypeRefCSElements getWildcardTypeRefCSAccess() { |
| return gaQVTcoreBase.getWildcardTypeRefCSAccess(); |
| } |
| |
| public ParserRule getWildcardTypeRefCSRule() { |
| return getWildcardTypeRefCSAccess().getRule(); |
| } |
| |
| //ID: |
| // SIMPLE_ID | ESCAPED_ID; |
| public BaseGrammarAccess.IDElements getIDAccess() { |
| return gaQVTcoreBase.getIDAccess(); |
| } |
| |
| public ParserRule getIDRule() { |
| return getIDAccess().getRule(); |
| } |
| |
| //Identifier: |
| // ID; |
| public BaseGrammarAccess.IdentifierElements getIdentifierAccess() { |
| return gaQVTcoreBase.getIdentifierAccess(); |
| } |
| |
| public ParserRule getIdentifierRule() { |
| return getIdentifierAccess().getRule(); |
| } |
| |
| /// * A lowerbounded integer is used to define the lowerbound of a collection multiplicity. The value may not be the unlimited value. * / |
| //LOWER returns ecore::EInt: |
| // INT; |
| public BaseGrammarAccess.LOWERElements getLOWERAccess() { |
| return gaQVTcoreBase.getLOWERAccess(); |
| } |
| |
| public ParserRule getLOWERRule() { |
| return getLOWERAccess().getRule(); |
| } |
| |
| /// * A number may be an integer or floating point value. The declaration here appears to be that for just an integer. This is to avoid |
| // * lookahead conflicts in simple lexers between a dot within a floating point number and the dot-dot in a CollectionLiteralPartCS. A |
| // * practical implementation should give high priority to a successful parse of INT ('.' INT)? (('e' | 'E') ('+' | '-')? INT)? than |
| // * to the unsuccessful partial parse of INT '..'. The type of the INT terminal is String to allow the floating point syntax to be used. |
| // * / |
| //// Not terminal to allow parser backtracking to sort out "5..7" |
| // |
| //// EssentialOCLTokenSource pieces this together ('.' INT)? (('e' | 'E') ('+' | '-')? INT)?; |
| // NUMBER_LITERAL returns |
| //BigNumber: |
| // INT; |
| public BaseGrammarAccess.NUMBER_LITERALElements getNUMBER_LITERALAccess() { |
| return gaQVTcoreBase.getNUMBER_LITERALAccess(); |
| } |
| |
| public ParserRule getNUMBER_LITERALRule() { |
| return getNUMBER_LITERALAccess().getRule(); |
| } |
| |
| //StringLiteral: |
| // SINGLE_QUOTED_STRING; |
| public BaseGrammarAccess.StringLiteralElements getStringLiteralAccess() { |
| return gaQVTcoreBase.getStringLiteralAccess(); |
| } |
| |
| public ParserRule getStringLiteralRule() { |
| return getStringLiteralAccess().getRule(); |
| } |
| |
| /// * An upperbounded integer is used to define the upperbound of a collection multiplicity. The value may be the unlimited value. * / |
| //UPPER returns ecore::EInt: |
| // INT | "*"; |
| public BaseGrammarAccess.UPPERElements getUPPERAccess() { |
| return gaQVTcoreBase.getUPPERAccess(); |
| } |
| |
| public ParserRule getUPPERRule() { |
| return getUPPERAccess().getRule(); |
| } |
| |
| //URI: |
| // SINGLE_QUOTED_STRING; |
| public BaseGrammarAccess.URIElements getURIAccess() { |
| return gaQVTcoreBase.getURIAccess(); |
| } |
| |
| public ParserRule getURIRule() { |
| return getURIAccess().getRule(); |
| } |
| |
| //terminal fragment ESCAPED_CHARACTER: |
| // "\\" ("b" | "t" | "n" | "f" | "r" | "u" | "\"" | "\'" | "\\"); |
| public TerminalRule getESCAPED_CHARACTERRule() { |
| return gaQVTcoreBase.getESCAPED_CHARACTERRule(); |
| } |
| |
| //terminal fragment LETTER_CHARACTER: |
| // "a".."z" | "A".."Z" | "_"; |
| public TerminalRule getLETTER_CHARACTERRule() { |
| return gaQVTcoreBase.getLETTER_CHARACTERRule(); |
| } |
| |
| //terminal DOUBLE_QUOTED_STRING: |
| // "\"" (ESCAPED_CHARACTER | !("\\" | "\""))* "\""; |
| public TerminalRule getDOUBLE_QUOTED_STRINGRule() { |
| return gaQVTcoreBase.getDOUBLE_QUOTED_STRINGRule(); |
| } |
| |
| //terminal SINGLE_QUOTED_STRING: |
| // "\'" (ESCAPED_CHARACTER | !("\\" | "\'"))* "\'"; |
| public TerminalRule getSINGLE_QUOTED_STRINGRule() { |
| return gaQVTcoreBase.getSINGLE_QUOTED_STRINGRule(); |
| } |
| |
| //terminal ML_SINGLE_QUOTED_STRING: |
| // "/\'"->"\'/"; |
| public TerminalRule getML_SINGLE_QUOTED_STRINGRule() { |
| return gaQVTcoreBase.getML_SINGLE_QUOTED_STRINGRule(); |
| } |
| |
| //terminal SIMPLE_ID: |
| // LETTER_CHARACTER (LETTER_CHARACTER | "0".."9")*; |
| public TerminalRule getSIMPLE_IDRule() { |
| return gaQVTcoreBase.getSIMPLE_IDRule(); |
| } |
| |
| //terminal ESCAPED_ID: |
| // "_" SINGLE_QUOTED_STRING; |
| public TerminalRule getESCAPED_IDRule() { |
| return gaQVTcoreBase.getESCAPED_IDRule(); |
| } |
| |
| //// String to allow diverse re-use |
| // // multiple leading zeroes occur as floating point fractional part |
| // terminal INT: |
| // "0".."9"+; |
| public TerminalRule getINTRule() { |
| return gaQVTcoreBase.getINTRule(); |
| } |
| |
| /// * A multi-line comment supports a comment that may span more than one line using familiar slash-star...star-slash comment delimiters * / |
| //terminal ML_COMMENT: |
| // "/ *"->"* /"; |
| public TerminalRule getML_COMMENTRule() { |
| return gaQVTcoreBase.getML_COMMENTRule(); |
| } |
| |
| /// * A single-line comment supports a comment that terminates at the end of the line * / terminal SL_COMMENT: |
| // "--" !("\n" | "\r")* ("\r"? "\n")?; |
| public TerminalRule getSL_COMMENTRule() { |
| return gaQVTcoreBase.getSL_COMMENTRule(); |
| } |
| |
| /// * Whitespace may occur between any pair of tokens * / terminal WS: |
| // (" " | "\t" | "\r" | "\n")+; |
| public TerminalRule getWSRule() { |
| return gaQVTcoreBase.getWSRule(); |
| } |
| |
| //terminal ANY_OTHER: |
| // .; |
| public TerminalRule getANY_OTHERRule() { |
| return gaQVTcoreBase.getANY_OTHERRule(); |
| } |
| } |