| package org.eclipse.ocl.xtext.oclinecore.parser.antlr.internal; |
| |
| import org.eclipse.xtext.*; |
| import org.eclipse.xtext.parser.*; |
| import org.eclipse.xtext.parser.impl.*; |
| import org.eclipse.emf.ecore.util.EcoreUtil; |
| import org.eclipse.emf.ecore.EObject; |
| import org.eclipse.xtext.parser.antlr.AbstractInternalAntlrParser; |
| import org.eclipse.xtext.parser.antlr.XtextTokenStream; |
| import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens; |
| import org.eclipse.xtext.parser.antlr.AntlrDatatypeRuleToken; |
| import org.eclipse.ocl.xtext.oclinecore.services.OCLinEcoreGrammarAccess; |
| |
| |
| |
| import org.antlr.runtime.*; |
| import java.util.Stack; |
| import java.util.List; |
| import java.util.ArrayList; |
| import java.util.Map; |
| import java.util.HashMap; |
| /******************************************************************************* |
| * Copyright (c) 2011, 2019 Willink Transformations and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v2.0 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/epl-v20.html |
| * |
| * Contributors: |
| * E.D.Willink - initial API and implementation |
| *******************************************************************************/ |
| @SuppressWarnings("all") |
| public class InternalOCLinEcoreParser extends AbstractInternalAntlrParser { |
| public static final String[] tokenNames = new String[] { |
| "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_INT", "RULE_SINGLE_QUOTED_STRING", "RULE_ML_SINGLE_QUOTED_STRING", "RULE_UNQUOTED_STRING", "RULE_SIMPLE_ID", "RULE_ESCAPED_ID", "RULE_ESCAPED_CHARACTER", "RULE_LETTER_CHARACTER", "RULE_DOUBLE_QUOTED_STRING", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'module'", "'-'", "'abstract'", "'attribute'", "'body'", "'callable'", "'class'", "'composes'", "'datatype'", "'definition'", "'derivation'", "'derived'", "'enum'", "'extends'", "'id'", "'import'", "'initial'", "'interface'", "'key'", "'library'", "'operation'", "'ordered'", "'package'", "'postcondition'", "'precondition'", "'primitive'", "'property'", "'readonly'", "'reference'", "'resolve'", "'static'", "'throws'", "'transient'", "'unique'", "'unsettable'", "'volatile'", "'invariant'", "'('", "')'", "':'", "';'", "'annotation'", "','", "'{'", "'}'", "'='", "'!derived'", "'!id'", "'!ordered'", "'!readonly'", "'!transient'", "'!unique'", "'!unsettable'", "'!volatile'", "'serializable'", "'!serializable'", "'documentation'", "'literal'", "'::*'", "'opposite'", "'#'", "'!composes'", "'!resolve'", "'sysml'", "'<'", "'>'", "'not'", "'*'", "'/'", "'+'", "'>='", "'<='", "'<>'", "'and'", "'or'", "'xor'", "'implies'", "'.'", "'->'", "'?.'", "'?->'", "'Map'", "'Tuple'", "'::'", "'Boolean'", "'Integer'", "'Real'", "'String'", "'UnlimitedNatural'", "'OclAny'", "'OclInvalid'", "'OclVoid'", "'Set'", "'Bag'", "'Sequence'", "'Collection'", "'OrderedSet'", "'..'", "'++'", "'Lambda'", "'<-'", "'true'", "'false'", "'invalid'", "'null'", "'@'", "'pre'", "'['", "']'", "'in'", "'|'", "'if'", "'then'", "'else'", "'endif'", "'elseif'", "'let'", "'self'", "'|?'", "'|1'", "'?'", "'&&'" |
| }; |
| public static final int T__50=50; |
| public static final int T__59=59; |
| public static final int T__55=55; |
| public static final int T__56=56; |
| public static final int T__57=57; |
| public static final int T__58=58; |
| public static final int T__51=51; |
| public static final int T__137=137; |
| public static final int T__52=52; |
| public static final int T__136=136; |
| public static final int T__53=53; |
| public static final int T__54=54; |
| public static final int T__138=138; |
| public static final int T__133=133; |
| public static final int T__132=132; |
| public static final int T__60=60; |
| public static final int T__135=135; |
| public static final int T__61=61; |
| public static final int T__134=134; |
| public static final int T__131=131; |
| public static final int T__130=130; |
| public static final int RULE_INT=4; |
| public static final int T__66=66; |
| public static final int RULE_ML_COMMENT=13; |
| public static final int T__67=67; |
| public static final int T__129=129; |
| public static final int T__68=68; |
| public static final int T__69=69; |
| public static final int T__62=62; |
| public static final int T__126=126; |
| public static final int T__63=63; |
| public static final int T__125=125; |
| public static final int T__64=64; |
| public static final int T__128=128; |
| public static final int T__65=65; |
| public static final int T__127=127; |
| public static final int T__37=37; |
| public static final int T__38=38; |
| public static final int T__39=39; |
| public static final int T__33=33; |
| public static final int T__34=34; |
| public static final int T__35=35; |
| public static final int T__36=36; |
| public static final int T__30=30; |
| public static final int T__31=31; |
| public static final int T__32=32; |
| public static final int RULE_SINGLE_QUOTED_STRING=5; |
| public static final int T__48=48; |
| public static final int T__49=49; |
| public static final int RULE_DOUBLE_QUOTED_STRING=12; |
| public static final int T__44=44; |
| public static final int T__45=45; |
| public static final int T__46=46; |
| public static final int T__47=47; |
| public static final int RULE_ESCAPED_ID=9; |
| public static final int T__40=40; |
| public static final int T__41=41; |
| public static final int T__42=42; |
| public static final int T__43=43; |
| public static final int T__91=91; |
| public static final int T__100=100; |
| public static final int T__92=92; |
| public static final int T__93=93; |
| public static final int T__102=102; |
| public static final int T__94=94; |
| public static final int T__101=101; |
| public static final int T__90=90; |
| public static final int RULE_LETTER_CHARACTER=11; |
| public static final int T__19=19; |
| public static final int T__17=17; |
| public static final int T__18=18; |
| public static final int T__99=99; |
| public static final int RULE_ESCAPED_CHARACTER=10; |
| public static final int T__95=95; |
| public static final int RULE_ML_SINGLE_QUOTED_STRING=6; |
| public static final int T__96=96; |
| public static final int T__97=97; |
| public static final int T__98=98; |
| public static final int T__26=26; |
| public static final int T__27=27; |
| public static final int T__28=28; |
| public static final int T__29=29; |
| public static final int T__22=22; |
| public static final int T__23=23; |
| public static final int T__24=24; |
| public static final int T__25=25; |
| public static final int T__20=20; |
| public static final int T__21=21; |
| public static final int T__122=122; |
| public static final int T__70=70; |
| public static final int T__121=121; |
| public static final int T__71=71; |
| public static final int T__124=124; |
| public static final int T__72=72; |
| public static final int T__123=123; |
| public static final int T__120=120; |
| public static final int RULE_UNQUOTED_STRING=7; |
| public static final int RULE_SL_COMMENT=14; |
| public static final int T__77=77; |
| public static final int T__119=119; |
| public static final int T__78=78; |
| public static final int T__118=118; |
| public static final int T__79=79; |
| public static final int T__73=73; |
| public static final int T__115=115; |
| public static final int EOF=-1; |
| public static final int T__74=74; |
| public static final int T__114=114; |
| public static final int T__75=75; |
| public static final int T__117=117; |
| public static final int T__76=76; |
| public static final int T__116=116; |
| public static final int T__80=80; |
| public static final int T__111=111; |
| public static final int T__81=81; |
| public static final int T__110=110; |
| public static final int T__82=82; |
| public static final int T__113=113; |
| public static final int RULE_SIMPLE_ID=8; |
| public static final int T__83=83; |
| public static final int T__112=112; |
| public static final int RULE_WS=15; |
| public static final int RULE_ANY_OTHER=16; |
| public static final int T__88=88; |
| public static final int T__108=108; |
| public static final int T__89=89; |
| public static final int T__107=107; |
| public static final int T__109=109; |
| public static final int T__84=84; |
| public static final int T__104=104; |
| public static final int T__85=85; |
| public static final int T__103=103; |
| public static final int T__86=86; |
| public static final int T__106=106; |
| public static final int T__87=87; |
| public static final int T__105=105; |
| |
| // delegates |
| // delegators |
| |
| |
| public InternalOCLinEcoreParser(TokenStream input) { |
| this(input, new RecognizerSharedState()); |
| } |
| public InternalOCLinEcoreParser(TokenStream input, RecognizerSharedState state) { |
| super(input, state); |
| |
| } |
| |
| |
| public String[] getTokenNames() { return InternalOCLinEcoreParser.tokenNames; } |
| public String getGrammarFileName() { return "InternalOCLinEcore.g"; } |
| |
| |
| |
| /* |
| This grammar contains a lot of empty actions to work around a bug in ANTLR. |
| Otherwise the ANTLR tool will create synpreds that cannot be compiled in some rare cases. |
| */ |
| |
| private OCLinEcoreGrammarAccess grammarAccess; |
| |
| public InternalOCLinEcoreParser(TokenStream input, OCLinEcoreGrammarAccess grammarAccess) { |
| this(input); |
| this.grammarAccess = grammarAccess; |
| registerRules(grammarAccess.getGrammar()); |
| } |
| |
| @Override |
| protected String getFirstRuleName() { |
| return "TopLevelCS"; |
| } |
| |
| @Override |
| protected OCLinEcoreGrammarAccess getGrammarAccess() { |
| return grammarAccess; |
| } |
| |
| |
| |
| // $ANTLR start "entryRuleTopLevelCS" |
| // InternalOCLinEcore.g:80:1: entryRuleTopLevelCS returns [EObject current=null] : iv_ruleTopLevelCS= ruleTopLevelCS EOF ; |
| public final EObject entryRuleTopLevelCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleTopLevelCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:81:2: (iv_ruleTopLevelCS= ruleTopLevelCS EOF ) |
| // InternalOCLinEcore.g:82:2: iv_ruleTopLevelCS= ruleTopLevelCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getTopLevelCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleTopLevelCS=ruleTopLevelCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleTopLevelCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleTopLevelCS" |
| |
| |
| // $ANTLR start "ruleTopLevelCS" |
| // InternalOCLinEcore.g:89:1: ruleTopLevelCS returns [EObject current=null] : ( () (otherlv_1= 'module' ruleUnrestrictedName )? ( (lv_ownedImports_3_0= ruleImportCS ) )* ( (lv_ownedPackages_4_0= rulePackageCS ) )* ) ; |
| public final EObject ruleTopLevelCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| EObject lv_ownedImports_3_0 = null; |
| |
| EObject lv_ownedPackages_4_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:92:28: ( ( () (otherlv_1= 'module' ruleUnrestrictedName )? ( (lv_ownedImports_3_0= ruleImportCS ) )* ( (lv_ownedPackages_4_0= rulePackageCS ) )* ) ) |
| // InternalOCLinEcore.g:93:1: ( () (otherlv_1= 'module' ruleUnrestrictedName )? ( (lv_ownedImports_3_0= ruleImportCS ) )* ( (lv_ownedPackages_4_0= rulePackageCS ) )* ) |
| { |
| // InternalOCLinEcore.g:93:1: ( () (otherlv_1= 'module' ruleUnrestrictedName )? ( (lv_ownedImports_3_0= ruleImportCS ) )* ( (lv_ownedPackages_4_0= rulePackageCS ) )* ) |
| // InternalOCLinEcore.g:93:2: () (otherlv_1= 'module' ruleUnrestrictedName )? ( (lv_ownedImports_3_0= ruleImportCS ) )* ( (lv_ownedPackages_4_0= rulePackageCS ) )* |
| { |
| // InternalOCLinEcore.g:93:2: () |
| // InternalOCLinEcore.g:94:2: |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| current = forceCreateModelElement( |
| grammarAccess.getTopLevelCSAccess().getTopLevelCSAction_0(), |
| current); |
| |
| } |
| |
| } |
| |
| // InternalOCLinEcore.g:102:2: (otherlv_1= 'module' ruleUnrestrictedName )? |
| int alt1=2; |
| int LA1_0 = input.LA(1); |
| |
| if ( (LA1_0==17) ) { |
| alt1=1; |
| } |
| switch (alt1) { |
| case 1 : |
| // InternalOCLinEcore.g:102:4: otherlv_1= 'module' ruleUnrestrictedName |
| { |
| otherlv_1=(Token)match(input,17,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getTopLevelCSAccess().getModuleKeyword_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTopLevelCSAccess().getUnrestrictedNameParserRuleCall_1_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_4); |
| ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:117:3: ( (lv_ownedImports_3_0= ruleImportCS ) )* |
| loop2: |
| do { |
| int alt2=2; |
| int LA2_0 = input.LA(1); |
| |
| if ( (LA2_0==32||LA2_0==36) ) { |
| alt2=1; |
| } |
| |
| |
| switch (alt2) { |
| case 1 : |
| // InternalOCLinEcore.g:118:1: (lv_ownedImports_3_0= ruleImportCS ) |
| { |
| // InternalOCLinEcore.g:118:1: (lv_ownedImports_3_0= ruleImportCS ) |
| // InternalOCLinEcore.g:119:3: lv_ownedImports_3_0= ruleImportCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTopLevelCSAccess().getOwnedImportsImportCSParserRuleCall_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_4); |
| lv_ownedImports_3_0=ruleImportCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTopLevelCSRule()); |
| } |
| add( |
| current, |
| "ownedImports", |
| lv_ownedImports_3_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.ImportCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop2; |
| } |
| } while (true); |
| |
| // InternalOCLinEcore.g:135:3: ( (lv_ownedPackages_4_0= rulePackageCS ) )* |
| loop3: |
| do { |
| int alt3=2; |
| int LA3_0 = input.LA(1); |
| |
| if ( (LA3_0==39) ) { |
| alt3=1; |
| } |
| |
| |
| switch (alt3) { |
| case 1 : |
| // InternalOCLinEcore.g:136:1: (lv_ownedPackages_4_0= rulePackageCS ) |
| { |
| // InternalOCLinEcore.g:136:1: (lv_ownedPackages_4_0= rulePackageCS ) |
| // InternalOCLinEcore.g:137:3: lv_ownedPackages_4_0= rulePackageCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTopLevelCSAccess().getOwnedPackagesPackageCSParserRuleCall_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_5); |
| lv_ownedPackages_4_0=rulePackageCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTopLevelCSRule()); |
| } |
| add( |
| current, |
| "ownedPackages", |
| lv_ownedPackages_4_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.PackageCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop3; |
| } |
| } while (true); |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleTopLevelCS" |
| |
| |
| // $ANTLR start "entryRuleSIGNED" |
| // InternalOCLinEcore.g:163:1: entryRuleSIGNED returns [String current=null] : iv_ruleSIGNED= ruleSIGNED EOF ; |
| public final String entryRuleSIGNED() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_ruleSIGNED = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:164:2: (iv_ruleSIGNED= ruleSIGNED EOF ) |
| // InternalOCLinEcore.g:165:2: iv_ruleSIGNED= ruleSIGNED EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getSIGNEDRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleSIGNED=ruleSIGNED(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleSIGNED.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleSIGNED" |
| |
| |
| // $ANTLR start "ruleSIGNED" |
| // InternalOCLinEcore.g:172:1: ruleSIGNED returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (kw= '-' )? this_INT_1= RULE_INT ) ; |
| public final AntlrDatatypeRuleToken ruleSIGNED() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| Token kw=null; |
| Token this_INT_1=null; |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:175:28: ( ( (kw= '-' )? this_INT_1= RULE_INT ) ) |
| // InternalOCLinEcore.g:176:1: ( (kw= '-' )? this_INT_1= RULE_INT ) |
| { |
| // InternalOCLinEcore.g:176:1: ( (kw= '-' )? this_INT_1= RULE_INT ) |
| // InternalOCLinEcore.g:176:2: (kw= '-' )? this_INT_1= RULE_INT |
| { |
| // InternalOCLinEcore.g:176:2: (kw= '-' )? |
| int alt4=2; |
| int LA4_0 = input.LA(1); |
| |
| if ( (LA4_0==18) ) { |
| alt4=1; |
| } |
| switch (alt4) { |
| case 1 : |
| // InternalOCLinEcore.g:177:2: kw= '-' |
| { |
| kw=(Token)match(input,18,FollowSets000.FOLLOW_6); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getSIGNEDAccess().getHyphenMinusKeyword_0()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| this_INT_1=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(this_INT_1); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(this_INT_1, grammarAccess.getSIGNEDAccess().getINTTerminalRuleCall_1()); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleSIGNED" |
| |
| |
| // $ANTLR start "entryRuleEnumerationLiteralName" |
| // InternalOCLinEcore.g:197:1: entryRuleEnumerationLiteralName returns [String current=null] : iv_ruleEnumerationLiteralName= ruleEnumerationLiteralName EOF ; |
| public final String entryRuleEnumerationLiteralName() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_ruleEnumerationLiteralName = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:198:2: (iv_ruleEnumerationLiteralName= ruleEnumerationLiteralName EOF ) |
| // InternalOCLinEcore.g:199:2: iv_ruleEnumerationLiteralName= ruleEnumerationLiteralName EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getEnumerationLiteralNameRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleEnumerationLiteralName=ruleEnumerationLiteralName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleEnumerationLiteralName.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleEnumerationLiteralName" |
| |
| |
| // $ANTLR start "ruleEnumerationLiteralName" |
| // InternalOCLinEcore.g:206:1: ruleEnumerationLiteralName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_EssentialOCLUnrestrictedName_0= ruleEssentialOCLUnrestrictedName | kw= 'abstract' | kw= 'attribute' | kw= 'body' | kw= 'callable' | kw= 'class' | kw= 'composes' | kw= 'datatype' | kw= 'definition' | kw= 'derivation' | kw= 'derived' | kw= 'enum' | kw= 'extends' | kw= 'id' | kw= 'import' | kw= 'initial' | kw= 'interface' | kw= 'key' | kw= 'library' | kw= 'module' | kw= 'operation' | kw= 'ordered' | kw= 'package' | kw= 'postcondition' | kw= 'precondition' | kw= 'primitive' | kw= 'property' | kw= 'readonly' | kw= 'reference' | kw= 'resolve' | kw= 'static' | kw= 'throws' | kw= 'transient' | kw= 'unique' | kw= 'unsettable' | kw= 'volatile' ) ; |
| public final AntlrDatatypeRuleToken ruleEnumerationLiteralName() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| Token kw=null; |
| AntlrDatatypeRuleToken this_EssentialOCLUnrestrictedName_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:209:28: ( (this_EssentialOCLUnrestrictedName_0= ruleEssentialOCLUnrestrictedName | kw= 'abstract' | kw= 'attribute' | kw= 'body' | kw= 'callable' | kw= 'class' | kw= 'composes' | kw= 'datatype' | kw= 'definition' | kw= 'derivation' | kw= 'derived' | kw= 'enum' | kw= 'extends' | kw= 'id' | kw= 'import' | kw= 'initial' | kw= 'interface' | kw= 'key' | kw= 'library' | kw= 'module' | kw= 'operation' | kw= 'ordered' | kw= 'package' | kw= 'postcondition' | kw= 'precondition' | kw= 'primitive' | kw= 'property' | kw= 'readonly' | kw= 'reference' | kw= 'resolve' | kw= 'static' | kw= 'throws' | kw= 'transient' | kw= 'unique' | kw= 'unsettable' | kw= 'volatile' ) ) |
| // InternalOCLinEcore.g:210:1: (this_EssentialOCLUnrestrictedName_0= ruleEssentialOCLUnrestrictedName | kw= 'abstract' | kw= 'attribute' | kw= 'body' | kw= 'callable' | kw= 'class' | kw= 'composes' | kw= 'datatype' | kw= 'definition' | kw= 'derivation' | kw= 'derived' | kw= 'enum' | kw= 'extends' | kw= 'id' | kw= 'import' | kw= 'initial' | kw= 'interface' | kw= 'key' | kw= 'library' | kw= 'module' | kw= 'operation' | kw= 'ordered' | kw= 'package' | kw= 'postcondition' | kw= 'precondition' | kw= 'primitive' | kw= 'property' | kw= 'readonly' | kw= 'reference' | kw= 'resolve' | kw= 'static' | kw= 'throws' | kw= 'transient' | kw= 'unique' | kw= 'unsettable' | kw= 'volatile' ) |
| { |
| // InternalOCLinEcore.g:210:1: (this_EssentialOCLUnrestrictedName_0= ruleEssentialOCLUnrestrictedName | kw= 'abstract' | kw= 'attribute' | kw= 'body' | kw= 'callable' | kw= 'class' | kw= 'composes' | kw= 'datatype' | kw= 'definition' | kw= 'derivation' | kw= 'derived' | kw= 'enum' | kw= 'extends' | kw= 'id' | kw= 'import' | kw= 'initial' | kw= 'interface' | kw= 'key' | kw= 'library' | kw= 'module' | kw= 'operation' | kw= 'ordered' | kw= 'package' | kw= 'postcondition' | kw= 'precondition' | kw= 'primitive' | kw= 'property' | kw= 'readonly' | kw= 'reference' | kw= 'resolve' | kw= 'static' | kw= 'throws' | kw= 'transient' | kw= 'unique' | kw= 'unsettable' | kw= 'volatile' ) |
| int alt5=36; |
| switch ( input.LA(1) ) { |
| case RULE_SIMPLE_ID: |
| case RULE_ESCAPED_ID: |
| { |
| alt5=1; |
| } |
| break; |
| case 19: |
| { |
| alt5=2; |
| } |
| break; |
| case 20: |
| { |
| alt5=3; |
| } |
| break; |
| case 21: |
| { |
| alt5=4; |
| } |
| break; |
| case 22: |
| { |
| alt5=5; |
| } |
| break; |
| case 23: |
| { |
| alt5=6; |
| } |
| break; |
| case 24: |
| { |
| alt5=7; |
| } |
| break; |
| case 25: |
| { |
| alt5=8; |
| } |
| break; |
| case 26: |
| { |
| alt5=9; |
| } |
| break; |
| case 27: |
| { |
| alt5=10; |
| } |
| break; |
| case 28: |
| { |
| alt5=11; |
| } |
| break; |
| case 29: |
| { |
| alt5=12; |
| } |
| break; |
| case 30: |
| { |
| alt5=13; |
| } |
| break; |
| case 31: |
| { |
| alt5=14; |
| } |
| break; |
| case 32: |
| { |
| alt5=15; |
| } |
| break; |
| case 33: |
| { |
| alt5=16; |
| } |
| break; |
| case 34: |
| { |
| alt5=17; |
| } |
| break; |
| case 35: |
| { |
| alt5=18; |
| } |
| break; |
| case 36: |
| { |
| alt5=19; |
| } |
| break; |
| case 17: |
| { |
| alt5=20; |
| } |
| break; |
| case 37: |
| { |
| alt5=21; |
| } |
| break; |
| case 38: |
| { |
| alt5=22; |
| } |
| break; |
| case 39: |
| { |
| alt5=23; |
| } |
| break; |
| case 40: |
| { |
| alt5=24; |
| } |
| break; |
| case 41: |
| { |
| alt5=25; |
| } |
| break; |
| case 42: |
| { |
| alt5=26; |
| } |
| break; |
| case 43: |
| { |
| alt5=27; |
| } |
| break; |
| case 44: |
| { |
| alt5=28; |
| } |
| break; |
| case 45: |
| { |
| alt5=29; |
| } |
| break; |
| case 46: |
| { |
| alt5=30; |
| } |
| break; |
| case 47: |
| { |
| alt5=31; |
| } |
| break; |
| case 48: |
| { |
| alt5=32; |
| } |
| break; |
| case 49: |
| { |
| alt5=33; |
| } |
| break; |
| case 50: |
| { |
| alt5=34; |
| } |
| break; |
| case 51: |
| { |
| alt5=35; |
| } |
| break; |
| case 52: |
| { |
| alt5=36; |
| } |
| break; |
| default: |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 5, 0, input); |
| |
| throw nvae; |
| } |
| |
| switch (alt5) { |
| case 1 : |
| // InternalOCLinEcore.g:211:5: this_EssentialOCLUnrestrictedName_0= ruleEssentialOCLUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getEnumerationLiteralNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_EssentialOCLUnrestrictedName_0=ruleEssentialOCLUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(this_EssentialOCLUnrestrictedName_0); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:223:2: kw= 'abstract' |
| { |
| kw=(Token)match(input,19,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getAbstractKeyword_1()); |
| |
| } |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:230:2: kw= 'attribute' |
| { |
| kw=(Token)match(input,20,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getAttributeKeyword_2()); |
| |
| } |
| |
| } |
| break; |
| case 4 : |
| // InternalOCLinEcore.g:237:2: kw= 'body' |
| { |
| kw=(Token)match(input,21,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getBodyKeyword_3()); |
| |
| } |
| |
| } |
| break; |
| case 5 : |
| // InternalOCLinEcore.g:244:2: kw= 'callable' |
| { |
| kw=(Token)match(input,22,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getCallableKeyword_4()); |
| |
| } |
| |
| } |
| break; |
| case 6 : |
| // InternalOCLinEcore.g:251:2: kw= 'class' |
| { |
| kw=(Token)match(input,23,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getClassKeyword_5()); |
| |
| } |
| |
| } |
| break; |
| case 7 : |
| // InternalOCLinEcore.g:258:2: kw= 'composes' |
| { |
| kw=(Token)match(input,24,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getComposesKeyword_6()); |
| |
| } |
| |
| } |
| break; |
| case 8 : |
| // InternalOCLinEcore.g:265:2: kw= 'datatype' |
| { |
| kw=(Token)match(input,25,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getDatatypeKeyword_7()); |
| |
| } |
| |
| } |
| break; |
| case 9 : |
| // InternalOCLinEcore.g:272:2: kw= 'definition' |
| { |
| kw=(Token)match(input,26,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getDefinitionKeyword_8()); |
| |
| } |
| |
| } |
| break; |
| case 10 : |
| // InternalOCLinEcore.g:279:2: kw= 'derivation' |
| { |
| kw=(Token)match(input,27,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getDerivationKeyword_9()); |
| |
| } |
| |
| } |
| break; |
| case 11 : |
| // InternalOCLinEcore.g:286:2: kw= 'derived' |
| { |
| kw=(Token)match(input,28,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getDerivedKeyword_10()); |
| |
| } |
| |
| } |
| break; |
| case 12 : |
| // InternalOCLinEcore.g:293:2: kw= 'enum' |
| { |
| kw=(Token)match(input,29,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getEnumKeyword_11()); |
| |
| } |
| |
| } |
| break; |
| case 13 : |
| // InternalOCLinEcore.g:300:2: kw= 'extends' |
| { |
| kw=(Token)match(input,30,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getExtendsKeyword_12()); |
| |
| } |
| |
| } |
| break; |
| case 14 : |
| // InternalOCLinEcore.g:307:2: kw= 'id' |
| { |
| kw=(Token)match(input,31,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getIdKeyword_13()); |
| |
| } |
| |
| } |
| break; |
| case 15 : |
| // InternalOCLinEcore.g:314:2: kw= 'import' |
| { |
| kw=(Token)match(input,32,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getImportKeyword_14()); |
| |
| } |
| |
| } |
| break; |
| case 16 : |
| // InternalOCLinEcore.g:321:2: kw= 'initial' |
| { |
| kw=(Token)match(input,33,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getInitialKeyword_15()); |
| |
| } |
| |
| } |
| break; |
| case 17 : |
| // InternalOCLinEcore.g:328:2: kw= 'interface' |
| { |
| kw=(Token)match(input,34,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getInterfaceKeyword_16()); |
| |
| } |
| |
| } |
| break; |
| case 18 : |
| // InternalOCLinEcore.g:335:2: kw= 'key' |
| { |
| kw=(Token)match(input,35,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getKeyKeyword_17()); |
| |
| } |
| |
| } |
| break; |
| case 19 : |
| // InternalOCLinEcore.g:342:2: kw= 'library' |
| { |
| kw=(Token)match(input,36,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getLibraryKeyword_18()); |
| |
| } |
| |
| } |
| break; |
| case 20 : |
| // InternalOCLinEcore.g:349:2: kw= 'module' |
| { |
| kw=(Token)match(input,17,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getModuleKeyword_19()); |
| |
| } |
| |
| } |
| break; |
| case 21 : |
| // InternalOCLinEcore.g:356:2: kw= 'operation' |
| { |
| kw=(Token)match(input,37,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getOperationKeyword_20()); |
| |
| } |
| |
| } |
| break; |
| case 22 : |
| // InternalOCLinEcore.g:363:2: kw= 'ordered' |
| { |
| kw=(Token)match(input,38,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getOrderedKeyword_21()); |
| |
| } |
| |
| } |
| break; |
| case 23 : |
| // InternalOCLinEcore.g:370:2: kw= 'package' |
| { |
| kw=(Token)match(input,39,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPackageKeyword_22()); |
| |
| } |
| |
| } |
| break; |
| case 24 : |
| // InternalOCLinEcore.g:377:2: kw= 'postcondition' |
| { |
| kw=(Token)match(input,40,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPostconditionKeyword_23()); |
| |
| } |
| |
| } |
| break; |
| case 25 : |
| // InternalOCLinEcore.g:384:2: kw= 'precondition' |
| { |
| kw=(Token)match(input,41,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPreconditionKeyword_24()); |
| |
| } |
| |
| } |
| break; |
| case 26 : |
| // InternalOCLinEcore.g:391:2: kw= 'primitive' |
| { |
| kw=(Token)match(input,42,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPrimitiveKeyword_25()); |
| |
| } |
| |
| } |
| break; |
| case 27 : |
| // InternalOCLinEcore.g:398:2: kw= 'property' |
| { |
| kw=(Token)match(input,43,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPropertyKeyword_26()); |
| |
| } |
| |
| } |
| break; |
| case 28 : |
| // InternalOCLinEcore.g:405:2: kw= 'readonly' |
| { |
| kw=(Token)match(input,44,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getReadonlyKeyword_27()); |
| |
| } |
| |
| } |
| break; |
| case 29 : |
| // InternalOCLinEcore.g:412:2: kw= 'reference' |
| { |
| kw=(Token)match(input,45,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getReferenceKeyword_28()); |
| |
| } |
| |
| } |
| break; |
| case 30 : |
| // InternalOCLinEcore.g:419:2: kw= 'resolve' |
| { |
| kw=(Token)match(input,46,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getResolveKeyword_29()); |
| |
| } |
| |
| } |
| break; |
| case 31 : |
| // InternalOCLinEcore.g:426:2: kw= 'static' |
| { |
| kw=(Token)match(input,47,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getStaticKeyword_30()); |
| |
| } |
| |
| } |
| break; |
| case 32 : |
| // InternalOCLinEcore.g:433:2: kw= 'throws' |
| { |
| kw=(Token)match(input,48,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getThrowsKeyword_31()); |
| |
| } |
| |
| } |
| break; |
| case 33 : |
| // InternalOCLinEcore.g:440:2: kw= 'transient' |
| { |
| kw=(Token)match(input,49,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getTransientKeyword_32()); |
| |
| } |
| |
| } |
| break; |
| case 34 : |
| // InternalOCLinEcore.g:447:2: kw= 'unique' |
| { |
| kw=(Token)match(input,50,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getUniqueKeyword_33()); |
| |
| } |
| |
| } |
| break; |
| case 35 : |
| // InternalOCLinEcore.g:454:2: kw= 'unsettable' |
| { |
| kw=(Token)match(input,51,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getUnsettableKeyword_34()); |
| |
| } |
| |
| } |
| break; |
| case 36 : |
| // InternalOCLinEcore.g:461:2: kw= 'volatile' |
| { |
| kw=(Token)match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getVolatileKeyword_35()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleEnumerationLiteralName" |
| |
| |
| // $ANTLR start "entryRuleInvariantConstraintCS" |
| // InternalOCLinEcore.g:474:1: entryRuleInvariantConstraintCS returns [EObject current=null] : iv_ruleInvariantConstraintCS= ruleInvariantConstraintCS EOF ; |
| public final EObject entryRuleInvariantConstraintCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleInvariantConstraintCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:475:2: (iv_ruleInvariantConstraintCS= ruleInvariantConstraintCS EOF ) |
| // InternalOCLinEcore.g:476:2: iv_ruleInvariantConstraintCS= ruleInvariantConstraintCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getInvariantConstraintCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleInvariantConstraintCS=ruleInvariantConstraintCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleInvariantConstraintCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleInvariantConstraintCS" |
| |
| |
| // $ANTLR start "ruleInvariantConstraintCS" |
| // InternalOCLinEcore.g:483:1: ruleInvariantConstraintCS returns [EObject current=null] : ( ( (lv_isCallable_0_0= 'callable' ) )? ( (lv_stereotype_1_0= 'invariant' ) ) ( ( (lv_name_2_0= ruleUnrestrictedName ) ) (otherlv_3= '(' ( (lv_ownedMessageSpecification_4_0= ruleSpecificationCS ) ) otherlv_5= ')' )? )? ( (otherlv_6= ':' ( (lv_ownedSpecification_7_0= ruleSpecificationCS ) )? otherlv_8= ';' ) | otherlv_9= ';' ) ) ; |
| public final EObject ruleInvariantConstraintCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token lv_isCallable_0_0=null; |
| Token lv_stereotype_1_0=null; |
| Token otherlv_3=null; |
| Token otherlv_5=null; |
| Token otherlv_6=null; |
| Token otherlv_8=null; |
| Token otherlv_9=null; |
| AntlrDatatypeRuleToken lv_name_2_0 = null; |
| |
| EObject lv_ownedMessageSpecification_4_0 = null; |
| |
| EObject lv_ownedSpecification_7_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:486:28: ( ( ( (lv_isCallable_0_0= 'callable' ) )? ( (lv_stereotype_1_0= 'invariant' ) ) ( ( (lv_name_2_0= ruleUnrestrictedName ) ) (otherlv_3= '(' ( (lv_ownedMessageSpecification_4_0= ruleSpecificationCS ) ) otherlv_5= ')' )? )? ( (otherlv_6= ':' ( (lv_ownedSpecification_7_0= ruleSpecificationCS ) )? otherlv_8= ';' ) | otherlv_9= ';' ) ) ) |
| // InternalOCLinEcore.g:487:1: ( ( (lv_isCallable_0_0= 'callable' ) )? ( (lv_stereotype_1_0= 'invariant' ) ) ( ( (lv_name_2_0= ruleUnrestrictedName ) ) (otherlv_3= '(' ( (lv_ownedMessageSpecification_4_0= ruleSpecificationCS ) ) otherlv_5= ')' )? )? ( (otherlv_6= ':' ( (lv_ownedSpecification_7_0= ruleSpecificationCS ) )? otherlv_8= ';' ) | otherlv_9= ';' ) ) |
| { |
| // InternalOCLinEcore.g:487:1: ( ( (lv_isCallable_0_0= 'callable' ) )? ( (lv_stereotype_1_0= 'invariant' ) ) ( ( (lv_name_2_0= ruleUnrestrictedName ) ) (otherlv_3= '(' ( (lv_ownedMessageSpecification_4_0= ruleSpecificationCS ) ) otherlv_5= ')' )? )? ( (otherlv_6= ':' ( (lv_ownedSpecification_7_0= ruleSpecificationCS ) )? otherlv_8= ';' ) | otherlv_9= ';' ) ) |
| // InternalOCLinEcore.g:487:2: ( (lv_isCallable_0_0= 'callable' ) )? ( (lv_stereotype_1_0= 'invariant' ) ) ( ( (lv_name_2_0= ruleUnrestrictedName ) ) (otherlv_3= '(' ( (lv_ownedMessageSpecification_4_0= ruleSpecificationCS ) ) otherlv_5= ')' )? )? ( (otherlv_6= ':' ( (lv_ownedSpecification_7_0= ruleSpecificationCS ) )? otherlv_8= ';' ) | otherlv_9= ';' ) |
| { |
| // InternalOCLinEcore.g:487:2: ( (lv_isCallable_0_0= 'callable' ) )? |
| int alt6=2; |
| int LA6_0 = input.LA(1); |
| |
| if ( (LA6_0==22) ) { |
| alt6=1; |
| } |
| switch (alt6) { |
| case 1 : |
| // InternalOCLinEcore.g:488:1: (lv_isCallable_0_0= 'callable' ) |
| { |
| // InternalOCLinEcore.g:488:1: (lv_isCallable_0_0= 'callable' ) |
| // InternalOCLinEcore.g:489:3: lv_isCallable_0_0= 'callable' |
| { |
| lv_isCallable_0_0=(Token)match(input,22,FollowSets000.FOLLOW_7); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_isCallable_0_0, grammarAccess.getInvariantConstraintCSAccess().getIsCallableCallableKeyword_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getInvariantConstraintCSRule()); |
| } |
| setWithLastConsumed(current, "isCallable", true, "callable"); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:502:3: ( (lv_stereotype_1_0= 'invariant' ) ) |
| // InternalOCLinEcore.g:503:1: (lv_stereotype_1_0= 'invariant' ) |
| { |
| // InternalOCLinEcore.g:503:1: (lv_stereotype_1_0= 'invariant' ) |
| // InternalOCLinEcore.g:504:3: lv_stereotype_1_0= 'invariant' |
| { |
| lv_stereotype_1_0=(Token)match(input,53,FollowSets000.FOLLOW_8); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_stereotype_1_0, grammarAccess.getInvariantConstraintCSAccess().getStereotypeInvariantKeyword_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getInvariantConstraintCSRule()); |
| } |
| setWithLastConsumed(current, "stereotype", lv_stereotype_1_0, "invariant"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:517:2: ( ( (lv_name_2_0= ruleUnrestrictedName ) ) (otherlv_3= '(' ( (lv_ownedMessageSpecification_4_0= ruleSpecificationCS ) ) otherlv_5= ')' )? )? |
| int alt8=2; |
| int LA8_0 = input.LA(1); |
| |
| if ( ((LA8_0>=RULE_SIMPLE_ID && LA8_0<=RULE_ESCAPED_ID)||LA8_0==17||(LA8_0>=19 && LA8_0<=53)||LA8_0==58||LA8_0==71||(LA8_0>=73 && LA8_0<=74)||LA8_0==76||LA8_0==80) ) { |
| alt8=1; |
| } |
| switch (alt8) { |
| case 1 : |
| // InternalOCLinEcore.g:517:3: ( (lv_name_2_0= ruleUnrestrictedName ) ) (otherlv_3= '(' ( (lv_ownedMessageSpecification_4_0= ruleSpecificationCS ) ) otherlv_5= ')' )? |
| { |
| // InternalOCLinEcore.g:517:3: ( (lv_name_2_0= ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:518:1: (lv_name_2_0= ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:518:1: (lv_name_2_0= ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:519:3: lv_name_2_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getInvariantConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_2_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_9); |
| lv_name_2_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getInvariantConstraintCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_2_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:535:2: (otherlv_3= '(' ( (lv_ownedMessageSpecification_4_0= ruleSpecificationCS ) ) otherlv_5= ')' )? |
| int alt7=2; |
| int LA7_0 = input.LA(1); |
| |
| if ( (LA7_0==54) ) { |
| alt7=1; |
| } |
| switch (alt7) { |
| case 1 : |
| // InternalOCLinEcore.g:535:4: otherlv_3= '(' ( (lv_ownedMessageSpecification_4_0= ruleSpecificationCS ) ) otherlv_5= ')' |
| { |
| otherlv_3=(Token)match(input,54,FollowSets000.FOLLOW_10); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_3, grammarAccess.getInvariantConstraintCSAccess().getLeftParenthesisKeyword_2_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:539:1: ( (lv_ownedMessageSpecification_4_0= ruleSpecificationCS ) ) |
| // InternalOCLinEcore.g:540:1: (lv_ownedMessageSpecification_4_0= ruleSpecificationCS ) |
| { |
| // InternalOCLinEcore.g:540:1: (lv_ownedMessageSpecification_4_0= ruleSpecificationCS ) |
| // InternalOCLinEcore.g:541:3: lv_ownedMessageSpecification_4_0= ruleSpecificationCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getInvariantConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_2_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_11); |
| lv_ownedMessageSpecification_4_0=ruleSpecificationCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getInvariantConstraintCSRule()); |
| } |
| set( |
| current, |
| "ownedMessageSpecification", |
| lv_ownedMessageSpecification_4_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_5=(Token)match(input,55,FollowSets000.FOLLOW_12); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_5, grammarAccess.getInvariantConstraintCSAccess().getRightParenthesisKeyword_2_1_2()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:561:5: ( (otherlv_6= ':' ( (lv_ownedSpecification_7_0= ruleSpecificationCS ) )? otherlv_8= ';' ) | otherlv_9= ';' ) |
| int alt10=2; |
| int LA10_0 = input.LA(1); |
| |
| if ( (LA10_0==56) ) { |
| alt10=1; |
| } |
| else if ( (LA10_0==57) ) { |
| alt10=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 10, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt10) { |
| case 1 : |
| // InternalOCLinEcore.g:561:6: (otherlv_6= ':' ( (lv_ownedSpecification_7_0= ruleSpecificationCS ) )? otherlv_8= ';' ) |
| { |
| // InternalOCLinEcore.g:561:6: (otherlv_6= ':' ( (lv_ownedSpecification_7_0= ruleSpecificationCS ) )? otherlv_8= ';' ) |
| // InternalOCLinEcore.g:561:8: otherlv_6= ':' ( (lv_ownedSpecification_7_0= ruleSpecificationCS ) )? otherlv_8= ';' |
| { |
| otherlv_6=(Token)match(input,56,FollowSets000.FOLLOW_13); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_6, grammarAccess.getInvariantConstraintCSAccess().getColonKeyword_3_0_0()); |
| |
| } |
| // InternalOCLinEcore.g:565:1: ( (lv_ownedSpecification_7_0= ruleSpecificationCS ) )? |
| int alt9=2; |
| int LA9_0 = input.LA(1); |
| |
| if ( ((LA9_0>=RULE_INT && LA9_0<=RULE_SINGLE_QUOTED_STRING)||(LA9_0>=RULE_UNQUOTED_STRING && LA9_0<=RULE_ESCAPED_ID)||(LA9_0>=17 && LA9_0<=54)||LA9_0==58||LA9_0==71||(LA9_0>=73 && LA9_0<=74)||LA9_0==76||LA9_0==80||(LA9_0>=83 && LA9_0<=84)||(LA9_0>=98 && LA9_0<=99)||(LA9_0>=101 && LA9_0<=113)||LA9_0==116||(LA9_0>=118 && LA9_0<=121)||LA9_0==128||(LA9_0>=133 && LA9_0<=134)) ) { |
| alt9=1; |
| } |
| switch (alt9) { |
| case 1 : |
| // InternalOCLinEcore.g:566:1: (lv_ownedSpecification_7_0= ruleSpecificationCS ) |
| { |
| // InternalOCLinEcore.g:566:1: (lv_ownedSpecification_7_0= ruleSpecificationCS ) |
| // InternalOCLinEcore.g:567:3: lv_ownedSpecification_7_0= ruleSpecificationCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getInvariantConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_14); |
| lv_ownedSpecification_7_0=ruleSpecificationCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getInvariantConstraintCSRule()); |
| } |
| set( |
| current, |
| "ownedSpecification", |
| lv_ownedSpecification_7_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_8=(Token)match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_8, grammarAccess.getInvariantConstraintCSAccess().getSemicolonKeyword_3_0_2()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:588:7: otherlv_9= ';' |
| { |
| otherlv_9=(Token)match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_9, grammarAccess.getInvariantConstraintCSAccess().getSemicolonKeyword_3_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleInvariantConstraintCS" |
| |
| |
| // $ANTLR start "entryRulePostconditionConstraintCS" |
| // InternalOCLinEcore.g:600:1: entryRulePostconditionConstraintCS returns [EObject current=null] : iv_rulePostconditionConstraintCS= rulePostconditionConstraintCS EOF ; |
| public final EObject entryRulePostconditionConstraintCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_rulePostconditionConstraintCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:601:2: (iv_rulePostconditionConstraintCS= rulePostconditionConstraintCS EOF ) |
| // InternalOCLinEcore.g:602:2: iv_rulePostconditionConstraintCS= rulePostconditionConstraintCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getPostconditionConstraintCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_rulePostconditionConstraintCS=rulePostconditionConstraintCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_rulePostconditionConstraintCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRulePostconditionConstraintCS" |
| |
| |
| // $ANTLR start "rulePostconditionConstraintCS" |
| // InternalOCLinEcore.g:609:1: rulePostconditionConstraintCS returns [EObject current=null] : ( ( (lv_stereotype_0_0= 'postcondition' ) ) ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? otherlv_5= ':' ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) )? otherlv_7= ';' ) ; |
| public final EObject rulePostconditionConstraintCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token lv_stereotype_0_0=null; |
| Token otherlv_2=null; |
| Token otherlv_4=null; |
| Token otherlv_5=null; |
| Token otherlv_7=null; |
| AntlrDatatypeRuleToken lv_name_1_0 = null; |
| |
| EObject lv_ownedMessageSpecification_3_0 = null; |
| |
| EObject lv_ownedSpecification_6_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:612:28: ( ( ( (lv_stereotype_0_0= 'postcondition' ) ) ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? otherlv_5= ':' ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) )? otherlv_7= ';' ) ) |
| // InternalOCLinEcore.g:613:1: ( ( (lv_stereotype_0_0= 'postcondition' ) ) ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? otherlv_5= ':' ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) )? otherlv_7= ';' ) |
| { |
| // InternalOCLinEcore.g:613:1: ( ( (lv_stereotype_0_0= 'postcondition' ) ) ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? otherlv_5= ':' ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) )? otherlv_7= ';' ) |
| // InternalOCLinEcore.g:613:2: ( (lv_stereotype_0_0= 'postcondition' ) ) ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? otherlv_5= ':' ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) )? otherlv_7= ';' |
| { |
| // InternalOCLinEcore.g:613:2: ( (lv_stereotype_0_0= 'postcondition' ) ) |
| // InternalOCLinEcore.g:614:1: (lv_stereotype_0_0= 'postcondition' ) |
| { |
| // InternalOCLinEcore.g:614:1: (lv_stereotype_0_0= 'postcondition' ) |
| // InternalOCLinEcore.g:615:3: lv_stereotype_0_0= 'postcondition' |
| { |
| lv_stereotype_0_0=(Token)match(input,40,FollowSets000.FOLLOW_15); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_stereotype_0_0, grammarAccess.getPostconditionConstraintCSAccess().getStereotypePostconditionKeyword_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getPostconditionConstraintCSRule()); |
| } |
| setWithLastConsumed(current, "stereotype", lv_stereotype_0_0, "postcondition"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:628:2: ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? |
| int alt12=2; |
| int LA12_0 = input.LA(1); |
| |
| if ( ((LA12_0>=RULE_SIMPLE_ID && LA12_0<=RULE_ESCAPED_ID)||LA12_0==17||(LA12_0>=19 && LA12_0<=53)||LA12_0==58||LA12_0==71||(LA12_0>=73 && LA12_0<=74)||LA12_0==76||LA12_0==80) ) { |
| alt12=1; |
| } |
| switch (alt12) { |
| case 1 : |
| // InternalOCLinEcore.g:628:3: ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? |
| { |
| // InternalOCLinEcore.g:628:3: ( (lv_name_1_0= ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:629:1: (lv_name_1_0= ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:629:1: (lv_name_1_0= ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:630:3: lv_name_1_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPostconditionConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_16); |
| lv_name_1_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getPostconditionConstraintCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_1_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:646:2: (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? |
| int alt11=2; |
| int LA11_0 = input.LA(1); |
| |
| if ( (LA11_0==54) ) { |
| alt11=1; |
| } |
| switch (alt11) { |
| case 1 : |
| // InternalOCLinEcore.g:646:4: otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' |
| { |
| otherlv_2=(Token)match(input,54,FollowSets000.FOLLOW_10); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_2, grammarAccess.getPostconditionConstraintCSAccess().getLeftParenthesisKeyword_1_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:650:1: ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) |
| // InternalOCLinEcore.g:651:1: (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) |
| { |
| // InternalOCLinEcore.g:651:1: (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) |
| // InternalOCLinEcore.g:652:3: lv_ownedMessageSpecification_3_0= ruleSpecificationCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPostconditionConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_11); |
| lv_ownedMessageSpecification_3_0=ruleSpecificationCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getPostconditionConstraintCSRule()); |
| } |
| set( |
| current, |
| "ownedMessageSpecification", |
| lv_ownedMessageSpecification_3_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_4=(Token)match(input,55,FollowSets000.FOLLOW_17); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_4, grammarAccess.getPostconditionConstraintCSAccess().getRightParenthesisKeyword_1_1_2()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_5=(Token)match(input,56,FollowSets000.FOLLOW_13); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_5, grammarAccess.getPostconditionConstraintCSAccess().getColonKeyword_2()); |
| |
| } |
| // InternalOCLinEcore.g:676:1: ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) )? |
| int alt13=2; |
| int LA13_0 = input.LA(1); |
| |
| if ( ((LA13_0>=RULE_INT && LA13_0<=RULE_SINGLE_QUOTED_STRING)||(LA13_0>=RULE_UNQUOTED_STRING && LA13_0<=RULE_ESCAPED_ID)||(LA13_0>=17 && LA13_0<=54)||LA13_0==58||LA13_0==71||(LA13_0>=73 && LA13_0<=74)||LA13_0==76||LA13_0==80||(LA13_0>=83 && LA13_0<=84)||(LA13_0>=98 && LA13_0<=99)||(LA13_0>=101 && LA13_0<=113)||LA13_0==116||(LA13_0>=118 && LA13_0<=121)||LA13_0==128||(LA13_0>=133 && LA13_0<=134)) ) { |
| alt13=1; |
| } |
| switch (alt13) { |
| case 1 : |
| // InternalOCLinEcore.g:677:1: (lv_ownedSpecification_6_0= ruleSpecificationCS ) |
| { |
| // InternalOCLinEcore.g:677:1: (lv_ownedSpecification_6_0= ruleSpecificationCS ) |
| // InternalOCLinEcore.g:678:3: lv_ownedSpecification_6_0= ruleSpecificationCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPostconditionConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_14); |
| lv_ownedSpecification_6_0=ruleSpecificationCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getPostconditionConstraintCSRule()); |
| } |
| set( |
| current, |
| "ownedSpecification", |
| lv_ownedSpecification_6_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_7=(Token)match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_7, grammarAccess.getPostconditionConstraintCSAccess().getSemicolonKeyword_4()); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "rulePostconditionConstraintCS" |
| |
| |
| // $ANTLR start "entryRulePreconditionConstraintCS" |
| // InternalOCLinEcore.g:706:1: entryRulePreconditionConstraintCS returns [EObject current=null] : iv_rulePreconditionConstraintCS= rulePreconditionConstraintCS EOF ; |
| public final EObject entryRulePreconditionConstraintCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_rulePreconditionConstraintCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:707:2: (iv_rulePreconditionConstraintCS= rulePreconditionConstraintCS EOF ) |
| // InternalOCLinEcore.g:708:2: iv_rulePreconditionConstraintCS= rulePreconditionConstraintCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getPreconditionConstraintCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_rulePreconditionConstraintCS=rulePreconditionConstraintCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_rulePreconditionConstraintCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRulePreconditionConstraintCS" |
| |
| |
| // $ANTLR start "rulePreconditionConstraintCS" |
| // InternalOCLinEcore.g:715:1: rulePreconditionConstraintCS returns [EObject current=null] : ( ( (lv_stereotype_0_0= 'precondition' ) ) ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? otherlv_5= ':' ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) )? otherlv_7= ';' ) ; |
| public final EObject rulePreconditionConstraintCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token lv_stereotype_0_0=null; |
| Token otherlv_2=null; |
| Token otherlv_4=null; |
| Token otherlv_5=null; |
| Token otherlv_7=null; |
| AntlrDatatypeRuleToken lv_name_1_0 = null; |
| |
| EObject lv_ownedMessageSpecification_3_0 = null; |
| |
| EObject lv_ownedSpecification_6_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:718:28: ( ( ( (lv_stereotype_0_0= 'precondition' ) ) ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? otherlv_5= ':' ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) )? otherlv_7= ';' ) ) |
| // InternalOCLinEcore.g:719:1: ( ( (lv_stereotype_0_0= 'precondition' ) ) ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? otherlv_5= ':' ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) )? otherlv_7= ';' ) |
| { |
| // InternalOCLinEcore.g:719:1: ( ( (lv_stereotype_0_0= 'precondition' ) ) ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? otherlv_5= ':' ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) )? otherlv_7= ';' ) |
| // InternalOCLinEcore.g:719:2: ( (lv_stereotype_0_0= 'precondition' ) ) ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? otherlv_5= ':' ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) )? otherlv_7= ';' |
| { |
| // InternalOCLinEcore.g:719:2: ( (lv_stereotype_0_0= 'precondition' ) ) |
| // InternalOCLinEcore.g:720:1: (lv_stereotype_0_0= 'precondition' ) |
| { |
| // InternalOCLinEcore.g:720:1: (lv_stereotype_0_0= 'precondition' ) |
| // InternalOCLinEcore.g:721:3: lv_stereotype_0_0= 'precondition' |
| { |
| lv_stereotype_0_0=(Token)match(input,41,FollowSets000.FOLLOW_15); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_stereotype_0_0, grammarAccess.getPreconditionConstraintCSAccess().getStereotypePreconditionKeyword_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getPreconditionConstraintCSRule()); |
| } |
| setWithLastConsumed(current, "stereotype", lv_stereotype_0_0, "precondition"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:734:2: ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? |
| int alt15=2; |
| int LA15_0 = input.LA(1); |
| |
| if ( ((LA15_0>=RULE_SIMPLE_ID && LA15_0<=RULE_ESCAPED_ID)||LA15_0==17||(LA15_0>=19 && LA15_0<=53)||LA15_0==58||LA15_0==71||(LA15_0>=73 && LA15_0<=74)||LA15_0==76||LA15_0==80) ) { |
| alt15=1; |
| } |
| switch (alt15) { |
| case 1 : |
| // InternalOCLinEcore.g:734:3: ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? |
| { |
| // InternalOCLinEcore.g:734:3: ( (lv_name_1_0= ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:735:1: (lv_name_1_0= ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:735:1: (lv_name_1_0= ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:736:3: lv_name_1_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPreconditionConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_16); |
| lv_name_1_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getPreconditionConstraintCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_1_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:752:2: (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? |
| int alt14=2; |
| int LA14_0 = input.LA(1); |
| |
| if ( (LA14_0==54) ) { |
| alt14=1; |
| } |
| switch (alt14) { |
| case 1 : |
| // InternalOCLinEcore.g:752:4: otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' |
| { |
| otherlv_2=(Token)match(input,54,FollowSets000.FOLLOW_10); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_2, grammarAccess.getPreconditionConstraintCSAccess().getLeftParenthesisKeyword_1_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:756:1: ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) |
| // InternalOCLinEcore.g:757:1: (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) |
| { |
| // InternalOCLinEcore.g:757:1: (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) |
| // InternalOCLinEcore.g:758:3: lv_ownedMessageSpecification_3_0= ruleSpecificationCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPreconditionConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_11); |
| lv_ownedMessageSpecification_3_0=ruleSpecificationCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getPreconditionConstraintCSRule()); |
| } |
| set( |
| current, |
| "ownedMessageSpecification", |
| lv_ownedMessageSpecification_3_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_4=(Token)match(input,55,FollowSets000.FOLLOW_17); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_4, grammarAccess.getPreconditionConstraintCSAccess().getRightParenthesisKeyword_1_1_2()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_5=(Token)match(input,56,FollowSets000.FOLLOW_13); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_5, grammarAccess.getPreconditionConstraintCSAccess().getColonKeyword_2()); |
| |
| } |
| // InternalOCLinEcore.g:782:1: ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) )? |
| int alt16=2; |
| int LA16_0 = input.LA(1); |
| |
| if ( ((LA16_0>=RULE_INT && LA16_0<=RULE_SINGLE_QUOTED_STRING)||(LA16_0>=RULE_UNQUOTED_STRING && LA16_0<=RULE_ESCAPED_ID)||(LA16_0>=17 && LA16_0<=54)||LA16_0==58||LA16_0==71||(LA16_0>=73 && LA16_0<=74)||LA16_0==76||LA16_0==80||(LA16_0>=83 && LA16_0<=84)||(LA16_0>=98 && LA16_0<=99)||(LA16_0>=101 && LA16_0<=113)||LA16_0==116||(LA16_0>=118 && LA16_0<=121)||LA16_0==128||(LA16_0>=133 && LA16_0<=134)) ) { |
| alt16=1; |
| } |
| switch (alt16) { |
| case 1 : |
| // InternalOCLinEcore.g:783:1: (lv_ownedSpecification_6_0= ruleSpecificationCS ) |
| { |
| // InternalOCLinEcore.g:783:1: (lv_ownedSpecification_6_0= ruleSpecificationCS ) |
| // InternalOCLinEcore.g:784:3: lv_ownedSpecification_6_0= ruleSpecificationCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPreconditionConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_14); |
| lv_ownedSpecification_6_0=ruleSpecificationCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getPreconditionConstraintCSRule()); |
| } |
| set( |
| current, |
| "ownedSpecification", |
| lv_ownedSpecification_6_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_7=(Token)match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_7, grammarAccess.getPreconditionConstraintCSAccess().getSemicolonKeyword_4()); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "rulePreconditionConstraintCS" |
| |
| |
| // $ANTLR start "entryRuleAnnotationCS" |
| // InternalOCLinEcore.g:812:1: entryRuleAnnotationCS returns [EObject current=null] : iv_ruleAnnotationCS= ruleAnnotationCS EOF ; |
| public final EObject entryRuleAnnotationCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleAnnotationCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:813:2: (iv_ruleAnnotationCS= ruleAnnotationCS EOF ) |
| // InternalOCLinEcore.g:814:2: iv_ruleAnnotationCS= ruleAnnotationCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getAnnotationCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleAnnotationCS=ruleAnnotationCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleAnnotationCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleAnnotationCS" |
| |
| |
| // $ANTLR start "ruleAnnotationCS" |
| // InternalOCLinEcore.g:821:1: ruleAnnotationCS returns [EObject current=null] : ( () otherlv_1= 'annotation' ( ( (lv_name_2_1= ruleUnrestrictedName | lv_name_2_2= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' )? ( (otherlv_8= '{' ( ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) | ( (lv_ownedContents_10_0= ruleModelElementCS ) ) | ( (lv_ownedReferences_11_0= ruleModelElementRefCS ) ) )+ otherlv_12= '}' ) | otherlv_13= ';' ) ) ; |
| public final EObject ruleAnnotationCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| Token lv_name_2_2=null; |
| Token otherlv_3=null; |
| Token otherlv_5=null; |
| Token otherlv_7=null; |
| Token otherlv_8=null; |
| Token otherlv_12=null; |
| Token otherlv_13=null; |
| AntlrDatatypeRuleToken lv_name_2_1 = null; |
| |
| EObject lv_ownedDetails_4_0 = null; |
| |
| EObject lv_ownedDetails_6_0 = null; |
| |
| EObject lv_ownedAnnotations_9_0 = null; |
| |
| EObject lv_ownedContents_10_0 = null; |
| |
| EObject lv_ownedReferences_11_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:824:28: ( ( () otherlv_1= 'annotation' ( ( (lv_name_2_1= ruleUnrestrictedName | lv_name_2_2= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' )? ( (otherlv_8= '{' ( ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) | ( (lv_ownedContents_10_0= ruleModelElementCS ) ) | ( (lv_ownedReferences_11_0= ruleModelElementRefCS ) ) )+ otherlv_12= '}' ) | otherlv_13= ';' ) ) ) |
| // InternalOCLinEcore.g:825:1: ( () otherlv_1= 'annotation' ( ( (lv_name_2_1= ruleUnrestrictedName | lv_name_2_2= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' )? ( (otherlv_8= '{' ( ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) | ( (lv_ownedContents_10_0= ruleModelElementCS ) ) | ( (lv_ownedReferences_11_0= ruleModelElementRefCS ) ) )+ otherlv_12= '}' ) | otherlv_13= ';' ) ) |
| { |
| // InternalOCLinEcore.g:825:1: ( () otherlv_1= 'annotation' ( ( (lv_name_2_1= ruleUnrestrictedName | lv_name_2_2= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' )? ( (otherlv_8= '{' ( ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) | ( (lv_ownedContents_10_0= ruleModelElementCS ) ) | ( (lv_ownedReferences_11_0= ruleModelElementRefCS ) ) )+ otherlv_12= '}' ) | otherlv_13= ';' ) ) |
| // InternalOCLinEcore.g:825:2: () otherlv_1= 'annotation' ( ( (lv_name_2_1= ruleUnrestrictedName | lv_name_2_2= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' )? ( (otherlv_8= '{' ( ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) | ( (lv_ownedContents_10_0= ruleModelElementCS ) ) | ( (lv_ownedReferences_11_0= ruleModelElementRefCS ) ) )+ otherlv_12= '}' ) | otherlv_13= ';' ) |
| { |
| // InternalOCLinEcore.g:825:2: () |
| // InternalOCLinEcore.g:826:2: |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| current = forceCreateModelElement( |
| grammarAccess.getAnnotationCSAccess().getAnnotationCSAction_0(), |
| current); |
| |
| } |
| |
| } |
| |
| otherlv_1=(Token)match(input,58,FollowSets000.FOLLOW_18); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getAnnotationCSAccess().getAnnotationKeyword_1()); |
| |
| } |
| // InternalOCLinEcore.g:838:1: ( ( (lv_name_2_1= ruleUnrestrictedName | lv_name_2_2= RULE_SINGLE_QUOTED_STRING ) ) )? |
| int alt18=2; |
| int LA18_0 = input.LA(1); |
| |
| if ( (LA18_0==RULE_SINGLE_QUOTED_STRING||(LA18_0>=RULE_SIMPLE_ID && LA18_0<=RULE_ESCAPED_ID)||LA18_0==17||(LA18_0>=19 && LA18_0<=53)||LA18_0==58||LA18_0==71||(LA18_0>=73 && LA18_0<=74)||LA18_0==76||LA18_0==80) ) { |
| alt18=1; |
| } |
| switch (alt18) { |
| case 1 : |
| // InternalOCLinEcore.g:839:1: ( (lv_name_2_1= ruleUnrestrictedName | lv_name_2_2= RULE_SINGLE_QUOTED_STRING ) ) |
| { |
| // InternalOCLinEcore.g:839:1: ( (lv_name_2_1= ruleUnrestrictedName | lv_name_2_2= RULE_SINGLE_QUOTED_STRING ) ) |
| // InternalOCLinEcore.g:840:1: (lv_name_2_1= ruleUnrestrictedName | lv_name_2_2= RULE_SINGLE_QUOTED_STRING ) |
| { |
| // InternalOCLinEcore.g:840:1: (lv_name_2_1= ruleUnrestrictedName | lv_name_2_2= RULE_SINGLE_QUOTED_STRING ) |
| int alt17=2; |
| int LA17_0 = input.LA(1); |
| |
| if ( ((LA17_0>=RULE_SIMPLE_ID && LA17_0<=RULE_ESCAPED_ID)||LA17_0==17||(LA17_0>=19 && LA17_0<=53)||LA17_0==58||LA17_0==71||(LA17_0>=73 && LA17_0<=74)||LA17_0==76||LA17_0==80) ) { |
| alt17=1; |
| } |
| else if ( (LA17_0==RULE_SINGLE_QUOTED_STRING) ) { |
| alt17=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 17, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt17) { |
| case 1 : |
| // InternalOCLinEcore.g:841:3: lv_name_2_1= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getAnnotationCSAccess().getNameUnrestrictedNameParserRuleCall_2_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_19); |
| lv_name_2_1=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getAnnotationCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_2_1, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:856:8: lv_name_2_2= RULE_SINGLE_QUOTED_STRING |
| { |
| lv_name_2_2=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_19); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_name_2_2, grammarAccess.getAnnotationCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAnnotationCSRule()); |
| } |
| setWithLastConsumed( |
| current, |
| "name", |
| lv_name_2_2, |
| "org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING"); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:874:3: (otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' )? |
| int alt20=2; |
| int LA20_0 = input.LA(1); |
| |
| if ( (LA20_0==54) ) { |
| alt20=1; |
| } |
| switch (alt20) { |
| case 1 : |
| // InternalOCLinEcore.g:874:5: otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' |
| { |
| otherlv_3=(Token)match(input,54,FollowSets000.FOLLOW_20); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_3, grammarAccess.getAnnotationCSAccess().getLeftParenthesisKeyword_3_0()); |
| |
| } |
| // InternalOCLinEcore.g:878:1: ( (lv_ownedDetails_4_0= ruleDetailCS ) ) |
| // InternalOCLinEcore.g:879:1: (lv_ownedDetails_4_0= ruleDetailCS ) |
| { |
| // InternalOCLinEcore.g:879:1: (lv_ownedDetails_4_0= ruleDetailCS ) |
| // InternalOCLinEcore.g:880:3: lv_ownedDetails_4_0= ruleDetailCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_21); |
| lv_ownedDetails_4_0=ruleDetailCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getAnnotationCSRule()); |
| } |
| add( |
| current, |
| "ownedDetails", |
| lv_ownedDetails_4_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.DetailCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:896:2: (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* |
| loop19: |
| do { |
| int alt19=2; |
| int LA19_0 = input.LA(1); |
| |
| if ( (LA19_0==59) ) { |
| alt19=1; |
| } |
| |
| |
| switch (alt19) { |
| case 1 : |
| // InternalOCLinEcore.g:896:4: otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) |
| { |
| otherlv_5=(Token)match(input,59,FollowSets000.FOLLOW_20); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_5, grammarAccess.getAnnotationCSAccess().getCommaKeyword_3_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:900:1: ( (lv_ownedDetails_6_0= ruleDetailCS ) ) |
| // InternalOCLinEcore.g:901:1: (lv_ownedDetails_6_0= ruleDetailCS ) |
| { |
| // InternalOCLinEcore.g:901:1: (lv_ownedDetails_6_0= ruleDetailCS ) |
| // InternalOCLinEcore.g:902:3: lv_ownedDetails_6_0= ruleDetailCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_21); |
| lv_ownedDetails_6_0=ruleDetailCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getAnnotationCSRule()); |
| } |
| add( |
| current, |
| "ownedDetails", |
| lv_ownedDetails_6_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.DetailCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop19; |
| } |
| } while (true); |
| |
| otherlv_7=(Token)match(input,55,FollowSets000.FOLLOW_22); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_7, grammarAccess.getAnnotationCSAccess().getRightParenthesisKeyword_3_3()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:922:3: ( (otherlv_8= '{' ( ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) | ( (lv_ownedContents_10_0= ruleModelElementCS ) ) | ( (lv_ownedReferences_11_0= ruleModelElementRefCS ) ) )+ otherlv_12= '}' ) | otherlv_13= ';' ) |
| int alt22=2; |
| int LA22_0 = input.LA(1); |
| |
| if ( (LA22_0==60) ) { |
| alt22=1; |
| } |
| else if ( (LA22_0==57) ) { |
| alt22=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 22, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt22) { |
| case 1 : |
| // InternalOCLinEcore.g:922:4: (otherlv_8= '{' ( ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) | ( (lv_ownedContents_10_0= ruleModelElementCS ) ) | ( (lv_ownedReferences_11_0= ruleModelElementRefCS ) ) )+ otherlv_12= '}' ) |
| { |
| // InternalOCLinEcore.g:922:4: (otherlv_8= '{' ( ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) | ( (lv_ownedContents_10_0= ruleModelElementCS ) ) | ( (lv_ownedReferences_11_0= ruleModelElementRefCS ) ) )+ otherlv_12= '}' ) |
| // InternalOCLinEcore.g:922:6: otherlv_8= '{' ( ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) | ( (lv_ownedContents_10_0= ruleModelElementCS ) ) | ( (lv_ownedReferences_11_0= ruleModelElementRefCS ) ) )+ otherlv_12= '}' |
| { |
| otherlv_8=(Token)match(input,60,FollowSets000.FOLLOW_23); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_8, grammarAccess.getAnnotationCSAccess().getLeftCurlyBracketKeyword_4_0_0()); |
| |
| } |
| // InternalOCLinEcore.g:926:1: ( ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) | ( (lv_ownedContents_10_0= ruleModelElementCS ) ) | ( (lv_ownedReferences_11_0= ruleModelElementRefCS ) ) )+ |
| int cnt21=0; |
| loop21: |
| do { |
| int alt21=4; |
| switch ( input.LA(1) ) { |
| case 58: |
| case 73: |
| case 80: |
| { |
| alt21=1; |
| } |
| break; |
| case RULE_SIMPLE_ID: |
| case RULE_ESCAPED_ID: |
| case 17: |
| case 19: |
| case 20: |
| case 21: |
| case 22: |
| case 23: |
| case 24: |
| case 25: |
| case 26: |
| case 27: |
| case 28: |
| case 29: |
| case 30: |
| case 31: |
| case 32: |
| case 33: |
| case 34: |
| case 35: |
| case 36: |
| case 37: |
| case 38: |
| case 39: |
| case 40: |
| case 41: |
| case 42: |
| case 43: |
| case 44: |
| case 46: |
| case 47: |
| case 48: |
| case 49: |
| case 50: |
| case 51: |
| case 52: |
| case 74: |
| { |
| alt21=2; |
| } |
| break; |
| case 45: |
| { |
| int LA21_4 = input.LA(2); |
| |
| if ( ((LA21_4>=RULE_SIMPLE_ID && LA21_4<=RULE_ESCAPED_ID)||LA21_4==17||(LA21_4>=19 && LA21_4<=53)||LA21_4==58||LA21_4==71||(LA21_4>=73 && LA21_4<=74)||LA21_4==76||LA21_4==80) ) { |
| alt21=3; |
| } |
| else if ( ((LA21_4>=56 && LA21_4<=57)||LA21_4==60||LA21_4==62) ) { |
| alt21=2; |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| switch (alt21) { |
| case 1 : |
| // InternalOCLinEcore.g:926:2: ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) |
| { |
| // InternalOCLinEcore.g:926:2: ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) |
| // InternalOCLinEcore.g:927:1: (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) |
| { |
| // InternalOCLinEcore.g:927:1: (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) |
| // InternalOCLinEcore.g:928:3: lv_ownedAnnotations_9_0= ruleAnnotationElementCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_0_1_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_24); |
| lv_ownedAnnotations_9_0=ruleAnnotationElementCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getAnnotationCSRule()); |
| } |
| add( |
| current, |
| "ownedAnnotations", |
| lv_ownedAnnotations_9_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:945:6: ( (lv_ownedContents_10_0= ruleModelElementCS ) ) |
| { |
| // InternalOCLinEcore.g:945:6: ( (lv_ownedContents_10_0= ruleModelElementCS ) ) |
| // InternalOCLinEcore.g:946:1: (lv_ownedContents_10_0= ruleModelElementCS ) |
| { |
| // InternalOCLinEcore.g:946:1: (lv_ownedContents_10_0= ruleModelElementCS ) |
| // InternalOCLinEcore.g:947:3: lv_ownedContents_10_0= ruleModelElementCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedContentsModelElementCSParserRuleCall_4_0_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_24); |
| lv_ownedContents_10_0=ruleModelElementCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getAnnotationCSRule()); |
| } |
| add( |
| current, |
| "ownedContents", |
| lv_ownedContents_10_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.ModelElementCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:964:6: ( (lv_ownedReferences_11_0= ruleModelElementRefCS ) ) |
| { |
| // InternalOCLinEcore.g:964:6: ( (lv_ownedReferences_11_0= ruleModelElementRefCS ) ) |
| // InternalOCLinEcore.g:965:1: (lv_ownedReferences_11_0= ruleModelElementRefCS ) |
| { |
| // InternalOCLinEcore.g:965:1: (lv_ownedReferences_11_0= ruleModelElementRefCS ) |
| // InternalOCLinEcore.g:966:3: lv_ownedReferences_11_0= ruleModelElementRefCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedReferencesModelElementRefCSParserRuleCall_4_0_1_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_24); |
| lv_ownedReferences_11_0=ruleModelElementRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getAnnotationCSRule()); |
| } |
| add( |
| current, |
| "ownedReferences", |
| lv_ownedReferences_11_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.ModelElementRefCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| if ( cnt21 >= 1 ) break loop21; |
| if (state.backtracking>0) {state.failed=true; return current;} |
| EarlyExitException eee = |
| new EarlyExitException(21, input); |
| throw eee; |
| } |
| cnt21++; |
| } while (true); |
| |
| otherlv_12=(Token)match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_12, grammarAccess.getAnnotationCSAccess().getRightCurlyBracketKeyword_4_0_2()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:987:7: otherlv_13= ';' |
| { |
| otherlv_13=(Token)match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_13, grammarAccess.getAnnotationCSAccess().getSemicolonKeyword_4_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleAnnotationCS" |
| |
| |
| // $ANTLR start "entryRuleAnnotationElementCS" |
| // InternalOCLinEcore.g:999:1: entryRuleAnnotationElementCS returns [EObject current=null] : iv_ruleAnnotationElementCS= ruleAnnotationElementCS EOF ; |
| public final EObject entryRuleAnnotationElementCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleAnnotationElementCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:1000:2: (iv_ruleAnnotationElementCS= ruleAnnotationElementCS EOF ) |
| // InternalOCLinEcore.g:1001:2: iv_ruleAnnotationElementCS= ruleAnnotationElementCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getAnnotationElementCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleAnnotationElementCS=ruleAnnotationElementCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleAnnotationElementCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleAnnotationElementCS" |
| |
| |
| // $ANTLR start "ruleAnnotationElementCS" |
| // InternalOCLinEcore.g:1008:1: ruleAnnotationElementCS returns [EObject current=null] : (this_AnnotationCS_0= ruleAnnotationCS | this_DocumentationCS_1= ruleDocumentationCS | this_SysMLCS_2= ruleSysMLCS ) ; |
| public final EObject ruleAnnotationElementCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject this_AnnotationCS_0 = null; |
| |
| EObject this_DocumentationCS_1 = null; |
| |
| EObject this_SysMLCS_2 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:1011:28: ( (this_AnnotationCS_0= ruleAnnotationCS | this_DocumentationCS_1= ruleDocumentationCS | this_SysMLCS_2= ruleSysMLCS ) ) |
| // InternalOCLinEcore.g:1012:1: (this_AnnotationCS_0= ruleAnnotationCS | this_DocumentationCS_1= ruleDocumentationCS | this_SysMLCS_2= ruleSysMLCS ) |
| { |
| // InternalOCLinEcore.g:1012:1: (this_AnnotationCS_0= ruleAnnotationCS | this_DocumentationCS_1= ruleDocumentationCS | this_SysMLCS_2= ruleSysMLCS ) |
| int alt23=3; |
| switch ( input.LA(1) ) { |
| case 58: |
| { |
| alt23=1; |
| } |
| break; |
| case 73: |
| { |
| alt23=2; |
| } |
| break; |
| case 80: |
| { |
| alt23=3; |
| } |
| break; |
| default: |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 23, 0, input); |
| |
| throw nvae; |
| } |
| |
| switch (alt23) { |
| case 1 : |
| // InternalOCLinEcore.g:1013:2: this_AnnotationCS_0= ruleAnnotationCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getAnnotationCSParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_AnnotationCS_0=ruleAnnotationCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_AnnotationCS_0; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:1026:2: this_DocumentationCS_1= ruleDocumentationCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getDocumentationCSParserRuleCall_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_DocumentationCS_1=ruleDocumentationCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_DocumentationCS_1; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:1039:2: this_SysMLCS_2= ruleSysMLCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getSysMLCSParserRuleCall_2()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_SysMLCS_2=ruleSysMLCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_SysMLCS_2; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleAnnotationElementCS" |
| |
| |
| // $ANTLR start "entryRuleAttributeCS" |
| // InternalOCLinEcore.g:1058:1: entryRuleAttributeCS returns [EObject current=null] : iv_ruleAttributeCS= ruleAttributeCS EOF ; |
| public final EObject entryRuleAttributeCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleAttributeCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:1059:2: (iv_ruleAttributeCS= ruleAttributeCS EOF ) |
| // InternalOCLinEcore.g:1060:2: iv_ruleAttributeCS= ruleAttributeCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getAttributeCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleAttributeCS=ruleAttributeCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleAttributeCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleAttributeCS" |
| |
| |
| // $ANTLR start "ruleAttributeCS" |
| // InternalOCLinEcore.g:1067:1: ruleAttributeCS returns [EObject current=null] : ( ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? otherlv_4= 'attribute' ( (lv_name_5_0= ruleUnrestrictedName ) ) (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_8= '=' ( (lv_default_9_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_10= '{' ( ( ( (lv_qualifiers_11_0= 'derived' ) ) | ( (lv_qualifiers_12_0= '!derived' ) ) | ( (lv_qualifiers_13_0= 'id' ) ) | ( (lv_qualifiers_14_0= '!id' ) ) | ( (lv_qualifiers_15_0= 'ordered' ) ) | ( (lv_qualifiers_16_0= '!ordered' ) ) | ( (lv_qualifiers_17_0= 'readonly' ) ) | ( (lv_qualifiers_18_0= '!readonly' ) ) | ( (lv_qualifiers_19_0= 'transient' ) ) | ( (lv_qualifiers_20_0= '!transient' ) ) | ( (lv_qualifiers_21_0= 'unique' ) ) | ( (lv_qualifiers_22_0= '!unique' ) ) | ( (lv_qualifiers_23_0= 'unsettable' ) ) | ( (lv_qualifiers_24_0= '!unsettable' ) ) | ( (lv_qualifiers_25_0= 'volatile' ) ) | ( (lv_qualifiers_26_0= '!volatile' ) ) ) (otherlv_27= ',' )? )+ otherlv_28= '}' )? ( (otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | (otherlv_31= 'initial' ( ruleUnrestrictedName )? otherlv_33= ':' ( (lv_ownedDefaultExpressions_34_0= ruleSpecificationCS ) )? otherlv_35= ';' ) | (otherlv_36= 'derivation' ( ruleUnrestrictedName )? otherlv_38= ':' ( (lv_ownedDefaultExpressions_39_0= ruleSpecificationCS ) )? otherlv_40= ';' ) )* otherlv_41= '}' ) | otherlv_42= ';' ) ) ; |
| public final EObject ruleAttributeCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token lv_qualifiers_0_0=null; |
| Token lv_qualifiers_1_0=null; |
| Token lv_qualifiers_2_0=null; |
| Token lv_qualifiers_3_0=null; |
| Token otherlv_4=null; |
| Token otherlv_6=null; |
| Token otherlv_8=null; |
| Token lv_default_9_0=null; |
| Token otherlv_10=null; |
| Token lv_qualifiers_11_0=null; |
| Token lv_qualifiers_12_0=null; |
| Token lv_qualifiers_13_0=null; |
| Token lv_qualifiers_14_0=null; |
| Token lv_qualifiers_15_0=null; |
| Token lv_qualifiers_16_0=null; |
| Token lv_qualifiers_17_0=null; |
| Token lv_qualifiers_18_0=null; |
| Token lv_qualifiers_19_0=null; |
| Token lv_qualifiers_20_0=null; |
| Token lv_qualifiers_21_0=null; |
| Token lv_qualifiers_22_0=null; |
| Token lv_qualifiers_23_0=null; |
| Token lv_qualifiers_24_0=null; |
| Token lv_qualifiers_25_0=null; |
| Token lv_qualifiers_26_0=null; |
| Token otherlv_27=null; |
| Token otherlv_28=null; |
| Token otherlv_29=null; |
| Token otherlv_31=null; |
| Token otherlv_33=null; |
| Token otherlv_35=null; |
| Token otherlv_36=null; |
| Token otherlv_38=null; |
| Token otherlv_40=null; |
| Token otherlv_41=null; |
| Token otherlv_42=null; |
| AntlrDatatypeRuleToken lv_name_5_0 = null; |
| |
| EObject lv_ownedType_7_0 = null; |
| |
| EObject lv_ownedAnnotations_30_0 = null; |
| |
| EObject lv_ownedDefaultExpressions_34_0 = null; |
| |
| EObject lv_ownedDefaultExpressions_39_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:1070:28: ( ( ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? otherlv_4= 'attribute' ( (lv_name_5_0= ruleUnrestrictedName ) ) (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_8= '=' ( (lv_default_9_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_10= '{' ( ( ( (lv_qualifiers_11_0= 'derived' ) ) | ( (lv_qualifiers_12_0= '!derived' ) ) | ( (lv_qualifiers_13_0= 'id' ) ) | ( (lv_qualifiers_14_0= '!id' ) ) | ( (lv_qualifiers_15_0= 'ordered' ) ) | ( (lv_qualifiers_16_0= '!ordered' ) ) | ( (lv_qualifiers_17_0= 'readonly' ) ) | ( (lv_qualifiers_18_0= '!readonly' ) ) | ( (lv_qualifiers_19_0= 'transient' ) ) | ( (lv_qualifiers_20_0= '!transient' ) ) | ( (lv_qualifiers_21_0= 'unique' ) ) | ( (lv_qualifiers_22_0= '!unique' ) ) | ( (lv_qualifiers_23_0= 'unsettable' ) ) | ( (lv_qualifiers_24_0= '!unsettable' ) ) | ( (lv_qualifiers_25_0= 'volatile' ) ) | ( (lv_qualifiers_26_0= '!volatile' ) ) ) (otherlv_27= ',' )? )+ otherlv_28= '}' )? ( (otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | (otherlv_31= 'initial' ( ruleUnrestrictedName )? otherlv_33= ':' ( (lv_ownedDefaultExpressions_34_0= ruleSpecificationCS ) )? otherlv_35= ';' ) | (otherlv_36= 'derivation' ( ruleUnrestrictedName )? otherlv_38= ':' ( (lv_ownedDefaultExpressions_39_0= ruleSpecificationCS ) )? otherlv_40= ';' ) )* otherlv_41= '}' ) | otherlv_42= ';' ) ) ) |
| // InternalOCLinEcore.g:1071:1: ( ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? otherlv_4= 'attribute' ( (lv_name_5_0= ruleUnrestrictedName ) ) (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_8= '=' ( (lv_default_9_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_10= '{' ( ( ( (lv_qualifiers_11_0= 'derived' ) ) | ( (lv_qualifiers_12_0= '!derived' ) ) | ( (lv_qualifiers_13_0= 'id' ) ) | ( (lv_qualifiers_14_0= '!id' ) ) | ( (lv_qualifiers_15_0= 'ordered' ) ) | ( (lv_qualifiers_16_0= '!ordered' ) ) | ( (lv_qualifiers_17_0= 'readonly' ) ) | ( (lv_qualifiers_18_0= '!readonly' ) ) | ( (lv_qualifiers_19_0= 'transient' ) ) | ( (lv_qualifiers_20_0= '!transient' ) ) | ( (lv_qualifiers_21_0= 'unique' ) ) | ( (lv_qualifiers_22_0= '!unique' ) ) | ( (lv_qualifiers_23_0= 'unsettable' ) ) | ( (lv_qualifiers_24_0= '!unsettable' ) ) | ( (lv_qualifiers_25_0= 'volatile' ) ) | ( (lv_qualifiers_26_0= '!volatile' ) ) ) (otherlv_27= ',' )? )+ otherlv_28= '}' )? ( (otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | (otherlv_31= 'initial' ( ruleUnrestrictedName )? otherlv_33= ':' ( (lv_ownedDefaultExpressions_34_0= ruleSpecificationCS ) )? otherlv_35= ';' ) | (otherlv_36= 'derivation' ( ruleUnrestrictedName )? otherlv_38= ':' ( (lv_ownedDefaultExpressions_39_0= ruleSpecificationCS ) )? otherlv_40= ';' ) )* otherlv_41= '}' ) | otherlv_42= ';' ) ) |
| { |
| // InternalOCLinEcore.g:1071:1: ( ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? otherlv_4= 'attribute' ( (lv_name_5_0= ruleUnrestrictedName ) ) (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_8= '=' ( (lv_default_9_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_10= '{' ( ( ( (lv_qualifiers_11_0= 'derived' ) ) | ( (lv_qualifiers_12_0= '!derived' ) ) | ( (lv_qualifiers_13_0= 'id' ) ) | ( (lv_qualifiers_14_0= '!id' ) ) | ( (lv_qualifiers_15_0= 'ordered' ) ) | ( (lv_qualifiers_16_0= '!ordered' ) ) | ( (lv_qualifiers_17_0= 'readonly' ) ) | ( (lv_qualifiers_18_0= '!readonly' ) ) | ( (lv_qualifiers_19_0= 'transient' ) ) | ( (lv_qualifiers_20_0= '!transient' ) ) | ( (lv_qualifiers_21_0= 'unique' ) ) | ( (lv_qualifiers_22_0= '!unique' ) ) | ( (lv_qualifiers_23_0= 'unsettable' ) ) | ( (lv_qualifiers_24_0= '!unsettable' ) ) | ( (lv_qualifiers_25_0= 'volatile' ) ) | ( (lv_qualifiers_26_0= '!volatile' ) ) ) (otherlv_27= ',' )? )+ otherlv_28= '}' )? ( (otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | (otherlv_31= 'initial' ( ruleUnrestrictedName )? otherlv_33= ':' ( (lv_ownedDefaultExpressions_34_0= ruleSpecificationCS ) )? otherlv_35= ';' ) | (otherlv_36= 'derivation' ( ruleUnrestrictedName )? otherlv_38= ':' ( (lv_ownedDefaultExpressions_39_0= ruleSpecificationCS ) )? otherlv_40= ';' ) )* otherlv_41= '}' ) | otherlv_42= ';' ) ) |
| // InternalOCLinEcore.g:1071:2: ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? otherlv_4= 'attribute' ( (lv_name_5_0= ruleUnrestrictedName ) ) (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_8= '=' ( (lv_default_9_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_10= '{' ( ( ( (lv_qualifiers_11_0= 'derived' ) ) | ( (lv_qualifiers_12_0= '!derived' ) ) | ( (lv_qualifiers_13_0= 'id' ) ) | ( (lv_qualifiers_14_0= '!id' ) ) | ( (lv_qualifiers_15_0= 'ordered' ) ) | ( (lv_qualifiers_16_0= '!ordered' ) ) | ( (lv_qualifiers_17_0= 'readonly' ) ) | ( (lv_qualifiers_18_0= '!readonly' ) ) | ( (lv_qualifiers_19_0= 'transient' ) ) | ( (lv_qualifiers_20_0= '!transient' ) ) | ( (lv_qualifiers_21_0= 'unique' ) ) | ( (lv_qualifiers_22_0= '!unique' ) ) | ( (lv_qualifiers_23_0= 'unsettable' ) ) | ( (lv_qualifiers_24_0= '!unsettable' ) ) | ( (lv_qualifiers_25_0= 'volatile' ) ) | ( (lv_qualifiers_26_0= '!volatile' ) ) ) (otherlv_27= ',' )? )+ otherlv_28= '}' )? ( (otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | (otherlv_31= 'initial' ( ruleUnrestrictedName )? otherlv_33= ':' ( (lv_ownedDefaultExpressions_34_0= ruleSpecificationCS ) )? otherlv_35= ';' ) | (otherlv_36= 'derivation' ( ruleUnrestrictedName )? otherlv_38= ':' ( (lv_ownedDefaultExpressions_39_0= ruleSpecificationCS ) )? otherlv_40= ';' ) )* otherlv_41= '}' ) | otherlv_42= ';' ) |
| { |
| // InternalOCLinEcore.g:1071:2: ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? |
| int alt26=3; |
| int LA26_0 = input.LA(1); |
| |
| if ( (LA26_0==47) ) { |
| alt26=1; |
| } |
| else if ( (LA26_0==26) ) { |
| alt26=2; |
| } |
| switch (alt26) { |
| case 1 : |
| // InternalOCLinEcore.g:1071:3: ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) |
| { |
| // InternalOCLinEcore.g:1071:3: ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) |
| // InternalOCLinEcore.g:1071:4: ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? |
| { |
| // InternalOCLinEcore.g:1071:4: ( (lv_qualifiers_0_0= 'static' ) ) |
| // InternalOCLinEcore.g:1072:1: (lv_qualifiers_0_0= 'static' ) |
| { |
| // InternalOCLinEcore.g:1072:1: (lv_qualifiers_0_0= 'static' ) |
| // InternalOCLinEcore.g:1073:3: lv_qualifiers_0_0= 'static' |
| { |
| lv_qualifiers_0_0=(Token)match(input,47,FollowSets000.FOLLOW_25); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_0_0, grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_0_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAttributeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_0_0, "static"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:1086:2: ( (lv_qualifiers_1_0= 'definition' ) )? |
| int alt24=2; |
| int LA24_0 = input.LA(1); |
| |
| if ( (LA24_0==26) ) { |
| alt24=1; |
| } |
| switch (alt24) { |
| case 1 : |
| // InternalOCLinEcore.g:1087:1: (lv_qualifiers_1_0= 'definition' ) |
| { |
| // InternalOCLinEcore.g:1087:1: (lv_qualifiers_1_0= 'definition' ) |
| // InternalOCLinEcore.g:1088:3: lv_qualifiers_1_0= 'definition' |
| { |
| lv_qualifiers_1_0=(Token)match(input,26,FollowSets000.FOLLOW_26); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_1_0, grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_0_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAttributeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_1_0, "definition"); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:1102:6: ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) |
| { |
| // InternalOCLinEcore.g:1102:6: ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) |
| // InternalOCLinEcore.g:1102:7: ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? |
| { |
| // InternalOCLinEcore.g:1102:7: ( (lv_qualifiers_2_0= 'definition' ) ) |
| // InternalOCLinEcore.g:1103:1: (lv_qualifiers_2_0= 'definition' ) |
| { |
| // InternalOCLinEcore.g:1103:1: (lv_qualifiers_2_0= 'definition' ) |
| // InternalOCLinEcore.g:1104:3: lv_qualifiers_2_0= 'definition' |
| { |
| lv_qualifiers_2_0=(Token)match(input,26,FollowSets000.FOLLOW_27); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_2_0, grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_1_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAttributeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_2_0, "definition"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:1117:2: ( (lv_qualifiers_3_0= 'static' ) )? |
| int alt25=2; |
| int LA25_0 = input.LA(1); |
| |
| if ( (LA25_0==47) ) { |
| alt25=1; |
| } |
| switch (alt25) { |
| case 1 : |
| // InternalOCLinEcore.g:1118:1: (lv_qualifiers_3_0= 'static' ) |
| { |
| // InternalOCLinEcore.g:1118:1: (lv_qualifiers_3_0= 'static' ) |
| // InternalOCLinEcore.g:1119:3: lv_qualifiers_3_0= 'static' |
| { |
| lv_qualifiers_3_0=(Token)match(input,47,FollowSets000.FOLLOW_26); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_3_0, grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_1_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAttributeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_3_0, "static"); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_4=(Token)match(input,20,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_4, grammarAccess.getAttributeCSAccess().getAttributeKeyword_1()); |
| |
| } |
| // InternalOCLinEcore.g:1136:1: ( (lv_name_5_0= ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:1137:1: (lv_name_5_0= ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:1137:1: (lv_name_5_0= ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:1138:3: lv_name_5_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getAttributeCSAccess().getNameUnrestrictedNameParserRuleCall_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_28); |
| lv_name_5_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getAttributeCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_5_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:1154:2: (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypedMultiplicityRefCS ) ) )? |
| int alt27=2; |
| int LA27_0 = input.LA(1); |
| |
| if ( (LA27_0==56) ) { |
| alt27=1; |
| } |
| switch (alt27) { |
| case 1 : |
| // InternalOCLinEcore.g:1154:4: otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypedMultiplicityRefCS ) ) |
| { |
| otherlv_6=(Token)match(input,56,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_6, grammarAccess.getAttributeCSAccess().getColonKeyword_3_0()); |
| |
| } |
| // InternalOCLinEcore.g:1158:1: ( (lv_ownedType_7_0= ruleTypedMultiplicityRefCS ) ) |
| // InternalOCLinEcore.g:1159:1: (lv_ownedType_7_0= ruleTypedMultiplicityRefCS ) |
| { |
| // InternalOCLinEcore.g:1159:1: (lv_ownedType_7_0= ruleTypedMultiplicityRefCS ) |
| // InternalOCLinEcore.g:1160:3: lv_ownedType_7_0= ruleTypedMultiplicityRefCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getAttributeCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_3_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_30); |
| lv_ownedType_7_0=ruleTypedMultiplicityRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getAttributeCSRule()); |
| } |
| set( |
| current, |
| "ownedType", |
| lv_ownedType_7_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedMultiplicityRefCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:1176:4: (otherlv_8= '=' ( (lv_default_9_0= RULE_SINGLE_QUOTED_STRING ) ) )? |
| int alt28=2; |
| int LA28_0 = input.LA(1); |
| |
| if ( (LA28_0==62) ) { |
| alt28=1; |
| } |
| switch (alt28) { |
| case 1 : |
| // InternalOCLinEcore.g:1176:6: otherlv_8= '=' ( (lv_default_9_0= RULE_SINGLE_QUOTED_STRING ) ) |
| { |
| otherlv_8=(Token)match(input,62,FollowSets000.FOLLOW_31); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_8, grammarAccess.getAttributeCSAccess().getEqualsSignKeyword_4_0()); |
| |
| } |
| // InternalOCLinEcore.g:1180:1: ( (lv_default_9_0= RULE_SINGLE_QUOTED_STRING ) ) |
| // InternalOCLinEcore.g:1181:1: (lv_default_9_0= RULE_SINGLE_QUOTED_STRING ) |
| { |
| // InternalOCLinEcore.g:1181:1: (lv_default_9_0= RULE_SINGLE_QUOTED_STRING ) |
| // InternalOCLinEcore.g:1182:3: lv_default_9_0= RULE_SINGLE_QUOTED_STRING |
| { |
| lv_default_9_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_22); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_default_9_0, grammarAccess.getAttributeCSAccess().getDefaultSINGLE_QUOTED_STRINGTerminalRuleCall_4_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAttributeCSRule()); |
| } |
| setWithLastConsumed( |
| current, |
| "default", |
| lv_default_9_0, |
| "org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:1198:4: (otherlv_10= '{' ( ( ( (lv_qualifiers_11_0= 'derived' ) ) | ( (lv_qualifiers_12_0= '!derived' ) ) | ( (lv_qualifiers_13_0= 'id' ) ) | ( (lv_qualifiers_14_0= '!id' ) ) | ( (lv_qualifiers_15_0= 'ordered' ) ) | ( (lv_qualifiers_16_0= '!ordered' ) ) | ( (lv_qualifiers_17_0= 'readonly' ) ) | ( (lv_qualifiers_18_0= '!readonly' ) ) | ( (lv_qualifiers_19_0= 'transient' ) ) | ( (lv_qualifiers_20_0= '!transient' ) ) | ( (lv_qualifiers_21_0= 'unique' ) ) | ( (lv_qualifiers_22_0= '!unique' ) ) | ( (lv_qualifiers_23_0= 'unsettable' ) ) | ( (lv_qualifiers_24_0= '!unsettable' ) ) | ( (lv_qualifiers_25_0= 'volatile' ) ) | ( (lv_qualifiers_26_0= '!volatile' ) ) ) (otherlv_27= ',' )? )+ otherlv_28= '}' )? |
| int alt32=2; |
| int LA32_0 = input.LA(1); |
| |
| if ( (LA32_0==60) ) { |
| int LA32_1 = input.LA(2); |
| |
| if ( (LA32_1==28||LA32_1==31||LA32_1==38||LA32_1==44||(LA32_1>=49 && LA32_1<=52)||(LA32_1>=63 && LA32_1<=70)) ) { |
| alt32=1; |
| } |
| } |
| switch (alt32) { |
| case 1 : |
| // InternalOCLinEcore.g:1198:6: otherlv_10= '{' ( ( ( (lv_qualifiers_11_0= 'derived' ) ) | ( (lv_qualifiers_12_0= '!derived' ) ) | ( (lv_qualifiers_13_0= 'id' ) ) | ( (lv_qualifiers_14_0= '!id' ) ) | ( (lv_qualifiers_15_0= 'ordered' ) ) | ( (lv_qualifiers_16_0= '!ordered' ) ) | ( (lv_qualifiers_17_0= 'readonly' ) ) | ( (lv_qualifiers_18_0= '!readonly' ) ) | ( (lv_qualifiers_19_0= 'transient' ) ) | ( (lv_qualifiers_20_0= '!transient' ) ) | ( (lv_qualifiers_21_0= 'unique' ) ) | ( (lv_qualifiers_22_0= '!unique' ) ) | ( (lv_qualifiers_23_0= 'unsettable' ) ) | ( (lv_qualifiers_24_0= '!unsettable' ) ) | ( (lv_qualifiers_25_0= 'volatile' ) ) | ( (lv_qualifiers_26_0= '!volatile' ) ) ) (otherlv_27= ',' )? )+ otherlv_28= '}' |
| { |
| otherlv_10=(Token)match(input,60,FollowSets000.FOLLOW_32); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_10, grammarAccess.getAttributeCSAccess().getLeftCurlyBracketKeyword_5_0()); |
| |
| } |
| // InternalOCLinEcore.g:1202:1: ( ( ( (lv_qualifiers_11_0= 'derived' ) ) | ( (lv_qualifiers_12_0= '!derived' ) ) | ( (lv_qualifiers_13_0= 'id' ) ) | ( (lv_qualifiers_14_0= '!id' ) ) | ( (lv_qualifiers_15_0= 'ordered' ) ) | ( (lv_qualifiers_16_0= '!ordered' ) ) | ( (lv_qualifiers_17_0= 'readonly' ) ) | ( (lv_qualifiers_18_0= '!readonly' ) ) | ( (lv_qualifiers_19_0= 'transient' ) ) | ( (lv_qualifiers_20_0= '!transient' ) ) | ( (lv_qualifiers_21_0= 'unique' ) ) | ( (lv_qualifiers_22_0= '!unique' ) ) | ( (lv_qualifiers_23_0= 'unsettable' ) ) | ( (lv_qualifiers_24_0= '!unsettable' ) ) | ( (lv_qualifiers_25_0= 'volatile' ) ) | ( (lv_qualifiers_26_0= '!volatile' ) ) ) (otherlv_27= ',' )? )+ |
| int cnt31=0; |
| loop31: |
| do { |
| int alt31=2; |
| int LA31_0 = input.LA(1); |
| |
| if ( (LA31_0==28||LA31_0==31||LA31_0==38||LA31_0==44||(LA31_0>=49 && LA31_0<=52)||(LA31_0>=63 && LA31_0<=70)) ) { |
| alt31=1; |
| } |
| |
| |
| switch (alt31) { |
| case 1 : |
| // InternalOCLinEcore.g:1202:2: ( ( (lv_qualifiers_11_0= 'derived' ) ) | ( (lv_qualifiers_12_0= '!derived' ) ) | ( (lv_qualifiers_13_0= 'id' ) ) | ( (lv_qualifiers_14_0= '!id' ) ) | ( (lv_qualifiers_15_0= 'ordered' ) ) | ( (lv_qualifiers_16_0= '!ordered' ) ) | ( (lv_qualifiers_17_0= 'readonly' ) ) | ( (lv_qualifiers_18_0= '!readonly' ) ) | ( (lv_qualifiers_19_0= 'transient' ) ) | ( (lv_qualifiers_20_0= '!transient' ) ) | ( (lv_qualifiers_21_0= 'unique' ) ) | ( (lv_qualifiers_22_0= '!unique' ) ) | ( (lv_qualifiers_23_0= 'unsettable' ) ) | ( (lv_qualifiers_24_0= '!unsettable' ) ) | ( (lv_qualifiers_25_0= 'volatile' ) ) | ( (lv_qualifiers_26_0= '!volatile' ) ) ) (otherlv_27= ',' )? |
| { |
| // InternalOCLinEcore.g:1202:2: ( ( (lv_qualifiers_11_0= 'derived' ) ) | ( (lv_qualifiers_12_0= '!derived' ) ) | ( (lv_qualifiers_13_0= 'id' ) ) | ( (lv_qualifiers_14_0= '!id' ) ) | ( (lv_qualifiers_15_0= 'ordered' ) ) | ( (lv_qualifiers_16_0= '!ordered' ) ) | ( (lv_qualifiers_17_0= 'readonly' ) ) | ( (lv_qualifiers_18_0= '!readonly' ) ) | ( (lv_qualifiers_19_0= 'transient' ) ) | ( (lv_qualifiers_20_0= '!transient' ) ) | ( (lv_qualifiers_21_0= 'unique' ) ) | ( (lv_qualifiers_22_0= '!unique' ) ) | ( (lv_qualifiers_23_0= 'unsettable' ) ) | ( (lv_qualifiers_24_0= '!unsettable' ) ) | ( (lv_qualifiers_25_0= 'volatile' ) ) | ( (lv_qualifiers_26_0= '!volatile' ) ) ) |
| int alt29=16; |
| switch ( input.LA(1) ) { |
| case 28: |
| { |
| alt29=1; |
| } |
| break; |
| case 63: |
| { |
| alt29=2; |
| } |
| break; |
| case 31: |
| { |
| alt29=3; |
| } |
| break; |
| case 64: |
| { |
| alt29=4; |
| } |
| break; |
| case 38: |
| { |
| alt29=5; |
| } |
| break; |
| case 65: |
| { |
| alt29=6; |
| } |
| break; |
| case 44: |
| { |
| alt29=7; |
| } |
| break; |
| case 66: |
| { |
| alt29=8; |
| } |
| break; |
| case 49: |
| { |
| alt29=9; |
| } |
| break; |
| case 67: |
| { |
| alt29=10; |
| } |
| break; |
| case 50: |
| { |
| alt29=11; |
| } |
| break; |
| case 68: |
| { |
| alt29=12; |
| } |
| break; |
| case 51: |
| { |
| alt29=13; |
| } |
| break; |
| case 69: |
| { |
| alt29=14; |
| } |
| break; |
| case 52: |
| { |
| alt29=15; |
| } |
| break; |
| case 70: |
| { |
| alt29=16; |
| } |
| break; |
| default: |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 29, 0, input); |
| |
| throw nvae; |
| } |
| |
| switch (alt29) { |
| case 1 : |
| // InternalOCLinEcore.g:1202:3: ( (lv_qualifiers_11_0= 'derived' ) ) |
| { |
| // InternalOCLinEcore.g:1202:3: ( (lv_qualifiers_11_0= 'derived' ) ) |
| // InternalOCLinEcore.g:1203:1: (lv_qualifiers_11_0= 'derived' ) |
| { |
| // InternalOCLinEcore.g:1203:1: (lv_qualifiers_11_0= 'derived' ) |
| // InternalOCLinEcore.g:1204:3: lv_qualifiers_11_0= 'derived' |
| { |
| lv_qualifiers_11_0=(Token)match(input,28,FollowSets000.FOLLOW_33); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_11_0, grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAttributeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_11_0, "derived"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:1218:6: ( (lv_qualifiers_12_0= '!derived' ) ) |
| { |
| // InternalOCLinEcore.g:1218:6: ( (lv_qualifiers_12_0= '!derived' ) ) |
| // InternalOCLinEcore.g:1219:1: (lv_qualifiers_12_0= '!derived' ) |
| { |
| // InternalOCLinEcore.g:1219:1: (lv_qualifiers_12_0= '!derived' ) |
| // InternalOCLinEcore.g:1220:3: lv_qualifiers_12_0= '!derived' |
| { |
| lv_qualifiers_12_0=(Token)match(input,63,FollowSets000.FOLLOW_33); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_12_0, grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAttributeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_12_0, "!derived"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:1234:6: ( (lv_qualifiers_13_0= 'id' ) ) |
| { |
| // InternalOCLinEcore.g:1234:6: ( (lv_qualifiers_13_0= 'id' ) ) |
| // InternalOCLinEcore.g:1235:1: (lv_qualifiers_13_0= 'id' ) |
| { |
| // InternalOCLinEcore.g:1235:1: (lv_qualifiers_13_0= 'id' ) |
| // InternalOCLinEcore.g:1236:3: lv_qualifiers_13_0= 'id' |
| { |
| lv_qualifiers_13_0=(Token)match(input,31,FollowSets000.FOLLOW_33); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_13_0, grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_2_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAttributeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_13_0, "id"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 4 : |
| // InternalOCLinEcore.g:1250:6: ( (lv_qualifiers_14_0= '!id' ) ) |
| { |
| // InternalOCLinEcore.g:1250:6: ( (lv_qualifiers_14_0= '!id' ) ) |
| // InternalOCLinEcore.g:1251:1: (lv_qualifiers_14_0= '!id' ) |
| { |
| // InternalOCLinEcore.g:1251:1: (lv_qualifiers_14_0= '!id' ) |
| // InternalOCLinEcore.g:1252:3: lv_qualifiers_14_0= '!id' |
| { |
| lv_qualifiers_14_0=(Token)match(input,64,FollowSets000.FOLLOW_33); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_14_0, grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_3_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAttributeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_14_0, "!id"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 5 : |
| // InternalOCLinEcore.g:1266:6: ( (lv_qualifiers_15_0= 'ordered' ) ) |
| { |
| // InternalOCLinEcore.g:1266:6: ( (lv_qualifiers_15_0= 'ordered' ) ) |
| // InternalOCLinEcore.g:1267:1: (lv_qualifiers_15_0= 'ordered' ) |
| { |
| // InternalOCLinEcore.g:1267:1: (lv_qualifiers_15_0= 'ordered' ) |
| // InternalOCLinEcore.g:1268:3: lv_qualifiers_15_0= 'ordered' |
| { |
| lv_qualifiers_15_0=(Token)match(input,38,FollowSets000.FOLLOW_33); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_15_0, grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_4_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAttributeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_15_0, "ordered"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 6 : |
| // InternalOCLinEcore.g:1282:6: ( (lv_qualifiers_16_0= '!ordered' ) ) |
| { |
| // InternalOCLinEcore.g:1282:6: ( (lv_qualifiers_16_0= '!ordered' ) ) |
| // InternalOCLinEcore.g:1283:1: (lv_qualifiers_16_0= '!ordered' ) |
| { |
| // InternalOCLinEcore.g:1283:1: (lv_qualifiers_16_0= '!ordered' ) |
| // InternalOCLinEcore.g:1284:3: lv_qualifiers_16_0= '!ordered' |
| { |
| lv_qualifiers_16_0=(Token)match(input,65,FollowSets000.FOLLOW_33); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_16_0, grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_5_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAttributeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_16_0, "!ordered"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 7 : |
| // InternalOCLinEcore.g:1298:6: ( (lv_qualifiers_17_0= 'readonly' ) ) |
| { |
| // InternalOCLinEcore.g:1298:6: ( (lv_qualifiers_17_0= 'readonly' ) ) |
| // InternalOCLinEcore.g:1299:1: (lv_qualifiers_17_0= 'readonly' ) |
| { |
| // InternalOCLinEcore.g:1299:1: (lv_qualifiers_17_0= 'readonly' ) |
| // InternalOCLinEcore.g:1300:3: lv_qualifiers_17_0= 'readonly' |
| { |
| lv_qualifiers_17_0=(Token)match(input,44,FollowSets000.FOLLOW_33); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_17_0, grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_6_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAttributeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_17_0, "readonly"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 8 : |
| // InternalOCLinEcore.g:1314:6: ( (lv_qualifiers_18_0= '!readonly' ) ) |
| { |
| // InternalOCLinEcore.g:1314:6: ( (lv_qualifiers_18_0= '!readonly' ) ) |
| // InternalOCLinEcore.g:1315:1: (lv_qualifiers_18_0= '!readonly' ) |
| { |
| // InternalOCLinEcore.g:1315:1: (lv_qualifiers_18_0= '!readonly' ) |
| // InternalOCLinEcore.g:1316:3: lv_qualifiers_18_0= '!readonly' |
| { |
| lv_qualifiers_18_0=(Token)match(input,66,FollowSets000.FOLLOW_33); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_18_0, grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_7_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAttributeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_18_0, "!readonly"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 9 : |
| // InternalOCLinEcore.g:1330:6: ( (lv_qualifiers_19_0= 'transient' ) ) |
| { |
| // InternalOCLinEcore.g:1330:6: ( (lv_qualifiers_19_0= 'transient' ) ) |
| // InternalOCLinEcore.g:1331:1: (lv_qualifiers_19_0= 'transient' ) |
| { |
| // InternalOCLinEcore.g:1331:1: (lv_qualifiers_19_0= 'transient' ) |
| // InternalOCLinEcore.g:1332:3: lv_qualifiers_19_0= 'transient' |
| { |
| lv_qualifiers_19_0=(Token)match(input,49,FollowSets000.FOLLOW_33); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_19_0, grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_8_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAttributeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_19_0, "transient"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 10 : |
| // InternalOCLinEcore.g:1346:6: ( (lv_qualifiers_20_0= '!transient' ) ) |
| { |
| // InternalOCLinEcore.g:1346:6: ( (lv_qualifiers_20_0= '!transient' ) ) |
| // InternalOCLinEcore.g:1347:1: (lv_qualifiers_20_0= '!transient' ) |
| { |
| // InternalOCLinEcore.g:1347:1: (lv_qualifiers_20_0= '!transient' ) |
| // InternalOCLinEcore.g:1348:3: lv_qualifiers_20_0= '!transient' |
| { |
| lv_qualifiers_20_0=(Token)match(input,67,FollowSets000.FOLLOW_33); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_20_0, grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_9_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAttributeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_20_0, "!transient"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 11 : |
| // InternalOCLinEcore.g:1362:6: ( (lv_qualifiers_21_0= 'unique' ) ) |
| { |
| // InternalOCLinEcore.g:1362:6: ( (lv_qualifiers_21_0= 'unique' ) ) |
| // InternalOCLinEcore.g:1363:1: (lv_qualifiers_21_0= 'unique' ) |
| { |
| // InternalOCLinEcore.g:1363:1: (lv_qualifiers_21_0= 'unique' ) |
| // InternalOCLinEcore.g:1364:3: lv_qualifiers_21_0= 'unique' |
| { |
| lv_qualifiers_21_0=(Token)match(input,50,FollowSets000.FOLLOW_33); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_21_0, grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_10_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAttributeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_21_0, "unique"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 12 : |
| // InternalOCLinEcore.g:1378:6: ( (lv_qualifiers_22_0= '!unique' ) ) |
| { |
| // InternalOCLinEcore.g:1378:6: ( (lv_qualifiers_22_0= '!unique' ) ) |
| // InternalOCLinEcore.g:1379:1: (lv_qualifiers_22_0= '!unique' ) |
| { |
| // InternalOCLinEcore.g:1379:1: (lv_qualifiers_22_0= '!unique' ) |
| // InternalOCLinEcore.g:1380:3: lv_qualifiers_22_0= '!unique' |
| { |
| lv_qualifiers_22_0=(Token)match(input,68,FollowSets000.FOLLOW_33); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_22_0, grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_11_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAttributeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_22_0, "!unique"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 13 : |
| // InternalOCLinEcore.g:1394:6: ( (lv_qualifiers_23_0= 'unsettable' ) ) |
| { |
| // InternalOCLinEcore.g:1394:6: ( (lv_qualifiers_23_0= 'unsettable' ) ) |
| // InternalOCLinEcore.g:1395:1: (lv_qualifiers_23_0= 'unsettable' ) |
| { |
| // InternalOCLinEcore.g:1395:1: (lv_qualifiers_23_0= 'unsettable' ) |
| // InternalOCLinEcore.g:1396:3: lv_qualifiers_23_0= 'unsettable' |
| { |
| lv_qualifiers_23_0=(Token)match(input,51,FollowSets000.FOLLOW_33); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_23_0, grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_12_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAttributeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_23_0, "unsettable"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 14 : |
| // InternalOCLinEcore.g:1410:6: ( (lv_qualifiers_24_0= '!unsettable' ) ) |
| { |
| // InternalOCLinEcore.g:1410:6: ( (lv_qualifiers_24_0= '!unsettable' ) ) |
| // InternalOCLinEcore.g:1411:1: (lv_qualifiers_24_0= '!unsettable' ) |
| { |
| // InternalOCLinEcore.g:1411:1: (lv_qualifiers_24_0= '!unsettable' ) |
| // InternalOCLinEcore.g:1412:3: lv_qualifiers_24_0= '!unsettable' |
| { |
| lv_qualifiers_24_0=(Token)match(input,69,FollowSets000.FOLLOW_33); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_24_0, grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_13_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAttributeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_24_0, "!unsettable"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 15 : |
| // InternalOCLinEcore.g:1426:6: ( (lv_qualifiers_25_0= 'volatile' ) ) |
| { |
| // InternalOCLinEcore.g:1426:6: ( (lv_qualifiers_25_0= 'volatile' ) ) |
| // InternalOCLinEcore.g:1427:1: (lv_qualifiers_25_0= 'volatile' ) |
| { |
| // InternalOCLinEcore.g:1427:1: (lv_qualifiers_25_0= 'volatile' ) |
| // InternalOCLinEcore.g:1428:3: lv_qualifiers_25_0= 'volatile' |
| { |
| lv_qualifiers_25_0=(Token)match(input,52,FollowSets000.FOLLOW_33); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_25_0, grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_14_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAttributeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_25_0, "volatile"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 16 : |
| // InternalOCLinEcore.g:1442:6: ( (lv_qualifiers_26_0= '!volatile' ) ) |
| { |
| // InternalOCLinEcore.g:1442:6: ( (lv_qualifiers_26_0= '!volatile' ) ) |
| // InternalOCLinEcore.g:1443:1: (lv_qualifiers_26_0= '!volatile' ) |
| { |
| // InternalOCLinEcore.g:1443:1: (lv_qualifiers_26_0= '!volatile' ) |
| // InternalOCLinEcore.g:1444:3: lv_qualifiers_26_0= '!volatile' |
| { |
| lv_qualifiers_26_0=(Token)match(input,70,FollowSets000.FOLLOW_33); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_26_0, grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_15_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getAttributeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_26_0, "!volatile"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:1457:3: (otherlv_27= ',' )? |
| int alt30=2; |
| int LA30_0 = input.LA(1); |
| |
| if ( (LA30_0==59) ) { |
| alt30=1; |
| } |
| switch (alt30) { |
| case 1 : |
| // InternalOCLinEcore.g:1457:5: otherlv_27= ',' |
| { |
| otherlv_27=(Token)match(input,59,FollowSets000.FOLLOW_34); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_27, grammarAccess.getAttributeCSAccess().getCommaKeyword_5_1_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| if ( cnt31 >= 1 ) break loop31; |
| if (state.backtracking>0) {state.failed=true; return current;} |
| EarlyExitException eee = |
| new EarlyExitException(31, input); |
| throw eee; |
| } |
| cnt31++; |
| } while (true); |
| |
| otherlv_28=(Token)match(input,61,FollowSets000.FOLLOW_22); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_28, grammarAccess.getAttributeCSAccess().getRightCurlyBracketKeyword_5_2()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:1465:3: ( (otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | (otherlv_31= 'initial' ( ruleUnrestrictedName )? otherlv_33= ':' ( (lv_ownedDefaultExpressions_34_0= ruleSpecificationCS ) )? otherlv_35= ';' ) | (otherlv_36= 'derivation' ( ruleUnrestrictedName )? otherlv_38= ':' ( (lv_ownedDefaultExpressions_39_0= ruleSpecificationCS ) )? otherlv_40= ';' ) )* otherlv_41= '}' ) | otherlv_42= ';' ) |
| int alt38=2; |
| int LA38_0 = input.LA(1); |
| |
| if ( (LA38_0==60) ) { |
| alt38=1; |
| } |
| else if ( (LA38_0==57) ) { |
| alt38=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 38, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt38) { |
| case 1 : |
| // InternalOCLinEcore.g:1465:4: (otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | (otherlv_31= 'initial' ( ruleUnrestrictedName )? otherlv_33= ':' ( (lv_ownedDefaultExpressions_34_0= ruleSpecificationCS ) )? otherlv_35= ';' ) | (otherlv_36= 'derivation' ( ruleUnrestrictedName )? otherlv_38= ':' ( (lv_ownedDefaultExpressions_39_0= ruleSpecificationCS ) )? otherlv_40= ';' ) )* otherlv_41= '}' ) |
| { |
| // InternalOCLinEcore.g:1465:4: (otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | (otherlv_31= 'initial' ( ruleUnrestrictedName )? otherlv_33= ':' ( (lv_ownedDefaultExpressions_34_0= ruleSpecificationCS ) )? otherlv_35= ';' ) | (otherlv_36= 'derivation' ( ruleUnrestrictedName )? otherlv_38= ':' ( (lv_ownedDefaultExpressions_39_0= ruleSpecificationCS ) )? otherlv_40= ';' ) )* otherlv_41= '}' ) |
| // InternalOCLinEcore.g:1465:6: otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | (otherlv_31= 'initial' ( ruleUnrestrictedName )? otherlv_33= ':' ( (lv_ownedDefaultExpressions_34_0= ruleSpecificationCS ) )? otherlv_35= ';' ) | (otherlv_36= 'derivation' ( ruleUnrestrictedName )? otherlv_38= ':' ( (lv_ownedDefaultExpressions_39_0= ruleSpecificationCS ) )? otherlv_40= ';' ) )* otherlv_41= '}' |
| { |
| otherlv_29=(Token)match(input,60,FollowSets000.FOLLOW_35); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_29, grammarAccess.getAttributeCSAccess().getLeftCurlyBracketKeyword_6_0_0()); |
| |
| } |
| // InternalOCLinEcore.g:1469:1: ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | (otherlv_31= 'initial' ( ruleUnrestrictedName )? otherlv_33= ':' ( (lv_ownedDefaultExpressions_34_0= ruleSpecificationCS ) )? otherlv_35= ';' ) | (otherlv_36= 'derivation' ( ruleUnrestrictedName )? otherlv_38= ':' ( (lv_ownedDefaultExpressions_39_0= ruleSpecificationCS ) )? otherlv_40= ';' ) )* |
| loop37: |
| do { |
| int alt37=4; |
| switch ( input.LA(1) ) { |
| case 58: |
| case 73: |
| case 80: |
| { |
| alt37=1; |
| } |
| break; |
| case 33: |
| { |
| alt37=2; |
| } |
| break; |
| case 27: |
| { |
| alt37=3; |
| } |
| break; |
| |
| } |
| |
| switch (alt37) { |
| case 1 : |
| // InternalOCLinEcore.g:1469:2: ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) |
| { |
| // InternalOCLinEcore.g:1469:2: ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) |
| // InternalOCLinEcore.g:1470:1: (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) |
| { |
| // InternalOCLinEcore.g:1470:1: (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) |
| // InternalOCLinEcore.g:1471:3: lv_ownedAnnotations_30_0= ruleAnnotationElementCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getAttributeCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_35); |
| lv_ownedAnnotations_30_0=ruleAnnotationElementCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getAttributeCSRule()); |
| } |
| add( |
| current, |
| "ownedAnnotations", |
| lv_ownedAnnotations_30_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:1488:6: (otherlv_31= 'initial' ( ruleUnrestrictedName )? otherlv_33= ':' ( (lv_ownedDefaultExpressions_34_0= ruleSpecificationCS ) )? otherlv_35= ';' ) |
| { |
| // InternalOCLinEcore.g:1488:6: (otherlv_31= 'initial' ( ruleUnrestrictedName )? otherlv_33= ':' ( (lv_ownedDefaultExpressions_34_0= ruleSpecificationCS ) )? otherlv_35= ';' ) |
| // InternalOCLinEcore.g:1488:8: otherlv_31= 'initial' ( ruleUnrestrictedName )? otherlv_33= ':' ( (lv_ownedDefaultExpressions_34_0= ruleSpecificationCS ) )? otherlv_35= ';' |
| { |
| otherlv_31=(Token)match(input,33,FollowSets000.FOLLOW_15); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_31, grammarAccess.getAttributeCSAccess().getInitialKeyword_6_0_1_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:1492:1: ( ruleUnrestrictedName )? |
| int alt33=2; |
| int LA33_0 = input.LA(1); |
| |
| if ( ((LA33_0>=RULE_SIMPLE_ID && LA33_0<=RULE_ESCAPED_ID)||LA33_0==17||(LA33_0>=19 && LA33_0<=53)||LA33_0==58||LA33_0==71||(LA33_0>=73 && LA33_0<=74)||LA33_0==76||LA33_0==80) ) { |
| alt33=1; |
| } |
| switch (alt33) { |
| case 1 : |
| // InternalOCLinEcore.g:1493:2: ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getAttributeCSAccess().getUnrestrictedNameParserRuleCall_6_0_1_1_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_17); |
| ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_33=(Token)match(input,56,FollowSets000.FOLLOW_13); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_33, grammarAccess.getAttributeCSAccess().getColonKeyword_6_0_1_1_2()); |
| |
| } |
| // InternalOCLinEcore.g:1507:1: ( (lv_ownedDefaultExpressions_34_0= ruleSpecificationCS ) )? |
| int alt34=2; |
| int LA34_0 = input.LA(1); |
| |
| if ( ((LA34_0>=RULE_INT && LA34_0<=RULE_SINGLE_QUOTED_STRING)||(LA34_0>=RULE_UNQUOTED_STRING && LA34_0<=RULE_ESCAPED_ID)||(LA34_0>=17 && LA34_0<=54)||LA34_0==58||LA34_0==71||(LA34_0>=73 && LA34_0<=74)||LA34_0==76||LA34_0==80||(LA34_0>=83 && LA34_0<=84)||(LA34_0>=98 && LA34_0<=99)||(LA34_0>=101 && LA34_0<=113)||LA34_0==116||(LA34_0>=118 && LA34_0<=121)||LA34_0==128||(LA34_0>=133 && LA34_0<=134)) ) { |
| alt34=1; |
| } |
| switch (alt34) { |
| case 1 : |
| // InternalOCLinEcore.g:1508:1: (lv_ownedDefaultExpressions_34_0= ruleSpecificationCS ) |
| { |
| // InternalOCLinEcore.g:1508:1: (lv_ownedDefaultExpressions_34_0= ruleSpecificationCS ) |
| // InternalOCLinEcore.g:1509:3: lv_ownedDefaultExpressions_34_0= ruleSpecificationCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_6_0_1_1_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_14); |
| lv_ownedDefaultExpressions_34_0=ruleSpecificationCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getAttributeCSRule()); |
| } |
| add( |
| current, |
| "ownedDefaultExpressions", |
| lv_ownedDefaultExpressions_34_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_35=(Token)match(input,57,FollowSets000.FOLLOW_35); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_35, grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_0_1_1_4()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:1530:6: (otherlv_36= 'derivation' ( ruleUnrestrictedName )? otherlv_38= ':' ( (lv_ownedDefaultExpressions_39_0= ruleSpecificationCS ) )? otherlv_40= ';' ) |
| { |
| // InternalOCLinEcore.g:1530:6: (otherlv_36= 'derivation' ( ruleUnrestrictedName )? otherlv_38= ':' ( (lv_ownedDefaultExpressions_39_0= ruleSpecificationCS ) )? otherlv_40= ';' ) |
| // InternalOCLinEcore.g:1530:8: otherlv_36= 'derivation' ( ruleUnrestrictedName )? otherlv_38= ':' ( (lv_ownedDefaultExpressions_39_0= ruleSpecificationCS ) )? otherlv_40= ';' |
| { |
| otherlv_36=(Token)match(input,27,FollowSets000.FOLLOW_15); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_36, grammarAccess.getAttributeCSAccess().getDerivationKeyword_6_0_1_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:1534:1: ( ruleUnrestrictedName )? |
| int alt35=2; |
| int LA35_0 = input.LA(1); |
| |
| if ( ((LA35_0>=RULE_SIMPLE_ID && LA35_0<=RULE_ESCAPED_ID)||LA35_0==17||(LA35_0>=19 && LA35_0<=53)||LA35_0==58||LA35_0==71||(LA35_0>=73 && LA35_0<=74)||LA35_0==76||LA35_0==80) ) { |
| alt35=1; |
| } |
| switch (alt35) { |
| case 1 : |
| // InternalOCLinEcore.g:1535:2: ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getAttributeCSAccess().getUnrestrictedNameParserRuleCall_6_0_1_2_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_17); |
| ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_38=(Token)match(input,56,FollowSets000.FOLLOW_13); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_38, grammarAccess.getAttributeCSAccess().getColonKeyword_6_0_1_2_2()); |
| |
| } |
| // InternalOCLinEcore.g:1549:1: ( (lv_ownedDefaultExpressions_39_0= ruleSpecificationCS ) )? |
| int alt36=2; |
| int LA36_0 = input.LA(1); |
| |
| if ( ((LA36_0>=RULE_INT && LA36_0<=RULE_SINGLE_QUOTED_STRING)||(LA36_0>=RULE_UNQUOTED_STRING && LA36_0<=RULE_ESCAPED_ID)||(LA36_0>=17 && LA36_0<=54)||LA36_0==58||LA36_0==71||(LA36_0>=73 && LA36_0<=74)||LA36_0==76||LA36_0==80||(LA36_0>=83 && LA36_0<=84)||(LA36_0>=98 && LA36_0<=99)||(LA36_0>=101 && LA36_0<=113)||LA36_0==116||(LA36_0>=118 && LA36_0<=121)||LA36_0==128||(LA36_0>=133 && LA36_0<=134)) ) { |
| alt36=1; |
| } |
| switch (alt36) { |
| case 1 : |
| // InternalOCLinEcore.g:1550:1: (lv_ownedDefaultExpressions_39_0= ruleSpecificationCS ) |
| { |
| // InternalOCLinEcore.g:1550:1: (lv_ownedDefaultExpressions_39_0= ruleSpecificationCS ) |
| // InternalOCLinEcore.g:1551:3: lv_ownedDefaultExpressions_39_0= ruleSpecificationCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_6_0_1_2_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_14); |
| lv_ownedDefaultExpressions_39_0=ruleSpecificationCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getAttributeCSRule()); |
| } |
| add( |
| current, |
| "ownedDefaultExpressions", |
| lv_ownedDefaultExpressions_39_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_40=(Token)match(input,57,FollowSets000.FOLLOW_35); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_40, grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_0_1_2_4()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop37; |
| } |
| } while (true); |
| |
| otherlv_41=(Token)match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_41, grammarAccess.getAttributeCSAccess().getRightCurlyBracketKeyword_6_0_2()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:1576:7: otherlv_42= ';' |
| { |
| otherlv_42=(Token)match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_42, grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleAttributeCS" |
| |
| |
| // $ANTLR start "entryRuleClassCS" |
| // InternalOCLinEcore.g:1588:1: entryRuleClassCS returns [EObject current=null] : iv_ruleClassCS= ruleClassCS EOF ; |
| public final EObject entryRuleClassCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleClassCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:1589:2: (iv_ruleClassCS= ruleClassCS EOF ) |
| // InternalOCLinEcore.g:1590:2: iv_ruleClassCS= ruleClassCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getClassCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleClassCS=ruleClassCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleClassCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleClassCS" |
| |
| |
| // $ANTLR start "ruleClassCS" |
| // InternalOCLinEcore.g:1597:1: ruleClassCS returns [EObject current=null] : (this_StructuredClassCS_0= ruleStructuredClassCS | this_DataTypeCS_1= ruleDataTypeCS | this_EnumerationCS_2= ruleEnumerationCS ) ; |
| public final EObject ruleClassCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject this_StructuredClassCS_0 = null; |
| |
| EObject this_DataTypeCS_1 = null; |
| |
| EObject this_EnumerationCS_2 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:1600:28: ( (this_StructuredClassCS_0= ruleStructuredClassCS | this_DataTypeCS_1= ruleDataTypeCS | this_EnumerationCS_2= ruleEnumerationCS ) ) |
| // InternalOCLinEcore.g:1601:1: (this_StructuredClassCS_0= ruleStructuredClassCS | this_DataTypeCS_1= ruleDataTypeCS | this_EnumerationCS_2= ruleEnumerationCS ) |
| { |
| // InternalOCLinEcore.g:1601:1: (this_StructuredClassCS_0= ruleStructuredClassCS | this_DataTypeCS_1= ruleDataTypeCS | this_EnumerationCS_2= ruleEnumerationCS ) |
| int alt39=3; |
| switch ( input.LA(1) ) { |
| case 19: |
| case 23: |
| { |
| alt39=1; |
| } |
| break; |
| case 25: |
| case 42: |
| { |
| alt39=2; |
| } |
| break; |
| case 29: |
| { |
| alt39=3; |
| } |
| break; |
| default: |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 39, 0, input); |
| |
| throw nvae; |
| } |
| |
| switch (alt39) { |
| case 1 : |
| // InternalOCLinEcore.g:1602:2: this_StructuredClassCS_0= ruleStructuredClassCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getClassCSAccess().getStructuredClassCSParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_StructuredClassCS_0=ruleStructuredClassCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_StructuredClassCS_0; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:1615:2: this_DataTypeCS_1= ruleDataTypeCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getClassCSAccess().getDataTypeCSParserRuleCall_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_DataTypeCS_1=ruleDataTypeCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_DataTypeCS_1; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:1628:2: this_EnumerationCS_2= ruleEnumerationCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getClassCSAccess().getEnumerationCSParserRuleCall_2()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_EnumerationCS_2=ruleEnumerationCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_EnumerationCS_2; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleClassCS" |
| |
| |
| // $ANTLR start "entryRuleDataTypeCS" |
| // InternalOCLinEcore.g:1647:1: entryRuleDataTypeCS returns [EObject current=null] : iv_ruleDataTypeCS= ruleDataTypeCS EOF ; |
| public final EObject entryRuleDataTypeCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleDataTypeCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:1648:2: (iv_ruleDataTypeCS= ruleDataTypeCS EOF ) |
| // InternalOCLinEcore.g:1649:2: iv_ruleDataTypeCS= ruleDataTypeCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getDataTypeCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleDataTypeCS=ruleDataTypeCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleDataTypeCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleDataTypeCS" |
| |
| |
| // $ANTLR start "ruleDataTypeCS" |
| // InternalOCLinEcore.g:1656:1: ruleDataTypeCS returns [EObject current=null] : ( ( (lv_isPrimitive_0_0= 'primitive' ) )? otherlv_1= 'datatype' ( (lv_name_2_0= ruleUnrestrictedName ) ) ( (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) )? (otherlv_4= ':' ( (lv_instanceClassName_5_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_6= '{' ( ( (lv_isSerializable_7_0= 'serializable' ) ) | otherlv_8= '!serializable' )? otherlv_9= '}' )? ( (otherlv_10= '{' ( ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' ) | otherlv_14= ';' ) ) ; |
| public final EObject ruleDataTypeCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token lv_isPrimitive_0_0=null; |
| Token otherlv_1=null; |
| Token otherlv_4=null; |
| Token lv_instanceClassName_5_0=null; |
| Token otherlv_6=null; |
| Token lv_isSerializable_7_0=null; |
| Token otherlv_8=null; |
| Token otherlv_9=null; |
| Token otherlv_10=null; |
| Token otherlv_13=null; |
| Token otherlv_14=null; |
| AntlrDatatypeRuleToken lv_name_2_0 = null; |
| |
| EObject lv_ownedSignature_3_0 = null; |
| |
| EObject lv_ownedAnnotations_11_0 = null; |
| |
| EObject lv_ownedConstraints_12_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:1659:28: ( ( ( (lv_isPrimitive_0_0= 'primitive' ) )? otherlv_1= 'datatype' ( (lv_name_2_0= ruleUnrestrictedName ) ) ( (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) )? (otherlv_4= ':' ( (lv_instanceClassName_5_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_6= '{' ( ( (lv_isSerializable_7_0= 'serializable' ) ) | otherlv_8= '!serializable' )? otherlv_9= '}' )? ( (otherlv_10= '{' ( ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' ) | otherlv_14= ';' ) ) ) |
| // InternalOCLinEcore.g:1660:1: ( ( (lv_isPrimitive_0_0= 'primitive' ) )? otherlv_1= 'datatype' ( (lv_name_2_0= ruleUnrestrictedName ) ) ( (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) )? (otherlv_4= ':' ( (lv_instanceClassName_5_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_6= '{' ( ( (lv_isSerializable_7_0= 'serializable' ) ) | otherlv_8= '!serializable' )? otherlv_9= '}' )? ( (otherlv_10= '{' ( ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' ) | otherlv_14= ';' ) ) |
| { |
| // InternalOCLinEcore.g:1660:1: ( ( (lv_isPrimitive_0_0= 'primitive' ) )? otherlv_1= 'datatype' ( (lv_name_2_0= ruleUnrestrictedName ) ) ( (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) )? (otherlv_4= ':' ( (lv_instanceClassName_5_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_6= '{' ( ( (lv_isSerializable_7_0= 'serializable' ) ) | otherlv_8= '!serializable' )? otherlv_9= '}' )? ( (otherlv_10= '{' ( ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' ) | otherlv_14= ';' ) ) |
| // InternalOCLinEcore.g:1660:2: ( (lv_isPrimitive_0_0= 'primitive' ) )? otherlv_1= 'datatype' ( (lv_name_2_0= ruleUnrestrictedName ) ) ( (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) )? (otherlv_4= ':' ( (lv_instanceClassName_5_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_6= '{' ( ( (lv_isSerializable_7_0= 'serializable' ) ) | otherlv_8= '!serializable' )? otherlv_9= '}' )? ( (otherlv_10= '{' ( ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' ) | otherlv_14= ';' ) |
| { |
| // InternalOCLinEcore.g:1660:2: ( (lv_isPrimitive_0_0= 'primitive' ) )? |
| int alt40=2; |
| int LA40_0 = input.LA(1); |
| |
| if ( (LA40_0==42) ) { |
| alt40=1; |
| } |
| switch (alt40) { |
| case 1 : |
| // InternalOCLinEcore.g:1661:1: (lv_isPrimitive_0_0= 'primitive' ) |
| { |
| // InternalOCLinEcore.g:1661:1: (lv_isPrimitive_0_0= 'primitive' ) |
| // InternalOCLinEcore.g:1662:3: lv_isPrimitive_0_0= 'primitive' |
| { |
| lv_isPrimitive_0_0=(Token)match(input,42,FollowSets000.FOLLOW_36); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_isPrimitive_0_0, grammarAccess.getDataTypeCSAccess().getIsPrimitivePrimitiveKeyword_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getDataTypeCSRule()); |
| } |
| setWithLastConsumed(current, "isPrimitive", true, "primitive"); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_1=(Token)match(input,25,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getDataTypeCSAccess().getDatatypeKeyword_1()); |
| |
| } |
| // InternalOCLinEcore.g:1679:1: ( (lv_name_2_0= ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:1680:1: (lv_name_2_0= ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:1680:1: (lv_name_2_0= ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:1681:3: lv_name_2_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getDataTypeCSAccess().getNameUnrestrictedNameParserRuleCall_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_37); |
| lv_name_2_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getDataTypeCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_2_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:1697:2: ( (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) )? |
| int alt41=2; |
| int LA41_0 = input.LA(1); |
| |
| if ( (LA41_0==54||LA41_0==81) ) { |
| alt41=1; |
| } |
| switch (alt41) { |
| case 1 : |
| // InternalOCLinEcore.g:1698:1: (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) |
| { |
| // InternalOCLinEcore.g:1698:1: (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) |
| // InternalOCLinEcore.g:1699:3: lv_ownedSignature_3_0= ruleTemplateSignatureCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getDataTypeCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_38); |
| lv_ownedSignature_3_0=ruleTemplateSignatureCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getDataTypeCSRule()); |
| } |
| set( |
| current, |
| "ownedSignature", |
| lv_ownedSignature_3_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TemplateSignatureCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:1715:3: (otherlv_4= ':' ( (lv_instanceClassName_5_0= RULE_SINGLE_QUOTED_STRING ) ) )? |
| int alt42=2; |
| int LA42_0 = input.LA(1); |
| |
| if ( (LA42_0==56) ) { |
| alt42=1; |
| } |
| switch (alt42) { |
| case 1 : |
| // InternalOCLinEcore.g:1715:5: otherlv_4= ':' ( (lv_instanceClassName_5_0= RULE_SINGLE_QUOTED_STRING ) ) |
| { |
| otherlv_4=(Token)match(input,56,FollowSets000.FOLLOW_31); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_4, grammarAccess.getDataTypeCSAccess().getColonKeyword_4_0()); |
| |
| } |
| // InternalOCLinEcore.g:1719:1: ( (lv_instanceClassName_5_0= RULE_SINGLE_QUOTED_STRING ) ) |
| // InternalOCLinEcore.g:1720:1: (lv_instanceClassName_5_0= RULE_SINGLE_QUOTED_STRING ) |
| { |
| // InternalOCLinEcore.g:1720:1: (lv_instanceClassName_5_0= RULE_SINGLE_QUOTED_STRING ) |
| // InternalOCLinEcore.g:1721:3: lv_instanceClassName_5_0= RULE_SINGLE_QUOTED_STRING |
| { |
| lv_instanceClassName_5_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_22); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_instanceClassName_5_0, grammarAccess.getDataTypeCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_4_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getDataTypeCSRule()); |
| } |
| setWithLastConsumed( |
| current, |
| "instanceClassName", |
| lv_instanceClassName_5_0, |
| "org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:1737:4: (otherlv_6= '{' ( ( (lv_isSerializable_7_0= 'serializable' ) ) | otherlv_8= '!serializable' )? otherlv_9= '}' )? |
| int alt44=2; |
| int LA44_0 = input.LA(1); |
| |
| if ( (LA44_0==60) ) { |
| int LA44_1 = input.LA(2); |
| |
| if ( ((LA44_1>=71 && LA44_1<=72)) ) { |
| alt44=1; |
| } |
| else if ( (LA44_1==61) ) { |
| int LA44_4 = input.LA(3); |
| |
| if ( (LA44_4==57||LA44_4==60) ) { |
| alt44=1; |
| } |
| } |
| } |
| switch (alt44) { |
| case 1 : |
| // InternalOCLinEcore.g:1737:6: otherlv_6= '{' ( ( (lv_isSerializable_7_0= 'serializable' ) ) | otherlv_8= '!serializable' )? otherlv_9= '}' |
| { |
| otherlv_6=(Token)match(input,60,FollowSets000.FOLLOW_39); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_6, grammarAccess.getDataTypeCSAccess().getLeftCurlyBracketKeyword_5_0()); |
| |
| } |
| // InternalOCLinEcore.g:1741:1: ( ( (lv_isSerializable_7_0= 'serializable' ) ) | otherlv_8= '!serializable' )? |
| int alt43=3; |
| int LA43_0 = input.LA(1); |
| |
| if ( (LA43_0==71) ) { |
| alt43=1; |
| } |
| else if ( (LA43_0==72) ) { |
| alt43=2; |
| } |
| switch (alt43) { |
| case 1 : |
| // InternalOCLinEcore.g:1741:2: ( (lv_isSerializable_7_0= 'serializable' ) ) |
| { |
| // InternalOCLinEcore.g:1741:2: ( (lv_isSerializable_7_0= 'serializable' ) ) |
| // InternalOCLinEcore.g:1742:1: (lv_isSerializable_7_0= 'serializable' ) |
| { |
| // InternalOCLinEcore.g:1742:1: (lv_isSerializable_7_0= 'serializable' ) |
| // InternalOCLinEcore.g:1743:3: lv_isSerializable_7_0= 'serializable' |
| { |
| lv_isSerializable_7_0=(Token)match(input,71,FollowSets000.FOLLOW_40); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_isSerializable_7_0, grammarAccess.getDataTypeCSAccess().getIsSerializableSerializableKeyword_5_1_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getDataTypeCSRule()); |
| } |
| setWithLastConsumed(current, "isSerializable", true, "serializable"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:1757:7: otherlv_8= '!serializable' |
| { |
| otherlv_8=(Token)match(input,72,FollowSets000.FOLLOW_40); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_8, grammarAccess.getDataTypeCSAccess().getSerializableKeyword_5_1_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_9=(Token)match(input,61,FollowSets000.FOLLOW_22); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_9, grammarAccess.getDataTypeCSAccess().getRightCurlyBracketKeyword_5_2()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:1765:3: ( (otherlv_10= '{' ( ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' ) | otherlv_14= ';' ) |
| int alt46=2; |
| int LA46_0 = input.LA(1); |
| |
| if ( (LA46_0==60) ) { |
| alt46=1; |
| } |
| else if ( (LA46_0==57) ) { |
| alt46=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 46, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt46) { |
| case 1 : |
| // InternalOCLinEcore.g:1765:4: (otherlv_10= '{' ( ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' ) |
| { |
| // InternalOCLinEcore.g:1765:4: (otherlv_10= '{' ( ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' ) |
| // InternalOCLinEcore.g:1765:6: otherlv_10= '{' ( ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' |
| { |
| otherlv_10=(Token)match(input,60,FollowSets000.FOLLOW_41); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_10, grammarAccess.getDataTypeCSAccess().getLeftCurlyBracketKeyword_6_0_0()); |
| |
| } |
| // InternalOCLinEcore.g:1769:1: ( ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* |
| loop45: |
| do { |
| int alt45=3; |
| int LA45_0 = input.LA(1); |
| |
| if ( (LA45_0==58||LA45_0==73||LA45_0==80) ) { |
| alt45=1; |
| } |
| else if ( (LA45_0==22||LA45_0==53) ) { |
| alt45=2; |
| } |
| |
| |
| switch (alt45) { |
| case 1 : |
| // InternalOCLinEcore.g:1769:2: ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) ) |
| { |
| // InternalOCLinEcore.g:1769:2: ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) ) |
| // InternalOCLinEcore.g:1770:1: (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) |
| { |
| // InternalOCLinEcore.g:1770:1: (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) |
| // InternalOCLinEcore.g:1771:3: lv_ownedAnnotations_11_0= ruleAnnotationElementCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getDataTypeCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_41); |
| lv_ownedAnnotations_11_0=ruleAnnotationElementCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getDataTypeCSRule()); |
| } |
| add( |
| current, |
| "ownedAnnotations", |
| lv_ownedAnnotations_11_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:1788:6: ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) |
| { |
| // InternalOCLinEcore.g:1788:6: ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) |
| // InternalOCLinEcore.g:1789:1: (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) |
| { |
| // InternalOCLinEcore.g:1789:1: (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) |
| // InternalOCLinEcore.g:1790:3: lv_ownedConstraints_12_0= ruleInvariantConstraintCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getDataTypeCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_6_0_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_41); |
| lv_ownedConstraints_12_0=ruleInvariantConstraintCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getDataTypeCSRule()); |
| } |
| add( |
| current, |
| "ownedConstraints", |
| lv_ownedConstraints_12_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.InvariantConstraintCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop45; |
| } |
| } while (true); |
| |
| otherlv_13=(Token)match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_13, grammarAccess.getDataTypeCSAccess().getRightCurlyBracketKeyword_6_0_2()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:1811:7: otherlv_14= ';' |
| { |
| otherlv_14=(Token)match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_14, grammarAccess.getDataTypeCSAccess().getSemicolonKeyword_6_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleDataTypeCS" |
| |
| |
| // $ANTLR start "entryRuleDetailCS" |
| // InternalOCLinEcore.g:1823:1: entryRuleDetailCS returns [EObject current=null] : iv_ruleDetailCS= ruleDetailCS EOF ; |
| public final EObject entryRuleDetailCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleDetailCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:1824:2: (iv_ruleDetailCS= ruleDetailCS EOF ) |
| // InternalOCLinEcore.g:1825:2: iv_ruleDetailCS= ruleDetailCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getDetailCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleDetailCS=ruleDetailCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleDetailCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleDetailCS" |
| |
| |
| // $ANTLR start "ruleDetailCS" |
| // InternalOCLinEcore.g:1832:1: ruleDetailCS returns [EObject current=null] : ( ( ( (lv_name_0_1= ruleUnrestrictedName | lv_name_0_2= RULE_SINGLE_QUOTED_STRING ) ) ) otherlv_1= '=' ( ( (lv_values_2_1= RULE_SINGLE_QUOTED_STRING | lv_values_2_2= RULE_ML_SINGLE_QUOTED_STRING ) ) )* ) ; |
| public final EObject ruleDetailCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token lv_name_0_2=null; |
| Token otherlv_1=null; |
| Token lv_values_2_1=null; |
| Token lv_values_2_2=null; |
| AntlrDatatypeRuleToken lv_name_0_1 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:1835:28: ( ( ( ( (lv_name_0_1= ruleUnrestrictedName | lv_name_0_2= RULE_SINGLE_QUOTED_STRING ) ) ) otherlv_1= '=' ( ( (lv_values_2_1= RULE_SINGLE_QUOTED_STRING | lv_values_2_2= RULE_ML_SINGLE_QUOTED_STRING ) ) )* ) ) |
| // InternalOCLinEcore.g:1836:1: ( ( ( (lv_name_0_1= ruleUnrestrictedName | lv_name_0_2= RULE_SINGLE_QUOTED_STRING ) ) ) otherlv_1= '=' ( ( (lv_values_2_1= RULE_SINGLE_QUOTED_STRING | lv_values_2_2= RULE_ML_SINGLE_QUOTED_STRING ) ) )* ) |
| { |
| // InternalOCLinEcore.g:1836:1: ( ( ( (lv_name_0_1= ruleUnrestrictedName | lv_name_0_2= RULE_SINGLE_QUOTED_STRING ) ) ) otherlv_1= '=' ( ( (lv_values_2_1= RULE_SINGLE_QUOTED_STRING | lv_values_2_2= RULE_ML_SINGLE_QUOTED_STRING ) ) )* ) |
| // InternalOCLinEcore.g:1836:2: ( ( (lv_name_0_1= ruleUnrestrictedName | lv_name_0_2= RULE_SINGLE_QUOTED_STRING ) ) ) otherlv_1= '=' ( ( (lv_values_2_1= RULE_SINGLE_QUOTED_STRING | lv_values_2_2= RULE_ML_SINGLE_QUOTED_STRING ) ) )* |
| { |
| // InternalOCLinEcore.g:1836:2: ( ( (lv_name_0_1= ruleUnrestrictedName | lv_name_0_2= RULE_SINGLE_QUOTED_STRING ) ) ) |
| // InternalOCLinEcore.g:1837:1: ( (lv_name_0_1= ruleUnrestrictedName | lv_name_0_2= RULE_SINGLE_QUOTED_STRING ) ) |
| { |
| // InternalOCLinEcore.g:1837:1: ( (lv_name_0_1= ruleUnrestrictedName | lv_name_0_2= RULE_SINGLE_QUOTED_STRING ) ) |
| // InternalOCLinEcore.g:1838:1: (lv_name_0_1= ruleUnrestrictedName | lv_name_0_2= RULE_SINGLE_QUOTED_STRING ) |
| { |
| // InternalOCLinEcore.g:1838:1: (lv_name_0_1= ruleUnrestrictedName | lv_name_0_2= RULE_SINGLE_QUOTED_STRING ) |
| int alt47=2; |
| int LA47_0 = input.LA(1); |
| |
| if ( ((LA47_0>=RULE_SIMPLE_ID && LA47_0<=RULE_ESCAPED_ID)||LA47_0==17||(LA47_0>=19 && LA47_0<=53)||LA47_0==58||LA47_0==71||(LA47_0>=73 && LA47_0<=74)||LA47_0==76||LA47_0==80) ) { |
| alt47=1; |
| } |
| else if ( (LA47_0==RULE_SINGLE_QUOTED_STRING) ) { |
| alt47=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 47, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt47) { |
| case 1 : |
| // InternalOCLinEcore.g:1839:3: lv_name_0_1= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getDetailCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_42); |
| lv_name_0_1=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getDetailCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_0_1, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:1854:8: lv_name_0_2= RULE_SINGLE_QUOTED_STRING |
| { |
| lv_name_0_2=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_42); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_name_0_2, grammarAccess.getDetailCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_0_0_1()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getDetailCSRule()); |
| } |
| setWithLastConsumed( |
| current, |
| "name", |
| lv_name_0_2, |
| "org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING"); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| otherlv_1=(Token)match(input,62,FollowSets000.FOLLOW_43); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getDetailCSAccess().getEqualsSignKeyword_1()); |
| |
| } |
| // InternalOCLinEcore.g:1876:1: ( ( (lv_values_2_1= RULE_SINGLE_QUOTED_STRING | lv_values_2_2= RULE_ML_SINGLE_QUOTED_STRING ) ) )* |
| loop49: |
| do { |
| int alt49=2; |
| int LA49_0 = input.LA(1); |
| |
| if ( ((LA49_0>=RULE_SINGLE_QUOTED_STRING && LA49_0<=RULE_ML_SINGLE_QUOTED_STRING)) ) { |
| alt49=1; |
| } |
| |
| |
| switch (alt49) { |
| case 1 : |
| // InternalOCLinEcore.g:1877:1: ( (lv_values_2_1= RULE_SINGLE_QUOTED_STRING | lv_values_2_2= RULE_ML_SINGLE_QUOTED_STRING ) ) |
| { |
| // InternalOCLinEcore.g:1877:1: ( (lv_values_2_1= RULE_SINGLE_QUOTED_STRING | lv_values_2_2= RULE_ML_SINGLE_QUOTED_STRING ) ) |
| // InternalOCLinEcore.g:1878:1: (lv_values_2_1= RULE_SINGLE_QUOTED_STRING | lv_values_2_2= RULE_ML_SINGLE_QUOTED_STRING ) |
| { |
| // InternalOCLinEcore.g:1878:1: (lv_values_2_1= RULE_SINGLE_QUOTED_STRING | lv_values_2_2= RULE_ML_SINGLE_QUOTED_STRING ) |
| int alt48=2; |
| int LA48_0 = input.LA(1); |
| |
| if ( (LA48_0==RULE_SINGLE_QUOTED_STRING) ) { |
| alt48=1; |
| } |
| else if ( (LA48_0==RULE_ML_SINGLE_QUOTED_STRING) ) { |
| alt48=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 48, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt48) { |
| case 1 : |
| // InternalOCLinEcore.g:1879:3: lv_values_2_1= RULE_SINGLE_QUOTED_STRING |
| { |
| lv_values_2_1=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_43); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_values_2_1, grammarAccess.getDetailCSAccess().getValuesSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getDetailCSRule()); |
| } |
| addWithLastConsumed( |
| current, |
| "values", |
| lv_values_2_1, |
| "org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING"); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:1894:8: lv_values_2_2= RULE_ML_SINGLE_QUOTED_STRING |
| { |
| lv_values_2_2=(Token)match(input,RULE_ML_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_43); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_values_2_2, grammarAccess.getDetailCSAccess().getValuesML_SINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getDetailCSRule()); |
| } |
| addWithLastConsumed( |
| current, |
| "values", |
| lv_values_2_2, |
| "org.eclipse.ocl.xtext.base.Base.ML_SINGLE_QUOTED_STRING"); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop49; |
| } |
| } while (true); |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleDetailCS" |
| |
| |
| // $ANTLR start "entryRuleDocumentationCS" |
| // InternalOCLinEcore.g:1920:1: entryRuleDocumentationCS returns [EObject current=null] : iv_ruleDocumentationCS= ruleDocumentationCS EOF ; |
| public final EObject entryRuleDocumentationCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleDocumentationCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:1921:2: (iv_ruleDocumentationCS= ruleDocumentationCS EOF ) |
| // InternalOCLinEcore.g:1922:2: iv_ruleDocumentationCS= ruleDocumentationCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getDocumentationCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleDocumentationCS=ruleDocumentationCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleDocumentationCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleDocumentationCS" |
| |
| |
| // $ANTLR start "ruleDocumentationCS" |
| // InternalOCLinEcore.g:1929:1: ruleDocumentationCS returns [EObject current=null] : ( () otherlv_1= 'documentation' ( (lv_value_2_0= RULE_SINGLE_QUOTED_STRING ) )? (otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' )? otherlv_8= ';' ) ; |
| public final EObject ruleDocumentationCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| Token lv_value_2_0=null; |
| Token otherlv_3=null; |
| Token otherlv_5=null; |
| Token otherlv_7=null; |
| Token otherlv_8=null; |
| EObject lv_ownedDetails_4_0 = null; |
| |
| EObject lv_ownedDetails_6_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:1932:28: ( ( () otherlv_1= 'documentation' ( (lv_value_2_0= RULE_SINGLE_QUOTED_STRING ) )? (otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' )? otherlv_8= ';' ) ) |
| // InternalOCLinEcore.g:1933:1: ( () otherlv_1= 'documentation' ( (lv_value_2_0= RULE_SINGLE_QUOTED_STRING ) )? (otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' )? otherlv_8= ';' ) |
| { |
| // InternalOCLinEcore.g:1933:1: ( () otherlv_1= 'documentation' ( (lv_value_2_0= RULE_SINGLE_QUOTED_STRING ) )? (otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' )? otherlv_8= ';' ) |
| // InternalOCLinEcore.g:1933:2: () otherlv_1= 'documentation' ( (lv_value_2_0= RULE_SINGLE_QUOTED_STRING ) )? (otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' )? otherlv_8= ';' |
| { |
| // InternalOCLinEcore.g:1933:2: () |
| // InternalOCLinEcore.g:1934:2: |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| current = forceCreateModelElement( |
| grammarAccess.getDocumentationCSAccess().getDocumentationCSAction_0(), |
| current); |
| |
| } |
| |
| } |
| |
| otherlv_1=(Token)match(input,73,FollowSets000.FOLLOW_44); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getDocumentationCSAccess().getDocumentationKeyword_1()); |
| |
| } |
| // InternalOCLinEcore.g:1946:1: ( (lv_value_2_0= RULE_SINGLE_QUOTED_STRING ) )? |
| int alt50=2; |
| int LA50_0 = input.LA(1); |
| |
| if ( (LA50_0==RULE_SINGLE_QUOTED_STRING) ) { |
| alt50=1; |
| } |
| switch (alt50) { |
| case 1 : |
| // InternalOCLinEcore.g:1947:1: (lv_value_2_0= RULE_SINGLE_QUOTED_STRING ) |
| { |
| // InternalOCLinEcore.g:1947:1: (lv_value_2_0= RULE_SINGLE_QUOTED_STRING ) |
| // InternalOCLinEcore.g:1948:3: lv_value_2_0= RULE_SINGLE_QUOTED_STRING |
| { |
| lv_value_2_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_45); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_value_2_0, grammarAccess.getDocumentationCSAccess().getValueSINGLE_QUOTED_STRINGTerminalRuleCall_2_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getDocumentationCSRule()); |
| } |
| setWithLastConsumed( |
| current, |
| "value", |
| lv_value_2_0, |
| "org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING"); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:1964:3: (otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' )? |
| int alt52=2; |
| int LA52_0 = input.LA(1); |
| |
| if ( (LA52_0==54) ) { |
| alt52=1; |
| } |
| switch (alt52) { |
| case 1 : |
| // InternalOCLinEcore.g:1964:5: otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' |
| { |
| otherlv_3=(Token)match(input,54,FollowSets000.FOLLOW_20); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_3, grammarAccess.getDocumentationCSAccess().getLeftParenthesisKeyword_3_0()); |
| |
| } |
| // InternalOCLinEcore.g:1968:1: ( (lv_ownedDetails_4_0= ruleDetailCS ) ) |
| // InternalOCLinEcore.g:1969:1: (lv_ownedDetails_4_0= ruleDetailCS ) |
| { |
| // InternalOCLinEcore.g:1969:1: (lv_ownedDetails_4_0= ruleDetailCS ) |
| // InternalOCLinEcore.g:1970:3: lv_ownedDetails_4_0= ruleDetailCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_21); |
| lv_ownedDetails_4_0=ruleDetailCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getDocumentationCSRule()); |
| } |
| add( |
| current, |
| "ownedDetails", |
| lv_ownedDetails_4_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.DetailCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:1986:2: (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* |
| loop51: |
| do { |
| int alt51=2; |
| int LA51_0 = input.LA(1); |
| |
| if ( (LA51_0==59) ) { |
| alt51=1; |
| } |
| |
| |
| switch (alt51) { |
| case 1 : |
| // InternalOCLinEcore.g:1986:4: otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) |
| { |
| otherlv_5=(Token)match(input,59,FollowSets000.FOLLOW_20); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_5, grammarAccess.getDocumentationCSAccess().getCommaKeyword_3_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:1990:1: ( (lv_ownedDetails_6_0= ruleDetailCS ) ) |
| // InternalOCLinEcore.g:1991:1: (lv_ownedDetails_6_0= ruleDetailCS ) |
| { |
| // InternalOCLinEcore.g:1991:1: (lv_ownedDetails_6_0= ruleDetailCS ) |
| // InternalOCLinEcore.g:1992:3: lv_ownedDetails_6_0= ruleDetailCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_21); |
| lv_ownedDetails_6_0=ruleDetailCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getDocumentationCSRule()); |
| } |
| add( |
| current, |
| "ownedDetails", |
| lv_ownedDetails_6_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.DetailCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop51; |
| } |
| } while (true); |
| |
| otherlv_7=(Token)match(input,55,FollowSets000.FOLLOW_14); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_7, grammarAccess.getDocumentationCSAccess().getRightParenthesisKeyword_3_3()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_8=(Token)match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_8, grammarAccess.getDocumentationCSAccess().getSemicolonKeyword_4()); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleDocumentationCS" |
| |
| |
| // $ANTLR start "entryRuleEnumerationCS" |
| // InternalOCLinEcore.g:2024:1: entryRuleEnumerationCS returns [EObject current=null] : iv_ruleEnumerationCS= ruleEnumerationCS EOF ; |
| public final EObject entryRuleEnumerationCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleEnumerationCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:2025:2: (iv_ruleEnumerationCS= ruleEnumerationCS EOF ) |
| // InternalOCLinEcore.g:2026:2: iv_ruleEnumerationCS= ruleEnumerationCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getEnumerationCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleEnumerationCS=ruleEnumerationCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleEnumerationCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleEnumerationCS" |
| |
| |
| // $ANTLR start "ruleEnumerationCS" |
| // InternalOCLinEcore.g:2033:1: ruleEnumerationCS returns [EObject current=null] : (otherlv_0= 'enum' ( (lv_name_1_0= ruleUnrestrictedName ) ) ( (lv_ownedSignature_2_0= ruleTemplateSignatureCS ) )? (otherlv_3= ':' ( (lv_instanceClassName_4_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_5= '{' ( ( (lv_isSerializable_6_0= 'serializable' ) ) | otherlv_7= '!serializable' )? otherlv_8= '}' )? ( (otherlv_9= '{' ( ( (lv_ownedAnnotations_10_0= ruleAnnotationElementCS ) ) | ( (lv_ownedLiterals_11_0= ruleEnumerationLiteralCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' ) | otherlv_14= ';' ) ) ; |
| public final EObject ruleEnumerationCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_0=null; |
| Token otherlv_3=null; |
| Token lv_instanceClassName_4_0=null; |
| Token otherlv_5=null; |
| Token lv_isSerializable_6_0=null; |
| Token otherlv_7=null; |
| Token otherlv_8=null; |
| Token otherlv_9=null; |
| Token otherlv_13=null; |
| Token otherlv_14=null; |
| AntlrDatatypeRuleToken lv_name_1_0 = null; |
| |
| EObject lv_ownedSignature_2_0 = null; |
| |
| EObject lv_ownedAnnotations_10_0 = null; |
| |
| EObject lv_ownedLiterals_11_0 = null; |
| |
| EObject lv_ownedConstraints_12_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:2036:28: ( (otherlv_0= 'enum' ( (lv_name_1_0= ruleUnrestrictedName ) ) ( (lv_ownedSignature_2_0= ruleTemplateSignatureCS ) )? (otherlv_3= ':' ( (lv_instanceClassName_4_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_5= '{' ( ( (lv_isSerializable_6_0= 'serializable' ) ) | otherlv_7= '!serializable' )? otherlv_8= '}' )? ( (otherlv_9= '{' ( ( (lv_ownedAnnotations_10_0= ruleAnnotationElementCS ) ) | ( (lv_ownedLiterals_11_0= ruleEnumerationLiteralCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' ) | otherlv_14= ';' ) ) ) |
| // InternalOCLinEcore.g:2037:1: (otherlv_0= 'enum' ( (lv_name_1_0= ruleUnrestrictedName ) ) ( (lv_ownedSignature_2_0= ruleTemplateSignatureCS ) )? (otherlv_3= ':' ( (lv_instanceClassName_4_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_5= '{' ( ( (lv_isSerializable_6_0= 'serializable' ) ) | otherlv_7= '!serializable' )? otherlv_8= '}' )? ( (otherlv_9= '{' ( ( (lv_ownedAnnotations_10_0= ruleAnnotationElementCS ) ) | ( (lv_ownedLiterals_11_0= ruleEnumerationLiteralCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' ) | otherlv_14= ';' ) ) |
| { |
| // InternalOCLinEcore.g:2037:1: (otherlv_0= 'enum' ( (lv_name_1_0= ruleUnrestrictedName ) ) ( (lv_ownedSignature_2_0= ruleTemplateSignatureCS ) )? (otherlv_3= ':' ( (lv_instanceClassName_4_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_5= '{' ( ( (lv_isSerializable_6_0= 'serializable' ) ) | otherlv_7= '!serializable' )? otherlv_8= '}' )? ( (otherlv_9= '{' ( ( (lv_ownedAnnotations_10_0= ruleAnnotationElementCS ) ) | ( (lv_ownedLiterals_11_0= ruleEnumerationLiteralCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' ) | otherlv_14= ';' ) ) |
| // InternalOCLinEcore.g:2037:3: otherlv_0= 'enum' ( (lv_name_1_0= ruleUnrestrictedName ) ) ( (lv_ownedSignature_2_0= ruleTemplateSignatureCS ) )? (otherlv_3= ':' ( (lv_instanceClassName_4_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_5= '{' ( ( (lv_isSerializable_6_0= 'serializable' ) ) | otherlv_7= '!serializable' )? otherlv_8= '}' )? ( (otherlv_9= '{' ( ( (lv_ownedAnnotations_10_0= ruleAnnotationElementCS ) ) | ( (lv_ownedLiterals_11_0= ruleEnumerationLiteralCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' ) | otherlv_14= ';' ) |
| { |
| otherlv_0=(Token)match(input,29,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_0, grammarAccess.getEnumerationCSAccess().getEnumKeyword_0()); |
| |
| } |
| // InternalOCLinEcore.g:2041:1: ( (lv_name_1_0= ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:2042:1: (lv_name_1_0= ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:2042:1: (lv_name_1_0= ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:2043:3: lv_name_1_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getEnumerationCSAccess().getNameUnrestrictedNameParserRuleCall_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_37); |
| lv_name_1_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getEnumerationCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_1_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:2059:2: ( (lv_ownedSignature_2_0= ruleTemplateSignatureCS ) )? |
| int alt53=2; |
| int LA53_0 = input.LA(1); |
| |
| if ( (LA53_0==54||LA53_0==81) ) { |
| alt53=1; |
| } |
| switch (alt53) { |
| case 1 : |
| // InternalOCLinEcore.g:2060:1: (lv_ownedSignature_2_0= ruleTemplateSignatureCS ) |
| { |
| // InternalOCLinEcore.g:2060:1: (lv_ownedSignature_2_0= ruleTemplateSignatureCS ) |
| // InternalOCLinEcore.g:2061:3: lv_ownedSignature_2_0= ruleTemplateSignatureCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getEnumerationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_38); |
| lv_ownedSignature_2_0=ruleTemplateSignatureCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getEnumerationCSRule()); |
| } |
| set( |
| current, |
| "ownedSignature", |
| lv_ownedSignature_2_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TemplateSignatureCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:2077:3: (otherlv_3= ':' ( (lv_instanceClassName_4_0= RULE_SINGLE_QUOTED_STRING ) ) )? |
| int alt54=2; |
| int LA54_0 = input.LA(1); |
| |
| if ( (LA54_0==56) ) { |
| alt54=1; |
| } |
| switch (alt54) { |
| case 1 : |
| // InternalOCLinEcore.g:2077:5: otherlv_3= ':' ( (lv_instanceClassName_4_0= RULE_SINGLE_QUOTED_STRING ) ) |
| { |
| otherlv_3=(Token)match(input,56,FollowSets000.FOLLOW_31); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_3, grammarAccess.getEnumerationCSAccess().getColonKeyword_3_0()); |
| |
| } |
| // InternalOCLinEcore.g:2081:1: ( (lv_instanceClassName_4_0= RULE_SINGLE_QUOTED_STRING ) ) |
| // InternalOCLinEcore.g:2082:1: (lv_instanceClassName_4_0= RULE_SINGLE_QUOTED_STRING ) |
| { |
| // InternalOCLinEcore.g:2082:1: (lv_instanceClassName_4_0= RULE_SINGLE_QUOTED_STRING ) |
| // InternalOCLinEcore.g:2083:3: lv_instanceClassName_4_0= RULE_SINGLE_QUOTED_STRING |
| { |
| lv_instanceClassName_4_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_22); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_instanceClassName_4_0, grammarAccess.getEnumerationCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_3_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getEnumerationCSRule()); |
| } |
| setWithLastConsumed( |
| current, |
| "instanceClassName", |
| lv_instanceClassName_4_0, |
| "org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:2099:4: (otherlv_5= '{' ( ( (lv_isSerializable_6_0= 'serializable' ) ) | otherlv_7= '!serializable' )? otherlv_8= '}' )? |
| int alt56=2; |
| int LA56_0 = input.LA(1); |
| |
| if ( (LA56_0==60) ) { |
| int LA56_1 = input.LA(2); |
| |
| if ( ((LA56_1>=71 && LA56_1<=72)) ) { |
| alt56=1; |
| } |
| else if ( (LA56_1==61) ) { |
| int LA56_4 = input.LA(3); |
| |
| if ( (LA56_4==57||LA56_4==60) ) { |
| alt56=1; |
| } |
| } |
| } |
| switch (alt56) { |
| case 1 : |
| // InternalOCLinEcore.g:2099:6: otherlv_5= '{' ( ( (lv_isSerializable_6_0= 'serializable' ) ) | otherlv_7= '!serializable' )? otherlv_8= '}' |
| { |
| otherlv_5=(Token)match(input,60,FollowSets000.FOLLOW_39); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_5, grammarAccess.getEnumerationCSAccess().getLeftCurlyBracketKeyword_4_0()); |
| |
| } |
| // InternalOCLinEcore.g:2103:1: ( ( (lv_isSerializable_6_0= 'serializable' ) ) | otherlv_7= '!serializable' )? |
| int alt55=3; |
| int LA55_0 = input.LA(1); |
| |
| if ( (LA55_0==71) ) { |
| alt55=1; |
| } |
| else if ( (LA55_0==72) ) { |
| alt55=2; |
| } |
| switch (alt55) { |
| case 1 : |
| // InternalOCLinEcore.g:2103:2: ( (lv_isSerializable_6_0= 'serializable' ) ) |
| { |
| // InternalOCLinEcore.g:2103:2: ( (lv_isSerializable_6_0= 'serializable' ) ) |
| // InternalOCLinEcore.g:2104:1: (lv_isSerializable_6_0= 'serializable' ) |
| { |
| // InternalOCLinEcore.g:2104:1: (lv_isSerializable_6_0= 'serializable' ) |
| // InternalOCLinEcore.g:2105:3: lv_isSerializable_6_0= 'serializable' |
| { |
| lv_isSerializable_6_0=(Token)match(input,71,FollowSets000.FOLLOW_40); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_isSerializable_6_0, grammarAccess.getEnumerationCSAccess().getIsSerializableSerializableKeyword_4_1_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getEnumerationCSRule()); |
| } |
| setWithLastConsumed(current, "isSerializable", true, "serializable"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:2119:7: otherlv_7= '!serializable' |
| { |
| otherlv_7=(Token)match(input,72,FollowSets000.FOLLOW_40); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_7, grammarAccess.getEnumerationCSAccess().getSerializableKeyword_4_1_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_8=(Token)match(input,61,FollowSets000.FOLLOW_22); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_8, grammarAccess.getEnumerationCSAccess().getRightCurlyBracketKeyword_4_2()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:2127:3: ( (otherlv_9= '{' ( ( (lv_ownedAnnotations_10_0= ruleAnnotationElementCS ) ) | ( (lv_ownedLiterals_11_0= ruleEnumerationLiteralCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' ) | otherlv_14= ';' ) |
| int alt58=2; |
| int LA58_0 = input.LA(1); |
| |
| if ( (LA58_0==60) ) { |
| alt58=1; |
| } |
| else if ( (LA58_0==57) ) { |
| alt58=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 58, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt58) { |
| case 1 : |
| // InternalOCLinEcore.g:2127:4: (otherlv_9= '{' ( ( (lv_ownedAnnotations_10_0= ruleAnnotationElementCS ) ) | ( (lv_ownedLiterals_11_0= ruleEnumerationLiteralCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' ) |
| { |
| // InternalOCLinEcore.g:2127:4: (otherlv_9= '{' ( ( (lv_ownedAnnotations_10_0= ruleAnnotationElementCS ) ) | ( (lv_ownedLiterals_11_0= ruleEnumerationLiteralCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' ) |
| // InternalOCLinEcore.g:2127:6: otherlv_9= '{' ( ( (lv_ownedAnnotations_10_0= ruleAnnotationElementCS ) ) | ( (lv_ownedLiterals_11_0= ruleEnumerationLiteralCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' |
| { |
| otherlv_9=(Token)match(input,60,FollowSets000.FOLLOW_46); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_9, grammarAccess.getEnumerationCSAccess().getLeftCurlyBracketKeyword_5_0_0()); |
| |
| } |
| // InternalOCLinEcore.g:2131:1: ( ( (lv_ownedAnnotations_10_0= ruleAnnotationElementCS ) ) | ( (lv_ownedLiterals_11_0= ruleEnumerationLiteralCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* |
| loop57: |
| do { |
| int alt57=4; |
| switch ( input.LA(1) ) { |
| case 58: |
| case 73: |
| case 80: |
| { |
| alt57=1; |
| } |
| break; |
| case RULE_SIMPLE_ID: |
| case RULE_ESCAPED_ID: |
| case 17: |
| case 19: |
| case 20: |
| case 21: |
| case 23: |
| case 24: |
| case 25: |
| case 26: |
| case 27: |
| case 28: |
| case 29: |
| case 30: |
| case 31: |
| case 32: |
| case 33: |
| case 34: |
| case 35: |
| case 36: |
| case 37: |
| case 38: |
| case 39: |
| case 40: |
| case 41: |
| case 42: |
| case 43: |
| case 44: |
| case 45: |
| case 46: |
| case 47: |
| case 48: |
| case 49: |
| case 50: |
| case 51: |
| case 52: |
| case 74: |
| { |
| alt57=2; |
| } |
| break; |
| case 22: |
| { |
| int LA57_4 = input.LA(2); |
| |
| if ( (LA57_4==53) ) { |
| alt57=3; |
| } |
| else if ( ((LA57_4>=56 && LA57_4<=57)||LA57_4==60||LA57_4==62) ) { |
| alt57=2; |
| } |
| |
| |
| } |
| break; |
| case 53: |
| { |
| alt57=3; |
| } |
| break; |
| |
| } |
| |
| switch (alt57) { |
| case 1 : |
| // InternalOCLinEcore.g:2131:2: ( (lv_ownedAnnotations_10_0= ruleAnnotationElementCS ) ) |
| { |
| // InternalOCLinEcore.g:2131:2: ( (lv_ownedAnnotations_10_0= ruleAnnotationElementCS ) ) |
| // InternalOCLinEcore.g:2132:1: (lv_ownedAnnotations_10_0= ruleAnnotationElementCS ) |
| { |
| // InternalOCLinEcore.g:2132:1: (lv_ownedAnnotations_10_0= ruleAnnotationElementCS ) |
| // InternalOCLinEcore.g:2133:3: lv_ownedAnnotations_10_0= ruleAnnotationElementCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getEnumerationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_5_0_1_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_46); |
| lv_ownedAnnotations_10_0=ruleAnnotationElementCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getEnumerationCSRule()); |
| } |
| add( |
| current, |
| "ownedAnnotations", |
| lv_ownedAnnotations_10_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:2150:6: ( (lv_ownedLiterals_11_0= ruleEnumerationLiteralCS ) ) |
| { |
| // InternalOCLinEcore.g:2150:6: ( (lv_ownedLiterals_11_0= ruleEnumerationLiteralCS ) ) |
| // InternalOCLinEcore.g:2151:1: (lv_ownedLiterals_11_0= ruleEnumerationLiteralCS ) |
| { |
| // InternalOCLinEcore.g:2151:1: (lv_ownedLiterals_11_0= ruleEnumerationLiteralCS ) |
| // InternalOCLinEcore.g:2152:3: lv_ownedLiterals_11_0= ruleEnumerationLiteralCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getEnumerationCSAccess().getOwnedLiteralsEnumerationLiteralCSParserRuleCall_5_0_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_46); |
| lv_ownedLiterals_11_0=ruleEnumerationLiteralCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getEnumerationCSRule()); |
| } |
| add( |
| current, |
| "ownedLiterals", |
| lv_ownedLiterals_11_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.EnumerationLiteralCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:2169:6: ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) |
| { |
| // InternalOCLinEcore.g:2169:6: ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) |
| // InternalOCLinEcore.g:2170:1: (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) |
| { |
| // InternalOCLinEcore.g:2170:1: (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) |
| // InternalOCLinEcore.g:2171:3: lv_ownedConstraints_12_0= ruleInvariantConstraintCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getEnumerationCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_5_0_1_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_46); |
| lv_ownedConstraints_12_0=ruleInvariantConstraintCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getEnumerationCSRule()); |
| } |
| add( |
| current, |
| "ownedConstraints", |
| lv_ownedConstraints_12_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.InvariantConstraintCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop57; |
| } |
| } while (true); |
| |
| otherlv_13=(Token)match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_13, grammarAccess.getEnumerationCSAccess().getRightCurlyBracketKeyword_5_0_2()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:2192:7: otherlv_14= ';' |
| { |
| otherlv_14=(Token)match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_14, grammarAccess.getEnumerationCSAccess().getSemicolonKeyword_5_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleEnumerationCS" |
| |
| |
| // $ANTLR start "entryRuleEnumerationLiteralCS" |
| // InternalOCLinEcore.g:2204:1: entryRuleEnumerationLiteralCS returns [EObject current=null] : iv_ruleEnumerationLiteralCS= ruleEnumerationLiteralCS EOF ; |
| public final EObject entryRuleEnumerationLiteralCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleEnumerationLiteralCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:2205:2: (iv_ruleEnumerationLiteralCS= ruleEnumerationLiteralCS EOF ) |
| // InternalOCLinEcore.g:2206:2: iv_ruleEnumerationLiteralCS= ruleEnumerationLiteralCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getEnumerationLiteralCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleEnumerationLiteralCS=ruleEnumerationLiteralCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleEnumerationLiteralCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleEnumerationLiteralCS" |
| |
| |
| // $ANTLR start "ruleEnumerationLiteralCS" |
| // InternalOCLinEcore.g:2213:1: ruleEnumerationLiteralCS returns [EObject current=null] : ( ( (otherlv_0= 'literal' ( (lv_name_1_0= ruleUnrestrictedName ) ) ) | ( (lv_name_2_0= ruleEnumerationLiteralName ) ) ) (otherlv_3= ':' ( (lv_literal_4_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_5= '=' ( (lv_value_6_0= ruleSIGNED ) ) )? ( (otherlv_7= '{' ( (lv_ownedAnnotations_8_0= ruleAnnotationElementCS ) )* otherlv_9= '}' ) | otherlv_10= ';' ) ) ; |
| public final EObject ruleEnumerationLiteralCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_0=null; |
| Token otherlv_3=null; |
| Token lv_literal_4_0=null; |
| Token otherlv_5=null; |
| Token otherlv_7=null; |
| Token otherlv_9=null; |
| Token otherlv_10=null; |
| AntlrDatatypeRuleToken lv_name_1_0 = null; |
| |
| AntlrDatatypeRuleToken lv_name_2_0 = null; |
| |
| AntlrDatatypeRuleToken lv_value_6_0 = null; |
| |
| EObject lv_ownedAnnotations_8_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:2216:28: ( ( ( (otherlv_0= 'literal' ( (lv_name_1_0= ruleUnrestrictedName ) ) ) | ( (lv_name_2_0= ruleEnumerationLiteralName ) ) ) (otherlv_3= ':' ( (lv_literal_4_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_5= '=' ( (lv_value_6_0= ruleSIGNED ) ) )? ( (otherlv_7= '{' ( (lv_ownedAnnotations_8_0= ruleAnnotationElementCS ) )* otherlv_9= '}' ) | otherlv_10= ';' ) ) ) |
| // InternalOCLinEcore.g:2217:1: ( ( (otherlv_0= 'literal' ( (lv_name_1_0= ruleUnrestrictedName ) ) ) | ( (lv_name_2_0= ruleEnumerationLiteralName ) ) ) (otherlv_3= ':' ( (lv_literal_4_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_5= '=' ( (lv_value_6_0= ruleSIGNED ) ) )? ( (otherlv_7= '{' ( (lv_ownedAnnotations_8_0= ruleAnnotationElementCS ) )* otherlv_9= '}' ) | otherlv_10= ';' ) ) |
| { |
| // InternalOCLinEcore.g:2217:1: ( ( (otherlv_0= 'literal' ( (lv_name_1_0= ruleUnrestrictedName ) ) ) | ( (lv_name_2_0= ruleEnumerationLiteralName ) ) ) (otherlv_3= ':' ( (lv_literal_4_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_5= '=' ( (lv_value_6_0= ruleSIGNED ) ) )? ( (otherlv_7= '{' ( (lv_ownedAnnotations_8_0= ruleAnnotationElementCS ) )* otherlv_9= '}' ) | otherlv_10= ';' ) ) |
| // InternalOCLinEcore.g:2217:2: ( (otherlv_0= 'literal' ( (lv_name_1_0= ruleUnrestrictedName ) ) ) | ( (lv_name_2_0= ruleEnumerationLiteralName ) ) ) (otherlv_3= ':' ( (lv_literal_4_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_5= '=' ( (lv_value_6_0= ruleSIGNED ) ) )? ( (otherlv_7= '{' ( (lv_ownedAnnotations_8_0= ruleAnnotationElementCS ) )* otherlv_9= '}' ) | otherlv_10= ';' ) |
| { |
| // InternalOCLinEcore.g:2217:2: ( (otherlv_0= 'literal' ( (lv_name_1_0= ruleUnrestrictedName ) ) ) | ( (lv_name_2_0= ruleEnumerationLiteralName ) ) ) |
| int alt59=2; |
| int LA59_0 = input.LA(1); |
| |
| if ( (LA59_0==74) ) { |
| alt59=1; |
| } |
| else if ( ((LA59_0>=RULE_SIMPLE_ID && LA59_0<=RULE_ESCAPED_ID)||LA59_0==17||(LA59_0>=19 && LA59_0<=52)) ) { |
| alt59=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 59, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt59) { |
| case 1 : |
| // InternalOCLinEcore.g:2217:3: (otherlv_0= 'literal' ( (lv_name_1_0= ruleUnrestrictedName ) ) ) |
| { |
| // InternalOCLinEcore.g:2217:3: (otherlv_0= 'literal' ( (lv_name_1_0= ruleUnrestrictedName ) ) ) |
| // InternalOCLinEcore.g:2217:5: otherlv_0= 'literal' ( (lv_name_1_0= ruleUnrestrictedName ) ) |
| { |
| otherlv_0=(Token)match(input,74,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_0, grammarAccess.getEnumerationLiteralCSAccess().getLiteralKeyword_0_0_0()); |
| |
| } |
| // InternalOCLinEcore.g:2221:1: ( (lv_name_1_0= ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:2222:1: (lv_name_1_0= ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:2222:1: (lv_name_1_0= ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:2223:3: lv_name_1_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getEnumerationLiteralCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_28); |
| lv_name_1_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getEnumerationLiteralCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_1_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:2240:6: ( (lv_name_2_0= ruleEnumerationLiteralName ) ) |
| { |
| // InternalOCLinEcore.g:2240:6: ( (lv_name_2_0= ruleEnumerationLiteralName ) ) |
| // InternalOCLinEcore.g:2241:1: (lv_name_2_0= ruleEnumerationLiteralName ) |
| { |
| // InternalOCLinEcore.g:2241:1: (lv_name_2_0= ruleEnumerationLiteralName ) |
| // InternalOCLinEcore.g:2242:3: lv_name_2_0= ruleEnumerationLiteralName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getEnumerationLiteralCSAccess().getNameEnumerationLiteralNameParserRuleCall_0_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_28); |
| lv_name_2_0=ruleEnumerationLiteralName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getEnumerationLiteralCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_2_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.EnumerationLiteralName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:2258:3: (otherlv_3= ':' ( (lv_literal_4_0= RULE_SINGLE_QUOTED_STRING ) ) )? |
| int alt60=2; |
| int LA60_0 = input.LA(1); |
| |
| if ( (LA60_0==56) ) { |
| alt60=1; |
| } |
| switch (alt60) { |
| case 1 : |
| // InternalOCLinEcore.g:2258:5: otherlv_3= ':' ( (lv_literal_4_0= RULE_SINGLE_QUOTED_STRING ) ) |
| { |
| otherlv_3=(Token)match(input,56,FollowSets000.FOLLOW_31); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_3, grammarAccess.getEnumerationLiteralCSAccess().getColonKeyword_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:2262:1: ( (lv_literal_4_0= RULE_SINGLE_QUOTED_STRING ) ) |
| // InternalOCLinEcore.g:2263:1: (lv_literal_4_0= RULE_SINGLE_QUOTED_STRING ) |
| { |
| // InternalOCLinEcore.g:2263:1: (lv_literal_4_0= RULE_SINGLE_QUOTED_STRING ) |
| // InternalOCLinEcore.g:2264:3: lv_literal_4_0= RULE_SINGLE_QUOTED_STRING |
| { |
| lv_literal_4_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_30); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_literal_4_0, grammarAccess.getEnumerationLiteralCSAccess().getLiteralSINGLE_QUOTED_STRINGTerminalRuleCall_1_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getEnumerationLiteralCSRule()); |
| } |
| setWithLastConsumed( |
| current, |
| "literal", |
| lv_literal_4_0, |
| "org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:2280:4: (otherlv_5= '=' ( (lv_value_6_0= ruleSIGNED ) ) )? |
| int alt61=2; |
| int LA61_0 = input.LA(1); |
| |
| if ( (LA61_0==62) ) { |
| alt61=1; |
| } |
| switch (alt61) { |
| case 1 : |
| // InternalOCLinEcore.g:2280:6: otherlv_5= '=' ( (lv_value_6_0= ruleSIGNED ) ) |
| { |
| otherlv_5=(Token)match(input,62,FollowSets000.FOLLOW_47); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_5, grammarAccess.getEnumerationLiteralCSAccess().getEqualsSignKeyword_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:2284:1: ( (lv_value_6_0= ruleSIGNED ) ) |
| // InternalOCLinEcore.g:2285:1: (lv_value_6_0= ruleSIGNED ) |
| { |
| // InternalOCLinEcore.g:2285:1: (lv_value_6_0= ruleSIGNED ) |
| // InternalOCLinEcore.g:2286:3: lv_value_6_0= ruleSIGNED |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getEnumerationLiteralCSAccess().getValueSIGNEDParserRuleCall_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_22); |
| lv_value_6_0=ruleSIGNED(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getEnumerationLiteralCSRule()); |
| } |
| set( |
| current, |
| "value", |
| lv_value_6_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SIGNED"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:2302:4: ( (otherlv_7= '{' ( (lv_ownedAnnotations_8_0= ruleAnnotationElementCS ) )* otherlv_9= '}' ) | otherlv_10= ';' ) |
| int alt63=2; |
| int LA63_0 = input.LA(1); |
| |
| if ( (LA63_0==60) ) { |
| alt63=1; |
| } |
| else if ( (LA63_0==57) ) { |
| alt63=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 63, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt63) { |
| case 1 : |
| // InternalOCLinEcore.g:2302:5: (otherlv_7= '{' ( (lv_ownedAnnotations_8_0= ruleAnnotationElementCS ) )* otherlv_9= '}' ) |
| { |
| // InternalOCLinEcore.g:2302:5: (otherlv_7= '{' ( (lv_ownedAnnotations_8_0= ruleAnnotationElementCS ) )* otherlv_9= '}' ) |
| // InternalOCLinEcore.g:2302:7: otherlv_7= '{' ( (lv_ownedAnnotations_8_0= ruleAnnotationElementCS ) )* otherlv_9= '}' |
| { |
| otherlv_7=(Token)match(input,60,FollowSets000.FOLLOW_48); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_7, grammarAccess.getEnumerationLiteralCSAccess().getLeftCurlyBracketKeyword_3_0_0()); |
| |
| } |
| // InternalOCLinEcore.g:2306:1: ( (lv_ownedAnnotations_8_0= ruleAnnotationElementCS ) )* |
| loop62: |
| do { |
| int alt62=2; |
| int LA62_0 = input.LA(1); |
| |
| if ( (LA62_0==58||LA62_0==73||LA62_0==80) ) { |
| alt62=1; |
| } |
| |
| |
| switch (alt62) { |
| case 1 : |
| // InternalOCLinEcore.g:2307:1: (lv_ownedAnnotations_8_0= ruleAnnotationElementCS ) |
| { |
| // InternalOCLinEcore.g:2307:1: (lv_ownedAnnotations_8_0= ruleAnnotationElementCS ) |
| // InternalOCLinEcore.g:2308:3: lv_ownedAnnotations_8_0= ruleAnnotationElementCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getEnumerationLiteralCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_3_0_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_48); |
| lv_ownedAnnotations_8_0=ruleAnnotationElementCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getEnumerationLiteralCSRule()); |
| } |
| add( |
| current, |
| "ownedAnnotations", |
| lv_ownedAnnotations_8_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop62; |
| } |
| } while (true); |
| |
| otherlv_9=(Token)match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_9, grammarAccess.getEnumerationLiteralCSAccess().getRightCurlyBracketKeyword_3_0_2()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:2329:7: otherlv_10= ';' |
| { |
| otherlv_10=(Token)match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_10, grammarAccess.getEnumerationLiteralCSAccess().getSemicolonKeyword_3_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleEnumerationLiteralCS" |
| |
| |
| // $ANTLR start "entryRuleImportCS" |
| // InternalOCLinEcore.g:2341:1: entryRuleImportCS returns [EObject current=null] : iv_ruleImportCS= ruleImportCS EOF ; |
| public final EObject entryRuleImportCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleImportCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:2342:2: (iv_ruleImportCS= ruleImportCS EOF ) |
| // InternalOCLinEcore.g:2343:2: iv_ruleImportCS= ruleImportCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getImportCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleImportCS=ruleImportCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleImportCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleImportCS" |
| |
| |
| // $ANTLR start "ruleImportCS" |
| // InternalOCLinEcore.g:2350:1: ruleImportCS returns [EObject current=null] : ( (otherlv_0= 'import' | otherlv_1= 'library' ) ( ( (lv_name_2_0= ruleUnrestrictedName ) ) otherlv_3= ':' )? ( (lv_ownedPathName_4_0= ruleURIPathNameCS ) ) ( (lv_isAll_5_0= '::*' ) )? otherlv_6= ';' ) ; |
| public final EObject ruleImportCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_0=null; |
| Token otherlv_1=null; |
| Token otherlv_3=null; |
| Token lv_isAll_5_0=null; |
| Token otherlv_6=null; |
| AntlrDatatypeRuleToken lv_name_2_0 = null; |
| |
| EObject lv_ownedPathName_4_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:2353:28: ( ( (otherlv_0= 'import' | otherlv_1= 'library' ) ( ( (lv_name_2_0= ruleUnrestrictedName ) ) otherlv_3= ':' )? ( (lv_ownedPathName_4_0= ruleURIPathNameCS ) ) ( (lv_isAll_5_0= '::*' ) )? otherlv_6= ';' ) ) |
| // InternalOCLinEcore.g:2354:1: ( (otherlv_0= 'import' | otherlv_1= 'library' ) ( ( (lv_name_2_0= ruleUnrestrictedName ) ) otherlv_3= ':' )? ( (lv_ownedPathName_4_0= ruleURIPathNameCS ) ) ( (lv_isAll_5_0= '::*' ) )? otherlv_6= ';' ) |
| { |
| // InternalOCLinEcore.g:2354:1: ( (otherlv_0= 'import' | otherlv_1= 'library' ) ( ( (lv_name_2_0= ruleUnrestrictedName ) ) otherlv_3= ':' )? ( (lv_ownedPathName_4_0= ruleURIPathNameCS ) ) ( (lv_isAll_5_0= '::*' ) )? otherlv_6= ';' ) |
| // InternalOCLinEcore.g:2354:2: (otherlv_0= 'import' | otherlv_1= 'library' ) ( ( (lv_name_2_0= ruleUnrestrictedName ) ) otherlv_3= ':' )? ( (lv_ownedPathName_4_0= ruleURIPathNameCS ) ) ( (lv_isAll_5_0= '::*' ) )? otherlv_6= ';' |
| { |
| // InternalOCLinEcore.g:2354:2: (otherlv_0= 'import' | otherlv_1= 'library' ) |
| int alt64=2; |
| int LA64_0 = input.LA(1); |
| |
| if ( (LA64_0==32) ) { |
| alt64=1; |
| } |
| else if ( (LA64_0==36) ) { |
| alt64=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 64, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt64) { |
| case 1 : |
| // InternalOCLinEcore.g:2354:4: otherlv_0= 'import' |
| { |
| otherlv_0=(Token)match(input,32,FollowSets000.FOLLOW_20); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_0, grammarAccess.getImportCSAccess().getImportKeyword_0_0()); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:2359:7: otherlv_1= 'library' |
| { |
| otherlv_1=(Token)match(input,36,FollowSets000.FOLLOW_20); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getImportCSAccess().getLibraryKeyword_0_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:2363:2: ( ( (lv_name_2_0= ruleUnrestrictedName ) ) otherlv_3= ':' )? |
| int alt65=2; |
| alt65 = dfa65.predict(input); |
| switch (alt65) { |
| case 1 : |
| // InternalOCLinEcore.g:2363:3: ( (lv_name_2_0= ruleUnrestrictedName ) ) otherlv_3= ':' |
| { |
| // InternalOCLinEcore.g:2363:3: ( (lv_name_2_0= ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:2364:1: (lv_name_2_0= ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:2364:1: (lv_name_2_0= ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:2365:3: lv_name_2_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getImportCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_17); |
| lv_name_2_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getImportCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_2_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_3=(Token)match(input,56,FollowSets000.FOLLOW_20); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_3, grammarAccess.getImportCSAccess().getColonKeyword_1_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:2385:3: ( (lv_ownedPathName_4_0= ruleURIPathNameCS ) ) |
| // InternalOCLinEcore.g:2386:1: (lv_ownedPathName_4_0= ruleURIPathNameCS ) |
| { |
| // InternalOCLinEcore.g:2386:1: (lv_ownedPathName_4_0= ruleURIPathNameCS ) |
| // InternalOCLinEcore.g:2387:3: lv_ownedPathName_4_0= ruleURIPathNameCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_49); |
| lv_ownedPathName_4_0=ruleURIPathNameCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getImportCSRule()); |
| } |
| set( |
| current, |
| "ownedPathName", |
| lv_ownedPathName_4_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.URIPathNameCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:2403:2: ( (lv_isAll_5_0= '::*' ) )? |
| int alt66=2; |
| int LA66_0 = input.LA(1); |
| |
| if ( (LA66_0==75) ) { |
| alt66=1; |
| } |
| switch (alt66) { |
| case 1 : |
| // InternalOCLinEcore.g:2404:1: (lv_isAll_5_0= '::*' ) |
| { |
| // InternalOCLinEcore.g:2404:1: (lv_isAll_5_0= '::*' ) |
| // InternalOCLinEcore.g:2405:3: lv_isAll_5_0= '::*' |
| { |
| lv_isAll_5_0=(Token)match(input,75,FollowSets000.FOLLOW_14); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_isAll_5_0, grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getImportCSRule()); |
| } |
| setWithLastConsumed(current, "isAll", true, "::*"); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_6=(Token)match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_6, grammarAccess.getImportCSAccess().getSemicolonKeyword_4()); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleImportCS" |
| |
| |
| // $ANTLR start "entryRuleModelElementCS" |
| // InternalOCLinEcore.g:2430:1: entryRuleModelElementCS returns [EObject current=null] : iv_ruleModelElementCS= ruleModelElementCS EOF ; |
| public final EObject entryRuleModelElementCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleModelElementCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:2431:2: (iv_ruleModelElementCS= ruleModelElementCS EOF ) |
| // InternalOCLinEcore.g:2432:2: iv_ruleModelElementCS= ruleModelElementCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getModelElementCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleModelElementCS=ruleModelElementCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleModelElementCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleModelElementCS" |
| |
| |
| // $ANTLR start "ruleModelElementCS" |
| // InternalOCLinEcore.g:2439:1: ruleModelElementCS returns [EObject current=null] : (this_ClassCS_0= ruleClassCS | this_EnumerationLiteralCS_1= ruleEnumerationLiteralCS | this_OperationCS_2= ruleOperationCS | this_PackageCS_3= rulePackageCS | this_StructuralFeatureCS_4= ruleStructuralFeatureCS ) ; |
| public final EObject ruleModelElementCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject this_ClassCS_0 = null; |
| |
| EObject this_EnumerationLiteralCS_1 = null; |
| |
| EObject this_OperationCS_2 = null; |
| |
| EObject this_PackageCS_3 = null; |
| |
| EObject this_StructuralFeatureCS_4 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:2442:28: ( (this_ClassCS_0= ruleClassCS | this_EnumerationLiteralCS_1= ruleEnumerationLiteralCS | this_OperationCS_2= ruleOperationCS | this_PackageCS_3= rulePackageCS | this_StructuralFeatureCS_4= ruleStructuralFeatureCS ) ) |
| // InternalOCLinEcore.g:2443:1: (this_ClassCS_0= ruleClassCS | this_EnumerationLiteralCS_1= ruleEnumerationLiteralCS | this_OperationCS_2= ruleOperationCS | this_PackageCS_3= rulePackageCS | this_StructuralFeatureCS_4= ruleStructuralFeatureCS ) |
| { |
| // InternalOCLinEcore.g:2443:1: (this_ClassCS_0= ruleClassCS | this_EnumerationLiteralCS_1= ruleEnumerationLiteralCS | this_OperationCS_2= ruleOperationCS | this_PackageCS_3= rulePackageCS | this_StructuralFeatureCS_4= ruleStructuralFeatureCS ) |
| int alt67=5; |
| alt67 = dfa67.predict(input); |
| switch (alt67) { |
| case 1 : |
| // InternalOCLinEcore.g:2444:2: this_ClassCS_0= ruleClassCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getModelElementCSAccess().getClassCSParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_ClassCS_0=ruleClassCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_ClassCS_0; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:2457:2: this_EnumerationLiteralCS_1= ruleEnumerationLiteralCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getModelElementCSAccess().getEnumerationLiteralCSParserRuleCall_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_EnumerationLiteralCS_1=ruleEnumerationLiteralCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_EnumerationLiteralCS_1; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:2470:2: this_OperationCS_2= ruleOperationCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getModelElementCSAccess().getOperationCSParserRuleCall_2()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_OperationCS_2=ruleOperationCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_OperationCS_2; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 4 : |
| // InternalOCLinEcore.g:2483:2: this_PackageCS_3= rulePackageCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getModelElementCSAccess().getPackageCSParserRuleCall_3()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_PackageCS_3=rulePackageCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_PackageCS_3; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 5 : |
| // InternalOCLinEcore.g:2496:2: this_StructuralFeatureCS_4= ruleStructuralFeatureCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getModelElementCSAccess().getStructuralFeatureCSParserRuleCall_4()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_StructuralFeatureCS_4=ruleStructuralFeatureCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_StructuralFeatureCS_4; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleModelElementCS" |
| |
| |
| // $ANTLR start "entryRuleModelElementRefCS" |
| // InternalOCLinEcore.g:2515:1: entryRuleModelElementRefCS returns [EObject current=null] : iv_ruleModelElementRefCS= ruleModelElementRefCS EOF ; |
| public final EObject entryRuleModelElementRefCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleModelElementRefCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:2516:2: (iv_ruleModelElementRefCS= ruleModelElementRefCS EOF ) |
| // InternalOCLinEcore.g:2517:2: iv_ruleModelElementRefCS= ruleModelElementRefCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getModelElementRefCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleModelElementRefCS=ruleModelElementRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleModelElementRefCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleModelElementRefCS" |
| |
| |
| // $ANTLR start "ruleModelElementRefCS" |
| // InternalOCLinEcore.g:2524:1: ruleModelElementRefCS returns [EObject current=null] : (otherlv_0= 'reference' ( (lv_ownedPathName_1_0= rulePathNameCS ) ) otherlv_2= ';' ) ; |
| public final EObject ruleModelElementRefCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_0=null; |
| Token otherlv_2=null; |
| EObject lv_ownedPathName_1_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:2527:28: ( (otherlv_0= 'reference' ( (lv_ownedPathName_1_0= rulePathNameCS ) ) otherlv_2= ';' ) ) |
| // InternalOCLinEcore.g:2528:1: (otherlv_0= 'reference' ( (lv_ownedPathName_1_0= rulePathNameCS ) ) otherlv_2= ';' ) |
| { |
| // InternalOCLinEcore.g:2528:1: (otherlv_0= 'reference' ( (lv_ownedPathName_1_0= rulePathNameCS ) ) otherlv_2= ';' ) |
| // InternalOCLinEcore.g:2528:3: otherlv_0= 'reference' ( (lv_ownedPathName_1_0= rulePathNameCS ) ) otherlv_2= ';' |
| { |
| otherlv_0=(Token)match(input,45,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_0, grammarAccess.getModelElementRefCSAccess().getReferenceKeyword_0()); |
| |
| } |
| // InternalOCLinEcore.g:2532:1: ( (lv_ownedPathName_1_0= rulePathNameCS ) ) |
| // InternalOCLinEcore.g:2533:1: (lv_ownedPathName_1_0= rulePathNameCS ) |
| { |
| // InternalOCLinEcore.g:2533:1: (lv_ownedPathName_1_0= rulePathNameCS ) |
| // InternalOCLinEcore.g:2534:3: lv_ownedPathName_1_0= rulePathNameCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getModelElementRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_14); |
| lv_ownedPathName_1_0=rulePathNameCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getModelElementRefCSRule()); |
| } |
| set( |
| current, |
| "ownedPathName", |
| lv_ownedPathName_1_0, |
| "org.eclipse.ocl.xtext.base.Base.PathNameCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_2=(Token)match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_2, grammarAccess.getModelElementRefCSAccess().getSemicolonKeyword_2()); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleModelElementRefCS" |
| |
| |
| // $ANTLR start "entryRuleOperationCS" |
| // InternalOCLinEcore.g:2562:1: entryRuleOperationCS returns [EObject current=null] : iv_ruleOperationCS= ruleOperationCS EOF ; |
| public final EObject entryRuleOperationCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleOperationCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:2563:2: (iv_ruleOperationCS= ruleOperationCS EOF ) |
| // InternalOCLinEcore.g:2564:2: iv_ruleOperationCS= ruleOperationCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getOperationCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleOperationCS=ruleOperationCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleOperationCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleOperationCS" |
| |
| |
| // $ANTLR start "ruleOperationCS" |
| // InternalOCLinEcore.g:2571:1: ruleOperationCS returns [EObject current=null] : ( ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? otherlv_4= 'operation' ( (lv_ownedSignature_5_0= ruleTemplateSignatureCS ) )? ( (lv_name_6_0= ruleUnrestrictedName ) ) otherlv_7= '(' ( ( (lv_ownedParameters_8_0= ruleParameterCS ) ) (otherlv_9= ',' ( (lv_ownedParameters_10_0= ruleParameterCS ) ) )* )? otherlv_11= ')' (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_14= 'throws' ( (lv_ownedExceptions_15_0= ruleTypedRefCS ) ) (otherlv_16= ',' ( (lv_ownedExceptions_17_0= ruleTypedRefCS ) ) )* )? (otherlv_18= '{' ( ( ( (lv_qualifiers_19_0= 'derived' ) ) | ( (lv_qualifiers_20_0= '!derived' ) ) | ( (lv_qualifiers_21_0= 'ordered' ) ) | ( (lv_qualifiers_22_0= '!ordered' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) ) (otherlv_27= ',' )? )+ otherlv_28= '}' )? ( (otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPreconditions_31_0= rulePreconditionConstraintCS ) ) | (otherlv_32= 'body' ( ruleUnrestrictedName )? otherlv_34= ':' ( (lv_ownedBodyExpressions_35_0= ruleSpecificationCS ) )? otherlv_36= ';' ) | ( (lv_ownedPostconditions_37_0= rulePostconditionConstraintCS ) ) )* otherlv_38= '}' ) | otherlv_39= ';' ) ) ; |
| public final EObject ruleOperationCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token lv_qualifiers_0_0=null; |
| Token lv_qualifiers_1_0=null; |
| Token lv_qualifiers_2_0=null; |
| Token lv_qualifiers_3_0=null; |
| Token otherlv_4=null; |
| Token otherlv_7=null; |
| Token otherlv_9=null; |
| Token otherlv_11=null; |
| Token otherlv_12=null; |
| Token otherlv_14=null; |
| Token otherlv_16=null; |
| Token otherlv_18=null; |
| Token lv_qualifiers_19_0=null; |
| Token lv_qualifiers_20_0=null; |
| Token lv_qualifiers_21_0=null; |
| Token lv_qualifiers_22_0=null; |
| Token lv_qualifiers_23_0=null; |
| Token lv_qualifiers_24_0=null; |
| Token lv_qualifiers_25_0=null; |
| Token lv_qualifiers_26_0=null; |
| Token otherlv_27=null; |
| Token otherlv_28=null; |
| Token otherlv_29=null; |
| Token otherlv_32=null; |
| Token otherlv_34=null; |
| Token otherlv_36=null; |
| Token otherlv_38=null; |
| Token otherlv_39=null; |
| EObject lv_ownedSignature_5_0 = null; |
| |
| AntlrDatatypeRuleToken lv_name_6_0 = null; |
| |
| EObject lv_ownedParameters_8_0 = null; |
| |
| EObject lv_ownedParameters_10_0 = null; |
| |
| EObject lv_ownedType_13_0 = null; |
| |
| EObject lv_ownedExceptions_15_0 = null; |
| |
| EObject lv_ownedExceptions_17_0 = null; |
| |
| EObject lv_ownedAnnotations_30_0 = null; |
| |
| EObject lv_ownedPreconditions_31_0 = null; |
| |
| EObject lv_ownedBodyExpressions_35_0 = null; |
| |
| EObject lv_ownedPostconditions_37_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:2574:28: ( ( ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? otherlv_4= 'operation' ( (lv_ownedSignature_5_0= ruleTemplateSignatureCS ) )? ( (lv_name_6_0= ruleUnrestrictedName ) ) otherlv_7= '(' ( ( (lv_ownedParameters_8_0= ruleParameterCS ) ) (otherlv_9= ',' ( (lv_ownedParameters_10_0= ruleParameterCS ) ) )* )? otherlv_11= ')' (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_14= 'throws' ( (lv_ownedExceptions_15_0= ruleTypedRefCS ) ) (otherlv_16= ',' ( (lv_ownedExceptions_17_0= ruleTypedRefCS ) ) )* )? (otherlv_18= '{' ( ( ( (lv_qualifiers_19_0= 'derived' ) ) | ( (lv_qualifiers_20_0= '!derived' ) ) | ( (lv_qualifiers_21_0= 'ordered' ) ) | ( (lv_qualifiers_22_0= '!ordered' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) ) (otherlv_27= ',' )? )+ otherlv_28= '}' )? ( (otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPreconditions_31_0= rulePreconditionConstraintCS ) ) | (otherlv_32= 'body' ( ruleUnrestrictedName )? otherlv_34= ':' ( (lv_ownedBodyExpressions_35_0= ruleSpecificationCS ) )? otherlv_36= ';' ) | ( (lv_ownedPostconditions_37_0= rulePostconditionConstraintCS ) ) )* otherlv_38= '}' ) | otherlv_39= ';' ) ) ) |
| // InternalOCLinEcore.g:2575:1: ( ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? otherlv_4= 'operation' ( (lv_ownedSignature_5_0= ruleTemplateSignatureCS ) )? ( (lv_name_6_0= ruleUnrestrictedName ) ) otherlv_7= '(' ( ( (lv_ownedParameters_8_0= ruleParameterCS ) ) (otherlv_9= ',' ( (lv_ownedParameters_10_0= ruleParameterCS ) ) )* )? otherlv_11= ')' (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_14= 'throws' ( (lv_ownedExceptions_15_0= ruleTypedRefCS ) ) (otherlv_16= ',' ( (lv_ownedExceptions_17_0= ruleTypedRefCS ) ) )* )? (otherlv_18= '{' ( ( ( (lv_qualifiers_19_0= 'derived' ) ) | ( (lv_qualifiers_20_0= '!derived' ) ) | ( (lv_qualifiers_21_0= 'ordered' ) ) | ( (lv_qualifiers_22_0= '!ordered' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) ) (otherlv_27= ',' )? )+ otherlv_28= '}' )? ( (otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPreconditions_31_0= rulePreconditionConstraintCS ) ) | (otherlv_32= 'body' ( ruleUnrestrictedName )? otherlv_34= ':' ( (lv_ownedBodyExpressions_35_0= ruleSpecificationCS ) )? otherlv_36= ';' ) | ( (lv_ownedPostconditions_37_0= rulePostconditionConstraintCS ) ) )* otherlv_38= '}' ) | otherlv_39= ';' ) ) |
| { |
| // InternalOCLinEcore.g:2575:1: ( ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? otherlv_4= 'operation' ( (lv_ownedSignature_5_0= ruleTemplateSignatureCS ) )? ( (lv_name_6_0= ruleUnrestrictedName ) ) otherlv_7= '(' ( ( (lv_ownedParameters_8_0= ruleParameterCS ) ) (otherlv_9= ',' ( (lv_ownedParameters_10_0= ruleParameterCS ) ) )* )? otherlv_11= ')' (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_14= 'throws' ( (lv_ownedExceptions_15_0= ruleTypedRefCS ) ) (otherlv_16= ',' ( (lv_ownedExceptions_17_0= ruleTypedRefCS ) ) )* )? (otherlv_18= '{' ( ( ( (lv_qualifiers_19_0= 'derived' ) ) | ( (lv_qualifiers_20_0= '!derived' ) ) | ( (lv_qualifiers_21_0= 'ordered' ) ) | ( (lv_qualifiers_22_0= '!ordered' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) ) (otherlv_27= ',' )? )+ otherlv_28= '}' )? ( (otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPreconditions_31_0= rulePreconditionConstraintCS ) ) | (otherlv_32= 'body' ( ruleUnrestrictedName )? otherlv_34= ':' ( (lv_ownedBodyExpressions_35_0= ruleSpecificationCS ) )? otherlv_36= ';' ) | ( (lv_ownedPostconditions_37_0= rulePostconditionConstraintCS ) ) )* otherlv_38= '}' ) | otherlv_39= ';' ) ) |
| // InternalOCLinEcore.g:2575:2: ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? otherlv_4= 'operation' ( (lv_ownedSignature_5_0= ruleTemplateSignatureCS ) )? ( (lv_name_6_0= ruleUnrestrictedName ) ) otherlv_7= '(' ( ( (lv_ownedParameters_8_0= ruleParameterCS ) ) (otherlv_9= ',' ( (lv_ownedParameters_10_0= ruleParameterCS ) ) )* )? otherlv_11= ')' (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_14= 'throws' ( (lv_ownedExceptions_15_0= ruleTypedRefCS ) ) (otherlv_16= ',' ( (lv_ownedExceptions_17_0= ruleTypedRefCS ) ) )* )? (otherlv_18= '{' ( ( ( (lv_qualifiers_19_0= 'derived' ) ) | ( (lv_qualifiers_20_0= '!derived' ) ) | ( (lv_qualifiers_21_0= 'ordered' ) ) | ( (lv_qualifiers_22_0= '!ordered' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) ) (otherlv_27= ',' )? )+ otherlv_28= '}' )? ( (otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPreconditions_31_0= rulePreconditionConstraintCS ) ) | (otherlv_32= 'body' ( ruleUnrestrictedName )? otherlv_34= ':' ( (lv_ownedBodyExpressions_35_0= ruleSpecificationCS ) )? otherlv_36= ';' ) | ( (lv_ownedPostconditions_37_0= rulePostconditionConstraintCS ) ) )* otherlv_38= '}' ) | otherlv_39= ';' ) |
| { |
| // InternalOCLinEcore.g:2575:2: ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? |
| int alt70=3; |
| int LA70_0 = input.LA(1); |
| |
| if ( (LA70_0==47) ) { |
| alt70=1; |
| } |
| else if ( (LA70_0==26) ) { |
| alt70=2; |
| } |
| switch (alt70) { |
| case 1 : |
| // InternalOCLinEcore.g:2575:3: ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) |
| { |
| // InternalOCLinEcore.g:2575:3: ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) |
| // InternalOCLinEcore.g:2575:4: ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? |
| { |
| // InternalOCLinEcore.g:2575:4: ( (lv_qualifiers_0_0= 'static' ) ) |
| // InternalOCLinEcore.g:2576:1: (lv_qualifiers_0_0= 'static' ) |
| { |
| // InternalOCLinEcore.g:2576:1: (lv_qualifiers_0_0= 'static' ) |
| // InternalOCLinEcore.g:2577:3: lv_qualifiers_0_0= 'static' |
| { |
| lv_qualifiers_0_0=(Token)match(input,47,FollowSets000.FOLLOW_50); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_0_0, grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_0_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getOperationCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_0_0, "static"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:2590:2: ( (lv_qualifiers_1_0= 'definition' ) )? |
| int alt68=2; |
| int LA68_0 = input.LA(1); |
| |
| if ( (LA68_0==26) ) { |
| alt68=1; |
| } |
| switch (alt68) { |
| case 1 : |
| // InternalOCLinEcore.g:2591:1: (lv_qualifiers_1_0= 'definition' ) |
| { |
| // InternalOCLinEcore.g:2591:1: (lv_qualifiers_1_0= 'definition' ) |
| // InternalOCLinEcore.g:2592:3: lv_qualifiers_1_0= 'definition' |
| { |
| lv_qualifiers_1_0=(Token)match(input,26,FollowSets000.FOLLOW_51); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_1_0, grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_0_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getOperationCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_1_0, "definition"); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:2606:6: ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) |
| { |
| // InternalOCLinEcore.g:2606:6: ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) |
| // InternalOCLinEcore.g:2606:7: ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? |
| { |
| // InternalOCLinEcore.g:2606:7: ( (lv_qualifiers_2_0= 'definition' ) ) |
| // InternalOCLinEcore.g:2607:1: (lv_qualifiers_2_0= 'definition' ) |
| { |
| // InternalOCLinEcore.g:2607:1: (lv_qualifiers_2_0= 'definition' ) |
| // InternalOCLinEcore.g:2608:3: lv_qualifiers_2_0= 'definition' |
| { |
| lv_qualifiers_2_0=(Token)match(input,26,FollowSets000.FOLLOW_52); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_2_0, grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_1_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getOperationCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_2_0, "definition"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:2621:2: ( (lv_qualifiers_3_0= 'static' ) )? |
| int alt69=2; |
| int LA69_0 = input.LA(1); |
| |
| if ( (LA69_0==47) ) { |
| alt69=1; |
| } |
| switch (alt69) { |
| case 1 : |
| // InternalOCLinEcore.g:2622:1: (lv_qualifiers_3_0= 'static' ) |
| { |
| // InternalOCLinEcore.g:2622:1: (lv_qualifiers_3_0= 'static' ) |
| // InternalOCLinEcore.g:2623:3: lv_qualifiers_3_0= 'static' |
| { |
| lv_qualifiers_3_0=(Token)match(input,47,FollowSets000.FOLLOW_51); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_3_0, grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_1_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getOperationCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_3_0, "static"); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_4=(Token)match(input,37,FollowSets000.FOLLOW_53); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_4, grammarAccess.getOperationCSAccess().getOperationKeyword_1()); |
| |
| } |
| // InternalOCLinEcore.g:2640:1: ( (lv_ownedSignature_5_0= ruleTemplateSignatureCS ) )? |
| int alt71=2; |
| int LA71_0 = input.LA(1); |
| |
| if ( (LA71_0==54||LA71_0==81) ) { |
| alt71=1; |
| } |
| switch (alt71) { |
| case 1 : |
| // InternalOCLinEcore.g:2641:1: (lv_ownedSignature_5_0= ruleTemplateSignatureCS ) |
| { |
| // InternalOCLinEcore.g:2641:1: (lv_ownedSignature_5_0= ruleTemplateSignatureCS ) |
| // InternalOCLinEcore.g:2642:3: lv_ownedSignature_5_0= ruleTemplateSignatureCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_3); |
| lv_ownedSignature_5_0=ruleTemplateSignatureCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getOperationCSRule()); |
| } |
| set( |
| current, |
| "ownedSignature", |
| lv_ownedSignature_5_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TemplateSignatureCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:2658:3: ( (lv_name_6_0= ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:2659:1: (lv_name_6_0= ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:2659:1: (lv_name_6_0= ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:2660:3: lv_name_6_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getOperationCSAccess().getNameUnrestrictedNameParserRuleCall_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_54); |
| lv_name_6_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getOperationCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_6_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_7=(Token)match(input,54,FollowSets000.FOLLOW_55); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_7, grammarAccess.getOperationCSAccess().getLeftParenthesisKeyword_4()); |
| |
| } |
| // InternalOCLinEcore.g:2680:1: ( ( (lv_ownedParameters_8_0= ruleParameterCS ) ) (otherlv_9= ',' ( (lv_ownedParameters_10_0= ruleParameterCS ) ) )* )? |
| int alt73=2; |
| int LA73_0 = input.LA(1); |
| |
| if ( ((LA73_0>=RULE_SIMPLE_ID && LA73_0<=RULE_ESCAPED_ID)||LA73_0==17||(LA73_0>=19 && LA73_0<=53)||LA73_0==58||LA73_0==71||(LA73_0>=73 && LA73_0<=74)||LA73_0==76||LA73_0==80) ) { |
| alt73=1; |
| } |
| switch (alt73) { |
| case 1 : |
| // InternalOCLinEcore.g:2680:2: ( (lv_ownedParameters_8_0= ruleParameterCS ) ) (otherlv_9= ',' ( (lv_ownedParameters_10_0= ruleParameterCS ) ) )* |
| { |
| // InternalOCLinEcore.g:2680:2: ( (lv_ownedParameters_8_0= ruleParameterCS ) ) |
| // InternalOCLinEcore.g:2681:1: (lv_ownedParameters_8_0= ruleParameterCS ) |
| { |
| // InternalOCLinEcore.g:2681:1: (lv_ownedParameters_8_0= ruleParameterCS ) |
| // InternalOCLinEcore.g:2682:3: lv_ownedParameters_8_0= ruleParameterCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_21); |
| lv_ownedParameters_8_0=ruleParameterCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getOperationCSRule()); |
| } |
| add( |
| current, |
| "ownedParameters", |
| lv_ownedParameters_8_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.ParameterCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:2698:2: (otherlv_9= ',' ( (lv_ownedParameters_10_0= ruleParameterCS ) ) )* |
| loop72: |
| do { |
| int alt72=2; |
| int LA72_0 = input.LA(1); |
| |
| if ( (LA72_0==59) ) { |
| alt72=1; |
| } |
| |
| |
| switch (alt72) { |
| case 1 : |
| // InternalOCLinEcore.g:2698:4: otherlv_9= ',' ( (lv_ownedParameters_10_0= ruleParameterCS ) ) |
| { |
| otherlv_9=(Token)match(input,59,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_9, grammarAccess.getOperationCSAccess().getCommaKeyword_5_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:2702:1: ( (lv_ownedParameters_10_0= ruleParameterCS ) ) |
| // InternalOCLinEcore.g:2703:1: (lv_ownedParameters_10_0= ruleParameterCS ) |
| { |
| // InternalOCLinEcore.g:2703:1: (lv_ownedParameters_10_0= ruleParameterCS ) |
| // InternalOCLinEcore.g:2704:3: lv_ownedParameters_10_0= ruleParameterCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_21); |
| lv_ownedParameters_10_0=ruleParameterCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getOperationCSRule()); |
| } |
| add( |
| current, |
| "ownedParameters", |
| lv_ownedParameters_10_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.ParameterCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop72; |
| } |
| } while (true); |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_11=(Token)match(input,55,FollowSets000.FOLLOW_56); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_11, grammarAccess.getOperationCSAccess().getRightParenthesisKeyword_6()); |
| |
| } |
| // InternalOCLinEcore.g:2724:1: (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypedMultiplicityRefCS ) ) )? |
| int alt74=2; |
| int LA74_0 = input.LA(1); |
| |
| if ( (LA74_0==56) ) { |
| alt74=1; |
| } |
| switch (alt74) { |
| case 1 : |
| // InternalOCLinEcore.g:2724:3: otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypedMultiplicityRefCS ) ) |
| { |
| otherlv_12=(Token)match(input,56,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_12, grammarAccess.getOperationCSAccess().getColonKeyword_7_0()); |
| |
| } |
| // InternalOCLinEcore.g:2728:1: ( (lv_ownedType_13_0= ruleTypedMultiplicityRefCS ) ) |
| // InternalOCLinEcore.g:2729:1: (lv_ownedType_13_0= ruleTypedMultiplicityRefCS ) |
| { |
| // InternalOCLinEcore.g:2729:1: (lv_ownedType_13_0= ruleTypedMultiplicityRefCS ) |
| // InternalOCLinEcore.g:2730:3: lv_ownedType_13_0= ruleTypedMultiplicityRefCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_7_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_57); |
| lv_ownedType_13_0=ruleTypedMultiplicityRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getOperationCSRule()); |
| } |
| set( |
| current, |
| "ownedType", |
| lv_ownedType_13_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedMultiplicityRefCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:2746:4: (otherlv_14= 'throws' ( (lv_ownedExceptions_15_0= ruleTypedRefCS ) ) (otherlv_16= ',' ( (lv_ownedExceptions_17_0= ruleTypedRefCS ) ) )* )? |
| int alt76=2; |
| int LA76_0 = input.LA(1); |
| |
| if ( (LA76_0==48) ) { |
| alt76=1; |
| } |
| switch (alt76) { |
| case 1 : |
| // InternalOCLinEcore.g:2746:6: otherlv_14= 'throws' ( (lv_ownedExceptions_15_0= ruleTypedRefCS ) ) (otherlv_16= ',' ( (lv_ownedExceptions_17_0= ruleTypedRefCS ) ) )* |
| { |
| otherlv_14=(Token)match(input,48,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_14, grammarAccess.getOperationCSAccess().getThrowsKeyword_8_0()); |
| |
| } |
| // InternalOCLinEcore.g:2750:1: ( (lv_ownedExceptions_15_0= ruleTypedRefCS ) ) |
| // InternalOCLinEcore.g:2751:1: (lv_ownedExceptions_15_0= ruleTypedRefCS ) |
| { |
| // InternalOCLinEcore.g:2751:1: (lv_ownedExceptions_15_0= ruleTypedRefCS ) |
| // InternalOCLinEcore.g:2752:3: lv_ownedExceptions_15_0= ruleTypedRefCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedExceptionsTypedRefCSParserRuleCall_8_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_58); |
| lv_ownedExceptions_15_0=ruleTypedRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getOperationCSRule()); |
| } |
| add( |
| current, |
| "ownedExceptions", |
| lv_ownedExceptions_15_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedRefCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:2768:2: (otherlv_16= ',' ( (lv_ownedExceptions_17_0= ruleTypedRefCS ) ) )* |
| loop75: |
| do { |
| int alt75=2; |
| int LA75_0 = input.LA(1); |
| |
| if ( (LA75_0==59) ) { |
| alt75=1; |
| } |
| |
| |
| switch (alt75) { |
| case 1 : |
| // InternalOCLinEcore.g:2768:4: otherlv_16= ',' ( (lv_ownedExceptions_17_0= ruleTypedRefCS ) ) |
| { |
| otherlv_16=(Token)match(input,59,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_16, grammarAccess.getOperationCSAccess().getCommaKeyword_8_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:2772:1: ( (lv_ownedExceptions_17_0= ruleTypedRefCS ) ) |
| // InternalOCLinEcore.g:2773:1: (lv_ownedExceptions_17_0= ruleTypedRefCS ) |
| { |
| // InternalOCLinEcore.g:2773:1: (lv_ownedExceptions_17_0= ruleTypedRefCS ) |
| // InternalOCLinEcore.g:2774:3: lv_ownedExceptions_17_0= ruleTypedRefCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedExceptionsTypedRefCSParserRuleCall_8_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_58); |
| lv_ownedExceptions_17_0=ruleTypedRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getOperationCSRule()); |
| } |
| add( |
| current, |
| "ownedExceptions", |
| lv_ownedExceptions_17_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedRefCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop75; |
| } |
| } while (true); |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:2790:6: (otherlv_18= '{' ( ( ( (lv_qualifiers_19_0= 'derived' ) ) | ( (lv_qualifiers_20_0= '!derived' ) ) | ( (lv_qualifiers_21_0= 'ordered' ) ) | ( (lv_qualifiers_22_0= '!ordered' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) ) (otherlv_27= ',' )? )+ otherlv_28= '}' )? |
| int alt80=2; |
| int LA80_0 = input.LA(1); |
| |
| if ( (LA80_0==60) ) { |
| int LA80_1 = input.LA(2); |
| |
| if ( (LA80_1==28||LA80_1==38||(LA80_1>=49 && LA80_1<=50)||LA80_1==63||LA80_1==65||(LA80_1>=67 && LA80_1<=68)) ) { |
| alt80=1; |
| } |
| } |
| switch (alt80) { |
| case 1 : |
| // InternalOCLinEcore.g:2790:8: otherlv_18= '{' ( ( ( (lv_qualifiers_19_0= 'derived' ) ) | ( (lv_qualifiers_20_0= '!derived' ) ) | ( (lv_qualifiers_21_0= 'ordered' ) ) | ( (lv_qualifiers_22_0= '!ordered' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) ) (otherlv_27= ',' )? )+ otherlv_28= '}' |
| { |
| otherlv_18=(Token)match(input,60,FollowSets000.FOLLOW_59); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_18, grammarAccess.getOperationCSAccess().getLeftCurlyBracketKeyword_9_0()); |
| |
| } |
| // InternalOCLinEcore.g:2794:1: ( ( ( (lv_qualifiers_19_0= 'derived' ) ) | ( (lv_qualifiers_20_0= '!derived' ) ) | ( (lv_qualifiers_21_0= 'ordered' ) ) | ( (lv_qualifiers_22_0= '!ordered' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) ) (otherlv_27= ',' )? )+ |
| int cnt79=0; |
| loop79: |
| do { |
| int alt79=2; |
| int LA79_0 = input.LA(1); |
| |
| if ( (LA79_0==28||LA79_0==38||(LA79_0>=49 && LA79_0<=50)||LA79_0==63||LA79_0==65||(LA79_0>=67 && LA79_0<=68)) ) { |
| alt79=1; |
| } |
| |
| |
| switch (alt79) { |
| case 1 : |
| // InternalOCLinEcore.g:2794:2: ( ( (lv_qualifiers_19_0= 'derived' ) ) | ( (lv_qualifiers_20_0= '!derived' ) ) | ( (lv_qualifiers_21_0= 'ordered' ) ) | ( (lv_qualifiers_22_0= '!ordered' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) ) (otherlv_27= ',' )? |
| { |
| // InternalOCLinEcore.g:2794:2: ( ( (lv_qualifiers_19_0= 'derived' ) ) | ( (lv_qualifiers_20_0= '!derived' ) ) | ( (lv_qualifiers_21_0= 'ordered' ) ) | ( (lv_qualifiers_22_0= '!ordered' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) ) |
| int alt77=8; |
| switch ( input.LA(1) ) { |
| case 28: |
| { |
| alt77=1; |
| } |
| break; |
| case 63: |
| { |
| alt77=2; |
| } |
| break; |
| case 38: |
| { |
| alt77=3; |
| } |
| break; |
| case 65: |
| { |
| alt77=4; |
| } |
| break; |
| case 49: |
| { |
| alt77=5; |
| } |
| break; |
| case 67: |
| { |
| alt77=6; |
| } |
| break; |
| case 50: |
| { |
| alt77=7; |
| } |
| break; |
| case 68: |
| { |
| alt77=8; |
| } |
| break; |
| default: |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 77, 0, input); |
| |
| throw nvae; |
| } |
| |
| switch (alt77) { |
| case 1 : |
| // InternalOCLinEcore.g:2794:3: ( (lv_qualifiers_19_0= 'derived' ) ) |
| { |
| // InternalOCLinEcore.g:2794:3: ( (lv_qualifiers_19_0= 'derived' ) ) |
| // InternalOCLinEcore.g:2795:1: (lv_qualifiers_19_0= 'derived' ) |
| { |
| // InternalOCLinEcore.g:2795:1: (lv_qualifiers_19_0= 'derived' ) |
| // InternalOCLinEcore.g:2796:3: lv_qualifiers_19_0= 'derived' |
| { |
| lv_qualifiers_19_0=(Token)match(input,28,FollowSets000.FOLLOW_60); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_19_0, grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getOperationCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_19_0, "derived"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:2810:6: ( (lv_qualifiers_20_0= '!derived' ) ) |
| { |
| // InternalOCLinEcore.g:2810:6: ( (lv_qualifiers_20_0= '!derived' ) ) |
| // InternalOCLinEcore.g:2811:1: (lv_qualifiers_20_0= '!derived' ) |
| { |
| // InternalOCLinEcore.g:2811:1: (lv_qualifiers_20_0= '!derived' ) |
| // InternalOCLinEcore.g:2812:3: lv_qualifiers_20_0= '!derived' |
| { |
| lv_qualifiers_20_0=(Token)match(input,63,FollowSets000.FOLLOW_60); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_20_0, grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getOperationCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_20_0, "!derived"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:2826:6: ( (lv_qualifiers_21_0= 'ordered' ) ) |
| { |
| // InternalOCLinEcore.g:2826:6: ( (lv_qualifiers_21_0= 'ordered' ) ) |
| // InternalOCLinEcore.g:2827:1: (lv_qualifiers_21_0= 'ordered' ) |
| { |
| // InternalOCLinEcore.g:2827:1: (lv_qualifiers_21_0= 'ordered' ) |
| // InternalOCLinEcore.g:2828:3: lv_qualifiers_21_0= 'ordered' |
| { |
| lv_qualifiers_21_0=(Token)match(input,38,FollowSets000.FOLLOW_60); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_21_0, grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_2_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getOperationCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_21_0, "ordered"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 4 : |
| // InternalOCLinEcore.g:2842:6: ( (lv_qualifiers_22_0= '!ordered' ) ) |
| { |
| // InternalOCLinEcore.g:2842:6: ( (lv_qualifiers_22_0= '!ordered' ) ) |
| // InternalOCLinEcore.g:2843:1: (lv_qualifiers_22_0= '!ordered' ) |
| { |
| // InternalOCLinEcore.g:2843:1: (lv_qualifiers_22_0= '!ordered' ) |
| // InternalOCLinEcore.g:2844:3: lv_qualifiers_22_0= '!ordered' |
| { |
| lv_qualifiers_22_0=(Token)match(input,65,FollowSets000.FOLLOW_60); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_22_0, grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_3_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getOperationCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_22_0, "!ordered"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 5 : |
| // InternalOCLinEcore.g:2858:6: ( (lv_qualifiers_23_0= 'transient' ) ) |
| { |
| // InternalOCLinEcore.g:2858:6: ( (lv_qualifiers_23_0= 'transient' ) ) |
| // InternalOCLinEcore.g:2859:1: (lv_qualifiers_23_0= 'transient' ) |
| { |
| // InternalOCLinEcore.g:2859:1: (lv_qualifiers_23_0= 'transient' ) |
| // InternalOCLinEcore.g:2860:3: lv_qualifiers_23_0= 'transient' |
| { |
| lv_qualifiers_23_0=(Token)match(input,49,FollowSets000.FOLLOW_60); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_23_0, grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_4_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getOperationCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_23_0, "transient"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 6 : |
| // InternalOCLinEcore.g:2874:6: ( (lv_qualifiers_24_0= '!transient' ) ) |
| { |
| // InternalOCLinEcore.g:2874:6: ( (lv_qualifiers_24_0= '!transient' ) ) |
| // InternalOCLinEcore.g:2875:1: (lv_qualifiers_24_0= '!transient' ) |
| { |
| // InternalOCLinEcore.g:2875:1: (lv_qualifiers_24_0= '!transient' ) |
| // InternalOCLinEcore.g:2876:3: lv_qualifiers_24_0= '!transient' |
| { |
| lv_qualifiers_24_0=(Token)match(input,67,FollowSets000.FOLLOW_60); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_24_0, grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_5_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getOperationCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_24_0, "!transient"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 7 : |
| // InternalOCLinEcore.g:2890:6: ( (lv_qualifiers_25_0= 'unique' ) ) |
| { |
| // InternalOCLinEcore.g:2890:6: ( (lv_qualifiers_25_0= 'unique' ) ) |
| // InternalOCLinEcore.g:2891:1: (lv_qualifiers_25_0= 'unique' ) |
| { |
| // InternalOCLinEcore.g:2891:1: (lv_qualifiers_25_0= 'unique' ) |
| // InternalOCLinEcore.g:2892:3: lv_qualifiers_25_0= 'unique' |
| { |
| lv_qualifiers_25_0=(Token)match(input,50,FollowSets000.FOLLOW_60); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_25_0, grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_6_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getOperationCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_25_0, "unique"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 8 : |
| // InternalOCLinEcore.g:2906:6: ( (lv_qualifiers_26_0= '!unique' ) ) |
| { |
| // InternalOCLinEcore.g:2906:6: ( (lv_qualifiers_26_0= '!unique' ) ) |
| // InternalOCLinEcore.g:2907:1: (lv_qualifiers_26_0= '!unique' ) |
| { |
| // InternalOCLinEcore.g:2907:1: (lv_qualifiers_26_0= '!unique' ) |
| // InternalOCLinEcore.g:2908:3: lv_qualifiers_26_0= '!unique' |
| { |
| lv_qualifiers_26_0=(Token)match(input,68,FollowSets000.FOLLOW_60); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_26_0, grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_7_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getOperationCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_26_0, "!unique"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:2921:3: (otherlv_27= ',' )? |
| int alt78=2; |
| int LA78_0 = input.LA(1); |
| |
| if ( (LA78_0==59) ) { |
| alt78=1; |
| } |
| switch (alt78) { |
| case 1 : |
| // InternalOCLinEcore.g:2921:5: otherlv_27= ',' |
| { |
| otherlv_27=(Token)match(input,59,FollowSets000.FOLLOW_61); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_27, grammarAccess.getOperationCSAccess().getCommaKeyword_9_1_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| if ( cnt79 >= 1 ) break loop79; |
| if (state.backtracking>0) {state.failed=true; return current;} |
| EarlyExitException eee = |
| new EarlyExitException(79, input); |
| throw eee; |
| } |
| cnt79++; |
| } while (true); |
| |
| otherlv_28=(Token)match(input,61,FollowSets000.FOLLOW_22); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_28, grammarAccess.getOperationCSAccess().getRightCurlyBracketKeyword_9_2()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:2929:3: ( (otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPreconditions_31_0= rulePreconditionConstraintCS ) ) | (otherlv_32= 'body' ( ruleUnrestrictedName )? otherlv_34= ':' ( (lv_ownedBodyExpressions_35_0= ruleSpecificationCS ) )? otherlv_36= ';' ) | ( (lv_ownedPostconditions_37_0= rulePostconditionConstraintCS ) ) )* otherlv_38= '}' ) | otherlv_39= ';' ) |
| int alt84=2; |
| int LA84_0 = input.LA(1); |
| |
| if ( (LA84_0==60) ) { |
| alt84=1; |
| } |
| else if ( (LA84_0==57) ) { |
| alt84=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 84, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt84) { |
| case 1 : |
| // InternalOCLinEcore.g:2929:4: (otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPreconditions_31_0= rulePreconditionConstraintCS ) ) | (otherlv_32= 'body' ( ruleUnrestrictedName )? otherlv_34= ':' ( (lv_ownedBodyExpressions_35_0= ruleSpecificationCS ) )? otherlv_36= ';' ) | ( (lv_ownedPostconditions_37_0= rulePostconditionConstraintCS ) ) )* otherlv_38= '}' ) |
| { |
| // InternalOCLinEcore.g:2929:4: (otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPreconditions_31_0= rulePreconditionConstraintCS ) ) | (otherlv_32= 'body' ( ruleUnrestrictedName )? otherlv_34= ':' ( (lv_ownedBodyExpressions_35_0= ruleSpecificationCS ) )? otherlv_36= ';' ) | ( (lv_ownedPostconditions_37_0= rulePostconditionConstraintCS ) ) )* otherlv_38= '}' ) |
| // InternalOCLinEcore.g:2929:6: otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPreconditions_31_0= rulePreconditionConstraintCS ) ) | (otherlv_32= 'body' ( ruleUnrestrictedName )? otherlv_34= ':' ( (lv_ownedBodyExpressions_35_0= ruleSpecificationCS ) )? otherlv_36= ';' ) | ( (lv_ownedPostconditions_37_0= rulePostconditionConstraintCS ) ) )* otherlv_38= '}' |
| { |
| otherlv_29=(Token)match(input,60,FollowSets000.FOLLOW_62); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_29, grammarAccess.getOperationCSAccess().getLeftCurlyBracketKeyword_10_0_0()); |
| |
| } |
| // InternalOCLinEcore.g:2933:1: ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPreconditions_31_0= rulePreconditionConstraintCS ) ) | (otherlv_32= 'body' ( ruleUnrestrictedName )? otherlv_34= ':' ( (lv_ownedBodyExpressions_35_0= ruleSpecificationCS ) )? otherlv_36= ';' ) | ( (lv_ownedPostconditions_37_0= rulePostconditionConstraintCS ) ) )* |
| loop83: |
| do { |
| int alt83=5; |
| switch ( input.LA(1) ) { |
| case 58: |
| case 73: |
| case 80: |
| { |
| alt83=1; |
| } |
| break; |
| case 41: |
| { |
| alt83=2; |
| } |
| break; |
| case 21: |
| { |
| alt83=3; |
| } |
| break; |
| case 40: |
| { |
| alt83=4; |
| } |
| break; |
| |
| } |
| |
| switch (alt83) { |
| case 1 : |
| // InternalOCLinEcore.g:2933:2: ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) |
| { |
| // InternalOCLinEcore.g:2933:2: ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) |
| // InternalOCLinEcore.g:2934:1: (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) |
| { |
| // InternalOCLinEcore.g:2934:1: (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) |
| // InternalOCLinEcore.g:2935:3: lv_ownedAnnotations_30_0= ruleAnnotationElementCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_10_0_1_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_62); |
| lv_ownedAnnotations_30_0=ruleAnnotationElementCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getOperationCSRule()); |
| } |
| add( |
| current, |
| "ownedAnnotations", |
| lv_ownedAnnotations_30_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:2952:6: ( (lv_ownedPreconditions_31_0= rulePreconditionConstraintCS ) ) |
| { |
| // InternalOCLinEcore.g:2952:6: ( (lv_ownedPreconditions_31_0= rulePreconditionConstraintCS ) ) |
| // InternalOCLinEcore.g:2953:1: (lv_ownedPreconditions_31_0= rulePreconditionConstraintCS ) |
| { |
| // InternalOCLinEcore.g:2953:1: (lv_ownedPreconditions_31_0= rulePreconditionConstraintCS ) |
| // InternalOCLinEcore.g:2954:3: lv_ownedPreconditions_31_0= rulePreconditionConstraintCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedPreconditionsPreconditionConstraintCSParserRuleCall_10_0_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_62); |
| lv_ownedPreconditions_31_0=rulePreconditionConstraintCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getOperationCSRule()); |
| } |
| add( |
| current, |
| "ownedPreconditions", |
| lv_ownedPreconditions_31_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.PreconditionConstraintCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:2971:6: (otherlv_32= 'body' ( ruleUnrestrictedName )? otherlv_34= ':' ( (lv_ownedBodyExpressions_35_0= ruleSpecificationCS ) )? otherlv_36= ';' ) |
| { |
| // InternalOCLinEcore.g:2971:6: (otherlv_32= 'body' ( ruleUnrestrictedName )? otherlv_34= ':' ( (lv_ownedBodyExpressions_35_0= ruleSpecificationCS ) )? otherlv_36= ';' ) |
| // InternalOCLinEcore.g:2971:8: otherlv_32= 'body' ( ruleUnrestrictedName )? otherlv_34= ':' ( (lv_ownedBodyExpressions_35_0= ruleSpecificationCS ) )? otherlv_36= ';' |
| { |
| otherlv_32=(Token)match(input,21,FollowSets000.FOLLOW_15); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_32, grammarAccess.getOperationCSAccess().getBodyKeyword_10_0_1_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:2975:1: ( ruleUnrestrictedName )? |
| int alt81=2; |
| int LA81_0 = input.LA(1); |
| |
| if ( ((LA81_0>=RULE_SIMPLE_ID && LA81_0<=RULE_ESCAPED_ID)||LA81_0==17||(LA81_0>=19 && LA81_0<=53)||LA81_0==58||LA81_0==71||(LA81_0>=73 && LA81_0<=74)||LA81_0==76||LA81_0==80) ) { |
| alt81=1; |
| } |
| switch (alt81) { |
| case 1 : |
| // InternalOCLinEcore.g:2976:2: ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getOperationCSAccess().getUnrestrictedNameParserRuleCall_10_0_1_2_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_17); |
| ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_34=(Token)match(input,56,FollowSets000.FOLLOW_13); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_34, grammarAccess.getOperationCSAccess().getColonKeyword_10_0_1_2_2()); |
| |
| } |
| // InternalOCLinEcore.g:2990:1: ( (lv_ownedBodyExpressions_35_0= ruleSpecificationCS ) )? |
| int alt82=2; |
| int LA82_0 = input.LA(1); |
| |
| if ( ((LA82_0>=RULE_INT && LA82_0<=RULE_SINGLE_QUOTED_STRING)||(LA82_0>=RULE_UNQUOTED_STRING && LA82_0<=RULE_ESCAPED_ID)||(LA82_0>=17 && LA82_0<=54)||LA82_0==58||LA82_0==71||(LA82_0>=73 && LA82_0<=74)||LA82_0==76||LA82_0==80||(LA82_0>=83 && LA82_0<=84)||(LA82_0>=98 && LA82_0<=99)||(LA82_0>=101 && LA82_0<=113)||LA82_0==116||(LA82_0>=118 && LA82_0<=121)||LA82_0==128||(LA82_0>=133 && LA82_0<=134)) ) { |
| alt82=1; |
| } |
| switch (alt82) { |
| case 1 : |
| // InternalOCLinEcore.g:2991:1: (lv_ownedBodyExpressions_35_0= ruleSpecificationCS ) |
| { |
| // InternalOCLinEcore.g:2991:1: (lv_ownedBodyExpressions_35_0= ruleSpecificationCS ) |
| // InternalOCLinEcore.g:2992:3: lv_ownedBodyExpressions_35_0= ruleSpecificationCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedBodyExpressionsSpecificationCSParserRuleCall_10_0_1_2_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_14); |
| lv_ownedBodyExpressions_35_0=ruleSpecificationCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getOperationCSRule()); |
| } |
| add( |
| current, |
| "ownedBodyExpressions", |
| lv_ownedBodyExpressions_35_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_36=(Token)match(input,57,FollowSets000.FOLLOW_62); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_36, grammarAccess.getOperationCSAccess().getSemicolonKeyword_10_0_1_2_4()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| case 4 : |
| // InternalOCLinEcore.g:3013:6: ( (lv_ownedPostconditions_37_0= rulePostconditionConstraintCS ) ) |
| { |
| // InternalOCLinEcore.g:3013:6: ( (lv_ownedPostconditions_37_0= rulePostconditionConstraintCS ) ) |
| // InternalOCLinEcore.g:3014:1: (lv_ownedPostconditions_37_0= rulePostconditionConstraintCS ) |
| { |
| // InternalOCLinEcore.g:3014:1: (lv_ownedPostconditions_37_0= rulePostconditionConstraintCS ) |
| // InternalOCLinEcore.g:3015:3: lv_ownedPostconditions_37_0= rulePostconditionConstraintCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedPostconditionsPostconditionConstraintCSParserRuleCall_10_0_1_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_62); |
| lv_ownedPostconditions_37_0=rulePostconditionConstraintCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getOperationCSRule()); |
| } |
| add( |
| current, |
| "ownedPostconditions", |
| lv_ownedPostconditions_37_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.PostconditionConstraintCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop83; |
| } |
| } while (true); |
| |
| otherlv_38=(Token)match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_38, grammarAccess.getOperationCSAccess().getRightCurlyBracketKeyword_10_0_2()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:3036:7: otherlv_39= ';' |
| { |
| otherlv_39=(Token)match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_39, grammarAccess.getOperationCSAccess().getSemicolonKeyword_10_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleOperationCS" |
| |
| |
| // $ANTLR start "entryRulePackageCS" |
| // InternalOCLinEcore.g:3048:1: entryRulePackageCS returns [EObject current=null] : iv_rulePackageCS= rulePackageCS EOF ; |
| public final EObject entryRulePackageCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_rulePackageCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:3049:2: (iv_rulePackageCS= rulePackageCS EOF ) |
| // InternalOCLinEcore.g:3050:2: iv_rulePackageCS= rulePackageCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getPackageCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_rulePackageCS=rulePackageCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_rulePackageCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRulePackageCS" |
| |
| |
| // $ANTLR start "rulePackageCS" |
| // InternalOCLinEcore.g:3057:1: rulePackageCS returns [EObject current=null] : (otherlv_0= 'package' ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= ':' ( (lv_nsPrefix_3_0= ruleUnrestrictedName ) ) )? (otherlv_4= '=' ( (lv_nsURI_5_0= ruleURI ) ) )? ( (otherlv_6= '{' ( ( (lv_ownedAnnotations_7_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPackages_8_0= rulePackageCS ) ) | ( (lv_ownedClasses_9_0= ruleClassCS ) ) )* otherlv_10= '}' ) | otherlv_11= ';' ) ) ; |
| public final EObject rulePackageCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_0=null; |
| Token otherlv_2=null; |
| Token otherlv_4=null; |
| Token otherlv_6=null; |
| Token otherlv_10=null; |
| Token otherlv_11=null; |
| AntlrDatatypeRuleToken lv_name_1_0 = null; |
| |
| AntlrDatatypeRuleToken lv_nsPrefix_3_0 = null; |
| |
| AntlrDatatypeRuleToken lv_nsURI_5_0 = null; |
| |
| EObject lv_ownedAnnotations_7_0 = null; |
| |
| EObject lv_ownedPackages_8_0 = null; |
| |
| EObject lv_ownedClasses_9_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:3060:28: ( (otherlv_0= 'package' ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= ':' ( (lv_nsPrefix_3_0= ruleUnrestrictedName ) ) )? (otherlv_4= '=' ( (lv_nsURI_5_0= ruleURI ) ) )? ( (otherlv_6= '{' ( ( (lv_ownedAnnotations_7_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPackages_8_0= rulePackageCS ) ) | ( (lv_ownedClasses_9_0= ruleClassCS ) ) )* otherlv_10= '}' ) | otherlv_11= ';' ) ) ) |
| // InternalOCLinEcore.g:3061:1: (otherlv_0= 'package' ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= ':' ( (lv_nsPrefix_3_0= ruleUnrestrictedName ) ) )? (otherlv_4= '=' ( (lv_nsURI_5_0= ruleURI ) ) )? ( (otherlv_6= '{' ( ( (lv_ownedAnnotations_7_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPackages_8_0= rulePackageCS ) ) | ( (lv_ownedClasses_9_0= ruleClassCS ) ) )* otherlv_10= '}' ) | otherlv_11= ';' ) ) |
| { |
| // InternalOCLinEcore.g:3061:1: (otherlv_0= 'package' ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= ':' ( (lv_nsPrefix_3_0= ruleUnrestrictedName ) ) )? (otherlv_4= '=' ( (lv_nsURI_5_0= ruleURI ) ) )? ( (otherlv_6= '{' ( ( (lv_ownedAnnotations_7_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPackages_8_0= rulePackageCS ) ) | ( (lv_ownedClasses_9_0= ruleClassCS ) ) )* otherlv_10= '}' ) | otherlv_11= ';' ) ) |
| // InternalOCLinEcore.g:3061:3: otherlv_0= 'package' ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= ':' ( (lv_nsPrefix_3_0= ruleUnrestrictedName ) ) )? (otherlv_4= '=' ( (lv_nsURI_5_0= ruleURI ) ) )? ( (otherlv_6= '{' ( ( (lv_ownedAnnotations_7_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPackages_8_0= rulePackageCS ) ) | ( (lv_ownedClasses_9_0= ruleClassCS ) ) )* otherlv_10= '}' ) | otherlv_11= ';' ) |
| { |
| otherlv_0=(Token)match(input,39,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_0, grammarAccess.getPackageCSAccess().getPackageKeyword_0()); |
| |
| } |
| // InternalOCLinEcore.g:3065:1: ( (lv_name_1_0= ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:3066:1: (lv_name_1_0= ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:3066:1: (lv_name_1_0= ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:3067:3: lv_name_1_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPackageCSAccess().getNameUnrestrictedNameParserRuleCall_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_28); |
| lv_name_1_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getPackageCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_1_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:3083:2: (otherlv_2= ':' ( (lv_nsPrefix_3_0= ruleUnrestrictedName ) ) )? |
| int alt85=2; |
| int LA85_0 = input.LA(1); |
| |
| if ( (LA85_0==56) ) { |
| alt85=1; |
| } |
| switch (alt85) { |
| case 1 : |
| // InternalOCLinEcore.g:3083:4: otherlv_2= ':' ( (lv_nsPrefix_3_0= ruleUnrestrictedName ) ) |
| { |
| otherlv_2=(Token)match(input,56,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_2, grammarAccess.getPackageCSAccess().getColonKeyword_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:3087:1: ( (lv_nsPrefix_3_0= ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:3088:1: (lv_nsPrefix_3_0= ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:3088:1: (lv_nsPrefix_3_0= ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:3089:3: lv_nsPrefix_3_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPackageCSAccess().getNsPrefixUnrestrictedNameParserRuleCall_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_30); |
| lv_nsPrefix_3_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getPackageCSRule()); |
| } |
| set( |
| current, |
| "nsPrefix", |
| lv_nsPrefix_3_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:3105:4: (otherlv_4= '=' ( (lv_nsURI_5_0= ruleURI ) ) )? |
| int alt86=2; |
| int LA86_0 = input.LA(1); |
| |
| if ( (LA86_0==62) ) { |
| alt86=1; |
| } |
| switch (alt86) { |
| case 1 : |
| // InternalOCLinEcore.g:3105:6: otherlv_4= '=' ( (lv_nsURI_5_0= ruleURI ) ) |
| { |
| otherlv_4=(Token)match(input,62,FollowSets000.FOLLOW_20); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_4, grammarAccess.getPackageCSAccess().getEqualsSignKeyword_3_0()); |
| |
| } |
| // InternalOCLinEcore.g:3109:1: ( (lv_nsURI_5_0= ruleURI ) ) |
| // InternalOCLinEcore.g:3110:1: (lv_nsURI_5_0= ruleURI ) |
| { |
| // InternalOCLinEcore.g:3110:1: (lv_nsURI_5_0= ruleURI ) |
| // InternalOCLinEcore.g:3111:3: lv_nsURI_5_0= ruleURI |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPackageCSAccess().getNsURIURIParserRuleCall_3_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_22); |
| lv_nsURI_5_0=ruleURI(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getPackageCSRule()); |
| } |
| set( |
| current, |
| "nsURI", |
| lv_nsURI_5_0, |
| "org.eclipse.ocl.xtext.base.Base.URI"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:3127:4: ( (otherlv_6= '{' ( ( (lv_ownedAnnotations_7_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPackages_8_0= rulePackageCS ) ) | ( (lv_ownedClasses_9_0= ruleClassCS ) ) )* otherlv_10= '}' ) | otherlv_11= ';' ) |
| int alt88=2; |
| int LA88_0 = input.LA(1); |
| |
| if ( (LA88_0==60) ) { |
| alt88=1; |
| } |
| else if ( (LA88_0==57) ) { |
| alt88=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 88, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt88) { |
| case 1 : |
| // InternalOCLinEcore.g:3127:5: (otherlv_6= '{' ( ( (lv_ownedAnnotations_7_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPackages_8_0= rulePackageCS ) ) | ( (lv_ownedClasses_9_0= ruleClassCS ) ) )* otherlv_10= '}' ) |
| { |
| // InternalOCLinEcore.g:3127:5: (otherlv_6= '{' ( ( (lv_ownedAnnotations_7_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPackages_8_0= rulePackageCS ) ) | ( (lv_ownedClasses_9_0= ruleClassCS ) ) )* otherlv_10= '}' ) |
| // InternalOCLinEcore.g:3127:7: otherlv_6= '{' ( ( (lv_ownedAnnotations_7_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPackages_8_0= rulePackageCS ) ) | ( (lv_ownedClasses_9_0= ruleClassCS ) ) )* otherlv_10= '}' |
| { |
| otherlv_6=(Token)match(input,60,FollowSets000.FOLLOW_63); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_6, grammarAccess.getPackageCSAccess().getLeftCurlyBracketKeyword_4_0_0()); |
| |
| } |
| // InternalOCLinEcore.g:3131:1: ( ( (lv_ownedAnnotations_7_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPackages_8_0= rulePackageCS ) ) | ( (lv_ownedClasses_9_0= ruleClassCS ) ) )* |
| loop87: |
| do { |
| int alt87=4; |
| switch ( input.LA(1) ) { |
| case 58: |
| case 73: |
| case 80: |
| { |
| alt87=1; |
| } |
| break; |
| case 39: |
| { |
| alt87=2; |
| } |
| break; |
| case 19: |
| case 23: |
| case 25: |
| case 29: |
| case 42: |
| { |
| alt87=3; |
| } |
| break; |
| |
| } |
| |
| switch (alt87) { |
| case 1 : |
| // InternalOCLinEcore.g:3131:2: ( (lv_ownedAnnotations_7_0= ruleAnnotationElementCS ) ) |
| { |
| // InternalOCLinEcore.g:3131:2: ( (lv_ownedAnnotations_7_0= ruleAnnotationElementCS ) ) |
| // InternalOCLinEcore.g:3132:1: (lv_ownedAnnotations_7_0= ruleAnnotationElementCS ) |
| { |
| // InternalOCLinEcore.g:3132:1: (lv_ownedAnnotations_7_0= ruleAnnotationElementCS ) |
| // InternalOCLinEcore.g:3133:3: lv_ownedAnnotations_7_0= ruleAnnotationElementCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_0_1_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_63); |
| lv_ownedAnnotations_7_0=ruleAnnotationElementCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getPackageCSRule()); |
| } |
| add( |
| current, |
| "ownedAnnotations", |
| lv_ownedAnnotations_7_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:3150:6: ( (lv_ownedPackages_8_0= rulePackageCS ) ) |
| { |
| // InternalOCLinEcore.g:3150:6: ( (lv_ownedPackages_8_0= rulePackageCS ) ) |
| // InternalOCLinEcore.g:3151:1: (lv_ownedPackages_8_0= rulePackageCS ) |
| { |
| // InternalOCLinEcore.g:3151:1: (lv_ownedPackages_8_0= rulePackageCS ) |
| // InternalOCLinEcore.g:3152:3: lv_ownedPackages_8_0= rulePackageCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_63); |
| lv_ownedPackages_8_0=rulePackageCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getPackageCSRule()); |
| } |
| add( |
| current, |
| "ownedPackages", |
| lv_ownedPackages_8_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.PackageCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:3169:6: ( (lv_ownedClasses_9_0= ruleClassCS ) ) |
| { |
| // InternalOCLinEcore.g:3169:6: ( (lv_ownedClasses_9_0= ruleClassCS ) ) |
| // InternalOCLinEcore.g:3170:1: (lv_ownedClasses_9_0= ruleClassCS ) |
| { |
| // InternalOCLinEcore.g:3170:1: (lv_ownedClasses_9_0= ruleClassCS ) |
| // InternalOCLinEcore.g:3171:3: lv_ownedClasses_9_0= ruleClassCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_0_1_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_63); |
| lv_ownedClasses_9_0=ruleClassCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getPackageCSRule()); |
| } |
| add( |
| current, |
| "ownedClasses", |
| lv_ownedClasses_9_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.ClassCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop87; |
| } |
| } while (true); |
| |
| otherlv_10=(Token)match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_10, grammarAccess.getPackageCSAccess().getRightCurlyBracketKeyword_4_0_2()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:3192:7: otherlv_11= ';' |
| { |
| otherlv_11=(Token)match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_11, grammarAccess.getPackageCSAccess().getSemicolonKeyword_4_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "rulePackageCS" |
| |
| |
| // $ANTLR start "entryRuleParameterCS" |
| // InternalOCLinEcore.g:3204:1: entryRuleParameterCS returns [EObject current=null] : iv_ruleParameterCS= ruleParameterCS EOF ; |
| public final EObject entryRuleParameterCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleParameterCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:3205:2: (iv_ruleParameterCS= ruleParameterCS EOF ) |
| // InternalOCLinEcore.g:3206:2: iv_ruleParameterCS= ruleParameterCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getParameterCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleParameterCS=ruleParameterCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleParameterCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleParameterCS" |
| |
| |
| // $ANTLR start "ruleParameterCS" |
| // InternalOCLinEcore.g:3213:1: ruleParameterCS returns [EObject current=null] : ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_3= '{' ( ( ( (lv_qualifiers_4_0= 'ordered' ) ) | ( (lv_qualifiers_5_0= '!ordered' ) ) | ( (lv_qualifiers_6_0= 'unique' ) ) | ( (lv_qualifiers_7_0= '!unique' ) ) ) (otherlv_8= ',' )? )+ otherlv_9= '}' )? (otherlv_10= '{' ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) )* otherlv_12= '}' )? ) ; |
| public final EObject ruleParameterCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| Token otherlv_3=null; |
| Token lv_qualifiers_4_0=null; |
| Token lv_qualifiers_5_0=null; |
| Token lv_qualifiers_6_0=null; |
| Token lv_qualifiers_7_0=null; |
| Token otherlv_8=null; |
| Token otherlv_9=null; |
| Token otherlv_10=null; |
| Token otherlv_12=null; |
| AntlrDatatypeRuleToken lv_name_0_0 = null; |
| |
| EObject lv_ownedType_2_0 = null; |
| |
| EObject lv_ownedAnnotations_11_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:3216:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_3= '{' ( ( ( (lv_qualifiers_4_0= 'ordered' ) ) | ( (lv_qualifiers_5_0= '!ordered' ) ) | ( (lv_qualifiers_6_0= 'unique' ) ) | ( (lv_qualifiers_7_0= '!unique' ) ) ) (otherlv_8= ',' )? )+ otherlv_9= '}' )? (otherlv_10= '{' ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) )* otherlv_12= '}' )? ) ) |
| // InternalOCLinEcore.g:3217:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_3= '{' ( ( ( (lv_qualifiers_4_0= 'ordered' ) ) | ( (lv_qualifiers_5_0= '!ordered' ) ) | ( (lv_qualifiers_6_0= 'unique' ) ) | ( (lv_qualifiers_7_0= '!unique' ) ) ) (otherlv_8= ',' )? )+ otherlv_9= '}' )? (otherlv_10= '{' ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) )* otherlv_12= '}' )? ) |
| { |
| // InternalOCLinEcore.g:3217:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_3= '{' ( ( ( (lv_qualifiers_4_0= 'ordered' ) ) | ( (lv_qualifiers_5_0= '!ordered' ) ) | ( (lv_qualifiers_6_0= 'unique' ) ) | ( (lv_qualifiers_7_0= '!unique' ) ) ) (otherlv_8= ',' )? )+ otherlv_9= '}' )? (otherlv_10= '{' ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) )* otherlv_12= '}' )? ) |
| // InternalOCLinEcore.g:3217:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_3= '{' ( ( ( (lv_qualifiers_4_0= 'ordered' ) ) | ( (lv_qualifiers_5_0= '!ordered' ) ) | ( (lv_qualifiers_6_0= 'unique' ) ) | ( (lv_qualifiers_7_0= '!unique' ) ) ) (otherlv_8= ',' )? )+ otherlv_9= '}' )? (otherlv_10= '{' ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) )* otherlv_12= '}' )? |
| { |
| // InternalOCLinEcore.g:3217:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:3218:1: (lv_name_0_0= ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:3218:1: (lv_name_0_0= ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:3219:3: lv_name_0_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_64); |
| lv_name_0_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getParameterCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_0_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:3235:2: (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) ) )? |
| int alt89=2; |
| int LA89_0 = input.LA(1); |
| |
| if ( (LA89_0==56) ) { |
| alt89=1; |
| } |
| switch (alt89) { |
| case 1 : |
| // InternalOCLinEcore.g:3235:4: otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) ) |
| { |
| otherlv_1=(Token)match(input,56,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getParameterCSAccess().getColonKeyword_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:3239:1: ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) ) |
| // InternalOCLinEcore.g:3240:1: (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) |
| { |
| // InternalOCLinEcore.g:3240:1: (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) |
| // InternalOCLinEcore.g:3241:3: lv_ownedType_2_0= ruleTypedMultiplicityRefCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getParameterCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_65); |
| lv_ownedType_2_0=ruleTypedMultiplicityRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getParameterCSRule()); |
| } |
| set( |
| current, |
| "ownedType", |
| lv_ownedType_2_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedMultiplicityRefCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:3257:4: (otherlv_3= '{' ( ( ( (lv_qualifiers_4_0= 'ordered' ) ) | ( (lv_qualifiers_5_0= '!ordered' ) ) | ( (lv_qualifiers_6_0= 'unique' ) ) | ( (lv_qualifiers_7_0= '!unique' ) ) ) (otherlv_8= ',' )? )+ otherlv_9= '}' )? |
| int alt93=2; |
| int LA93_0 = input.LA(1); |
| |
| if ( (LA93_0==60) ) { |
| int LA93_1 = input.LA(2); |
| |
| if ( (LA93_1==38||LA93_1==50||LA93_1==65||LA93_1==68) ) { |
| alt93=1; |
| } |
| } |
| switch (alt93) { |
| case 1 : |
| // InternalOCLinEcore.g:3257:6: otherlv_3= '{' ( ( ( (lv_qualifiers_4_0= 'ordered' ) ) | ( (lv_qualifiers_5_0= '!ordered' ) ) | ( (lv_qualifiers_6_0= 'unique' ) ) | ( (lv_qualifiers_7_0= '!unique' ) ) ) (otherlv_8= ',' )? )+ otherlv_9= '}' |
| { |
| otherlv_3=(Token)match(input,60,FollowSets000.FOLLOW_66); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_3, grammarAccess.getParameterCSAccess().getLeftCurlyBracketKeyword_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:3261:1: ( ( ( (lv_qualifiers_4_0= 'ordered' ) ) | ( (lv_qualifiers_5_0= '!ordered' ) ) | ( (lv_qualifiers_6_0= 'unique' ) ) | ( (lv_qualifiers_7_0= '!unique' ) ) ) (otherlv_8= ',' )? )+ |
| int cnt92=0; |
| loop92: |
| do { |
| int alt92=2; |
| int LA92_0 = input.LA(1); |
| |
| if ( (LA92_0==38||LA92_0==50||LA92_0==65||LA92_0==68) ) { |
| alt92=1; |
| } |
| |
| |
| switch (alt92) { |
| case 1 : |
| // InternalOCLinEcore.g:3261:2: ( ( (lv_qualifiers_4_0= 'ordered' ) ) | ( (lv_qualifiers_5_0= '!ordered' ) ) | ( (lv_qualifiers_6_0= 'unique' ) ) | ( (lv_qualifiers_7_0= '!unique' ) ) ) (otherlv_8= ',' )? |
| { |
| // InternalOCLinEcore.g:3261:2: ( ( (lv_qualifiers_4_0= 'ordered' ) ) | ( (lv_qualifiers_5_0= '!ordered' ) ) | ( (lv_qualifiers_6_0= 'unique' ) ) | ( (lv_qualifiers_7_0= '!unique' ) ) ) |
| int alt90=4; |
| switch ( input.LA(1) ) { |
| case 38: |
| { |
| alt90=1; |
| } |
| break; |
| case 65: |
| { |
| alt90=2; |
| } |
| break; |
| case 50: |
| { |
| alt90=3; |
| } |
| break; |
| case 68: |
| { |
| alt90=4; |
| } |
| break; |
| default: |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 90, 0, input); |
| |
| throw nvae; |
| } |
| |
| switch (alt90) { |
| case 1 : |
| // InternalOCLinEcore.g:3261:3: ( (lv_qualifiers_4_0= 'ordered' ) ) |
| { |
| // InternalOCLinEcore.g:3261:3: ( (lv_qualifiers_4_0= 'ordered' ) ) |
| // InternalOCLinEcore.g:3262:1: (lv_qualifiers_4_0= 'ordered' ) |
| { |
| // InternalOCLinEcore.g:3262:1: (lv_qualifiers_4_0= 'ordered' ) |
| // InternalOCLinEcore.g:3263:3: lv_qualifiers_4_0= 'ordered' |
| { |
| lv_qualifiers_4_0=(Token)match(input,38,FollowSets000.FOLLOW_67); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_4_0, grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getParameterCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_4_0, "ordered"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:3277:6: ( (lv_qualifiers_5_0= '!ordered' ) ) |
| { |
| // InternalOCLinEcore.g:3277:6: ( (lv_qualifiers_5_0= '!ordered' ) ) |
| // InternalOCLinEcore.g:3278:1: (lv_qualifiers_5_0= '!ordered' ) |
| { |
| // InternalOCLinEcore.g:3278:1: (lv_qualifiers_5_0= '!ordered' ) |
| // InternalOCLinEcore.g:3279:3: lv_qualifiers_5_0= '!ordered' |
| { |
| lv_qualifiers_5_0=(Token)match(input,65,FollowSets000.FOLLOW_67); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_5_0, grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getParameterCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_5_0, "!ordered"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:3293:6: ( (lv_qualifiers_6_0= 'unique' ) ) |
| { |
| // InternalOCLinEcore.g:3293:6: ( (lv_qualifiers_6_0= 'unique' ) ) |
| // InternalOCLinEcore.g:3294:1: (lv_qualifiers_6_0= 'unique' ) |
| { |
| // InternalOCLinEcore.g:3294:1: (lv_qualifiers_6_0= 'unique' ) |
| // InternalOCLinEcore.g:3295:3: lv_qualifiers_6_0= 'unique' |
| { |
| lv_qualifiers_6_0=(Token)match(input,50,FollowSets000.FOLLOW_67); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_6_0, grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_2_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getParameterCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_6_0, "unique"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 4 : |
| // InternalOCLinEcore.g:3309:6: ( (lv_qualifiers_7_0= '!unique' ) ) |
| { |
| // InternalOCLinEcore.g:3309:6: ( (lv_qualifiers_7_0= '!unique' ) ) |
| // InternalOCLinEcore.g:3310:1: (lv_qualifiers_7_0= '!unique' ) |
| { |
| // InternalOCLinEcore.g:3310:1: (lv_qualifiers_7_0= '!unique' ) |
| // InternalOCLinEcore.g:3311:3: lv_qualifiers_7_0= '!unique' |
| { |
| lv_qualifiers_7_0=(Token)match(input,68,FollowSets000.FOLLOW_67); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_7_0, grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_3_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getParameterCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_7_0, "!unique"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:3324:3: (otherlv_8= ',' )? |
| int alt91=2; |
| int LA91_0 = input.LA(1); |
| |
| if ( (LA91_0==59) ) { |
| alt91=1; |
| } |
| switch (alt91) { |
| case 1 : |
| // InternalOCLinEcore.g:3324:5: otherlv_8= ',' |
| { |
| otherlv_8=(Token)match(input,59,FollowSets000.FOLLOW_68); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_8, grammarAccess.getParameterCSAccess().getCommaKeyword_2_1_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| if ( cnt92 >= 1 ) break loop92; |
| if (state.backtracking>0) {state.failed=true; return current;} |
| EarlyExitException eee = |
| new EarlyExitException(92, input); |
| throw eee; |
| } |
| cnt92++; |
| } while (true); |
| |
| otherlv_9=(Token)match(input,61,FollowSets000.FOLLOW_65); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_9, grammarAccess.getParameterCSAccess().getRightCurlyBracketKeyword_2_2()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:3332:3: (otherlv_10= '{' ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) )* otherlv_12= '}' )? |
| int alt95=2; |
| int LA95_0 = input.LA(1); |
| |
| if ( (LA95_0==60) ) { |
| alt95=1; |
| } |
| switch (alt95) { |
| case 1 : |
| // InternalOCLinEcore.g:3332:5: otherlv_10= '{' ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) )* otherlv_12= '}' |
| { |
| otherlv_10=(Token)match(input,60,FollowSets000.FOLLOW_48); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_10, grammarAccess.getParameterCSAccess().getLeftCurlyBracketKeyword_3_0()); |
| |
| } |
| // InternalOCLinEcore.g:3336:1: ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) )* |
| loop94: |
| do { |
| int alt94=2; |
| int LA94_0 = input.LA(1); |
| |
| if ( (LA94_0==58||LA94_0==73||LA94_0==80) ) { |
| alt94=1; |
| } |
| |
| |
| switch (alt94) { |
| case 1 : |
| // InternalOCLinEcore.g:3337:1: (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) |
| { |
| // InternalOCLinEcore.g:3337:1: (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) |
| // InternalOCLinEcore.g:3338:3: lv_ownedAnnotations_11_0= ruleAnnotationElementCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getParameterCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_3_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_48); |
| lv_ownedAnnotations_11_0=ruleAnnotationElementCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getParameterCSRule()); |
| } |
| add( |
| current, |
| "ownedAnnotations", |
| lv_ownedAnnotations_11_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop94; |
| } |
| } while (true); |
| |
| otherlv_12=(Token)match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_12, grammarAccess.getParameterCSAccess().getRightCurlyBracketKeyword_3_2()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleParameterCS" |
| |
| |
| // $ANTLR start "entryRuleImplicitOppositeCS" |
| // InternalOCLinEcore.g:3366:1: entryRuleImplicitOppositeCS returns [EObject current=null] : iv_ruleImplicitOppositeCS= ruleImplicitOppositeCS EOF ; |
| public final EObject entryRuleImplicitOppositeCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleImplicitOppositeCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:3367:2: (iv_ruleImplicitOppositeCS= ruleImplicitOppositeCS EOF ) |
| // InternalOCLinEcore.g:3368:2: iv_ruleImplicitOppositeCS= ruleImplicitOppositeCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getImplicitOppositeCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleImplicitOppositeCS=ruleImplicitOppositeCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleImplicitOppositeCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleImplicitOppositeCS" |
| |
| |
| // $ANTLR start "ruleImplicitOppositeCS" |
| // InternalOCLinEcore.g:3375:1: ruleImplicitOppositeCS returns [EObject current=null] : (otherlv_0= 'opposite' ( (lv_name_1_0= ruleUnrestrictedName ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypedMultiplicityRefCS ) ) (otherlv_4= '{' ( ( ( (lv_qualifiers_5_0= 'ordered' ) ) | ( (lv_qualifiers_6_0= '!ordered' ) ) | ( (lv_qualifiers_7_0= 'unique' ) ) | ( (lv_qualifiers_8_0= '!unique' ) ) ) (otherlv_9= ',' )? )+ otherlv_10= '}' )? ) ; |
| public final EObject ruleImplicitOppositeCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_0=null; |
| Token otherlv_2=null; |
| Token otherlv_4=null; |
| Token lv_qualifiers_5_0=null; |
| Token lv_qualifiers_6_0=null; |
| Token lv_qualifiers_7_0=null; |
| Token lv_qualifiers_8_0=null; |
| Token otherlv_9=null; |
| Token otherlv_10=null; |
| AntlrDatatypeRuleToken lv_name_1_0 = null; |
| |
| EObject lv_ownedType_3_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:3378:28: ( (otherlv_0= 'opposite' ( (lv_name_1_0= ruleUnrestrictedName ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypedMultiplicityRefCS ) ) (otherlv_4= '{' ( ( ( (lv_qualifiers_5_0= 'ordered' ) ) | ( (lv_qualifiers_6_0= '!ordered' ) ) | ( (lv_qualifiers_7_0= 'unique' ) ) | ( (lv_qualifiers_8_0= '!unique' ) ) ) (otherlv_9= ',' )? )+ otherlv_10= '}' )? ) ) |
| // InternalOCLinEcore.g:3379:1: (otherlv_0= 'opposite' ( (lv_name_1_0= ruleUnrestrictedName ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypedMultiplicityRefCS ) ) (otherlv_4= '{' ( ( ( (lv_qualifiers_5_0= 'ordered' ) ) | ( (lv_qualifiers_6_0= '!ordered' ) ) | ( (lv_qualifiers_7_0= 'unique' ) ) | ( (lv_qualifiers_8_0= '!unique' ) ) ) (otherlv_9= ',' )? )+ otherlv_10= '}' )? ) |
| { |
| // InternalOCLinEcore.g:3379:1: (otherlv_0= 'opposite' ( (lv_name_1_0= ruleUnrestrictedName ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypedMultiplicityRefCS ) ) (otherlv_4= '{' ( ( ( (lv_qualifiers_5_0= 'ordered' ) ) | ( (lv_qualifiers_6_0= '!ordered' ) ) | ( (lv_qualifiers_7_0= 'unique' ) ) | ( (lv_qualifiers_8_0= '!unique' ) ) ) (otherlv_9= ',' )? )+ otherlv_10= '}' )? ) |
| // InternalOCLinEcore.g:3379:3: otherlv_0= 'opposite' ( (lv_name_1_0= ruleUnrestrictedName ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypedMultiplicityRefCS ) ) (otherlv_4= '{' ( ( ( (lv_qualifiers_5_0= 'ordered' ) ) | ( (lv_qualifiers_6_0= '!ordered' ) ) | ( (lv_qualifiers_7_0= 'unique' ) ) | ( (lv_qualifiers_8_0= '!unique' ) ) ) (otherlv_9= ',' )? )+ otherlv_10= '}' )? |
| { |
| otherlv_0=(Token)match(input,76,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_0, grammarAccess.getImplicitOppositeCSAccess().getOppositeKeyword_0()); |
| |
| } |
| // InternalOCLinEcore.g:3383:1: ( (lv_name_1_0= ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:3384:1: (lv_name_1_0= ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:3384:1: (lv_name_1_0= ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:3385:3: lv_name_1_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getImplicitOppositeCSAccess().getNameUnrestrictedNameParserRuleCall_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_17); |
| lv_name_1_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getImplicitOppositeCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_1_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_2=(Token)match(input,56,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_2, grammarAccess.getImplicitOppositeCSAccess().getColonKeyword_2()); |
| |
| } |
| // InternalOCLinEcore.g:3405:1: ( (lv_ownedType_3_0= ruleTypedMultiplicityRefCS ) ) |
| // InternalOCLinEcore.g:3406:1: (lv_ownedType_3_0= ruleTypedMultiplicityRefCS ) |
| { |
| // InternalOCLinEcore.g:3406:1: (lv_ownedType_3_0= ruleTypedMultiplicityRefCS ) |
| // InternalOCLinEcore.g:3407:3: lv_ownedType_3_0= ruleTypedMultiplicityRefCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getImplicitOppositeCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_65); |
| lv_ownedType_3_0=ruleTypedMultiplicityRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getImplicitOppositeCSRule()); |
| } |
| set( |
| current, |
| "ownedType", |
| lv_ownedType_3_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedMultiplicityRefCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:3423:2: (otherlv_4= '{' ( ( ( (lv_qualifiers_5_0= 'ordered' ) ) | ( (lv_qualifiers_6_0= '!ordered' ) ) | ( (lv_qualifiers_7_0= 'unique' ) ) | ( (lv_qualifiers_8_0= '!unique' ) ) ) (otherlv_9= ',' )? )+ otherlv_10= '}' )? |
| int alt99=2; |
| int LA99_0 = input.LA(1); |
| |
| if ( (LA99_0==60) ) { |
| alt99=1; |
| } |
| switch (alt99) { |
| case 1 : |
| // InternalOCLinEcore.g:3423:4: otherlv_4= '{' ( ( ( (lv_qualifiers_5_0= 'ordered' ) ) | ( (lv_qualifiers_6_0= '!ordered' ) ) | ( (lv_qualifiers_7_0= 'unique' ) ) | ( (lv_qualifiers_8_0= '!unique' ) ) ) (otherlv_9= ',' )? )+ otherlv_10= '}' |
| { |
| otherlv_4=(Token)match(input,60,FollowSets000.FOLLOW_66); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_4, grammarAccess.getImplicitOppositeCSAccess().getLeftCurlyBracketKeyword_4_0()); |
| |
| } |
| // InternalOCLinEcore.g:3427:1: ( ( ( (lv_qualifiers_5_0= 'ordered' ) ) | ( (lv_qualifiers_6_0= '!ordered' ) ) | ( (lv_qualifiers_7_0= 'unique' ) ) | ( (lv_qualifiers_8_0= '!unique' ) ) ) (otherlv_9= ',' )? )+ |
| int cnt98=0; |
| loop98: |
| do { |
| int alt98=2; |
| int LA98_0 = input.LA(1); |
| |
| if ( (LA98_0==38||LA98_0==50||LA98_0==65||LA98_0==68) ) { |
| alt98=1; |
| } |
| |
| |
| switch (alt98) { |
| case 1 : |
| // InternalOCLinEcore.g:3427:2: ( ( (lv_qualifiers_5_0= 'ordered' ) ) | ( (lv_qualifiers_6_0= '!ordered' ) ) | ( (lv_qualifiers_7_0= 'unique' ) ) | ( (lv_qualifiers_8_0= '!unique' ) ) ) (otherlv_9= ',' )? |
| { |
| // InternalOCLinEcore.g:3427:2: ( ( (lv_qualifiers_5_0= 'ordered' ) ) | ( (lv_qualifiers_6_0= '!ordered' ) ) | ( (lv_qualifiers_7_0= 'unique' ) ) | ( (lv_qualifiers_8_0= '!unique' ) ) ) |
| int alt96=4; |
| switch ( input.LA(1) ) { |
| case 38: |
| { |
| alt96=1; |
| } |
| break; |
| case 65: |
| { |
| alt96=2; |
| } |
| break; |
| case 50: |
| { |
| alt96=3; |
| } |
| break; |
| case 68: |
| { |
| alt96=4; |
| } |
| break; |
| default: |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 96, 0, input); |
| |
| throw nvae; |
| } |
| |
| switch (alt96) { |
| case 1 : |
| // InternalOCLinEcore.g:3427:3: ( (lv_qualifiers_5_0= 'ordered' ) ) |
| { |
| // InternalOCLinEcore.g:3427:3: ( (lv_qualifiers_5_0= 'ordered' ) ) |
| // InternalOCLinEcore.g:3428:1: (lv_qualifiers_5_0= 'ordered' ) |
| { |
| // InternalOCLinEcore.g:3428:1: (lv_qualifiers_5_0= 'ordered' ) |
| // InternalOCLinEcore.g:3429:3: lv_qualifiers_5_0= 'ordered' |
| { |
| lv_qualifiers_5_0=(Token)match(input,38,FollowSets000.FOLLOW_67); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_5_0, grammarAccess.getImplicitOppositeCSAccess().getQualifiersOrderedKeyword_4_1_0_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getImplicitOppositeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_5_0, "ordered"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:3443:6: ( (lv_qualifiers_6_0= '!ordered' ) ) |
| { |
| // InternalOCLinEcore.g:3443:6: ( (lv_qualifiers_6_0= '!ordered' ) ) |
| // InternalOCLinEcore.g:3444:1: (lv_qualifiers_6_0= '!ordered' ) |
| { |
| // InternalOCLinEcore.g:3444:1: (lv_qualifiers_6_0= '!ordered' ) |
| // InternalOCLinEcore.g:3445:3: lv_qualifiers_6_0= '!ordered' |
| { |
| lv_qualifiers_6_0=(Token)match(input,65,FollowSets000.FOLLOW_67); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_6_0, grammarAccess.getImplicitOppositeCSAccess().getQualifiersOrderedKeyword_4_1_0_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getImplicitOppositeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_6_0, "!ordered"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:3459:6: ( (lv_qualifiers_7_0= 'unique' ) ) |
| { |
| // InternalOCLinEcore.g:3459:6: ( (lv_qualifiers_7_0= 'unique' ) ) |
| // InternalOCLinEcore.g:3460:1: (lv_qualifiers_7_0= 'unique' ) |
| { |
| // InternalOCLinEcore.g:3460:1: (lv_qualifiers_7_0= 'unique' ) |
| // InternalOCLinEcore.g:3461:3: lv_qualifiers_7_0= 'unique' |
| { |
| lv_qualifiers_7_0=(Token)match(input,50,FollowSets000.FOLLOW_67); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_7_0, grammarAccess.getImplicitOppositeCSAccess().getQualifiersUniqueKeyword_4_1_0_2_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getImplicitOppositeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_7_0, "unique"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 4 : |
| // InternalOCLinEcore.g:3475:6: ( (lv_qualifiers_8_0= '!unique' ) ) |
| { |
| // InternalOCLinEcore.g:3475:6: ( (lv_qualifiers_8_0= '!unique' ) ) |
| // InternalOCLinEcore.g:3476:1: (lv_qualifiers_8_0= '!unique' ) |
| { |
| // InternalOCLinEcore.g:3476:1: (lv_qualifiers_8_0= '!unique' ) |
| // InternalOCLinEcore.g:3477:3: lv_qualifiers_8_0= '!unique' |
| { |
| lv_qualifiers_8_0=(Token)match(input,68,FollowSets000.FOLLOW_67); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_8_0, grammarAccess.getImplicitOppositeCSAccess().getQualifiersUniqueKeyword_4_1_0_3_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getImplicitOppositeCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_8_0, "!unique"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:3490:3: (otherlv_9= ',' )? |
| int alt97=2; |
| int LA97_0 = input.LA(1); |
| |
| if ( (LA97_0==59) ) { |
| alt97=1; |
| } |
| switch (alt97) { |
| case 1 : |
| // InternalOCLinEcore.g:3490:5: otherlv_9= ',' |
| { |
| otherlv_9=(Token)match(input,59,FollowSets000.FOLLOW_68); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_9, grammarAccess.getImplicitOppositeCSAccess().getCommaKeyword_4_1_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| if ( cnt98 >= 1 ) break loop98; |
| if (state.backtracking>0) {state.failed=true; return current;} |
| EarlyExitException eee = |
| new EarlyExitException(98, input); |
| throw eee; |
| } |
| cnt98++; |
| } while (true); |
| |
| otherlv_10=(Token)match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_10, grammarAccess.getImplicitOppositeCSAccess().getRightCurlyBracketKeyword_4_2()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleImplicitOppositeCS" |
| |
| |
| // $ANTLR start "entryRuleReferenceCS" |
| // InternalOCLinEcore.g:3506:1: entryRuleReferenceCS returns [EObject current=null] : iv_ruleReferenceCS= ruleReferenceCS EOF ; |
| public final EObject entryRuleReferenceCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleReferenceCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:3507:2: (iv_ruleReferenceCS= ruleReferenceCS EOF ) |
| // InternalOCLinEcore.g:3508:2: iv_ruleReferenceCS= ruleReferenceCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getReferenceCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleReferenceCS=ruleReferenceCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleReferenceCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleReferenceCS" |
| |
| |
| // $ANTLR start "ruleReferenceCS" |
| // InternalOCLinEcore.g:3515:1: ruleReferenceCS returns [EObject current=null] : ( ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? otherlv_4= 'property' ( (lv_name_5_0= ruleUnrestrictedName ) ) (otherlv_6= '#' ( ( ruleUnrestrictedName ) ) )? (otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_10= '=' ( (lv_default_11_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_12= '{' ( ( ( (lv_qualifiers_13_0= 'composes' ) ) | ( (lv_qualifiers_14_0= '!composes' ) ) | ( (lv_qualifiers_15_0= 'derived' ) ) | ( (lv_qualifiers_16_0= '!derived' ) ) | ( (lv_qualifiers_17_0= 'ordered' ) ) | ( (lv_qualifiers_18_0= '!ordered' ) ) | ( (lv_qualifiers_19_0= 'readonly' ) ) | ( (lv_qualifiers_20_0= '!readonly' ) ) | ( (lv_qualifiers_21_0= 'resolve' ) ) | ( (lv_qualifiers_22_0= '!resolve' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) | ( (lv_qualifiers_27_0= 'unsettable' ) ) | ( (lv_qualifiers_28_0= '!unsettable' ) ) | ( (lv_qualifiers_29_0= 'volatile' ) ) | ( (lv_qualifiers_30_0= '!volatile' ) ) ) (otherlv_31= ',' )? )+ otherlv_32= '}' )? ( (otherlv_33= '{' ( ( (lv_ownedAnnotations_34_0= ruleAnnotationElementCS ) ) | (otherlv_35= 'key' ( ( ruleUnrestrictedName ) ) (otherlv_37= ',' ( ( ruleUnrestrictedName ) ) )* otherlv_39= ';' ) | (otherlv_40= 'initial' ( ruleUnrestrictedName )? otherlv_42= ':' ( (lv_ownedDefaultExpressions_43_0= ruleSpecificationCS ) )? otherlv_44= ';' ) | (otherlv_45= 'derivation' ( ruleUnrestrictedName )? otherlv_47= ':' ( (lv_ownedDefaultExpressions_48_0= ruleSpecificationCS ) )? otherlv_49= ';' ) | ( ( (lv_ownedImplicitOpposites_50_0= ruleImplicitOppositeCS ) ) otherlv_51= ';' ) )* otherlv_52= '}' ) | otherlv_53= ';' ) ) ; |
| public final EObject ruleReferenceCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token lv_qualifiers_0_0=null; |
| Token lv_qualifiers_1_0=null; |
| Token lv_qualifiers_2_0=null; |
| Token lv_qualifiers_3_0=null; |
| Token otherlv_4=null; |
| Token otherlv_6=null; |
| Token otherlv_8=null; |
| Token otherlv_10=null; |
| Token lv_default_11_0=null; |
| Token otherlv_12=null; |
| Token lv_qualifiers_13_0=null; |
| Token lv_qualifiers_14_0=null; |
| Token lv_qualifiers_15_0=null; |
| Token lv_qualifiers_16_0=null; |
| Token lv_qualifiers_17_0=null; |
| Token lv_qualifiers_18_0=null; |
| Token lv_qualifiers_19_0=null; |
| Token lv_qualifiers_20_0=null; |
| Token lv_qualifiers_21_0=null; |
| Token lv_qualifiers_22_0=null; |
| Token lv_qualifiers_23_0=null; |
| Token lv_qualifiers_24_0=null; |
| Token lv_qualifiers_25_0=null; |
| Token lv_qualifiers_26_0=null; |
| Token lv_qualifiers_27_0=null; |
| Token lv_qualifiers_28_0=null; |
| Token lv_qualifiers_29_0=null; |
| Token lv_qualifiers_30_0=null; |
| Token otherlv_31=null; |
| Token otherlv_32=null; |
| Token otherlv_33=null; |
| Token otherlv_35=null; |
| Token otherlv_37=null; |
| Token otherlv_39=null; |
| Token otherlv_40=null; |
| Token otherlv_42=null; |
| Token otherlv_44=null; |
| Token otherlv_45=null; |
| Token otherlv_47=null; |
| Token otherlv_49=null; |
| Token otherlv_51=null; |
| Token otherlv_52=null; |
| Token otherlv_53=null; |
| AntlrDatatypeRuleToken lv_name_5_0 = null; |
| |
| EObject lv_ownedType_9_0 = null; |
| |
| EObject lv_ownedAnnotations_34_0 = null; |
| |
| EObject lv_ownedDefaultExpressions_43_0 = null; |
| |
| EObject lv_ownedDefaultExpressions_48_0 = null; |
| |
| EObject lv_ownedImplicitOpposites_50_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:3518:28: ( ( ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? otherlv_4= 'property' ( (lv_name_5_0= ruleUnrestrictedName ) ) (otherlv_6= '#' ( ( ruleUnrestrictedName ) ) )? (otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_10= '=' ( (lv_default_11_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_12= '{' ( ( ( (lv_qualifiers_13_0= 'composes' ) ) | ( (lv_qualifiers_14_0= '!composes' ) ) | ( (lv_qualifiers_15_0= 'derived' ) ) | ( (lv_qualifiers_16_0= '!derived' ) ) | ( (lv_qualifiers_17_0= 'ordered' ) ) | ( (lv_qualifiers_18_0= '!ordered' ) ) | ( (lv_qualifiers_19_0= 'readonly' ) ) | ( (lv_qualifiers_20_0= '!readonly' ) ) | ( (lv_qualifiers_21_0= 'resolve' ) ) | ( (lv_qualifiers_22_0= '!resolve' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) | ( (lv_qualifiers_27_0= 'unsettable' ) ) | ( (lv_qualifiers_28_0= '!unsettable' ) ) | ( (lv_qualifiers_29_0= 'volatile' ) ) | ( (lv_qualifiers_30_0= '!volatile' ) ) ) (otherlv_31= ',' )? )+ otherlv_32= '}' )? ( (otherlv_33= '{' ( ( (lv_ownedAnnotations_34_0= ruleAnnotationElementCS ) ) | (otherlv_35= 'key' ( ( ruleUnrestrictedName ) ) (otherlv_37= ',' ( ( ruleUnrestrictedName ) ) )* otherlv_39= ';' ) | (otherlv_40= 'initial' ( ruleUnrestrictedName )? otherlv_42= ':' ( (lv_ownedDefaultExpressions_43_0= ruleSpecificationCS ) )? otherlv_44= ';' ) | (otherlv_45= 'derivation' ( ruleUnrestrictedName )? otherlv_47= ':' ( (lv_ownedDefaultExpressions_48_0= ruleSpecificationCS ) )? otherlv_49= ';' ) | ( ( (lv_ownedImplicitOpposites_50_0= ruleImplicitOppositeCS ) ) otherlv_51= ';' ) )* otherlv_52= '}' ) | otherlv_53= ';' ) ) ) |
| // InternalOCLinEcore.g:3519:1: ( ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? otherlv_4= 'property' ( (lv_name_5_0= ruleUnrestrictedName ) ) (otherlv_6= '#' ( ( ruleUnrestrictedName ) ) )? (otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_10= '=' ( (lv_default_11_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_12= '{' ( ( ( (lv_qualifiers_13_0= 'composes' ) ) | ( (lv_qualifiers_14_0= '!composes' ) ) | ( (lv_qualifiers_15_0= 'derived' ) ) | ( (lv_qualifiers_16_0= '!derived' ) ) | ( (lv_qualifiers_17_0= 'ordered' ) ) | ( (lv_qualifiers_18_0= '!ordered' ) ) | ( (lv_qualifiers_19_0= 'readonly' ) ) | ( (lv_qualifiers_20_0= '!readonly' ) ) | ( (lv_qualifiers_21_0= 'resolve' ) ) | ( (lv_qualifiers_22_0= '!resolve' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) | ( (lv_qualifiers_27_0= 'unsettable' ) ) | ( (lv_qualifiers_28_0= '!unsettable' ) ) | ( (lv_qualifiers_29_0= 'volatile' ) ) | ( (lv_qualifiers_30_0= '!volatile' ) ) ) (otherlv_31= ',' )? )+ otherlv_32= '}' )? ( (otherlv_33= '{' ( ( (lv_ownedAnnotations_34_0= ruleAnnotationElementCS ) ) | (otherlv_35= 'key' ( ( ruleUnrestrictedName ) ) (otherlv_37= ',' ( ( ruleUnrestrictedName ) ) )* otherlv_39= ';' ) | (otherlv_40= 'initial' ( ruleUnrestrictedName )? otherlv_42= ':' ( (lv_ownedDefaultExpressions_43_0= ruleSpecificationCS ) )? otherlv_44= ';' ) | (otherlv_45= 'derivation' ( ruleUnrestrictedName )? otherlv_47= ':' ( (lv_ownedDefaultExpressions_48_0= ruleSpecificationCS ) )? otherlv_49= ';' ) | ( ( (lv_ownedImplicitOpposites_50_0= ruleImplicitOppositeCS ) ) otherlv_51= ';' ) )* otherlv_52= '}' ) | otherlv_53= ';' ) ) |
| { |
| // InternalOCLinEcore.g:3519:1: ( ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? otherlv_4= 'property' ( (lv_name_5_0= ruleUnrestrictedName ) ) (otherlv_6= '#' ( ( ruleUnrestrictedName ) ) )? (otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_10= '=' ( (lv_default_11_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_12= '{' ( ( ( (lv_qualifiers_13_0= 'composes' ) ) | ( (lv_qualifiers_14_0= '!composes' ) ) | ( (lv_qualifiers_15_0= 'derived' ) ) | ( (lv_qualifiers_16_0= '!derived' ) ) | ( (lv_qualifiers_17_0= 'ordered' ) ) | ( (lv_qualifiers_18_0= '!ordered' ) ) | ( (lv_qualifiers_19_0= 'readonly' ) ) | ( (lv_qualifiers_20_0= '!readonly' ) ) | ( (lv_qualifiers_21_0= 'resolve' ) ) | ( (lv_qualifiers_22_0= '!resolve' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) | ( (lv_qualifiers_27_0= 'unsettable' ) ) | ( (lv_qualifiers_28_0= '!unsettable' ) ) | ( (lv_qualifiers_29_0= 'volatile' ) ) | ( (lv_qualifiers_30_0= '!volatile' ) ) ) (otherlv_31= ',' )? )+ otherlv_32= '}' )? ( (otherlv_33= '{' ( ( (lv_ownedAnnotations_34_0= ruleAnnotationElementCS ) ) | (otherlv_35= 'key' ( ( ruleUnrestrictedName ) ) (otherlv_37= ',' ( ( ruleUnrestrictedName ) ) )* otherlv_39= ';' ) | (otherlv_40= 'initial' ( ruleUnrestrictedName )? otherlv_42= ':' ( (lv_ownedDefaultExpressions_43_0= ruleSpecificationCS ) )? otherlv_44= ';' ) | (otherlv_45= 'derivation' ( ruleUnrestrictedName )? otherlv_47= ':' ( (lv_ownedDefaultExpressions_48_0= ruleSpecificationCS ) )? otherlv_49= ';' ) | ( ( (lv_ownedImplicitOpposites_50_0= ruleImplicitOppositeCS ) ) otherlv_51= ';' ) )* otherlv_52= '}' ) | otherlv_53= ';' ) ) |
| // InternalOCLinEcore.g:3519:2: ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? otherlv_4= 'property' ( (lv_name_5_0= ruleUnrestrictedName ) ) (otherlv_6= '#' ( ( ruleUnrestrictedName ) ) )? (otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_10= '=' ( (lv_default_11_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_12= '{' ( ( ( (lv_qualifiers_13_0= 'composes' ) ) | ( (lv_qualifiers_14_0= '!composes' ) ) | ( (lv_qualifiers_15_0= 'derived' ) ) | ( (lv_qualifiers_16_0= '!derived' ) ) | ( (lv_qualifiers_17_0= 'ordered' ) ) | ( (lv_qualifiers_18_0= '!ordered' ) ) | ( (lv_qualifiers_19_0= 'readonly' ) ) | ( (lv_qualifiers_20_0= '!readonly' ) ) | ( (lv_qualifiers_21_0= 'resolve' ) ) | ( (lv_qualifiers_22_0= '!resolve' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) | ( (lv_qualifiers_27_0= 'unsettable' ) ) | ( (lv_qualifiers_28_0= '!unsettable' ) ) | ( (lv_qualifiers_29_0= 'volatile' ) ) | ( (lv_qualifiers_30_0= '!volatile' ) ) ) (otherlv_31= ',' )? )+ otherlv_32= '}' )? ( (otherlv_33= '{' ( ( (lv_ownedAnnotations_34_0= ruleAnnotationElementCS ) ) | (otherlv_35= 'key' ( ( ruleUnrestrictedName ) ) (otherlv_37= ',' ( ( ruleUnrestrictedName ) ) )* otherlv_39= ';' ) | (otherlv_40= 'initial' ( ruleUnrestrictedName )? otherlv_42= ':' ( (lv_ownedDefaultExpressions_43_0= ruleSpecificationCS ) )? otherlv_44= ';' ) | (otherlv_45= 'derivation' ( ruleUnrestrictedName )? otherlv_47= ':' ( (lv_ownedDefaultExpressions_48_0= ruleSpecificationCS ) )? otherlv_49= ';' ) | ( ( (lv_ownedImplicitOpposites_50_0= ruleImplicitOppositeCS ) ) otherlv_51= ';' ) )* otherlv_52= '}' ) | otherlv_53= ';' ) |
| { |
| // InternalOCLinEcore.g:3519:2: ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? |
| int alt102=3; |
| int LA102_0 = input.LA(1); |
| |
| if ( (LA102_0==47) ) { |
| alt102=1; |
| } |
| else if ( (LA102_0==26) ) { |
| alt102=2; |
| } |
| switch (alt102) { |
| case 1 : |
| // InternalOCLinEcore.g:3519:3: ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) |
| { |
| // InternalOCLinEcore.g:3519:3: ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) |
| // InternalOCLinEcore.g:3519:4: ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? |
| { |
| // InternalOCLinEcore.g:3519:4: ( (lv_qualifiers_0_0= 'static' ) ) |
| // InternalOCLinEcore.g:3520:1: (lv_qualifiers_0_0= 'static' ) |
| { |
| // InternalOCLinEcore.g:3520:1: (lv_qualifiers_0_0= 'static' ) |
| // InternalOCLinEcore.g:3521:3: lv_qualifiers_0_0= 'static' |
| { |
| lv_qualifiers_0_0=(Token)match(input,47,FollowSets000.FOLLOW_69); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_0_0, grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_0_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_0_0, "static"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:3534:2: ( (lv_qualifiers_1_0= 'definition' ) )? |
| int alt100=2; |
| int LA100_0 = input.LA(1); |
| |
| if ( (LA100_0==26) ) { |
| alt100=1; |
| } |
| switch (alt100) { |
| case 1 : |
| // InternalOCLinEcore.g:3535:1: (lv_qualifiers_1_0= 'definition' ) |
| { |
| // InternalOCLinEcore.g:3535:1: (lv_qualifiers_1_0= 'definition' ) |
| // InternalOCLinEcore.g:3536:3: lv_qualifiers_1_0= 'definition' |
| { |
| lv_qualifiers_1_0=(Token)match(input,26,FollowSets000.FOLLOW_70); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_1_0, grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_0_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_1_0, "definition"); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:3550:6: ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) |
| { |
| // InternalOCLinEcore.g:3550:6: ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) |
| // InternalOCLinEcore.g:3550:7: ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? |
| { |
| // InternalOCLinEcore.g:3550:7: ( (lv_qualifiers_2_0= 'definition' ) ) |
| // InternalOCLinEcore.g:3551:1: (lv_qualifiers_2_0= 'definition' ) |
| { |
| // InternalOCLinEcore.g:3551:1: (lv_qualifiers_2_0= 'definition' ) |
| // InternalOCLinEcore.g:3552:3: lv_qualifiers_2_0= 'definition' |
| { |
| lv_qualifiers_2_0=(Token)match(input,26,FollowSets000.FOLLOW_71); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_2_0, grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_1_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_2_0, "definition"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:3565:2: ( (lv_qualifiers_3_0= 'static' ) )? |
| int alt101=2; |
| int LA101_0 = input.LA(1); |
| |
| if ( (LA101_0==47) ) { |
| alt101=1; |
| } |
| switch (alt101) { |
| case 1 : |
| // InternalOCLinEcore.g:3566:1: (lv_qualifiers_3_0= 'static' ) |
| { |
| // InternalOCLinEcore.g:3566:1: (lv_qualifiers_3_0= 'static' ) |
| // InternalOCLinEcore.g:3567:3: lv_qualifiers_3_0= 'static' |
| { |
| lv_qualifiers_3_0=(Token)match(input,47,FollowSets000.FOLLOW_70); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_3_0, grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_1_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_3_0, "static"); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_4=(Token)match(input,43,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_4, grammarAccess.getReferenceCSAccess().getPropertyKeyword_1()); |
| |
| } |
| // InternalOCLinEcore.g:3584:1: ( (lv_name_5_0= ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:3585:1: (lv_name_5_0= ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:3585:1: (lv_name_5_0= ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:3586:3: lv_name_5_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getReferenceCSAccess().getNameUnrestrictedNameParserRuleCall_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_72); |
| lv_name_5_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getReferenceCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_5_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:3602:2: (otherlv_6= '#' ( ( ruleUnrestrictedName ) ) )? |
| int alt103=2; |
| int LA103_0 = input.LA(1); |
| |
| if ( (LA103_0==77) ) { |
| alt103=1; |
| } |
| switch (alt103) { |
| case 1 : |
| // InternalOCLinEcore.g:3602:4: otherlv_6= '#' ( ( ruleUnrestrictedName ) ) |
| { |
| otherlv_6=(Token)match(input,77,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_6, grammarAccess.getReferenceCSAccess().getNumberSignKeyword_3_0()); |
| |
| } |
| // InternalOCLinEcore.g:3606:1: ( ( ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:3607:1: ( ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:3607:1: ( ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:3608:3: ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getReferenceCSAccess().getReferredOppositePropertyCrossReference_3_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_28); |
| ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:3624:4: (otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypedMultiplicityRefCS ) ) )? |
| int alt104=2; |
| int LA104_0 = input.LA(1); |
| |
| if ( (LA104_0==56) ) { |
| alt104=1; |
| } |
| switch (alt104) { |
| case 1 : |
| // InternalOCLinEcore.g:3624:6: otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypedMultiplicityRefCS ) ) |
| { |
| otherlv_8=(Token)match(input,56,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_8, grammarAccess.getReferenceCSAccess().getColonKeyword_4_0()); |
| |
| } |
| // InternalOCLinEcore.g:3628:1: ( (lv_ownedType_9_0= ruleTypedMultiplicityRefCS ) ) |
| // InternalOCLinEcore.g:3629:1: (lv_ownedType_9_0= ruleTypedMultiplicityRefCS ) |
| { |
| // InternalOCLinEcore.g:3629:1: (lv_ownedType_9_0= ruleTypedMultiplicityRefCS ) |
| // InternalOCLinEcore.g:3630:3: lv_ownedType_9_0= ruleTypedMultiplicityRefCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getReferenceCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_4_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_30); |
| lv_ownedType_9_0=ruleTypedMultiplicityRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getReferenceCSRule()); |
| } |
| set( |
| current, |
| "ownedType", |
| lv_ownedType_9_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedMultiplicityRefCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:3646:4: (otherlv_10= '=' ( (lv_default_11_0= RULE_SINGLE_QUOTED_STRING ) ) )? |
| int alt105=2; |
| int LA105_0 = input.LA(1); |
| |
| if ( (LA105_0==62) ) { |
| alt105=1; |
| } |
| switch (alt105) { |
| case 1 : |
| // InternalOCLinEcore.g:3646:6: otherlv_10= '=' ( (lv_default_11_0= RULE_SINGLE_QUOTED_STRING ) ) |
| { |
| otherlv_10=(Token)match(input,62,FollowSets000.FOLLOW_31); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_10, grammarAccess.getReferenceCSAccess().getEqualsSignKeyword_5_0()); |
| |
| } |
| // InternalOCLinEcore.g:3650:1: ( (lv_default_11_0= RULE_SINGLE_QUOTED_STRING ) ) |
| // InternalOCLinEcore.g:3651:1: (lv_default_11_0= RULE_SINGLE_QUOTED_STRING ) |
| { |
| // InternalOCLinEcore.g:3651:1: (lv_default_11_0= RULE_SINGLE_QUOTED_STRING ) |
| // InternalOCLinEcore.g:3652:3: lv_default_11_0= RULE_SINGLE_QUOTED_STRING |
| { |
| lv_default_11_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_22); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_default_11_0, grammarAccess.getReferenceCSAccess().getDefaultSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| setWithLastConsumed( |
| current, |
| "default", |
| lv_default_11_0, |
| "org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:3668:4: (otherlv_12= '{' ( ( ( (lv_qualifiers_13_0= 'composes' ) ) | ( (lv_qualifiers_14_0= '!composes' ) ) | ( (lv_qualifiers_15_0= 'derived' ) ) | ( (lv_qualifiers_16_0= '!derived' ) ) | ( (lv_qualifiers_17_0= 'ordered' ) ) | ( (lv_qualifiers_18_0= '!ordered' ) ) | ( (lv_qualifiers_19_0= 'readonly' ) ) | ( (lv_qualifiers_20_0= '!readonly' ) ) | ( (lv_qualifiers_21_0= 'resolve' ) ) | ( (lv_qualifiers_22_0= '!resolve' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) | ( (lv_qualifiers_27_0= 'unsettable' ) ) | ( (lv_qualifiers_28_0= '!unsettable' ) ) | ( (lv_qualifiers_29_0= 'volatile' ) ) | ( (lv_qualifiers_30_0= '!volatile' ) ) ) (otherlv_31= ',' )? )+ otherlv_32= '}' )? |
| int alt109=2; |
| int LA109_0 = input.LA(1); |
| |
| if ( (LA109_0==60) ) { |
| int LA109_1 = input.LA(2); |
| |
| if ( (LA109_1==24||LA109_1==28||LA109_1==38||LA109_1==44||LA109_1==46||(LA109_1>=49 && LA109_1<=52)||LA109_1==63||(LA109_1>=65 && LA109_1<=70)||(LA109_1>=78 && LA109_1<=79)) ) { |
| alt109=1; |
| } |
| } |
| switch (alt109) { |
| case 1 : |
| // InternalOCLinEcore.g:3668:6: otherlv_12= '{' ( ( ( (lv_qualifiers_13_0= 'composes' ) ) | ( (lv_qualifiers_14_0= '!composes' ) ) | ( (lv_qualifiers_15_0= 'derived' ) ) | ( (lv_qualifiers_16_0= '!derived' ) ) | ( (lv_qualifiers_17_0= 'ordered' ) ) | ( (lv_qualifiers_18_0= '!ordered' ) ) | ( (lv_qualifiers_19_0= 'readonly' ) ) | ( (lv_qualifiers_20_0= '!readonly' ) ) | ( (lv_qualifiers_21_0= 'resolve' ) ) | ( (lv_qualifiers_22_0= '!resolve' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) | ( (lv_qualifiers_27_0= 'unsettable' ) ) | ( (lv_qualifiers_28_0= '!unsettable' ) ) | ( (lv_qualifiers_29_0= 'volatile' ) ) | ( (lv_qualifiers_30_0= '!volatile' ) ) ) (otherlv_31= ',' )? )+ otherlv_32= '}' |
| { |
| otherlv_12=(Token)match(input,60,FollowSets000.FOLLOW_73); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_12, grammarAccess.getReferenceCSAccess().getLeftCurlyBracketKeyword_6_0()); |
| |
| } |
| // InternalOCLinEcore.g:3672:1: ( ( ( (lv_qualifiers_13_0= 'composes' ) ) | ( (lv_qualifiers_14_0= '!composes' ) ) | ( (lv_qualifiers_15_0= 'derived' ) ) | ( (lv_qualifiers_16_0= '!derived' ) ) | ( (lv_qualifiers_17_0= 'ordered' ) ) | ( (lv_qualifiers_18_0= '!ordered' ) ) | ( (lv_qualifiers_19_0= 'readonly' ) ) | ( (lv_qualifiers_20_0= '!readonly' ) ) | ( (lv_qualifiers_21_0= 'resolve' ) ) | ( (lv_qualifiers_22_0= '!resolve' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) | ( (lv_qualifiers_27_0= 'unsettable' ) ) | ( (lv_qualifiers_28_0= '!unsettable' ) ) | ( (lv_qualifiers_29_0= 'volatile' ) ) | ( (lv_qualifiers_30_0= '!volatile' ) ) ) (otherlv_31= ',' )? )+ |
| int cnt108=0; |
| loop108: |
| do { |
| int alt108=2; |
| int LA108_0 = input.LA(1); |
| |
| if ( (LA108_0==24||LA108_0==28||LA108_0==38||LA108_0==44||LA108_0==46||(LA108_0>=49 && LA108_0<=52)||LA108_0==63||(LA108_0>=65 && LA108_0<=70)||(LA108_0>=78 && LA108_0<=79)) ) { |
| alt108=1; |
| } |
| |
| |
| switch (alt108) { |
| case 1 : |
| // InternalOCLinEcore.g:3672:2: ( ( (lv_qualifiers_13_0= 'composes' ) ) | ( (lv_qualifiers_14_0= '!composes' ) ) | ( (lv_qualifiers_15_0= 'derived' ) ) | ( (lv_qualifiers_16_0= '!derived' ) ) | ( (lv_qualifiers_17_0= 'ordered' ) ) | ( (lv_qualifiers_18_0= '!ordered' ) ) | ( (lv_qualifiers_19_0= 'readonly' ) ) | ( (lv_qualifiers_20_0= '!readonly' ) ) | ( (lv_qualifiers_21_0= 'resolve' ) ) | ( (lv_qualifiers_22_0= '!resolve' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) | ( (lv_qualifiers_27_0= 'unsettable' ) ) | ( (lv_qualifiers_28_0= '!unsettable' ) ) | ( (lv_qualifiers_29_0= 'volatile' ) ) | ( (lv_qualifiers_30_0= '!volatile' ) ) ) (otherlv_31= ',' )? |
| { |
| // InternalOCLinEcore.g:3672:2: ( ( (lv_qualifiers_13_0= 'composes' ) ) | ( (lv_qualifiers_14_0= '!composes' ) ) | ( (lv_qualifiers_15_0= 'derived' ) ) | ( (lv_qualifiers_16_0= '!derived' ) ) | ( (lv_qualifiers_17_0= 'ordered' ) ) | ( (lv_qualifiers_18_0= '!ordered' ) ) | ( (lv_qualifiers_19_0= 'readonly' ) ) | ( (lv_qualifiers_20_0= '!readonly' ) ) | ( (lv_qualifiers_21_0= 'resolve' ) ) | ( (lv_qualifiers_22_0= '!resolve' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) | ( (lv_qualifiers_27_0= 'unsettable' ) ) | ( (lv_qualifiers_28_0= '!unsettable' ) ) | ( (lv_qualifiers_29_0= 'volatile' ) ) | ( (lv_qualifiers_30_0= '!volatile' ) ) ) |
| int alt106=18; |
| switch ( input.LA(1) ) { |
| case 24: |
| { |
| alt106=1; |
| } |
| break; |
| case 78: |
| { |
| alt106=2; |
| } |
| break; |
| case 28: |
| { |
| alt106=3; |
| } |
| break; |
| case 63: |
| { |
| alt106=4; |
| } |
| break; |
| case 38: |
| { |
| alt106=5; |
| } |
| break; |
| case 65: |
| { |
| alt106=6; |
| } |
| break; |
| case 44: |
| { |
| alt106=7; |
| } |
| break; |
| case 66: |
| { |
| alt106=8; |
| } |
| break; |
| case 46: |
| { |
| alt106=9; |
| } |
| break; |
| case 79: |
| { |
| alt106=10; |
| } |
| break; |
| case 49: |
| { |
| alt106=11; |
| } |
| break; |
| case 67: |
| { |
| alt106=12; |
| } |
| break; |
| case 50: |
| { |
| alt106=13; |
| } |
| break; |
| case 68: |
| { |
| alt106=14; |
| } |
| break; |
| case 51: |
| { |
| alt106=15; |
| } |
| break; |
| case 69: |
| { |
| alt106=16; |
| } |
| break; |
| case 52: |
| { |
| alt106=17; |
| } |
| break; |
| case 70: |
| { |
| alt106=18; |
| } |
| break; |
| default: |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 106, 0, input); |
| |
| throw nvae; |
| } |
| |
| switch (alt106) { |
| case 1 : |
| // InternalOCLinEcore.g:3672:3: ( (lv_qualifiers_13_0= 'composes' ) ) |
| { |
| // InternalOCLinEcore.g:3672:3: ( (lv_qualifiers_13_0= 'composes' ) ) |
| // InternalOCLinEcore.g:3673:1: (lv_qualifiers_13_0= 'composes' ) |
| { |
| // InternalOCLinEcore.g:3673:1: (lv_qualifiers_13_0= 'composes' ) |
| // InternalOCLinEcore.g:3674:3: lv_qualifiers_13_0= 'composes' |
| { |
| lv_qualifiers_13_0=(Token)match(input,24,FollowSets000.FOLLOW_74); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_13_0, grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_13_0, "composes"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:3688:6: ( (lv_qualifiers_14_0= '!composes' ) ) |
| { |
| // InternalOCLinEcore.g:3688:6: ( (lv_qualifiers_14_0= '!composes' ) ) |
| // InternalOCLinEcore.g:3689:1: (lv_qualifiers_14_0= '!composes' ) |
| { |
| // InternalOCLinEcore.g:3689:1: (lv_qualifiers_14_0= '!composes' ) |
| // InternalOCLinEcore.g:3690:3: lv_qualifiers_14_0= '!composes' |
| { |
| lv_qualifiers_14_0=(Token)match(input,78,FollowSets000.FOLLOW_74); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_14_0, grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_14_0, "!composes"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:3704:6: ( (lv_qualifiers_15_0= 'derived' ) ) |
| { |
| // InternalOCLinEcore.g:3704:6: ( (lv_qualifiers_15_0= 'derived' ) ) |
| // InternalOCLinEcore.g:3705:1: (lv_qualifiers_15_0= 'derived' ) |
| { |
| // InternalOCLinEcore.g:3705:1: (lv_qualifiers_15_0= 'derived' ) |
| // InternalOCLinEcore.g:3706:3: lv_qualifiers_15_0= 'derived' |
| { |
| lv_qualifiers_15_0=(Token)match(input,28,FollowSets000.FOLLOW_74); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_15_0, grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_2_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_15_0, "derived"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 4 : |
| // InternalOCLinEcore.g:3720:6: ( (lv_qualifiers_16_0= '!derived' ) ) |
| { |
| // InternalOCLinEcore.g:3720:6: ( (lv_qualifiers_16_0= '!derived' ) ) |
| // InternalOCLinEcore.g:3721:1: (lv_qualifiers_16_0= '!derived' ) |
| { |
| // InternalOCLinEcore.g:3721:1: (lv_qualifiers_16_0= '!derived' ) |
| // InternalOCLinEcore.g:3722:3: lv_qualifiers_16_0= '!derived' |
| { |
| lv_qualifiers_16_0=(Token)match(input,63,FollowSets000.FOLLOW_74); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_16_0, grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_3_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_16_0, "!derived"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 5 : |
| // InternalOCLinEcore.g:3736:6: ( (lv_qualifiers_17_0= 'ordered' ) ) |
| { |
| // InternalOCLinEcore.g:3736:6: ( (lv_qualifiers_17_0= 'ordered' ) ) |
| // InternalOCLinEcore.g:3737:1: (lv_qualifiers_17_0= 'ordered' ) |
| { |
| // InternalOCLinEcore.g:3737:1: (lv_qualifiers_17_0= 'ordered' ) |
| // InternalOCLinEcore.g:3738:3: lv_qualifiers_17_0= 'ordered' |
| { |
| lv_qualifiers_17_0=(Token)match(input,38,FollowSets000.FOLLOW_74); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_17_0, grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_4_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_17_0, "ordered"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 6 : |
| // InternalOCLinEcore.g:3752:6: ( (lv_qualifiers_18_0= '!ordered' ) ) |
| { |
| // InternalOCLinEcore.g:3752:6: ( (lv_qualifiers_18_0= '!ordered' ) ) |
| // InternalOCLinEcore.g:3753:1: (lv_qualifiers_18_0= '!ordered' ) |
| { |
| // InternalOCLinEcore.g:3753:1: (lv_qualifiers_18_0= '!ordered' ) |
| // InternalOCLinEcore.g:3754:3: lv_qualifiers_18_0= '!ordered' |
| { |
| lv_qualifiers_18_0=(Token)match(input,65,FollowSets000.FOLLOW_74); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_18_0, grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_5_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_18_0, "!ordered"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 7 : |
| // InternalOCLinEcore.g:3768:6: ( (lv_qualifiers_19_0= 'readonly' ) ) |
| { |
| // InternalOCLinEcore.g:3768:6: ( (lv_qualifiers_19_0= 'readonly' ) ) |
| // InternalOCLinEcore.g:3769:1: (lv_qualifiers_19_0= 'readonly' ) |
| { |
| // InternalOCLinEcore.g:3769:1: (lv_qualifiers_19_0= 'readonly' ) |
| // InternalOCLinEcore.g:3770:3: lv_qualifiers_19_0= 'readonly' |
| { |
| lv_qualifiers_19_0=(Token)match(input,44,FollowSets000.FOLLOW_74); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_19_0, grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_6_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_19_0, "readonly"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 8 : |
| // InternalOCLinEcore.g:3784:6: ( (lv_qualifiers_20_0= '!readonly' ) ) |
| { |
| // InternalOCLinEcore.g:3784:6: ( (lv_qualifiers_20_0= '!readonly' ) ) |
| // InternalOCLinEcore.g:3785:1: (lv_qualifiers_20_0= '!readonly' ) |
| { |
| // InternalOCLinEcore.g:3785:1: (lv_qualifiers_20_0= '!readonly' ) |
| // InternalOCLinEcore.g:3786:3: lv_qualifiers_20_0= '!readonly' |
| { |
| lv_qualifiers_20_0=(Token)match(input,66,FollowSets000.FOLLOW_74); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_20_0, grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_7_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_20_0, "!readonly"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 9 : |
| // InternalOCLinEcore.g:3800:6: ( (lv_qualifiers_21_0= 'resolve' ) ) |
| { |
| // InternalOCLinEcore.g:3800:6: ( (lv_qualifiers_21_0= 'resolve' ) ) |
| // InternalOCLinEcore.g:3801:1: (lv_qualifiers_21_0= 'resolve' ) |
| { |
| // InternalOCLinEcore.g:3801:1: (lv_qualifiers_21_0= 'resolve' ) |
| // InternalOCLinEcore.g:3802:3: lv_qualifiers_21_0= 'resolve' |
| { |
| lv_qualifiers_21_0=(Token)match(input,46,FollowSets000.FOLLOW_74); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_21_0, grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_8_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_21_0, "resolve"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 10 : |
| // InternalOCLinEcore.g:3816:6: ( (lv_qualifiers_22_0= '!resolve' ) ) |
| { |
| // InternalOCLinEcore.g:3816:6: ( (lv_qualifiers_22_0= '!resolve' ) ) |
| // InternalOCLinEcore.g:3817:1: (lv_qualifiers_22_0= '!resolve' ) |
| { |
| // InternalOCLinEcore.g:3817:1: (lv_qualifiers_22_0= '!resolve' ) |
| // InternalOCLinEcore.g:3818:3: lv_qualifiers_22_0= '!resolve' |
| { |
| lv_qualifiers_22_0=(Token)match(input,79,FollowSets000.FOLLOW_74); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_22_0, grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_9_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_22_0, "!resolve"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 11 : |
| // InternalOCLinEcore.g:3832:6: ( (lv_qualifiers_23_0= 'transient' ) ) |
| { |
| // InternalOCLinEcore.g:3832:6: ( (lv_qualifiers_23_0= 'transient' ) ) |
| // InternalOCLinEcore.g:3833:1: (lv_qualifiers_23_0= 'transient' ) |
| { |
| // InternalOCLinEcore.g:3833:1: (lv_qualifiers_23_0= 'transient' ) |
| // InternalOCLinEcore.g:3834:3: lv_qualifiers_23_0= 'transient' |
| { |
| lv_qualifiers_23_0=(Token)match(input,49,FollowSets000.FOLLOW_74); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_23_0, grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_10_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_23_0, "transient"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 12 : |
| // InternalOCLinEcore.g:3848:6: ( (lv_qualifiers_24_0= '!transient' ) ) |
| { |
| // InternalOCLinEcore.g:3848:6: ( (lv_qualifiers_24_0= '!transient' ) ) |
| // InternalOCLinEcore.g:3849:1: (lv_qualifiers_24_0= '!transient' ) |
| { |
| // InternalOCLinEcore.g:3849:1: (lv_qualifiers_24_0= '!transient' ) |
| // InternalOCLinEcore.g:3850:3: lv_qualifiers_24_0= '!transient' |
| { |
| lv_qualifiers_24_0=(Token)match(input,67,FollowSets000.FOLLOW_74); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_24_0, grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_11_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_24_0, "!transient"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 13 : |
| // InternalOCLinEcore.g:3864:6: ( (lv_qualifiers_25_0= 'unique' ) ) |
| { |
| // InternalOCLinEcore.g:3864:6: ( (lv_qualifiers_25_0= 'unique' ) ) |
| // InternalOCLinEcore.g:3865:1: (lv_qualifiers_25_0= 'unique' ) |
| { |
| // InternalOCLinEcore.g:3865:1: (lv_qualifiers_25_0= 'unique' ) |
| // InternalOCLinEcore.g:3866:3: lv_qualifiers_25_0= 'unique' |
| { |
| lv_qualifiers_25_0=(Token)match(input,50,FollowSets000.FOLLOW_74); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_25_0, grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_12_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_25_0, "unique"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 14 : |
| // InternalOCLinEcore.g:3880:6: ( (lv_qualifiers_26_0= '!unique' ) ) |
| { |
| // InternalOCLinEcore.g:3880:6: ( (lv_qualifiers_26_0= '!unique' ) ) |
| // InternalOCLinEcore.g:3881:1: (lv_qualifiers_26_0= '!unique' ) |
| { |
| // InternalOCLinEcore.g:3881:1: (lv_qualifiers_26_0= '!unique' ) |
| // InternalOCLinEcore.g:3882:3: lv_qualifiers_26_0= '!unique' |
| { |
| lv_qualifiers_26_0=(Token)match(input,68,FollowSets000.FOLLOW_74); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_26_0, grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_13_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_26_0, "!unique"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 15 : |
| // InternalOCLinEcore.g:3896:6: ( (lv_qualifiers_27_0= 'unsettable' ) ) |
| { |
| // InternalOCLinEcore.g:3896:6: ( (lv_qualifiers_27_0= 'unsettable' ) ) |
| // InternalOCLinEcore.g:3897:1: (lv_qualifiers_27_0= 'unsettable' ) |
| { |
| // InternalOCLinEcore.g:3897:1: (lv_qualifiers_27_0= 'unsettable' ) |
| // InternalOCLinEcore.g:3898:3: lv_qualifiers_27_0= 'unsettable' |
| { |
| lv_qualifiers_27_0=(Token)match(input,51,FollowSets000.FOLLOW_74); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_27_0, grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_14_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_27_0, "unsettable"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 16 : |
| // InternalOCLinEcore.g:3912:6: ( (lv_qualifiers_28_0= '!unsettable' ) ) |
| { |
| // InternalOCLinEcore.g:3912:6: ( (lv_qualifiers_28_0= '!unsettable' ) ) |
| // InternalOCLinEcore.g:3913:1: (lv_qualifiers_28_0= '!unsettable' ) |
| { |
| // InternalOCLinEcore.g:3913:1: (lv_qualifiers_28_0= '!unsettable' ) |
| // InternalOCLinEcore.g:3914:3: lv_qualifiers_28_0= '!unsettable' |
| { |
| lv_qualifiers_28_0=(Token)match(input,69,FollowSets000.FOLLOW_74); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_28_0, grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_15_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_28_0, "!unsettable"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 17 : |
| // InternalOCLinEcore.g:3928:6: ( (lv_qualifiers_29_0= 'volatile' ) ) |
| { |
| // InternalOCLinEcore.g:3928:6: ( (lv_qualifiers_29_0= 'volatile' ) ) |
| // InternalOCLinEcore.g:3929:1: (lv_qualifiers_29_0= 'volatile' ) |
| { |
| // InternalOCLinEcore.g:3929:1: (lv_qualifiers_29_0= 'volatile' ) |
| // InternalOCLinEcore.g:3930:3: lv_qualifiers_29_0= 'volatile' |
| { |
| lv_qualifiers_29_0=(Token)match(input,52,FollowSets000.FOLLOW_74); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_29_0, grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_16_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_29_0, "volatile"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 18 : |
| // InternalOCLinEcore.g:3944:6: ( (lv_qualifiers_30_0= '!volatile' ) ) |
| { |
| // InternalOCLinEcore.g:3944:6: ( (lv_qualifiers_30_0= '!volatile' ) ) |
| // InternalOCLinEcore.g:3945:1: (lv_qualifiers_30_0= '!volatile' ) |
| { |
| // InternalOCLinEcore.g:3945:1: (lv_qualifiers_30_0= '!volatile' ) |
| // InternalOCLinEcore.g:3946:3: lv_qualifiers_30_0= '!volatile' |
| { |
| lv_qualifiers_30_0=(Token)match(input,70,FollowSets000.FOLLOW_74); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_qualifiers_30_0, grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_17_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| addWithLastConsumed(current, "qualifiers", lv_qualifiers_30_0, "!volatile"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:3959:3: (otherlv_31= ',' )? |
| int alt107=2; |
| int LA107_0 = input.LA(1); |
| |
| if ( (LA107_0==59) ) { |
| alt107=1; |
| } |
| switch (alt107) { |
| case 1 : |
| // InternalOCLinEcore.g:3959:5: otherlv_31= ',' |
| { |
| otherlv_31=(Token)match(input,59,FollowSets000.FOLLOW_75); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_31, grammarAccess.getReferenceCSAccess().getCommaKeyword_6_1_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| if ( cnt108 >= 1 ) break loop108; |
| if (state.backtracking>0) {state.failed=true; return current;} |
| EarlyExitException eee = |
| new EarlyExitException(108, input); |
| throw eee; |
| } |
| cnt108++; |
| } while (true); |
| |
| otherlv_32=(Token)match(input,61,FollowSets000.FOLLOW_22); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_32, grammarAccess.getReferenceCSAccess().getRightCurlyBracketKeyword_6_2()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:3967:3: ( (otherlv_33= '{' ( ( (lv_ownedAnnotations_34_0= ruleAnnotationElementCS ) ) | (otherlv_35= 'key' ( ( ruleUnrestrictedName ) ) (otherlv_37= ',' ( ( ruleUnrestrictedName ) ) )* otherlv_39= ';' ) | (otherlv_40= 'initial' ( ruleUnrestrictedName )? otherlv_42= ':' ( (lv_ownedDefaultExpressions_43_0= ruleSpecificationCS ) )? otherlv_44= ';' ) | (otherlv_45= 'derivation' ( ruleUnrestrictedName )? otherlv_47= ':' ( (lv_ownedDefaultExpressions_48_0= ruleSpecificationCS ) )? otherlv_49= ';' ) | ( ( (lv_ownedImplicitOpposites_50_0= ruleImplicitOppositeCS ) ) otherlv_51= ';' ) )* otherlv_52= '}' ) | otherlv_53= ';' ) |
| int alt116=2; |
| int LA116_0 = input.LA(1); |
| |
| if ( (LA116_0==60) ) { |
| alt116=1; |
| } |
| else if ( (LA116_0==57) ) { |
| alt116=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 116, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt116) { |
| case 1 : |
| // InternalOCLinEcore.g:3967:4: (otherlv_33= '{' ( ( (lv_ownedAnnotations_34_0= ruleAnnotationElementCS ) ) | (otherlv_35= 'key' ( ( ruleUnrestrictedName ) ) (otherlv_37= ',' ( ( ruleUnrestrictedName ) ) )* otherlv_39= ';' ) | (otherlv_40= 'initial' ( ruleUnrestrictedName )? otherlv_42= ':' ( (lv_ownedDefaultExpressions_43_0= ruleSpecificationCS ) )? otherlv_44= ';' ) | (otherlv_45= 'derivation' ( ruleUnrestrictedName )? otherlv_47= ':' ( (lv_ownedDefaultExpressions_48_0= ruleSpecificationCS ) )? otherlv_49= ';' ) | ( ( (lv_ownedImplicitOpposites_50_0= ruleImplicitOppositeCS ) ) otherlv_51= ';' ) )* otherlv_52= '}' ) |
| { |
| // InternalOCLinEcore.g:3967:4: (otherlv_33= '{' ( ( (lv_ownedAnnotations_34_0= ruleAnnotationElementCS ) ) | (otherlv_35= 'key' ( ( ruleUnrestrictedName ) ) (otherlv_37= ',' ( ( ruleUnrestrictedName ) ) )* otherlv_39= ';' ) | (otherlv_40= 'initial' ( ruleUnrestrictedName )? otherlv_42= ':' ( (lv_ownedDefaultExpressions_43_0= ruleSpecificationCS ) )? otherlv_44= ';' ) | (otherlv_45= 'derivation' ( ruleUnrestrictedName )? otherlv_47= ':' ( (lv_ownedDefaultExpressions_48_0= ruleSpecificationCS ) )? otherlv_49= ';' ) | ( ( (lv_ownedImplicitOpposites_50_0= ruleImplicitOppositeCS ) ) otherlv_51= ';' ) )* otherlv_52= '}' ) |
| // InternalOCLinEcore.g:3967:6: otherlv_33= '{' ( ( (lv_ownedAnnotations_34_0= ruleAnnotationElementCS ) ) | (otherlv_35= 'key' ( ( ruleUnrestrictedName ) ) (otherlv_37= ',' ( ( ruleUnrestrictedName ) ) )* otherlv_39= ';' ) | (otherlv_40= 'initial' ( ruleUnrestrictedName )? otherlv_42= ':' ( (lv_ownedDefaultExpressions_43_0= ruleSpecificationCS ) )? otherlv_44= ';' ) | (otherlv_45= 'derivation' ( ruleUnrestrictedName )? otherlv_47= ':' ( (lv_ownedDefaultExpressions_48_0= ruleSpecificationCS ) )? otherlv_49= ';' ) | ( ( (lv_ownedImplicitOpposites_50_0= ruleImplicitOppositeCS ) ) otherlv_51= ';' ) )* otherlv_52= '}' |
| { |
| otherlv_33=(Token)match(input,60,FollowSets000.FOLLOW_76); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_33, grammarAccess.getReferenceCSAccess().getLeftCurlyBracketKeyword_7_0_0()); |
| |
| } |
| // InternalOCLinEcore.g:3971:1: ( ( (lv_ownedAnnotations_34_0= ruleAnnotationElementCS ) ) | (otherlv_35= 'key' ( ( ruleUnrestrictedName ) ) (otherlv_37= ',' ( ( ruleUnrestrictedName ) ) )* otherlv_39= ';' ) | (otherlv_40= 'initial' ( ruleUnrestrictedName )? otherlv_42= ':' ( (lv_ownedDefaultExpressions_43_0= ruleSpecificationCS ) )? otherlv_44= ';' ) | (otherlv_45= 'derivation' ( ruleUnrestrictedName )? otherlv_47= ':' ( (lv_ownedDefaultExpressions_48_0= ruleSpecificationCS ) )? otherlv_49= ';' ) | ( ( (lv_ownedImplicitOpposites_50_0= ruleImplicitOppositeCS ) ) otherlv_51= ';' ) )* |
| loop115: |
| do { |
| int alt115=6; |
| switch ( input.LA(1) ) { |
| case 58: |
| case 73: |
| case 80: |
| { |
| alt115=1; |
| } |
| break; |
| case 35: |
| { |
| alt115=2; |
| } |
| break; |
| case 33: |
| { |
| alt115=3; |
| } |
| break; |
| case 27: |
| { |
| alt115=4; |
| } |
| break; |
| case 76: |
| { |
| alt115=5; |
| } |
| break; |
| |
| } |
| |
| switch (alt115) { |
| case 1 : |
| // InternalOCLinEcore.g:3971:2: ( (lv_ownedAnnotations_34_0= ruleAnnotationElementCS ) ) |
| { |
| // InternalOCLinEcore.g:3971:2: ( (lv_ownedAnnotations_34_0= ruleAnnotationElementCS ) ) |
| // InternalOCLinEcore.g:3972:1: (lv_ownedAnnotations_34_0= ruleAnnotationElementCS ) |
| { |
| // InternalOCLinEcore.g:3972:1: (lv_ownedAnnotations_34_0= ruleAnnotationElementCS ) |
| // InternalOCLinEcore.g:3973:3: lv_ownedAnnotations_34_0= ruleAnnotationElementCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getReferenceCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_76); |
| lv_ownedAnnotations_34_0=ruleAnnotationElementCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getReferenceCSRule()); |
| } |
| add( |
| current, |
| "ownedAnnotations", |
| lv_ownedAnnotations_34_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:3990:6: (otherlv_35= 'key' ( ( ruleUnrestrictedName ) ) (otherlv_37= ',' ( ( ruleUnrestrictedName ) ) )* otherlv_39= ';' ) |
| { |
| // InternalOCLinEcore.g:3990:6: (otherlv_35= 'key' ( ( ruleUnrestrictedName ) ) (otherlv_37= ',' ( ( ruleUnrestrictedName ) ) )* otherlv_39= ';' ) |
| // InternalOCLinEcore.g:3990:8: otherlv_35= 'key' ( ( ruleUnrestrictedName ) ) (otherlv_37= ',' ( ( ruleUnrestrictedName ) ) )* otherlv_39= ';' |
| { |
| otherlv_35=(Token)match(input,35,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_35, grammarAccess.getReferenceCSAccess().getKeyKeyword_7_0_1_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:3994:1: ( ( ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:3995:1: ( ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:3995:1: ( ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:3996:3: ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyCrossReference_7_0_1_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_77); |
| ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:4012:2: (otherlv_37= ',' ( ( ruleUnrestrictedName ) ) )* |
| loop110: |
| do { |
| int alt110=2; |
| int LA110_0 = input.LA(1); |
| |
| if ( (LA110_0==59) ) { |
| alt110=1; |
| } |
| |
| |
| switch (alt110) { |
| case 1 : |
| // InternalOCLinEcore.g:4012:4: otherlv_37= ',' ( ( ruleUnrestrictedName ) ) |
| { |
| otherlv_37=(Token)match(input,59,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_37, grammarAccess.getReferenceCSAccess().getCommaKeyword_7_0_1_1_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:4016:1: ( ( ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:4017:1: ( ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:4017:1: ( ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:4018:3: ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getReferenceCSRule()); |
| } |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyCrossReference_7_0_1_1_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_77); |
| ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop110; |
| } |
| } while (true); |
| |
| otherlv_39=(Token)match(input,57,FollowSets000.FOLLOW_76); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_39, grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_1_3()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:4039:6: (otherlv_40= 'initial' ( ruleUnrestrictedName )? otherlv_42= ':' ( (lv_ownedDefaultExpressions_43_0= ruleSpecificationCS ) )? otherlv_44= ';' ) |
| { |
| // InternalOCLinEcore.g:4039:6: (otherlv_40= 'initial' ( ruleUnrestrictedName )? otherlv_42= ':' ( (lv_ownedDefaultExpressions_43_0= ruleSpecificationCS ) )? otherlv_44= ';' ) |
| // InternalOCLinEcore.g:4039:8: otherlv_40= 'initial' ( ruleUnrestrictedName )? otherlv_42= ':' ( (lv_ownedDefaultExpressions_43_0= ruleSpecificationCS ) )? otherlv_44= ';' |
| { |
| otherlv_40=(Token)match(input,33,FollowSets000.FOLLOW_15); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_40, grammarAccess.getReferenceCSAccess().getInitialKeyword_7_0_1_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:4043:1: ( ruleUnrestrictedName )? |
| int alt111=2; |
| int LA111_0 = input.LA(1); |
| |
| if ( ((LA111_0>=RULE_SIMPLE_ID && LA111_0<=RULE_ESCAPED_ID)||LA111_0==17||(LA111_0>=19 && LA111_0<=53)||LA111_0==58||LA111_0==71||(LA111_0>=73 && LA111_0<=74)||LA111_0==76||LA111_0==80) ) { |
| alt111=1; |
| } |
| switch (alt111) { |
| case 1 : |
| // InternalOCLinEcore.g:4044:2: ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getReferenceCSAccess().getUnrestrictedNameParserRuleCall_7_0_1_2_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_17); |
| ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_42=(Token)match(input,56,FollowSets000.FOLLOW_13); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_42, grammarAccess.getReferenceCSAccess().getColonKeyword_7_0_1_2_2()); |
| |
| } |
| // InternalOCLinEcore.g:4058:1: ( (lv_ownedDefaultExpressions_43_0= ruleSpecificationCS ) )? |
| int alt112=2; |
| int LA112_0 = input.LA(1); |
| |
| if ( ((LA112_0>=RULE_INT && LA112_0<=RULE_SINGLE_QUOTED_STRING)||(LA112_0>=RULE_UNQUOTED_STRING && LA112_0<=RULE_ESCAPED_ID)||(LA112_0>=17 && LA112_0<=54)||LA112_0==58||LA112_0==71||(LA112_0>=73 && LA112_0<=74)||LA112_0==76||LA112_0==80||(LA112_0>=83 && LA112_0<=84)||(LA112_0>=98 && LA112_0<=99)||(LA112_0>=101 && LA112_0<=113)||LA112_0==116||(LA112_0>=118 && LA112_0<=121)||LA112_0==128||(LA112_0>=133 && LA112_0<=134)) ) { |
| alt112=1; |
| } |
| switch (alt112) { |
| case 1 : |
| // InternalOCLinEcore.g:4059:1: (lv_ownedDefaultExpressions_43_0= ruleSpecificationCS ) |
| { |
| // InternalOCLinEcore.g:4059:1: (lv_ownedDefaultExpressions_43_0= ruleSpecificationCS ) |
| // InternalOCLinEcore.g:4060:3: lv_ownedDefaultExpressions_43_0= ruleSpecificationCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_7_0_1_2_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_14); |
| lv_ownedDefaultExpressions_43_0=ruleSpecificationCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getReferenceCSRule()); |
| } |
| add( |
| current, |
| "ownedDefaultExpressions", |
| lv_ownedDefaultExpressions_43_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_44=(Token)match(input,57,FollowSets000.FOLLOW_76); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_44, grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_2_4()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| case 4 : |
| // InternalOCLinEcore.g:4081:6: (otherlv_45= 'derivation' ( ruleUnrestrictedName )? otherlv_47= ':' ( (lv_ownedDefaultExpressions_48_0= ruleSpecificationCS ) )? otherlv_49= ';' ) |
| { |
| // InternalOCLinEcore.g:4081:6: (otherlv_45= 'derivation' ( ruleUnrestrictedName )? otherlv_47= ':' ( (lv_ownedDefaultExpressions_48_0= ruleSpecificationCS ) )? otherlv_49= ';' ) |
| // InternalOCLinEcore.g:4081:8: otherlv_45= 'derivation' ( ruleUnrestrictedName )? otherlv_47= ':' ( (lv_ownedDefaultExpressions_48_0= ruleSpecificationCS ) )? otherlv_49= ';' |
| { |
| otherlv_45=(Token)match(input,27,FollowSets000.FOLLOW_15); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_45, grammarAccess.getReferenceCSAccess().getDerivationKeyword_7_0_1_3_0()); |
| |
| } |
| // InternalOCLinEcore.g:4085:1: ( ruleUnrestrictedName )? |
| int alt113=2; |
| int LA113_0 = input.LA(1); |
| |
| if ( ((LA113_0>=RULE_SIMPLE_ID && LA113_0<=RULE_ESCAPED_ID)||LA113_0==17||(LA113_0>=19 && LA113_0<=53)||LA113_0==58||LA113_0==71||(LA113_0>=73 && LA113_0<=74)||LA113_0==76||LA113_0==80) ) { |
| alt113=1; |
| } |
| switch (alt113) { |
| case 1 : |
| // InternalOCLinEcore.g:4086:2: ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getReferenceCSAccess().getUnrestrictedNameParserRuleCall_7_0_1_3_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_17); |
| ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_47=(Token)match(input,56,FollowSets000.FOLLOW_13); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_47, grammarAccess.getReferenceCSAccess().getColonKeyword_7_0_1_3_2()); |
| |
| } |
| // InternalOCLinEcore.g:4100:1: ( (lv_ownedDefaultExpressions_48_0= ruleSpecificationCS ) )? |
| int alt114=2; |
| int LA114_0 = input.LA(1); |
| |
| if ( ((LA114_0>=RULE_INT && LA114_0<=RULE_SINGLE_QUOTED_STRING)||(LA114_0>=RULE_UNQUOTED_STRING && LA114_0<=RULE_ESCAPED_ID)||(LA114_0>=17 && LA114_0<=54)||LA114_0==58||LA114_0==71||(LA114_0>=73 && LA114_0<=74)||LA114_0==76||LA114_0==80||(LA114_0>=83 && LA114_0<=84)||(LA114_0>=98 && LA114_0<=99)||(LA114_0>=101 && LA114_0<=113)||LA114_0==116||(LA114_0>=118 && LA114_0<=121)||LA114_0==128||(LA114_0>=133 && LA114_0<=134)) ) { |
| alt114=1; |
| } |
| switch (alt114) { |
| case 1 : |
| // InternalOCLinEcore.g:4101:1: (lv_ownedDefaultExpressions_48_0= ruleSpecificationCS ) |
| { |
| // InternalOCLinEcore.g:4101:1: (lv_ownedDefaultExpressions_48_0= ruleSpecificationCS ) |
| // InternalOCLinEcore.g:4102:3: lv_ownedDefaultExpressions_48_0= ruleSpecificationCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_7_0_1_3_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_14); |
| lv_ownedDefaultExpressions_48_0=ruleSpecificationCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getReferenceCSRule()); |
| } |
| add( |
| current, |
| "ownedDefaultExpressions", |
| lv_ownedDefaultExpressions_48_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_49=(Token)match(input,57,FollowSets000.FOLLOW_76); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_49, grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_3_4()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| case 5 : |
| // InternalOCLinEcore.g:4123:6: ( ( (lv_ownedImplicitOpposites_50_0= ruleImplicitOppositeCS ) ) otherlv_51= ';' ) |
| { |
| // InternalOCLinEcore.g:4123:6: ( ( (lv_ownedImplicitOpposites_50_0= ruleImplicitOppositeCS ) ) otherlv_51= ';' ) |
| // InternalOCLinEcore.g:4123:7: ( (lv_ownedImplicitOpposites_50_0= ruleImplicitOppositeCS ) ) otherlv_51= ';' |
| { |
| // InternalOCLinEcore.g:4123:7: ( (lv_ownedImplicitOpposites_50_0= ruleImplicitOppositeCS ) ) |
| // InternalOCLinEcore.g:4124:1: (lv_ownedImplicitOpposites_50_0= ruleImplicitOppositeCS ) |
| { |
| // InternalOCLinEcore.g:4124:1: (lv_ownedImplicitOpposites_50_0= ruleImplicitOppositeCS ) |
| // InternalOCLinEcore.g:4125:3: lv_ownedImplicitOpposites_50_0= ruleImplicitOppositeCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getReferenceCSAccess().getOwnedImplicitOppositesImplicitOppositeCSParserRuleCall_7_0_1_4_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_14); |
| lv_ownedImplicitOpposites_50_0=ruleImplicitOppositeCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getReferenceCSRule()); |
| } |
| add( |
| current, |
| "ownedImplicitOpposites", |
| lv_ownedImplicitOpposites_50_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.ImplicitOppositeCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_51=(Token)match(input,57,FollowSets000.FOLLOW_76); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_51, grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_4_1()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop115; |
| } |
| } while (true); |
| |
| otherlv_52=(Token)match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_52, grammarAccess.getReferenceCSAccess().getRightCurlyBracketKeyword_7_0_2()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:4150:7: otherlv_53= ';' |
| { |
| otherlv_53=(Token)match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_53, grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleReferenceCS" |
| |
| |
| // $ANTLR start "entryRuleSpecificationCS" |
| // InternalOCLinEcore.g:4162:1: entryRuleSpecificationCS returns [EObject current=null] : iv_ruleSpecificationCS= ruleSpecificationCS EOF ; |
| public final EObject entryRuleSpecificationCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleSpecificationCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:4163:2: (iv_ruleSpecificationCS= ruleSpecificationCS EOF ) |
| // InternalOCLinEcore.g:4164:2: iv_ruleSpecificationCS= ruleSpecificationCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getSpecificationCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleSpecificationCS=ruleSpecificationCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleSpecificationCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleSpecificationCS" |
| |
| |
| // $ANTLR start "ruleSpecificationCS" |
| // InternalOCLinEcore.g:4171:1: ruleSpecificationCS returns [EObject current=null] : ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) | ( (lv_exprString_1_0= RULE_UNQUOTED_STRING ) ) ) ; |
| public final EObject ruleSpecificationCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token lv_exprString_1_0=null; |
| EObject lv_ownedExpression_0_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:4174:28: ( ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) | ( (lv_exprString_1_0= RULE_UNQUOTED_STRING ) ) ) ) |
| // InternalOCLinEcore.g:4175:1: ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) | ( (lv_exprString_1_0= RULE_UNQUOTED_STRING ) ) ) |
| { |
| // InternalOCLinEcore.g:4175:1: ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) | ( (lv_exprString_1_0= RULE_UNQUOTED_STRING ) ) ) |
| int alt117=2; |
| int LA117_0 = input.LA(1); |
| |
| if ( ((LA117_0>=RULE_INT && LA117_0<=RULE_SINGLE_QUOTED_STRING)||(LA117_0>=RULE_SIMPLE_ID && LA117_0<=RULE_ESCAPED_ID)||(LA117_0>=17 && LA117_0<=54)||LA117_0==58||LA117_0==71||(LA117_0>=73 && LA117_0<=74)||LA117_0==76||LA117_0==80||(LA117_0>=83 && LA117_0<=84)||(LA117_0>=98 && LA117_0<=99)||(LA117_0>=101 && LA117_0<=113)||LA117_0==116||(LA117_0>=118 && LA117_0<=121)||LA117_0==128||(LA117_0>=133 && LA117_0<=134)) ) { |
| alt117=1; |
| } |
| else if ( (LA117_0==RULE_UNQUOTED_STRING) ) { |
| alt117=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 117, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt117) { |
| case 1 : |
| // InternalOCLinEcore.g:4175:2: ( (lv_ownedExpression_0_0= ruleExpCS ) ) |
| { |
| // InternalOCLinEcore.g:4175:2: ( (lv_ownedExpression_0_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:4176:1: (lv_ownedExpression_0_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:4176:1: (lv_ownedExpression_0_0= ruleExpCS ) |
| // InternalOCLinEcore.g:4177:3: lv_ownedExpression_0_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedExpression_0_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getSpecificationCSRule()); |
| } |
| set( |
| current, |
| "ownedExpression", |
| lv_ownedExpression_0_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:4194:6: ( (lv_exprString_1_0= RULE_UNQUOTED_STRING ) ) |
| { |
| // InternalOCLinEcore.g:4194:6: ( (lv_exprString_1_0= RULE_UNQUOTED_STRING ) ) |
| // InternalOCLinEcore.g:4195:1: (lv_exprString_1_0= RULE_UNQUOTED_STRING ) |
| { |
| // InternalOCLinEcore.g:4195:1: (lv_exprString_1_0= RULE_UNQUOTED_STRING ) |
| // InternalOCLinEcore.g:4196:3: lv_exprString_1_0= RULE_UNQUOTED_STRING |
| { |
| lv_exprString_1_0=(Token)match(input,RULE_UNQUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_exprString_1_0, grammarAccess.getSpecificationCSAccess().getExprStringUNQUOTED_STRINGTerminalRuleCall_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getSpecificationCSRule()); |
| } |
| setWithLastConsumed( |
| current, |
| "exprString", |
| lv_exprString_1_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UNQUOTED_STRING"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleSpecificationCS" |
| |
| |
| // $ANTLR start "entryRuleStructuredClassCS" |
| // InternalOCLinEcore.g:4220:1: entryRuleStructuredClassCS returns [EObject current=null] : iv_ruleStructuredClassCS= ruleStructuredClassCS EOF ; |
| public final EObject entryRuleStructuredClassCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleStructuredClassCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:4221:2: (iv_ruleStructuredClassCS= ruleStructuredClassCS EOF ) |
| // InternalOCLinEcore.g:4222:2: iv_ruleStructuredClassCS= ruleStructuredClassCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getStructuredClassCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleStructuredClassCS=ruleStructuredClassCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleStructuredClassCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleStructuredClassCS" |
| |
| |
| // $ANTLR start "ruleStructuredClassCS" |
| // InternalOCLinEcore.g:4229:1: ruleStructuredClassCS returns [EObject current=null] : ( ( (lv_isAbstract_0_0= 'abstract' ) )? otherlv_1= 'class' ( (lv_name_2_0= ruleUnrestrictedName ) ) ( (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) )? (otherlv_4= 'extends' ( (lv_ownedSuperTypes_5_0= ruleTypedRefCS ) ) (otherlv_6= ',' ( (lv_ownedSuperTypes_7_0= ruleTypedRefCS ) ) )* )? (otherlv_8= ':' ( (lv_instanceClassName_9_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_10= '{' ( (lv_isInterface_11_0= 'interface' ) )? otherlv_12= '}' )? ( (otherlv_13= '{' ( ( (lv_ownedAnnotations_14_0= ruleAnnotationElementCS ) ) | ( (lv_ownedOperations_15_0= ruleOperationCS ) ) | ( (lv_ownedProperties_16_0= ruleStructuralFeatureCS ) ) | ( (lv_ownedConstraints_17_0= ruleInvariantConstraintCS ) ) )* otherlv_18= '}' ) | otherlv_19= ';' ) ) ; |
| public final EObject ruleStructuredClassCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token lv_isAbstract_0_0=null; |
| Token otherlv_1=null; |
| Token otherlv_4=null; |
| Token otherlv_6=null; |
| Token otherlv_8=null; |
| Token lv_instanceClassName_9_0=null; |
| Token otherlv_10=null; |
| Token lv_isInterface_11_0=null; |
| Token otherlv_12=null; |
| Token otherlv_13=null; |
| Token otherlv_18=null; |
| Token otherlv_19=null; |
| AntlrDatatypeRuleToken lv_name_2_0 = null; |
| |
| EObject lv_ownedSignature_3_0 = null; |
| |
| EObject lv_ownedSuperTypes_5_0 = null; |
| |
| EObject lv_ownedSuperTypes_7_0 = null; |
| |
| EObject lv_ownedAnnotations_14_0 = null; |
| |
| EObject lv_ownedOperations_15_0 = null; |
| |
| EObject lv_ownedProperties_16_0 = null; |
| |
| EObject lv_ownedConstraints_17_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:4232:28: ( ( ( (lv_isAbstract_0_0= 'abstract' ) )? otherlv_1= 'class' ( (lv_name_2_0= ruleUnrestrictedName ) ) ( (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) )? (otherlv_4= 'extends' ( (lv_ownedSuperTypes_5_0= ruleTypedRefCS ) ) (otherlv_6= ',' ( (lv_ownedSuperTypes_7_0= ruleTypedRefCS ) ) )* )? (otherlv_8= ':' ( (lv_instanceClassName_9_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_10= '{' ( (lv_isInterface_11_0= 'interface' ) )? otherlv_12= '}' )? ( (otherlv_13= '{' ( ( (lv_ownedAnnotations_14_0= ruleAnnotationElementCS ) ) | ( (lv_ownedOperations_15_0= ruleOperationCS ) ) | ( (lv_ownedProperties_16_0= ruleStructuralFeatureCS ) ) | ( (lv_ownedConstraints_17_0= ruleInvariantConstraintCS ) ) )* otherlv_18= '}' ) | otherlv_19= ';' ) ) ) |
| // InternalOCLinEcore.g:4233:1: ( ( (lv_isAbstract_0_0= 'abstract' ) )? otherlv_1= 'class' ( (lv_name_2_0= ruleUnrestrictedName ) ) ( (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) )? (otherlv_4= 'extends' ( (lv_ownedSuperTypes_5_0= ruleTypedRefCS ) ) (otherlv_6= ',' ( (lv_ownedSuperTypes_7_0= ruleTypedRefCS ) ) )* )? (otherlv_8= ':' ( (lv_instanceClassName_9_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_10= '{' ( (lv_isInterface_11_0= 'interface' ) )? otherlv_12= '}' )? ( (otherlv_13= '{' ( ( (lv_ownedAnnotations_14_0= ruleAnnotationElementCS ) ) | ( (lv_ownedOperations_15_0= ruleOperationCS ) ) | ( (lv_ownedProperties_16_0= ruleStructuralFeatureCS ) ) | ( (lv_ownedConstraints_17_0= ruleInvariantConstraintCS ) ) )* otherlv_18= '}' ) | otherlv_19= ';' ) ) |
| { |
| // InternalOCLinEcore.g:4233:1: ( ( (lv_isAbstract_0_0= 'abstract' ) )? otherlv_1= 'class' ( (lv_name_2_0= ruleUnrestrictedName ) ) ( (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) )? (otherlv_4= 'extends' ( (lv_ownedSuperTypes_5_0= ruleTypedRefCS ) ) (otherlv_6= ',' ( (lv_ownedSuperTypes_7_0= ruleTypedRefCS ) ) )* )? (otherlv_8= ':' ( (lv_instanceClassName_9_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_10= '{' ( (lv_isInterface_11_0= 'interface' ) )? otherlv_12= '}' )? ( (otherlv_13= '{' ( ( (lv_ownedAnnotations_14_0= ruleAnnotationElementCS ) ) | ( (lv_ownedOperations_15_0= ruleOperationCS ) ) | ( (lv_ownedProperties_16_0= ruleStructuralFeatureCS ) ) | ( (lv_ownedConstraints_17_0= ruleInvariantConstraintCS ) ) )* otherlv_18= '}' ) | otherlv_19= ';' ) ) |
| // InternalOCLinEcore.g:4233:2: ( (lv_isAbstract_0_0= 'abstract' ) )? otherlv_1= 'class' ( (lv_name_2_0= ruleUnrestrictedName ) ) ( (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) )? (otherlv_4= 'extends' ( (lv_ownedSuperTypes_5_0= ruleTypedRefCS ) ) (otherlv_6= ',' ( (lv_ownedSuperTypes_7_0= ruleTypedRefCS ) ) )* )? (otherlv_8= ':' ( (lv_instanceClassName_9_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_10= '{' ( (lv_isInterface_11_0= 'interface' ) )? otherlv_12= '}' )? ( (otherlv_13= '{' ( ( (lv_ownedAnnotations_14_0= ruleAnnotationElementCS ) ) | ( (lv_ownedOperations_15_0= ruleOperationCS ) ) | ( (lv_ownedProperties_16_0= ruleStructuralFeatureCS ) ) | ( (lv_ownedConstraints_17_0= ruleInvariantConstraintCS ) ) )* otherlv_18= '}' ) | otherlv_19= ';' ) |
| { |
| // InternalOCLinEcore.g:4233:2: ( (lv_isAbstract_0_0= 'abstract' ) )? |
| int alt118=2; |
| int LA118_0 = input.LA(1); |
| |
| if ( (LA118_0==19) ) { |
| alt118=1; |
| } |
| switch (alt118) { |
| case 1 : |
| // InternalOCLinEcore.g:4234:1: (lv_isAbstract_0_0= 'abstract' ) |
| { |
| // InternalOCLinEcore.g:4234:1: (lv_isAbstract_0_0= 'abstract' ) |
| // InternalOCLinEcore.g:4235:3: lv_isAbstract_0_0= 'abstract' |
| { |
| lv_isAbstract_0_0=(Token)match(input,19,FollowSets000.FOLLOW_78); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_isAbstract_0_0, grammarAccess.getStructuredClassCSAccess().getIsAbstractAbstractKeyword_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getStructuredClassCSRule()); |
| } |
| setWithLastConsumed(current, "isAbstract", true, "abstract"); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_1=(Token)match(input,23,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getStructuredClassCSAccess().getClassKeyword_1()); |
| |
| } |
| // InternalOCLinEcore.g:4252:1: ( (lv_name_2_0= ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:4253:1: (lv_name_2_0= ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:4253:1: (lv_name_2_0= ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:4254:3: lv_name_2_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getStructuredClassCSAccess().getNameUnrestrictedNameParserRuleCall_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_79); |
| lv_name_2_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getStructuredClassCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_2_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:4270:2: ( (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) )? |
| int alt119=2; |
| int LA119_0 = input.LA(1); |
| |
| if ( (LA119_0==54||LA119_0==81) ) { |
| alt119=1; |
| } |
| switch (alt119) { |
| case 1 : |
| // InternalOCLinEcore.g:4271:1: (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) |
| { |
| // InternalOCLinEcore.g:4271:1: (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) |
| // InternalOCLinEcore.g:4272:3: lv_ownedSignature_3_0= ruleTemplateSignatureCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_80); |
| lv_ownedSignature_3_0=ruleTemplateSignatureCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getStructuredClassCSRule()); |
| } |
| set( |
| current, |
| "ownedSignature", |
| lv_ownedSignature_3_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TemplateSignatureCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:4288:3: (otherlv_4= 'extends' ( (lv_ownedSuperTypes_5_0= ruleTypedRefCS ) ) (otherlv_6= ',' ( (lv_ownedSuperTypes_7_0= ruleTypedRefCS ) ) )* )? |
| int alt121=2; |
| int LA121_0 = input.LA(1); |
| |
| if ( (LA121_0==30) ) { |
| alt121=1; |
| } |
| switch (alt121) { |
| case 1 : |
| // InternalOCLinEcore.g:4288:5: otherlv_4= 'extends' ( (lv_ownedSuperTypes_5_0= ruleTypedRefCS ) ) (otherlv_6= ',' ( (lv_ownedSuperTypes_7_0= ruleTypedRefCS ) ) )* |
| { |
| otherlv_4=(Token)match(input,30,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_4, grammarAccess.getStructuredClassCSAccess().getExtendsKeyword_4_0()); |
| |
| } |
| // InternalOCLinEcore.g:4292:1: ( (lv_ownedSuperTypes_5_0= ruleTypedRefCS ) ) |
| // InternalOCLinEcore.g:4293:1: (lv_ownedSuperTypes_5_0= ruleTypedRefCS ) |
| { |
| // InternalOCLinEcore.g:4293:1: (lv_ownedSuperTypes_5_0= ruleTypedRefCS ) |
| // InternalOCLinEcore.g:4294:3: lv_ownedSuperTypes_5_0= ruleTypedRefCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_4_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_81); |
| lv_ownedSuperTypes_5_0=ruleTypedRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getStructuredClassCSRule()); |
| } |
| add( |
| current, |
| "ownedSuperTypes", |
| lv_ownedSuperTypes_5_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedRefCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:4310:2: (otherlv_6= ',' ( (lv_ownedSuperTypes_7_0= ruleTypedRefCS ) ) )* |
| loop120: |
| do { |
| int alt120=2; |
| int LA120_0 = input.LA(1); |
| |
| if ( (LA120_0==59) ) { |
| alt120=1; |
| } |
| |
| |
| switch (alt120) { |
| case 1 : |
| // InternalOCLinEcore.g:4310:4: otherlv_6= ',' ( (lv_ownedSuperTypes_7_0= ruleTypedRefCS ) ) |
| { |
| otherlv_6=(Token)match(input,59,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_6, grammarAccess.getStructuredClassCSAccess().getCommaKeyword_4_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:4314:1: ( (lv_ownedSuperTypes_7_0= ruleTypedRefCS ) ) |
| // InternalOCLinEcore.g:4315:1: (lv_ownedSuperTypes_7_0= ruleTypedRefCS ) |
| { |
| // InternalOCLinEcore.g:4315:1: (lv_ownedSuperTypes_7_0= ruleTypedRefCS ) |
| // InternalOCLinEcore.g:4316:3: lv_ownedSuperTypes_7_0= ruleTypedRefCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_4_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_81); |
| lv_ownedSuperTypes_7_0=ruleTypedRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getStructuredClassCSRule()); |
| } |
| add( |
| current, |
| "ownedSuperTypes", |
| lv_ownedSuperTypes_7_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedRefCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop120; |
| } |
| } while (true); |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:4332:6: (otherlv_8= ':' ( (lv_instanceClassName_9_0= RULE_SINGLE_QUOTED_STRING ) ) )? |
| int alt122=2; |
| int LA122_0 = input.LA(1); |
| |
| if ( (LA122_0==56) ) { |
| alt122=1; |
| } |
| switch (alt122) { |
| case 1 : |
| // InternalOCLinEcore.g:4332:8: otherlv_8= ':' ( (lv_instanceClassName_9_0= RULE_SINGLE_QUOTED_STRING ) ) |
| { |
| otherlv_8=(Token)match(input,56,FollowSets000.FOLLOW_31); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_8, grammarAccess.getStructuredClassCSAccess().getColonKeyword_5_0()); |
| |
| } |
| // InternalOCLinEcore.g:4336:1: ( (lv_instanceClassName_9_0= RULE_SINGLE_QUOTED_STRING ) ) |
| // InternalOCLinEcore.g:4337:1: (lv_instanceClassName_9_0= RULE_SINGLE_QUOTED_STRING ) |
| { |
| // InternalOCLinEcore.g:4337:1: (lv_instanceClassName_9_0= RULE_SINGLE_QUOTED_STRING ) |
| // InternalOCLinEcore.g:4338:3: lv_instanceClassName_9_0= RULE_SINGLE_QUOTED_STRING |
| { |
| lv_instanceClassName_9_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_22); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_instanceClassName_9_0, grammarAccess.getStructuredClassCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getStructuredClassCSRule()); |
| } |
| setWithLastConsumed( |
| current, |
| "instanceClassName", |
| lv_instanceClassName_9_0, |
| "org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:4354:4: (otherlv_10= '{' ( (lv_isInterface_11_0= 'interface' ) )? otherlv_12= '}' )? |
| int alt124=2; |
| int LA124_0 = input.LA(1); |
| |
| if ( (LA124_0==60) ) { |
| int LA124_1 = input.LA(2); |
| |
| if ( (LA124_1==61) ) { |
| int LA124_3 = input.LA(3); |
| |
| if ( (LA124_3==57||LA124_3==60) ) { |
| alt124=1; |
| } |
| } |
| else if ( (LA124_1==34) ) { |
| alt124=1; |
| } |
| } |
| switch (alt124) { |
| case 1 : |
| // InternalOCLinEcore.g:4354:6: otherlv_10= '{' ( (lv_isInterface_11_0= 'interface' ) )? otherlv_12= '}' |
| { |
| otherlv_10=(Token)match(input,60,FollowSets000.FOLLOW_82); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_10, grammarAccess.getStructuredClassCSAccess().getLeftCurlyBracketKeyword_6_0()); |
| |
| } |
| // InternalOCLinEcore.g:4358:1: ( (lv_isInterface_11_0= 'interface' ) )? |
| int alt123=2; |
| int LA123_0 = input.LA(1); |
| |
| if ( (LA123_0==34) ) { |
| alt123=1; |
| } |
| switch (alt123) { |
| case 1 : |
| // InternalOCLinEcore.g:4359:1: (lv_isInterface_11_0= 'interface' ) |
| { |
| // InternalOCLinEcore.g:4359:1: (lv_isInterface_11_0= 'interface' ) |
| // InternalOCLinEcore.g:4360:3: lv_isInterface_11_0= 'interface' |
| { |
| lv_isInterface_11_0=(Token)match(input,34,FollowSets000.FOLLOW_40); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_isInterface_11_0, grammarAccess.getStructuredClassCSAccess().getIsInterfaceInterfaceKeyword_6_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getStructuredClassCSRule()); |
| } |
| setWithLastConsumed(current, "isInterface", true, "interface"); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_12=(Token)match(input,61,FollowSets000.FOLLOW_22); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_12, grammarAccess.getStructuredClassCSAccess().getRightCurlyBracketKeyword_6_2()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:4377:3: ( (otherlv_13= '{' ( ( (lv_ownedAnnotations_14_0= ruleAnnotationElementCS ) ) | ( (lv_ownedOperations_15_0= ruleOperationCS ) ) | ( (lv_ownedProperties_16_0= ruleStructuralFeatureCS ) ) | ( (lv_ownedConstraints_17_0= ruleInvariantConstraintCS ) ) )* otherlv_18= '}' ) | otherlv_19= ';' ) |
| int alt126=2; |
| int LA126_0 = input.LA(1); |
| |
| if ( (LA126_0==60) ) { |
| alt126=1; |
| } |
| else if ( (LA126_0==57) ) { |
| alt126=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 126, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt126) { |
| case 1 : |
| // InternalOCLinEcore.g:4377:4: (otherlv_13= '{' ( ( (lv_ownedAnnotations_14_0= ruleAnnotationElementCS ) ) | ( (lv_ownedOperations_15_0= ruleOperationCS ) ) | ( (lv_ownedProperties_16_0= ruleStructuralFeatureCS ) ) | ( (lv_ownedConstraints_17_0= ruleInvariantConstraintCS ) ) )* otherlv_18= '}' ) |
| { |
| // InternalOCLinEcore.g:4377:4: (otherlv_13= '{' ( ( (lv_ownedAnnotations_14_0= ruleAnnotationElementCS ) ) | ( (lv_ownedOperations_15_0= ruleOperationCS ) ) | ( (lv_ownedProperties_16_0= ruleStructuralFeatureCS ) ) | ( (lv_ownedConstraints_17_0= ruleInvariantConstraintCS ) ) )* otherlv_18= '}' ) |
| // InternalOCLinEcore.g:4377:6: otherlv_13= '{' ( ( (lv_ownedAnnotations_14_0= ruleAnnotationElementCS ) ) | ( (lv_ownedOperations_15_0= ruleOperationCS ) ) | ( (lv_ownedProperties_16_0= ruleStructuralFeatureCS ) ) | ( (lv_ownedConstraints_17_0= ruleInvariantConstraintCS ) ) )* otherlv_18= '}' |
| { |
| otherlv_13=(Token)match(input,60,FollowSets000.FOLLOW_46); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_13, grammarAccess.getStructuredClassCSAccess().getLeftCurlyBracketKeyword_7_0_0()); |
| |
| } |
| // InternalOCLinEcore.g:4381:1: ( ( (lv_ownedAnnotations_14_0= ruleAnnotationElementCS ) ) | ( (lv_ownedOperations_15_0= ruleOperationCS ) ) | ( (lv_ownedProperties_16_0= ruleStructuralFeatureCS ) ) | ( (lv_ownedConstraints_17_0= ruleInvariantConstraintCS ) ) )* |
| loop125: |
| do { |
| int alt125=5; |
| alt125 = dfa125.predict(input); |
| switch (alt125) { |
| case 1 : |
| // InternalOCLinEcore.g:4381:2: ( (lv_ownedAnnotations_14_0= ruleAnnotationElementCS ) ) |
| { |
| // InternalOCLinEcore.g:4381:2: ( (lv_ownedAnnotations_14_0= ruleAnnotationElementCS ) ) |
| // InternalOCLinEcore.g:4382:1: (lv_ownedAnnotations_14_0= ruleAnnotationElementCS ) |
| { |
| // InternalOCLinEcore.g:4382:1: (lv_ownedAnnotations_14_0= ruleAnnotationElementCS ) |
| // InternalOCLinEcore.g:4383:3: lv_ownedAnnotations_14_0= ruleAnnotationElementCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_46); |
| lv_ownedAnnotations_14_0=ruleAnnotationElementCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getStructuredClassCSRule()); |
| } |
| add( |
| current, |
| "ownedAnnotations", |
| lv_ownedAnnotations_14_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:4400:6: ( (lv_ownedOperations_15_0= ruleOperationCS ) ) |
| { |
| // InternalOCLinEcore.g:4400:6: ( (lv_ownedOperations_15_0= ruleOperationCS ) ) |
| // InternalOCLinEcore.g:4401:1: (lv_ownedOperations_15_0= ruleOperationCS ) |
| { |
| // InternalOCLinEcore.g:4401:1: (lv_ownedOperations_15_0= ruleOperationCS ) |
| // InternalOCLinEcore.g:4402:3: lv_ownedOperations_15_0= ruleOperationCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedOperationsOperationCSParserRuleCall_7_0_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_46); |
| lv_ownedOperations_15_0=ruleOperationCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getStructuredClassCSRule()); |
| } |
| add( |
| current, |
| "ownedOperations", |
| lv_ownedOperations_15_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.OperationCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:4419:6: ( (lv_ownedProperties_16_0= ruleStructuralFeatureCS ) ) |
| { |
| // InternalOCLinEcore.g:4419:6: ( (lv_ownedProperties_16_0= ruleStructuralFeatureCS ) ) |
| // InternalOCLinEcore.g:4420:1: (lv_ownedProperties_16_0= ruleStructuralFeatureCS ) |
| { |
| // InternalOCLinEcore.g:4420:1: (lv_ownedProperties_16_0= ruleStructuralFeatureCS ) |
| // InternalOCLinEcore.g:4421:3: lv_ownedProperties_16_0= ruleStructuralFeatureCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedPropertiesStructuralFeatureCSParserRuleCall_7_0_1_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_46); |
| lv_ownedProperties_16_0=ruleStructuralFeatureCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getStructuredClassCSRule()); |
| } |
| add( |
| current, |
| "ownedProperties", |
| lv_ownedProperties_16_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.StructuralFeatureCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 4 : |
| // InternalOCLinEcore.g:4438:6: ( (lv_ownedConstraints_17_0= ruleInvariantConstraintCS ) ) |
| { |
| // InternalOCLinEcore.g:4438:6: ( (lv_ownedConstraints_17_0= ruleInvariantConstraintCS ) ) |
| // InternalOCLinEcore.g:4439:1: (lv_ownedConstraints_17_0= ruleInvariantConstraintCS ) |
| { |
| // InternalOCLinEcore.g:4439:1: (lv_ownedConstraints_17_0= ruleInvariantConstraintCS ) |
| // InternalOCLinEcore.g:4440:3: lv_ownedConstraints_17_0= ruleInvariantConstraintCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_7_0_1_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_46); |
| lv_ownedConstraints_17_0=ruleInvariantConstraintCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getStructuredClassCSRule()); |
| } |
| add( |
| current, |
| "ownedConstraints", |
| lv_ownedConstraints_17_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.InvariantConstraintCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop125; |
| } |
| } while (true); |
| |
| otherlv_18=(Token)match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_18, grammarAccess.getStructuredClassCSAccess().getRightCurlyBracketKeyword_7_0_2()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:4461:7: otherlv_19= ';' |
| { |
| otherlv_19=(Token)match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_19, grammarAccess.getStructuredClassCSAccess().getSemicolonKeyword_7_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleStructuredClassCS" |
| |
| |
| // $ANTLR start "entryRuleStructuralFeatureCS" |
| // InternalOCLinEcore.g:4473:1: entryRuleStructuralFeatureCS returns [EObject current=null] : iv_ruleStructuralFeatureCS= ruleStructuralFeatureCS EOF ; |
| public final EObject entryRuleStructuralFeatureCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleStructuralFeatureCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:4474:2: (iv_ruleStructuralFeatureCS= ruleStructuralFeatureCS EOF ) |
| // InternalOCLinEcore.g:4475:2: iv_ruleStructuralFeatureCS= ruleStructuralFeatureCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getStructuralFeatureCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleStructuralFeatureCS=ruleStructuralFeatureCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleStructuralFeatureCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleStructuralFeatureCS" |
| |
| |
| // $ANTLR start "ruleStructuralFeatureCS" |
| // InternalOCLinEcore.g:4482:1: ruleStructuralFeatureCS returns [EObject current=null] : (this_AttributeCS_0= ruleAttributeCS | this_ReferenceCS_1= ruleReferenceCS ) ; |
| public final EObject ruleStructuralFeatureCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject this_AttributeCS_0 = null; |
| |
| EObject this_ReferenceCS_1 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:4485:28: ( (this_AttributeCS_0= ruleAttributeCS | this_ReferenceCS_1= ruleReferenceCS ) ) |
| // InternalOCLinEcore.g:4486:1: (this_AttributeCS_0= ruleAttributeCS | this_ReferenceCS_1= ruleReferenceCS ) |
| { |
| // InternalOCLinEcore.g:4486:1: (this_AttributeCS_0= ruleAttributeCS | this_ReferenceCS_1= ruleReferenceCS ) |
| int alt127=2; |
| switch ( input.LA(1) ) { |
| case 47: |
| { |
| switch ( input.LA(2) ) { |
| case 26: |
| { |
| int LA127_5 = input.LA(3); |
| |
| if ( (LA127_5==20) ) { |
| alt127=1; |
| } |
| else if ( (LA127_5==43) ) { |
| alt127=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 127, 5, input); |
| |
| throw nvae; |
| } |
| } |
| break; |
| case 43: |
| { |
| alt127=2; |
| } |
| break; |
| case 20: |
| { |
| alt127=1; |
| } |
| break; |
| default: |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 127, 1, input); |
| |
| throw nvae; |
| } |
| |
| } |
| break; |
| case 26: |
| { |
| switch ( input.LA(2) ) { |
| case 47: |
| { |
| int LA127_6 = input.LA(3); |
| |
| if ( (LA127_6==43) ) { |
| alt127=2; |
| } |
| else if ( (LA127_6==20) ) { |
| alt127=1; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 127, 6, input); |
| |
| throw nvae; |
| } |
| } |
| break; |
| case 20: |
| { |
| alt127=1; |
| } |
| break; |
| case 43: |
| { |
| alt127=2; |
| } |
| break; |
| default: |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 127, 2, input); |
| |
| throw nvae; |
| } |
| |
| } |
| break; |
| case 20: |
| { |
| alt127=1; |
| } |
| break; |
| case 43: |
| { |
| alt127=2; |
| } |
| break; |
| default: |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 127, 0, input); |
| |
| throw nvae; |
| } |
| |
| switch (alt127) { |
| case 1 : |
| // InternalOCLinEcore.g:4487:2: this_AttributeCS_0= ruleAttributeCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getStructuralFeatureCSAccess().getAttributeCSParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_AttributeCS_0=ruleAttributeCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_AttributeCS_0; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:4500:2: this_ReferenceCS_1= ruleReferenceCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getStructuralFeatureCSAccess().getReferenceCSParserRuleCall_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_ReferenceCS_1=ruleReferenceCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_ReferenceCS_1; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleStructuralFeatureCS" |
| |
| |
| // $ANTLR start "entryRuleSysMLCS" |
| // InternalOCLinEcore.g:4519:1: entryRuleSysMLCS returns [EObject current=null] : iv_ruleSysMLCS= ruleSysMLCS EOF ; |
| public final EObject entryRuleSysMLCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleSysMLCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:4520:2: (iv_ruleSysMLCS= ruleSysMLCS EOF ) |
| // InternalOCLinEcore.g:4521:2: iv_ruleSysMLCS= ruleSysMLCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getSysMLCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleSysMLCS=ruleSysMLCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleSysMLCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleSysMLCS" |
| |
| |
| // $ANTLR start "ruleSysMLCS" |
| // InternalOCLinEcore.g:4528:1: ruleSysMLCS returns [EObject current=null] : ( () otherlv_1= 'sysml' ( ( ( (lv_ownedDetails_2_0= ruleDetailCS ) ) otherlv_3= ';' ) | (otherlv_4= '{' ( ( (lv_ownedDetails_5_0= ruleDetailCS ) ) otherlv_6= ';' )* otherlv_7= '}' ) ) ) ; |
| public final EObject ruleSysMLCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| Token otherlv_3=null; |
| Token otherlv_4=null; |
| Token otherlv_6=null; |
| Token otherlv_7=null; |
| EObject lv_ownedDetails_2_0 = null; |
| |
| EObject lv_ownedDetails_5_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:4531:28: ( ( () otherlv_1= 'sysml' ( ( ( (lv_ownedDetails_2_0= ruleDetailCS ) ) otherlv_3= ';' ) | (otherlv_4= '{' ( ( (lv_ownedDetails_5_0= ruleDetailCS ) ) otherlv_6= ';' )* otherlv_7= '}' ) ) ) ) |
| // InternalOCLinEcore.g:4532:1: ( () otherlv_1= 'sysml' ( ( ( (lv_ownedDetails_2_0= ruleDetailCS ) ) otherlv_3= ';' ) | (otherlv_4= '{' ( ( (lv_ownedDetails_5_0= ruleDetailCS ) ) otherlv_6= ';' )* otherlv_7= '}' ) ) ) |
| { |
| // InternalOCLinEcore.g:4532:1: ( () otherlv_1= 'sysml' ( ( ( (lv_ownedDetails_2_0= ruleDetailCS ) ) otherlv_3= ';' ) | (otherlv_4= '{' ( ( (lv_ownedDetails_5_0= ruleDetailCS ) ) otherlv_6= ';' )* otherlv_7= '}' ) ) ) |
| // InternalOCLinEcore.g:4532:2: () otherlv_1= 'sysml' ( ( ( (lv_ownedDetails_2_0= ruleDetailCS ) ) otherlv_3= ';' ) | (otherlv_4= '{' ( ( (lv_ownedDetails_5_0= ruleDetailCS ) ) otherlv_6= ';' )* otherlv_7= '}' ) ) |
| { |
| // InternalOCLinEcore.g:4532:2: () |
| // InternalOCLinEcore.g:4533:2: |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| current = forceCreateModelElement( |
| grammarAccess.getSysMLCSAccess().getSysMLCSAction_0(), |
| current); |
| |
| } |
| |
| } |
| |
| otherlv_1=(Token)match(input,80,FollowSets000.FOLLOW_83); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getSysMLCSAccess().getSysmlKeyword_1()); |
| |
| } |
| // InternalOCLinEcore.g:4545:1: ( ( ( (lv_ownedDetails_2_0= ruleDetailCS ) ) otherlv_3= ';' ) | (otherlv_4= '{' ( ( (lv_ownedDetails_5_0= ruleDetailCS ) ) otherlv_6= ';' )* otherlv_7= '}' ) ) |
| int alt129=2; |
| int LA129_0 = input.LA(1); |
| |
| if ( (LA129_0==RULE_SINGLE_QUOTED_STRING||(LA129_0>=RULE_SIMPLE_ID && LA129_0<=RULE_ESCAPED_ID)||LA129_0==17||(LA129_0>=19 && LA129_0<=53)||LA129_0==58||LA129_0==71||(LA129_0>=73 && LA129_0<=74)||LA129_0==76||LA129_0==80) ) { |
| alt129=1; |
| } |
| else if ( (LA129_0==60) ) { |
| alt129=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 129, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt129) { |
| case 1 : |
| // InternalOCLinEcore.g:4545:2: ( ( (lv_ownedDetails_2_0= ruleDetailCS ) ) otherlv_3= ';' ) |
| { |
| // InternalOCLinEcore.g:4545:2: ( ( (lv_ownedDetails_2_0= ruleDetailCS ) ) otherlv_3= ';' ) |
| // InternalOCLinEcore.g:4545:3: ( (lv_ownedDetails_2_0= ruleDetailCS ) ) otherlv_3= ';' |
| { |
| // InternalOCLinEcore.g:4545:3: ( (lv_ownedDetails_2_0= ruleDetailCS ) ) |
| // InternalOCLinEcore.g:4546:1: (lv_ownedDetails_2_0= ruleDetailCS ) |
| { |
| // InternalOCLinEcore.g:4546:1: (lv_ownedDetails_2_0= ruleDetailCS ) |
| // InternalOCLinEcore.g:4547:3: lv_ownedDetails_2_0= ruleDetailCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getSysMLCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_0_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_14); |
| lv_ownedDetails_2_0=ruleDetailCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getSysMLCSRule()); |
| } |
| add( |
| current, |
| "ownedDetails", |
| lv_ownedDetails_2_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.DetailCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_3=(Token)match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_3, grammarAccess.getSysMLCSAccess().getSemicolonKeyword_2_0_1()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:4568:6: (otherlv_4= '{' ( ( (lv_ownedDetails_5_0= ruleDetailCS ) ) otherlv_6= ';' )* otherlv_7= '}' ) |
| { |
| // InternalOCLinEcore.g:4568:6: (otherlv_4= '{' ( ( (lv_ownedDetails_5_0= ruleDetailCS ) ) otherlv_6= ';' )* otherlv_7= '}' ) |
| // InternalOCLinEcore.g:4568:8: otherlv_4= '{' ( ( (lv_ownedDetails_5_0= ruleDetailCS ) ) otherlv_6= ';' )* otherlv_7= '}' |
| { |
| otherlv_4=(Token)match(input,60,FollowSets000.FOLLOW_84); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_4, grammarAccess.getSysMLCSAccess().getLeftCurlyBracketKeyword_2_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:4572:1: ( ( (lv_ownedDetails_5_0= ruleDetailCS ) ) otherlv_6= ';' )* |
| loop128: |
| do { |
| int alt128=2; |
| int LA128_0 = input.LA(1); |
| |
| if ( (LA128_0==RULE_SINGLE_QUOTED_STRING||(LA128_0>=RULE_SIMPLE_ID && LA128_0<=RULE_ESCAPED_ID)||LA128_0==17||(LA128_0>=19 && LA128_0<=53)||LA128_0==58||LA128_0==71||(LA128_0>=73 && LA128_0<=74)||LA128_0==76||LA128_0==80) ) { |
| alt128=1; |
| } |
| |
| |
| switch (alt128) { |
| case 1 : |
| // InternalOCLinEcore.g:4572:2: ( (lv_ownedDetails_5_0= ruleDetailCS ) ) otherlv_6= ';' |
| { |
| // InternalOCLinEcore.g:4572:2: ( (lv_ownedDetails_5_0= ruleDetailCS ) ) |
| // InternalOCLinEcore.g:4573:1: (lv_ownedDetails_5_0= ruleDetailCS ) |
| { |
| // InternalOCLinEcore.g:4573:1: (lv_ownedDetails_5_0= ruleDetailCS ) |
| // InternalOCLinEcore.g:4574:3: lv_ownedDetails_5_0= ruleDetailCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getSysMLCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_1_1_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_14); |
| lv_ownedDetails_5_0=ruleDetailCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getSysMLCSRule()); |
| } |
| add( |
| current, |
| "ownedDetails", |
| lv_ownedDetails_5_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.DetailCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_6=(Token)match(input,57,FollowSets000.FOLLOW_84); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_6, grammarAccess.getSysMLCSAccess().getSemicolonKeyword_2_1_1_1()); |
| |
| } |
| |
| } |
| break; |
| |
| default : |
| break loop128; |
| } |
| } while (true); |
| |
| otherlv_7=(Token)match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_7, grammarAccess.getSysMLCSAccess().getRightCurlyBracketKeyword_2_1_2()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleSysMLCS" |
| |
| |
| // $ANTLR start "entryRuleTypedMultiplicityRefCS" |
| // InternalOCLinEcore.g:4608:1: entryRuleTypedMultiplicityRefCS returns [EObject current=null] : iv_ruleTypedMultiplicityRefCS= ruleTypedMultiplicityRefCS EOF ; |
| public final EObject entryRuleTypedMultiplicityRefCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleTypedMultiplicityRefCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:4609:2: (iv_ruleTypedMultiplicityRefCS= ruleTypedMultiplicityRefCS EOF ) |
| // InternalOCLinEcore.g:4610:2: iv_ruleTypedMultiplicityRefCS= ruleTypedMultiplicityRefCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getTypedMultiplicityRefCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleTypedMultiplicityRefCS=ruleTypedMultiplicityRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleTypedMultiplicityRefCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleTypedMultiplicityRefCS" |
| |
| |
| // $ANTLR start "ruleTypedMultiplicityRefCS" |
| // InternalOCLinEcore.g:4617:1: ruleTypedMultiplicityRefCS returns [EObject current=null] : (this_TypedRefCS_0= ruleTypedRefCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? ) ; |
| public final EObject ruleTypedMultiplicityRefCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject this_TypedRefCS_0 = null; |
| |
| EObject lv_ownedMultiplicity_1_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:4620:28: ( (this_TypedRefCS_0= ruleTypedRefCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? ) ) |
| // InternalOCLinEcore.g:4621:1: (this_TypedRefCS_0= ruleTypedRefCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? ) |
| { |
| // InternalOCLinEcore.g:4621:1: (this_TypedRefCS_0= ruleTypedRefCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? ) |
| // InternalOCLinEcore.g:4622:2: this_TypedRefCS_0= ruleTypedRefCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getTypedRefCSParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_85); |
| this_TypedRefCS_0=ruleTypedRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_TypedRefCS_0; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| // InternalOCLinEcore.g:4633:1: ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? |
| int alt130=2; |
| int LA130_0 = input.LA(1); |
| |
| if ( (LA130_0==124) ) { |
| alt130=1; |
| } |
| switch (alt130) { |
| case 1 : |
| // InternalOCLinEcore.g:4634:1: (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) |
| { |
| // InternalOCLinEcore.g:4634:1: (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) |
| // InternalOCLinEcore.g:4635:3: lv_ownedMultiplicity_1_0= ruleMultiplicityCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedMultiplicity_1_0=ruleMultiplicityCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTypedMultiplicityRefCSRule()); |
| } |
| set( |
| current, |
| "ownedMultiplicity", |
| lv_ownedMultiplicity_1_0, |
| "org.eclipse.ocl.xtext.base.Base.MultiplicityCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleTypedMultiplicityRefCS" |
| |
| |
| // $ANTLR start "entryRuleTemplateSignatureCS" |
| // InternalOCLinEcore.g:4659:1: entryRuleTemplateSignatureCS returns [EObject current=null] : iv_ruleTemplateSignatureCS= ruleTemplateSignatureCS EOF ; |
| public final EObject entryRuleTemplateSignatureCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleTemplateSignatureCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:4660:2: (iv_ruleTemplateSignatureCS= ruleTemplateSignatureCS EOF ) |
| // InternalOCLinEcore.g:4661:2: iv_ruleTemplateSignatureCS= ruleTemplateSignatureCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getTemplateSignatureCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleTemplateSignatureCS=ruleTemplateSignatureCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleTemplateSignatureCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleTemplateSignatureCS" |
| |
| |
| // $ANTLR start "ruleTemplateSignatureCS" |
| // InternalOCLinEcore.g:4668:1: ruleTemplateSignatureCS returns [EObject current=null] : ( (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' ) | (otherlv_5= '<' ( (lv_ownedParameters_6_0= ruleTypeParameterCS ) ) (otherlv_7= ',' ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) ) )* otherlv_9= '>' ) ) ; |
| public final EObject ruleTemplateSignatureCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_0=null; |
| Token otherlv_2=null; |
| Token otherlv_4=null; |
| Token otherlv_5=null; |
| Token otherlv_7=null; |
| Token otherlv_9=null; |
| EObject lv_ownedParameters_1_0 = null; |
| |
| EObject lv_ownedParameters_3_0 = null; |
| |
| EObject lv_ownedParameters_6_0 = null; |
| |
| EObject lv_ownedParameters_8_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:4671:28: ( ( (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' ) | (otherlv_5= '<' ( (lv_ownedParameters_6_0= ruleTypeParameterCS ) ) (otherlv_7= ',' ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) ) )* otherlv_9= '>' ) ) ) |
| // InternalOCLinEcore.g:4672:1: ( (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' ) | (otherlv_5= '<' ( (lv_ownedParameters_6_0= ruleTypeParameterCS ) ) (otherlv_7= ',' ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) ) )* otherlv_9= '>' ) ) |
| { |
| // InternalOCLinEcore.g:4672:1: ( (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' ) | (otherlv_5= '<' ( (lv_ownedParameters_6_0= ruleTypeParameterCS ) ) (otherlv_7= ',' ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) ) )* otherlv_9= '>' ) ) |
| int alt133=2; |
| int LA133_0 = input.LA(1); |
| |
| if ( (LA133_0==54) ) { |
| alt133=1; |
| } |
| else if ( (LA133_0==81) ) { |
| alt133=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 133, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt133) { |
| case 1 : |
| // InternalOCLinEcore.g:4672:2: (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' ) |
| { |
| // InternalOCLinEcore.g:4672:2: (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' ) |
| // InternalOCLinEcore.g:4672:4: otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' |
| { |
| otherlv_0=(Token)match(input,54,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_0, grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0_0()); |
| |
| } |
| // InternalOCLinEcore.g:4676:1: ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) |
| // InternalOCLinEcore.g:4677:1: (lv_ownedParameters_1_0= ruleTypeParameterCS ) |
| { |
| // InternalOCLinEcore.g:4677:1: (lv_ownedParameters_1_0= ruleTypeParameterCS ) |
| // InternalOCLinEcore.g:4678:3: lv_ownedParameters_1_0= ruleTypeParameterCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_21); |
| lv_ownedParameters_1_0=ruleTypeParameterCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule()); |
| } |
| add( |
| current, |
| "ownedParameters", |
| lv_ownedParameters_1_0, |
| "org.eclipse.ocl.xtext.base.Base.TypeParameterCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:4694:2: (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* |
| loop131: |
| do { |
| int alt131=2; |
| int LA131_0 = input.LA(1); |
| |
| if ( (LA131_0==59) ) { |
| alt131=1; |
| } |
| |
| |
| switch (alt131) { |
| case 1 : |
| // InternalOCLinEcore.g:4694:4: otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) |
| { |
| otherlv_2=(Token)match(input,59,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_2, grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_0_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:4698:1: ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) |
| // InternalOCLinEcore.g:4699:1: (lv_ownedParameters_3_0= ruleTypeParameterCS ) |
| { |
| // InternalOCLinEcore.g:4699:1: (lv_ownedParameters_3_0= ruleTypeParameterCS ) |
| // InternalOCLinEcore.g:4700:3: lv_ownedParameters_3_0= ruleTypeParameterCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_21); |
| lv_ownedParameters_3_0=ruleTypeParameterCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule()); |
| } |
| add( |
| current, |
| "ownedParameters", |
| lv_ownedParameters_3_0, |
| "org.eclipse.ocl.xtext.base.Base.TypeParameterCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop131; |
| } |
| } while (true); |
| |
| otherlv_4=(Token)match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_4, grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_0_3()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:4721:6: (otherlv_5= '<' ( (lv_ownedParameters_6_0= ruleTypeParameterCS ) ) (otherlv_7= ',' ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) ) )* otherlv_9= '>' ) |
| { |
| // InternalOCLinEcore.g:4721:6: (otherlv_5= '<' ( (lv_ownedParameters_6_0= ruleTypeParameterCS ) ) (otherlv_7= ',' ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) ) )* otherlv_9= '>' ) |
| // InternalOCLinEcore.g:4721:8: otherlv_5= '<' ( (lv_ownedParameters_6_0= ruleTypeParameterCS ) ) (otherlv_7= ',' ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) ) )* otherlv_9= '>' |
| { |
| otherlv_5=(Token)match(input,81,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_5, grammarAccess.getTemplateSignatureCSAccess().getLessThanSignKeyword_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:4725:1: ( (lv_ownedParameters_6_0= ruleTypeParameterCS ) ) |
| // InternalOCLinEcore.g:4726:1: (lv_ownedParameters_6_0= ruleTypeParameterCS ) |
| { |
| // InternalOCLinEcore.g:4726:1: (lv_ownedParameters_6_0= ruleTypeParameterCS ) |
| // InternalOCLinEcore.g:4727:3: lv_ownedParameters_6_0= ruleTypeParameterCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_86); |
| lv_ownedParameters_6_0=ruleTypeParameterCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule()); |
| } |
| add( |
| current, |
| "ownedParameters", |
| lv_ownedParameters_6_0, |
| "org.eclipse.ocl.xtext.base.Base.TypeParameterCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:4743:2: (otherlv_7= ',' ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) ) )* |
| loop132: |
| do { |
| int alt132=2; |
| int LA132_0 = input.LA(1); |
| |
| if ( (LA132_0==59) ) { |
| alt132=1; |
| } |
| |
| |
| switch (alt132) { |
| case 1 : |
| // InternalOCLinEcore.g:4743:4: otherlv_7= ',' ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) ) |
| { |
| otherlv_7=(Token)match(input,59,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_7, grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_1_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:4747:1: ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) ) |
| // InternalOCLinEcore.g:4748:1: (lv_ownedParameters_8_0= ruleTypeParameterCS ) |
| { |
| // InternalOCLinEcore.g:4748:1: (lv_ownedParameters_8_0= ruleTypeParameterCS ) |
| // InternalOCLinEcore.g:4749:3: lv_ownedParameters_8_0= ruleTypeParameterCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_86); |
| lv_ownedParameters_8_0=ruleTypeParameterCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule()); |
| } |
| add( |
| current, |
| "ownedParameters", |
| lv_ownedParameters_8_0, |
| "org.eclipse.ocl.xtext.base.Base.TypeParameterCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop132; |
| } |
| } while (true); |
| |
| otherlv_9=(Token)match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_9, grammarAccess.getTemplateSignatureCSAccess().getGreaterThanSignKeyword_1_3()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleTemplateSignatureCS" |
| |
| |
| // $ANTLR start "entryRuleTypedRefCS" |
| // InternalOCLinEcore.g:4777:1: entryRuleTypedRefCS returns [EObject current=null] : iv_ruleTypedRefCS= ruleTypedRefCS EOF ; |
| public final EObject entryRuleTypedRefCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleTypedRefCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:4778:2: (iv_ruleTypedRefCS= ruleTypedRefCS EOF ) |
| // InternalOCLinEcore.g:4779:2: iv_ruleTypedRefCS= ruleTypedRefCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getTypedRefCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleTypedRefCS=ruleTypedRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleTypedRefCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleTypedRefCS" |
| |
| |
| // $ANTLR start "ruleTypedRefCS" |
| // InternalOCLinEcore.g:4786:1: ruleTypedRefCS returns [EObject current=null] : (this_TypeLiteralCS_0= ruleTypeLiteralCS | this_TypedTypeRefCS_1= ruleTypedTypeRefCS ) ; |
| public final EObject ruleTypedRefCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject this_TypeLiteralCS_0 = null; |
| |
| EObject this_TypedTypeRefCS_1 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:4789:28: ( (this_TypeLiteralCS_0= ruleTypeLiteralCS | this_TypedTypeRefCS_1= ruleTypedTypeRefCS ) ) |
| // InternalOCLinEcore.g:4790:1: (this_TypeLiteralCS_0= ruleTypeLiteralCS | this_TypedTypeRefCS_1= ruleTypedTypeRefCS ) |
| { |
| // InternalOCLinEcore.g:4790:1: (this_TypeLiteralCS_0= ruleTypeLiteralCS | this_TypedTypeRefCS_1= ruleTypedTypeRefCS ) |
| int alt134=2; |
| int LA134_0 = input.LA(1); |
| |
| if ( ((LA134_0>=98 && LA134_0<=99)||(LA134_0>=101 && LA134_0<=113)) ) { |
| alt134=1; |
| } |
| else if ( ((LA134_0>=RULE_SIMPLE_ID && LA134_0<=RULE_ESCAPED_ID)||LA134_0==17||(LA134_0>=19 && LA134_0<=53)||LA134_0==58||LA134_0==71||(LA134_0>=73 && LA134_0<=74)||LA134_0==76||LA134_0==80) ) { |
| alt134=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 134, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt134) { |
| case 1 : |
| // InternalOCLinEcore.g:4791:2: this_TypeLiteralCS_0= ruleTypeLiteralCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypeLiteralCSParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_TypeLiteralCS_0=ruleTypeLiteralCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_TypeLiteralCS_0; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:4804:2: this_TypedTypeRefCS_1= ruleTypedTypeRefCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_TypedTypeRefCS_1=ruleTypedTypeRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_TypedTypeRefCS_1; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleTypedRefCS" |
| |
| |
| // $ANTLR start "entryRuleTypedTypeRefCS" |
| // InternalOCLinEcore.g:4823:1: entryRuleTypedTypeRefCS returns [EObject current=null] : iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF ; |
| public final EObject entryRuleTypedTypeRefCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleTypedTypeRefCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:4824:2: (iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF ) |
| // InternalOCLinEcore.g:4825:2: iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getTypedTypeRefCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleTypedTypeRefCS=ruleTypedTypeRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleTypedTypeRefCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleTypedTypeRefCS" |
| |
| |
| // $ANTLR start "ruleTypedTypeRefCS" |
| // InternalOCLinEcore.g:4832:1: ruleTypedTypeRefCS returns [EObject current=null] : ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' ) | (otherlv_4= '<' ( (lv_ownedBinding_5_0= ruleTemplateBindingCS ) ) otherlv_6= '>' ) )? ) ; |
| public final EObject ruleTypedTypeRefCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| Token otherlv_3=null; |
| Token otherlv_4=null; |
| Token otherlv_6=null; |
| EObject lv_ownedPathName_0_0 = null; |
| |
| EObject lv_ownedBinding_2_0 = null; |
| |
| EObject lv_ownedBinding_5_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:4835:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' ) | (otherlv_4= '<' ( (lv_ownedBinding_5_0= ruleTemplateBindingCS ) ) otherlv_6= '>' ) )? ) ) |
| // InternalOCLinEcore.g:4836:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' ) | (otherlv_4= '<' ( (lv_ownedBinding_5_0= ruleTemplateBindingCS ) ) otherlv_6= '>' ) )? ) |
| { |
| // InternalOCLinEcore.g:4836:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' ) | (otherlv_4= '<' ( (lv_ownedBinding_5_0= ruleTemplateBindingCS ) ) otherlv_6= '>' ) )? ) |
| // InternalOCLinEcore.g:4836:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' ) | (otherlv_4= '<' ( (lv_ownedBinding_5_0= ruleTemplateBindingCS ) ) otherlv_6= '>' ) )? |
| { |
| // InternalOCLinEcore.g:4836:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) ) |
| // InternalOCLinEcore.g:4837:1: (lv_ownedPathName_0_0= rulePathNameCS ) |
| { |
| // InternalOCLinEcore.g:4837:1: (lv_ownedPathName_0_0= rulePathNameCS ) |
| // InternalOCLinEcore.g:4838:3: lv_ownedPathName_0_0= rulePathNameCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_87); |
| lv_ownedPathName_0_0=rulePathNameCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule()); |
| } |
| set( |
| current, |
| "ownedPathName", |
| lv_ownedPathName_0_0, |
| "org.eclipse.ocl.xtext.base.Base.PathNameCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:4854:2: ( (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' ) | (otherlv_4= '<' ( (lv_ownedBinding_5_0= ruleTemplateBindingCS ) ) otherlv_6= '>' ) )? |
| int alt135=3; |
| int LA135_0 = input.LA(1); |
| |
| if ( (LA135_0==54) ) { |
| alt135=1; |
| } |
| else if ( (LA135_0==81) ) { |
| alt135=2; |
| } |
| switch (alt135) { |
| case 1 : |
| // InternalOCLinEcore.g:4854:3: (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' ) |
| { |
| // InternalOCLinEcore.g:4854:3: (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' ) |
| // InternalOCLinEcore.g:4854:5: otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' |
| { |
| otherlv_1=(Token)match(input,54,FollowSets000.FOLLOW_88); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0_0()); |
| |
| } |
| // InternalOCLinEcore.g:4858:1: ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) |
| // InternalOCLinEcore.g:4859:1: (lv_ownedBinding_2_0= ruleTemplateBindingCS ) |
| { |
| // InternalOCLinEcore.g:4859:1: (lv_ownedBinding_2_0= ruleTemplateBindingCS ) |
| // InternalOCLinEcore.g:4860:3: lv_ownedBinding_2_0= ruleTemplateBindingCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_0_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_11); |
| lv_ownedBinding_2_0=ruleTemplateBindingCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule()); |
| } |
| set( |
| current, |
| "ownedBinding", |
| lv_ownedBinding_2_0, |
| "org.eclipse.ocl.xtext.base.Base.TemplateBindingCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_3=(Token)match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_3, grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_0_2()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:4881:6: (otherlv_4= '<' ( (lv_ownedBinding_5_0= ruleTemplateBindingCS ) ) otherlv_6= '>' ) |
| { |
| // InternalOCLinEcore.g:4881:6: (otherlv_4= '<' ( (lv_ownedBinding_5_0= ruleTemplateBindingCS ) ) otherlv_6= '>' ) |
| // InternalOCLinEcore.g:4881:8: otherlv_4= '<' ( (lv_ownedBinding_5_0= ruleTemplateBindingCS ) ) otherlv_6= '>' |
| { |
| otherlv_4=(Token)match(input,81,FollowSets000.FOLLOW_88); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_4, grammarAccess.getTypedTypeRefCSAccess().getLessThanSignKeyword_1_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:4885:1: ( (lv_ownedBinding_5_0= ruleTemplateBindingCS ) ) |
| // InternalOCLinEcore.g:4886:1: (lv_ownedBinding_5_0= ruleTemplateBindingCS ) |
| { |
| // InternalOCLinEcore.g:4886:1: (lv_ownedBinding_5_0= ruleTemplateBindingCS ) |
| // InternalOCLinEcore.g:4887:3: lv_ownedBinding_5_0= ruleTemplateBindingCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_89); |
| lv_ownedBinding_5_0=ruleTemplateBindingCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule()); |
| } |
| set( |
| current, |
| "ownedBinding", |
| lv_ownedBinding_5_0, |
| "org.eclipse.ocl.xtext.base.Base.TemplateBindingCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_6=(Token)match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_6, grammarAccess.getTypedTypeRefCSAccess().getGreaterThanSignKeyword_1_1_2()); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleTypedTypeRefCS" |
| |
| |
| // $ANTLR start "entryRuleUnrestrictedName" |
| // InternalOCLinEcore.g:4915:1: entryRuleUnrestrictedName returns [String current=null] : iv_ruleUnrestrictedName= ruleUnrestrictedName EOF ; |
| public final String entryRuleUnrestrictedName() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_ruleUnrestrictedName = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:4916:2: (iv_ruleUnrestrictedName= ruleUnrestrictedName EOF ) |
| // InternalOCLinEcore.g:4917:2: iv_ruleUnrestrictedName= ruleUnrestrictedName EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getUnrestrictedNameRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleUnrestrictedName=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleUnrestrictedName.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleUnrestrictedName" |
| |
| |
| // $ANTLR start "ruleUnrestrictedName" |
| // InternalOCLinEcore.g:4924:1: ruleUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_EnumerationLiteralName_0= ruleEnumerationLiteralName | kw= 'annotation' | kw= 'documentation' | kw= 'invariant' | kw= 'literal' | kw= 'opposite' | kw= 'serializable' | kw= 'sysml' ) ; |
| public final AntlrDatatypeRuleToken ruleUnrestrictedName() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| Token kw=null; |
| AntlrDatatypeRuleToken this_EnumerationLiteralName_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:4927:28: ( (this_EnumerationLiteralName_0= ruleEnumerationLiteralName | kw= 'annotation' | kw= 'documentation' | kw= 'invariant' | kw= 'literal' | kw= 'opposite' | kw= 'serializable' | kw= 'sysml' ) ) |
| // InternalOCLinEcore.g:4928:1: (this_EnumerationLiteralName_0= ruleEnumerationLiteralName | kw= 'annotation' | kw= 'documentation' | kw= 'invariant' | kw= 'literal' | kw= 'opposite' | kw= 'serializable' | kw= 'sysml' ) |
| { |
| // InternalOCLinEcore.g:4928:1: (this_EnumerationLiteralName_0= ruleEnumerationLiteralName | kw= 'annotation' | kw= 'documentation' | kw= 'invariant' | kw= 'literal' | kw= 'opposite' | kw= 'serializable' | kw= 'sysml' ) |
| int alt136=8; |
| switch ( input.LA(1) ) { |
| case RULE_SIMPLE_ID: |
| case RULE_ESCAPED_ID: |
| case 17: |
| case 19: |
| case 20: |
| case 21: |
| case 22: |
| case 23: |
| case 24: |
| case 25: |
| case 26: |
| case 27: |
| case 28: |
| case 29: |
| case 30: |
| case 31: |
| case 32: |
| case 33: |
| case 34: |
| case 35: |
| case 36: |
| case 37: |
| case 38: |
| case 39: |
| case 40: |
| case 41: |
| case 42: |
| case 43: |
| case 44: |
| case 45: |
| case 46: |
| case 47: |
| case 48: |
| case 49: |
| case 50: |
| case 51: |
| case 52: |
| { |
| alt136=1; |
| } |
| break; |
| case 58: |
| { |
| alt136=2; |
| } |
| break; |
| case 73: |
| { |
| alt136=3; |
| } |
| break; |
| case 53: |
| { |
| alt136=4; |
| } |
| break; |
| case 74: |
| { |
| alt136=5; |
| } |
| break; |
| case 76: |
| { |
| alt136=6; |
| } |
| break; |
| case 71: |
| { |
| alt136=7; |
| } |
| break; |
| case 80: |
| { |
| alt136=8; |
| } |
| break; |
| default: |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 136, 0, input); |
| |
| throw nvae; |
| } |
| |
| switch (alt136) { |
| case 1 : |
| // InternalOCLinEcore.g:4929:5: this_EnumerationLiteralName_0= ruleEnumerationLiteralName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getUnrestrictedNameAccess().getEnumerationLiteralNameParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_EnumerationLiteralName_0=ruleEnumerationLiteralName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(this_EnumerationLiteralName_0); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:4941:2: kw= 'annotation' |
| { |
| kw=(Token)match(input,58,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getAnnotationKeyword_1()); |
| |
| } |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:4948:2: kw= 'documentation' |
| { |
| kw=(Token)match(input,73,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getDocumentationKeyword_2()); |
| |
| } |
| |
| } |
| break; |
| case 4 : |
| // InternalOCLinEcore.g:4955:2: kw= 'invariant' |
| { |
| kw=(Token)match(input,53,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getInvariantKeyword_3()); |
| |
| } |
| |
| } |
| break; |
| case 5 : |
| // InternalOCLinEcore.g:4962:2: kw= 'literal' |
| { |
| kw=(Token)match(input,74,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getLiteralKeyword_4()); |
| |
| } |
| |
| } |
| break; |
| case 6 : |
| // InternalOCLinEcore.g:4969:2: kw= 'opposite' |
| { |
| kw=(Token)match(input,76,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getOppositeKeyword_5()); |
| |
| } |
| |
| } |
| break; |
| case 7 : |
| // InternalOCLinEcore.g:4976:2: kw= 'serializable' |
| { |
| kw=(Token)match(input,71,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getSerializableKeyword_6()); |
| |
| } |
| |
| } |
| break; |
| case 8 : |
| // InternalOCLinEcore.g:4983:2: kw= 'sysml' |
| { |
| kw=(Token)match(input,80,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getSysmlKeyword_7()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleUnrestrictedName" |
| |
| |
| // $ANTLR start "entryRuleEssentialOCLUnaryOperatorName" |
| // InternalOCLinEcore.g:5000:1: entryRuleEssentialOCLUnaryOperatorName returns [String current=null] : iv_ruleEssentialOCLUnaryOperatorName= ruleEssentialOCLUnaryOperatorName EOF ; |
| public final String entryRuleEssentialOCLUnaryOperatorName() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_ruleEssentialOCLUnaryOperatorName = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:5001:2: (iv_ruleEssentialOCLUnaryOperatorName= ruleEssentialOCLUnaryOperatorName EOF ) |
| // InternalOCLinEcore.g:5002:2: iv_ruleEssentialOCLUnaryOperatorName= ruleEssentialOCLUnaryOperatorName EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleEssentialOCLUnaryOperatorName=ruleEssentialOCLUnaryOperatorName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleEssentialOCLUnaryOperatorName.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleEssentialOCLUnaryOperatorName" |
| |
| |
| // $ANTLR start "ruleEssentialOCLUnaryOperatorName" |
| // InternalOCLinEcore.g:5009:1: ruleEssentialOCLUnaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (kw= '-' | kw= 'not' ) ; |
| public final AntlrDatatypeRuleToken ruleEssentialOCLUnaryOperatorName() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| Token kw=null; |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:5012:28: ( (kw= '-' | kw= 'not' ) ) |
| // InternalOCLinEcore.g:5013:1: (kw= '-' | kw= 'not' ) |
| { |
| // InternalOCLinEcore.g:5013:1: (kw= '-' | kw= 'not' ) |
| int alt137=2; |
| int LA137_0 = input.LA(1); |
| |
| if ( (LA137_0==18) ) { |
| alt137=1; |
| } |
| else if ( (LA137_0==83) ) { |
| alt137=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 137, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt137) { |
| case 1 : |
| // InternalOCLinEcore.g:5014:2: kw= '-' |
| { |
| kw=(Token)match(input,18,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:5021:2: kw= 'not' |
| { |
| kw=(Token)match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleEssentialOCLUnaryOperatorName" |
| |
| |
| // $ANTLR start "entryRuleEssentialOCLInfixOperatorName" |
| // InternalOCLinEcore.g:5034:1: entryRuleEssentialOCLInfixOperatorName returns [String current=null] : iv_ruleEssentialOCLInfixOperatorName= ruleEssentialOCLInfixOperatorName EOF ; |
| public final String entryRuleEssentialOCLInfixOperatorName() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_ruleEssentialOCLInfixOperatorName = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:5035:2: (iv_ruleEssentialOCLInfixOperatorName= ruleEssentialOCLInfixOperatorName EOF ) |
| // InternalOCLinEcore.g:5036:2: iv_ruleEssentialOCLInfixOperatorName= ruleEssentialOCLInfixOperatorName EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getEssentialOCLInfixOperatorNameRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleEssentialOCLInfixOperatorName=ruleEssentialOCLInfixOperatorName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleEssentialOCLInfixOperatorName.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleEssentialOCLInfixOperatorName" |
| |
| |
| // $ANTLR start "ruleEssentialOCLInfixOperatorName" |
| // InternalOCLinEcore.g:5043:1: ruleEssentialOCLInfixOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (kw= '*' | kw= '/' | kw= '+' | kw= '-' | kw= '>' | kw= '<' | kw= '>=' | kw= '<=' | kw= '=' | kw= '<>' | kw= 'and' | kw= 'or' | kw= 'xor' | kw= 'implies' ) ; |
| public final AntlrDatatypeRuleToken ruleEssentialOCLInfixOperatorName() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| Token kw=null; |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:5046:28: ( (kw= '*' | kw= '/' | kw= '+' | kw= '-' | kw= '>' | kw= '<' | kw= '>=' | kw= '<=' | kw= '=' | kw= '<>' | kw= 'and' | kw= 'or' | kw= 'xor' | kw= 'implies' ) ) |
| // InternalOCLinEcore.g:5047:1: (kw= '*' | kw= '/' | kw= '+' | kw= '-' | kw= '>' | kw= '<' | kw= '>=' | kw= '<=' | kw= '=' | kw= '<>' | kw= 'and' | kw= 'or' | kw= 'xor' | kw= 'implies' ) |
| { |
| // InternalOCLinEcore.g:5047:1: (kw= '*' | kw= '/' | kw= '+' | kw= '-' | kw= '>' | kw= '<' | kw= '>=' | kw= '<=' | kw= '=' | kw= '<>' | kw= 'and' | kw= 'or' | kw= 'xor' | kw= 'implies' ) |
| int alt138=14; |
| switch ( input.LA(1) ) { |
| case 84: |
| { |
| alt138=1; |
| } |
| break; |
| case 85: |
| { |
| alt138=2; |
| } |
| break; |
| case 86: |
| { |
| alt138=3; |
| } |
| break; |
| case 18: |
| { |
| alt138=4; |
| } |
| break; |
| case 82: |
| { |
| alt138=5; |
| } |
| break; |
| case 81: |
| { |
| alt138=6; |
| } |
| break; |
| case 87: |
| { |
| alt138=7; |
| } |
| break; |
| case 88: |
| { |
| alt138=8; |
| } |
| break; |
| case 62: |
| { |
| alt138=9; |
| } |
| break; |
| case 89: |
| { |
| alt138=10; |
| } |
| break; |
| case 90: |
| { |
| alt138=11; |
| } |
| break; |
| case 91: |
| { |
| alt138=12; |
| } |
| break; |
| case 92: |
| { |
| alt138=13; |
| } |
| break; |
| case 93: |
| { |
| alt138=14; |
| } |
| break; |
| default: |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 138, 0, input); |
| |
| throw nvae; |
| } |
| |
| switch (alt138) { |
| case 1 : |
| // InternalOCLinEcore.g:5048:2: kw= '*' |
| { |
| kw=(Token)match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:5055:2: kw= '/' |
| { |
| kw=(Token)match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); |
| |
| } |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:5062:2: kw= '+' |
| { |
| kw=(Token)match(input,86,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); |
| |
| } |
| |
| } |
| break; |
| case 4 : |
| // InternalOCLinEcore.g:5069:2: kw= '-' |
| { |
| kw=(Token)match(input,18,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); |
| |
| } |
| |
| } |
| break; |
| case 5 : |
| // InternalOCLinEcore.g:5076:2: kw= '>' |
| { |
| kw=(Token)match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); |
| |
| } |
| |
| } |
| break; |
| case 6 : |
| // InternalOCLinEcore.g:5083:2: kw= '<' |
| { |
| kw=(Token)match(input,81,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); |
| |
| } |
| |
| } |
| break; |
| case 7 : |
| // InternalOCLinEcore.g:5090:2: kw= '>=' |
| { |
| kw=(Token)match(input,87,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); |
| |
| } |
| |
| } |
| break; |
| case 8 : |
| // InternalOCLinEcore.g:5097:2: kw= '<=' |
| { |
| kw=(Token)match(input,88,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); |
| |
| } |
| |
| } |
| break; |
| case 9 : |
| // InternalOCLinEcore.g:5104:2: kw= '=' |
| { |
| kw=(Token)match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); |
| |
| } |
| |
| } |
| break; |
| case 10 : |
| // InternalOCLinEcore.g:5111:2: kw= '<>' |
| { |
| kw=(Token)match(input,89,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); |
| |
| } |
| |
| } |
| break; |
| case 11 : |
| // InternalOCLinEcore.g:5118:2: kw= 'and' |
| { |
| kw=(Token)match(input,90,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); |
| |
| } |
| |
| } |
| break; |
| case 12 : |
| // InternalOCLinEcore.g:5125:2: kw= 'or' |
| { |
| kw=(Token)match(input,91,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); |
| |
| } |
| |
| } |
| break; |
| case 13 : |
| // InternalOCLinEcore.g:5132:2: kw= 'xor' |
| { |
| kw=(Token)match(input,92,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); |
| |
| } |
| |
| } |
| break; |
| case 14 : |
| // InternalOCLinEcore.g:5139:2: kw= 'implies' |
| { |
| kw=(Token)match(input,93,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleEssentialOCLInfixOperatorName" |
| |
| |
| // $ANTLR start "entryRuleEssentialOCLNavigationOperatorName" |
| // InternalOCLinEcore.g:5152:1: entryRuleEssentialOCLNavigationOperatorName returns [String current=null] : iv_ruleEssentialOCLNavigationOperatorName= ruleEssentialOCLNavigationOperatorName EOF ; |
| public final String entryRuleEssentialOCLNavigationOperatorName() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_ruleEssentialOCLNavigationOperatorName = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:5153:2: (iv_ruleEssentialOCLNavigationOperatorName= ruleEssentialOCLNavigationOperatorName EOF ) |
| // InternalOCLinEcore.g:5154:2: iv_ruleEssentialOCLNavigationOperatorName= ruleEssentialOCLNavigationOperatorName EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleEssentialOCLNavigationOperatorName=ruleEssentialOCLNavigationOperatorName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleEssentialOCLNavigationOperatorName.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleEssentialOCLNavigationOperatorName" |
| |
| |
| // $ANTLR start "ruleEssentialOCLNavigationOperatorName" |
| // InternalOCLinEcore.g:5161:1: ruleEssentialOCLNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (kw= '.' | kw= '->' | kw= '?.' | kw= '?->' ) ; |
| public final AntlrDatatypeRuleToken ruleEssentialOCLNavigationOperatorName() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| Token kw=null; |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:5164:28: ( (kw= '.' | kw= '->' | kw= '?.' | kw= '?->' ) ) |
| // InternalOCLinEcore.g:5165:1: (kw= '.' | kw= '->' | kw= '?.' | kw= '?->' ) |
| { |
| // InternalOCLinEcore.g:5165:1: (kw= '.' | kw= '->' | kw= '?.' | kw= '?->' ) |
| int alt139=4; |
| switch ( input.LA(1) ) { |
| case 94: |
| { |
| alt139=1; |
| } |
| break; |
| case 95: |
| { |
| alt139=2; |
| } |
| break; |
| case 96: |
| { |
| alt139=3; |
| } |
| break; |
| case 97: |
| { |
| alt139=4; |
| } |
| break; |
| default: |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 139, 0, input); |
| |
| throw nvae; |
| } |
| |
| switch (alt139) { |
| case 1 : |
| // InternalOCLinEcore.g:5166:2: kw= '.' |
| { |
| kw=(Token)match(input,94,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:5173:2: kw= '->' |
| { |
| kw=(Token)match(input,95,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); |
| |
| } |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:5180:2: kw= '?.' |
| { |
| kw=(Token)match(input,96,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); |
| |
| } |
| |
| } |
| break; |
| case 4 : |
| // InternalOCLinEcore.g:5187:2: kw= '?->' |
| { |
| kw=(Token)match(input,97,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleEssentialOCLNavigationOperatorName" |
| |
| |
| // $ANTLR start "entryRuleBinaryOperatorName" |
| // InternalOCLinEcore.g:5200:1: entryRuleBinaryOperatorName returns [String current=null] : iv_ruleBinaryOperatorName= ruleBinaryOperatorName EOF ; |
| public final String entryRuleBinaryOperatorName() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_ruleBinaryOperatorName = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:5201:2: (iv_ruleBinaryOperatorName= ruleBinaryOperatorName EOF ) |
| // InternalOCLinEcore.g:5202:2: iv_ruleBinaryOperatorName= ruleBinaryOperatorName EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getBinaryOperatorNameRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleBinaryOperatorName=ruleBinaryOperatorName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleBinaryOperatorName.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleBinaryOperatorName" |
| |
| |
| // $ANTLR start "ruleBinaryOperatorName" |
| // InternalOCLinEcore.g:5209:1: ruleBinaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_InfixOperatorName_0= ruleInfixOperatorName | this_NavigationOperatorName_1= ruleNavigationOperatorName ) ; |
| public final AntlrDatatypeRuleToken ruleBinaryOperatorName() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| AntlrDatatypeRuleToken this_InfixOperatorName_0 = null; |
| |
| AntlrDatatypeRuleToken this_NavigationOperatorName_1 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:5212:28: ( (this_InfixOperatorName_0= ruleInfixOperatorName | this_NavigationOperatorName_1= ruleNavigationOperatorName ) ) |
| // InternalOCLinEcore.g:5213:1: (this_InfixOperatorName_0= ruleInfixOperatorName | this_NavigationOperatorName_1= ruleNavigationOperatorName ) |
| { |
| // InternalOCLinEcore.g:5213:1: (this_InfixOperatorName_0= ruleInfixOperatorName | this_NavigationOperatorName_1= ruleNavigationOperatorName ) |
| int alt140=2; |
| int LA140_0 = input.LA(1); |
| |
| if ( (LA140_0==18||LA140_0==62||(LA140_0>=81 && LA140_0<=82)||(LA140_0>=84 && LA140_0<=93)) ) { |
| alt140=1; |
| } |
| else if ( ((LA140_0>=94 && LA140_0<=97)) ) { |
| alt140=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 140, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt140) { |
| case 1 : |
| // InternalOCLinEcore.g:5214:5: this_InfixOperatorName_0= ruleInfixOperatorName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_InfixOperatorName_0=ruleInfixOperatorName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(this_InfixOperatorName_0); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:5226:5: this_NavigationOperatorName_1= ruleNavigationOperatorName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_NavigationOperatorName_1=ruleNavigationOperatorName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(this_NavigationOperatorName_1); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleBinaryOperatorName" |
| |
| |
| // $ANTLR start "entryRuleInfixOperatorName" |
| // InternalOCLinEcore.g:5244:1: entryRuleInfixOperatorName returns [String current=null] : iv_ruleInfixOperatorName= ruleInfixOperatorName EOF ; |
| public final String entryRuleInfixOperatorName() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_ruleInfixOperatorName = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:5245:2: (iv_ruleInfixOperatorName= ruleInfixOperatorName EOF ) |
| // InternalOCLinEcore.g:5246:2: iv_ruleInfixOperatorName= ruleInfixOperatorName EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getInfixOperatorNameRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleInfixOperatorName=ruleInfixOperatorName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleInfixOperatorName.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleInfixOperatorName" |
| |
| |
| // $ANTLR start "ruleInfixOperatorName" |
| // InternalOCLinEcore.g:5253:1: ruleInfixOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_EssentialOCLInfixOperatorName_0= ruleEssentialOCLInfixOperatorName ; |
| public final AntlrDatatypeRuleToken ruleInfixOperatorName() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| AntlrDatatypeRuleToken this_EssentialOCLInfixOperatorName_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:5256:28: (this_EssentialOCLInfixOperatorName_0= ruleEssentialOCLInfixOperatorName ) |
| // InternalOCLinEcore.g:5258:5: this_EssentialOCLInfixOperatorName_0= ruleEssentialOCLInfixOperatorName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_EssentialOCLInfixOperatorName_0=ruleEssentialOCLInfixOperatorName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(this_EssentialOCLInfixOperatorName_0); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleInfixOperatorName" |
| |
| |
| // $ANTLR start "entryRuleNavigationOperatorName" |
| // InternalOCLinEcore.g:5276:1: entryRuleNavigationOperatorName returns [String current=null] : iv_ruleNavigationOperatorName= ruleNavigationOperatorName EOF ; |
| public final String entryRuleNavigationOperatorName() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_ruleNavigationOperatorName = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:5277:2: (iv_ruleNavigationOperatorName= ruleNavigationOperatorName EOF ) |
| // InternalOCLinEcore.g:5278:2: iv_ruleNavigationOperatorName= ruleNavigationOperatorName EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getNavigationOperatorNameRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleNavigationOperatorName=ruleNavigationOperatorName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleNavigationOperatorName.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleNavigationOperatorName" |
| |
| |
| // $ANTLR start "ruleNavigationOperatorName" |
| // InternalOCLinEcore.g:5285:1: ruleNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_EssentialOCLNavigationOperatorName_0= ruleEssentialOCLNavigationOperatorName ; |
| public final AntlrDatatypeRuleToken ruleNavigationOperatorName() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| AntlrDatatypeRuleToken this_EssentialOCLNavigationOperatorName_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:5288:28: (this_EssentialOCLNavigationOperatorName_0= ruleEssentialOCLNavigationOperatorName ) |
| // InternalOCLinEcore.g:5290:5: this_EssentialOCLNavigationOperatorName_0= ruleEssentialOCLNavigationOperatorName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_EssentialOCLNavigationOperatorName_0=ruleEssentialOCLNavigationOperatorName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(this_EssentialOCLNavigationOperatorName_0); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleNavigationOperatorName" |
| |
| |
| // $ANTLR start "entryRuleUnaryOperatorName" |
| // InternalOCLinEcore.g:5308:1: entryRuleUnaryOperatorName returns [String current=null] : iv_ruleUnaryOperatorName= ruleUnaryOperatorName EOF ; |
| public final String entryRuleUnaryOperatorName() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_ruleUnaryOperatorName = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:5309:2: (iv_ruleUnaryOperatorName= ruleUnaryOperatorName EOF ) |
| // InternalOCLinEcore.g:5310:2: iv_ruleUnaryOperatorName= ruleUnaryOperatorName EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getUnaryOperatorNameRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleUnaryOperatorName=ruleUnaryOperatorName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleUnaryOperatorName.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleUnaryOperatorName" |
| |
| |
| // $ANTLR start "ruleUnaryOperatorName" |
| // InternalOCLinEcore.g:5317:1: ruleUnaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_EssentialOCLUnaryOperatorName_0= ruleEssentialOCLUnaryOperatorName ; |
| public final AntlrDatatypeRuleToken ruleUnaryOperatorName() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| AntlrDatatypeRuleToken this_EssentialOCLUnaryOperatorName_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:5320:28: (this_EssentialOCLUnaryOperatorName_0= ruleEssentialOCLUnaryOperatorName ) |
| // InternalOCLinEcore.g:5322:5: this_EssentialOCLUnaryOperatorName_0= ruleEssentialOCLUnaryOperatorName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_EssentialOCLUnaryOperatorName_0=ruleEssentialOCLUnaryOperatorName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(this_EssentialOCLUnaryOperatorName_0); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleUnaryOperatorName" |
| |
| |
| // $ANTLR start "entryRuleEssentialOCLUnrestrictedName" |
| // InternalOCLinEcore.g:5340:1: entryRuleEssentialOCLUnrestrictedName returns [String current=null] : iv_ruleEssentialOCLUnrestrictedName= ruleEssentialOCLUnrestrictedName EOF ; |
| public final String entryRuleEssentialOCLUnrestrictedName() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_ruleEssentialOCLUnrestrictedName = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:5341:2: (iv_ruleEssentialOCLUnrestrictedName= ruleEssentialOCLUnrestrictedName EOF ) |
| // InternalOCLinEcore.g:5342:2: iv_ruleEssentialOCLUnrestrictedName= ruleEssentialOCLUnrestrictedName EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleEssentialOCLUnrestrictedName=ruleEssentialOCLUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleEssentialOCLUnrestrictedName.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleEssentialOCLUnrestrictedName" |
| |
| |
| // $ANTLR start "ruleEssentialOCLUnrestrictedName" |
| // InternalOCLinEcore.g:5349:1: ruleEssentialOCLUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_Identifier_0= ruleIdentifier ; |
| public final AntlrDatatypeRuleToken ruleEssentialOCLUnrestrictedName() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| AntlrDatatypeRuleToken this_Identifier_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:5352:28: (this_Identifier_0= ruleIdentifier ) |
| // InternalOCLinEcore.g:5354:5: this_Identifier_0= ruleIdentifier |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_Identifier_0=ruleIdentifier(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(this_Identifier_0); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleEssentialOCLUnrestrictedName" |
| |
| |
| // $ANTLR start "entryRuleEssentialOCLUnreservedName" |
| // InternalOCLinEcore.g:5372:1: entryRuleEssentialOCLUnreservedName returns [String current=null] : iv_ruleEssentialOCLUnreservedName= ruleEssentialOCLUnreservedName EOF ; |
| public final String entryRuleEssentialOCLUnreservedName() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_ruleEssentialOCLUnreservedName = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:5373:2: (iv_ruleEssentialOCLUnreservedName= ruleEssentialOCLUnreservedName EOF ) |
| // InternalOCLinEcore.g:5374:2: iv_ruleEssentialOCLUnreservedName= ruleEssentialOCLUnreservedName EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleEssentialOCLUnreservedName=ruleEssentialOCLUnreservedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleEssentialOCLUnreservedName.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleEssentialOCLUnreservedName" |
| |
| |
| // $ANTLR start "ruleEssentialOCLUnreservedName" |
| // InternalOCLinEcore.g:5381:1: ruleEssentialOCLUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_UnrestrictedName_0= ruleUnrestrictedName | this_CollectionTypeIdentifier_1= ruleCollectionTypeIdentifier | this_PrimitiveTypeIdentifier_2= rulePrimitiveTypeIdentifier | kw= 'Map' | kw= 'Tuple' ) ; |
| public final AntlrDatatypeRuleToken ruleEssentialOCLUnreservedName() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| Token kw=null; |
| AntlrDatatypeRuleToken this_UnrestrictedName_0 = null; |
| |
| AntlrDatatypeRuleToken this_CollectionTypeIdentifier_1 = null; |
| |
| AntlrDatatypeRuleToken this_PrimitiveTypeIdentifier_2 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:5384:28: ( (this_UnrestrictedName_0= ruleUnrestrictedName | this_CollectionTypeIdentifier_1= ruleCollectionTypeIdentifier | this_PrimitiveTypeIdentifier_2= rulePrimitiveTypeIdentifier | kw= 'Map' | kw= 'Tuple' ) ) |
| // InternalOCLinEcore.g:5385:1: (this_UnrestrictedName_0= ruleUnrestrictedName | this_CollectionTypeIdentifier_1= ruleCollectionTypeIdentifier | this_PrimitiveTypeIdentifier_2= rulePrimitiveTypeIdentifier | kw= 'Map' | kw= 'Tuple' ) |
| { |
| // InternalOCLinEcore.g:5385:1: (this_UnrestrictedName_0= ruleUnrestrictedName | this_CollectionTypeIdentifier_1= ruleCollectionTypeIdentifier | this_PrimitiveTypeIdentifier_2= rulePrimitiveTypeIdentifier | kw= 'Map' | kw= 'Tuple' ) |
| int alt141=5; |
| switch ( input.LA(1) ) { |
| case RULE_SIMPLE_ID: |
| case RULE_ESCAPED_ID: |
| case 17: |
| case 19: |
| case 20: |
| case 21: |
| case 22: |
| case 23: |
| case 24: |
| case 25: |
| case 26: |
| case 27: |
| case 28: |
| case 29: |
| case 30: |
| case 31: |
| case 32: |
| case 33: |
| case 34: |
| case 35: |
| case 36: |
| case 37: |
| case 38: |
| case 39: |
| case 40: |
| case 41: |
| case 42: |
| case 43: |
| case 44: |
| case 45: |
| case 46: |
| case 47: |
| case 48: |
| case 49: |
| case 50: |
| case 51: |
| case 52: |
| case 53: |
| case 58: |
| case 71: |
| case 73: |
| case 74: |
| case 76: |
| case 80: |
| { |
| alt141=1; |
| } |
| break; |
| case 109: |
| case 110: |
| case 111: |
| case 112: |
| case 113: |
| { |
| alt141=2; |
| } |
| break; |
| case 101: |
| case 102: |
| case 103: |
| case 104: |
| case 105: |
| case 106: |
| case 107: |
| case 108: |
| { |
| alt141=3; |
| } |
| break; |
| case 98: |
| { |
| alt141=4; |
| } |
| break; |
| case 99: |
| { |
| alt141=5; |
| } |
| break; |
| default: |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 141, 0, input); |
| |
| throw nvae; |
| } |
| |
| switch (alt141) { |
| case 1 : |
| // InternalOCLinEcore.g:5386:5: this_UnrestrictedName_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_UnrestrictedName_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(this_UnrestrictedName_0); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:5398:5: this_CollectionTypeIdentifier_1= ruleCollectionTypeIdentifier |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_CollectionTypeIdentifier_1=ruleCollectionTypeIdentifier(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(this_CollectionTypeIdentifier_1); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:5410:5: this_PrimitiveTypeIdentifier_2= rulePrimitiveTypeIdentifier |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_PrimitiveTypeIdentifier_2=rulePrimitiveTypeIdentifier(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(this_PrimitiveTypeIdentifier_2); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 4 : |
| // InternalOCLinEcore.g:5422:2: kw= 'Map' |
| { |
| kw=(Token)match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); |
| |
| } |
| |
| } |
| break; |
| case 5 : |
| // InternalOCLinEcore.g:5429:2: kw= 'Tuple' |
| { |
| kw=(Token)match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleEssentialOCLUnreservedName" |
| |
| |
| // $ANTLR start "entryRuleUnreservedName" |
| // InternalOCLinEcore.g:5442:1: entryRuleUnreservedName returns [String current=null] : iv_ruleUnreservedName= ruleUnreservedName EOF ; |
| public final String entryRuleUnreservedName() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_ruleUnreservedName = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:5443:2: (iv_ruleUnreservedName= ruleUnreservedName EOF ) |
| // InternalOCLinEcore.g:5444:2: iv_ruleUnreservedName= ruleUnreservedName EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getUnreservedNameRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleUnreservedName=ruleUnreservedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleUnreservedName.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleUnreservedName" |
| |
| |
| // $ANTLR start "ruleUnreservedName" |
| // InternalOCLinEcore.g:5451:1: ruleUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_EssentialOCLUnreservedName_0= ruleEssentialOCLUnreservedName ; |
| public final AntlrDatatypeRuleToken ruleUnreservedName() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| AntlrDatatypeRuleToken this_EssentialOCLUnreservedName_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:5454:28: (this_EssentialOCLUnreservedName_0= ruleEssentialOCLUnreservedName ) |
| // InternalOCLinEcore.g:5456:5: this_EssentialOCLUnreservedName_0= ruleEssentialOCLUnreservedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_EssentialOCLUnreservedName_0=ruleEssentialOCLUnreservedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(this_EssentialOCLUnreservedName_0); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleUnreservedName" |
| |
| |
| // $ANTLR start "entryRuleURIPathNameCS" |
| // InternalOCLinEcore.g:5474:1: entryRuleURIPathNameCS returns [EObject current=null] : iv_ruleURIPathNameCS= ruleURIPathNameCS EOF ; |
| public final EObject entryRuleURIPathNameCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleURIPathNameCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:5475:2: (iv_ruleURIPathNameCS= ruleURIPathNameCS EOF ) |
| // InternalOCLinEcore.g:5476:2: iv_ruleURIPathNameCS= ruleURIPathNameCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getURIPathNameCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleURIPathNameCS=ruleURIPathNameCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleURIPathNameCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleURIPathNameCS" |
| |
| |
| // $ANTLR start "ruleURIPathNameCS" |
| // InternalOCLinEcore.g:5483:1: ruleURIPathNameCS returns [EObject current=null] : ( ( (lv_ownedPathElements_0_0= ruleURIFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) ; |
| public final EObject ruleURIPathNameCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| EObject lv_ownedPathElements_0_0 = null; |
| |
| EObject lv_ownedPathElements_2_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:5486:28: ( ( ( (lv_ownedPathElements_0_0= ruleURIFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) ) |
| // InternalOCLinEcore.g:5487:1: ( ( (lv_ownedPathElements_0_0= ruleURIFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) |
| { |
| // InternalOCLinEcore.g:5487:1: ( ( (lv_ownedPathElements_0_0= ruleURIFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) |
| // InternalOCLinEcore.g:5487:2: ( (lv_ownedPathElements_0_0= ruleURIFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* |
| { |
| // InternalOCLinEcore.g:5487:2: ( (lv_ownedPathElements_0_0= ruleURIFirstPathElementCS ) ) |
| // InternalOCLinEcore.g:5488:1: (lv_ownedPathElements_0_0= ruleURIFirstPathElementCS ) |
| { |
| // InternalOCLinEcore.g:5488:1: (lv_ownedPathElements_0_0= ruleURIFirstPathElementCS ) |
| // InternalOCLinEcore.g:5489:3: lv_ownedPathElements_0_0= ruleURIFirstPathElementCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_90); |
| lv_ownedPathElements_0_0=ruleURIFirstPathElementCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getURIPathNameCSRule()); |
| } |
| add( |
| current, |
| "ownedPathElements", |
| lv_ownedPathElements_0_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.URIFirstPathElementCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:5505:2: (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* |
| loop142: |
| do { |
| int alt142=2; |
| int LA142_0 = input.LA(1); |
| |
| if ( (LA142_0==100) ) { |
| alt142=1; |
| } |
| |
| |
| switch (alt142) { |
| case 1 : |
| // InternalOCLinEcore.g:5505:4: otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) |
| { |
| otherlv_1=(Token)match(input,100,FollowSets000.FOLLOW_91); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:5509:1: ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) |
| // InternalOCLinEcore.g:5510:1: (lv_ownedPathElements_2_0= ruleNextPathElementCS ) |
| { |
| // InternalOCLinEcore.g:5510:1: (lv_ownedPathElements_2_0= ruleNextPathElementCS ) |
| // InternalOCLinEcore.g:5511:3: lv_ownedPathElements_2_0= ruleNextPathElementCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_90); |
| lv_ownedPathElements_2_0=ruleNextPathElementCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getURIPathNameCSRule()); |
| } |
| add( |
| current, |
| "ownedPathElements", |
| lv_ownedPathElements_2_0, |
| "org.eclipse.ocl.xtext.base.Base.NextPathElementCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop142; |
| } |
| } while (true); |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleURIPathNameCS" |
| |
| |
| // $ANTLR start "entryRuleURIFirstPathElementCS" |
| // InternalOCLinEcore.g:5535:1: entryRuleURIFirstPathElementCS returns [EObject current=null] : iv_ruleURIFirstPathElementCS= ruleURIFirstPathElementCS EOF ; |
| public final EObject entryRuleURIFirstPathElementCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleURIFirstPathElementCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:5536:2: (iv_ruleURIFirstPathElementCS= ruleURIFirstPathElementCS EOF ) |
| // InternalOCLinEcore.g:5537:2: iv_ruleURIFirstPathElementCS= ruleURIFirstPathElementCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getURIFirstPathElementCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleURIFirstPathElementCS=ruleURIFirstPathElementCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleURIFirstPathElementCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleURIFirstPathElementCS" |
| |
| |
| // $ANTLR start "ruleURIFirstPathElementCS" |
| // InternalOCLinEcore.g:5544:1: ruleURIFirstPathElementCS returns [EObject current=null] : ( ( ( ruleUnrestrictedName ) ) | ( () ( ( ruleURI ) ) ) ) ; |
| public final EObject ruleURIFirstPathElementCS() throws RecognitionException { |
| EObject current = null; |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:5547:28: ( ( ( ( ruleUnrestrictedName ) ) | ( () ( ( ruleURI ) ) ) ) ) |
| // InternalOCLinEcore.g:5548:1: ( ( ( ruleUnrestrictedName ) ) | ( () ( ( ruleURI ) ) ) ) |
| { |
| // InternalOCLinEcore.g:5548:1: ( ( ( ruleUnrestrictedName ) ) | ( () ( ( ruleURI ) ) ) ) |
| int alt143=2; |
| int LA143_0 = input.LA(1); |
| |
| if ( ((LA143_0>=RULE_SIMPLE_ID && LA143_0<=RULE_ESCAPED_ID)||LA143_0==17||(LA143_0>=19 && LA143_0<=53)||LA143_0==58||LA143_0==71||(LA143_0>=73 && LA143_0<=74)||LA143_0==76||LA143_0==80) ) { |
| alt143=1; |
| } |
| else if ( (LA143_0==RULE_SINGLE_QUOTED_STRING) ) { |
| alt143=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 143, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt143) { |
| case 1 : |
| // InternalOCLinEcore.g:5548:2: ( ( ruleUnrestrictedName ) ) |
| { |
| // InternalOCLinEcore.g:5548:2: ( ( ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:5549:1: ( ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:5549:1: ( ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:5550:3: ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getURIFirstPathElementCSRule()); |
| } |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:5567:6: ( () ( ( ruleURI ) ) ) |
| { |
| // InternalOCLinEcore.g:5567:6: ( () ( ( ruleURI ) ) ) |
| // InternalOCLinEcore.g:5567:7: () ( ( ruleURI ) ) |
| { |
| // InternalOCLinEcore.g:5567:7: () |
| // InternalOCLinEcore.g:5568:2: |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| current = forceCreateModelElement( |
| grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0(), |
| current); |
| |
| } |
| |
| } |
| |
| // InternalOCLinEcore.g:5576:2: ( ( ruleURI ) ) |
| // InternalOCLinEcore.g:5577:1: ( ruleURI ) |
| { |
| // InternalOCLinEcore.g:5577:1: ( ruleURI ) |
| // InternalOCLinEcore.g:5578:3: ruleURI |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getURIFirstPathElementCSRule()); |
| } |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| ruleURI(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleURIFirstPathElementCS" |
| |
| |
| // $ANTLR start "entryRulePrimitiveTypeIdentifier" |
| // InternalOCLinEcore.g:5604:1: entryRulePrimitiveTypeIdentifier returns [String current=null] : iv_rulePrimitiveTypeIdentifier= rulePrimitiveTypeIdentifier EOF ; |
| public final String entryRulePrimitiveTypeIdentifier() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_rulePrimitiveTypeIdentifier = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:5605:2: (iv_rulePrimitiveTypeIdentifier= rulePrimitiveTypeIdentifier EOF ) |
| // InternalOCLinEcore.g:5606:2: iv_rulePrimitiveTypeIdentifier= rulePrimitiveTypeIdentifier EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getPrimitiveTypeIdentifierRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_rulePrimitiveTypeIdentifier=rulePrimitiveTypeIdentifier(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_rulePrimitiveTypeIdentifier.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRulePrimitiveTypeIdentifier" |
| |
| |
| // $ANTLR start "rulePrimitiveTypeIdentifier" |
| // InternalOCLinEcore.g:5613:1: rulePrimitiveTypeIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (kw= 'Boolean' | kw= 'Integer' | kw= 'Real' | kw= 'String' | kw= 'UnlimitedNatural' | kw= 'OclAny' | kw= 'OclInvalid' | kw= 'OclVoid' ) ; |
| public final AntlrDatatypeRuleToken rulePrimitiveTypeIdentifier() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| Token kw=null; |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:5616:28: ( (kw= 'Boolean' | kw= 'Integer' | kw= 'Real' | kw= 'String' | kw= 'UnlimitedNatural' | kw= 'OclAny' | kw= 'OclInvalid' | kw= 'OclVoid' ) ) |
| // InternalOCLinEcore.g:5617:1: (kw= 'Boolean' | kw= 'Integer' | kw= 'Real' | kw= 'String' | kw= 'UnlimitedNatural' | kw= 'OclAny' | kw= 'OclInvalid' | kw= 'OclVoid' ) |
| { |
| // InternalOCLinEcore.g:5617:1: (kw= 'Boolean' | kw= 'Integer' | kw= 'Real' | kw= 'String' | kw= 'UnlimitedNatural' | kw= 'OclAny' | kw= 'OclInvalid' | kw= 'OclVoid' ) |
| int alt144=8; |
| switch ( input.LA(1) ) { |
| case 101: |
| { |
| alt144=1; |
| } |
| break; |
| case 102: |
| { |
| alt144=2; |
| } |
| break; |
| case 103: |
| { |
| alt144=3; |
| } |
| break; |
| case 104: |
| { |
| alt144=4; |
| } |
| break; |
| case 105: |
| { |
| alt144=5; |
| } |
| break; |
| case 106: |
| { |
| alt144=6; |
| } |
| break; |
| case 107: |
| { |
| alt144=7; |
| } |
| break; |
| case 108: |
| { |
| alt144=8; |
| } |
| break; |
| default: |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 144, 0, input); |
| |
| throw nvae; |
| } |
| |
| switch (alt144) { |
| case 1 : |
| // InternalOCLinEcore.g:5618:2: kw= 'Boolean' |
| { |
| kw=(Token)match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:5625:2: kw= 'Integer' |
| { |
| kw=(Token)match(input,102,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); |
| |
| } |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:5632:2: kw= 'Real' |
| { |
| kw=(Token)match(input,103,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); |
| |
| } |
| |
| } |
| break; |
| case 4 : |
| // InternalOCLinEcore.g:5639:2: kw= 'String' |
| { |
| kw=(Token)match(input,104,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); |
| |
| } |
| |
| } |
| break; |
| case 5 : |
| // InternalOCLinEcore.g:5646:2: kw= 'UnlimitedNatural' |
| { |
| kw=(Token)match(input,105,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); |
| |
| } |
| |
| } |
| break; |
| case 6 : |
| // InternalOCLinEcore.g:5653:2: kw= 'OclAny' |
| { |
| kw=(Token)match(input,106,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); |
| |
| } |
| |
| } |
| break; |
| case 7 : |
| // InternalOCLinEcore.g:5660:2: kw= 'OclInvalid' |
| { |
| kw=(Token)match(input,107,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); |
| |
| } |
| |
| } |
| break; |
| case 8 : |
| // InternalOCLinEcore.g:5667:2: kw= 'OclVoid' |
| { |
| kw=(Token)match(input,108,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "rulePrimitiveTypeIdentifier" |
| |
| |
| // $ANTLR start "entryRulePrimitiveTypeCS" |
| // InternalOCLinEcore.g:5680:1: entryRulePrimitiveTypeCS returns [EObject current=null] : iv_rulePrimitiveTypeCS= rulePrimitiveTypeCS EOF ; |
| public final EObject entryRulePrimitiveTypeCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_rulePrimitiveTypeCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:5681:2: (iv_rulePrimitiveTypeCS= rulePrimitiveTypeCS EOF ) |
| // InternalOCLinEcore.g:5682:2: iv_rulePrimitiveTypeCS= rulePrimitiveTypeCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getPrimitiveTypeCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_rulePrimitiveTypeCS=rulePrimitiveTypeCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_rulePrimitiveTypeCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRulePrimitiveTypeCS" |
| |
| |
| // $ANTLR start "rulePrimitiveTypeCS" |
| // InternalOCLinEcore.g:5689:1: rulePrimitiveTypeCS returns [EObject current=null] : ( (lv_name_0_0= rulePrimitiveTypeIdentifier ) ) ; |
| public final EObject rulePrimitiveTypeCS() throws RecognitionException { |
| EObject current = null; |
| |
| AntlrDatatypeRuleToken lv_name_0_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:5692:28: ( ( (lv_name_0_0= rulePrimitiveTypeIdentifier ) ) ) |
| // InternalOCLinEcore.g:5693:1: ( (lv_name_0_0= rulePrimitiveTypeIdentifier ) ) |
| { |
| // InternalOCLinEcore.g:5693:1: ( (lv_name_0_0= rulePrimitiveTypeIdentifier ) ) |
| // InternalOCLinEcore.g:5694:1: (lv_name_0_0= rulePrimitiveTypeIdentifier ) |
| { |
| // InternalOCLinEcore.g:5694:1: (lv_name_0_0= rulePrimitiveTypeIdentifier ) |
| // InternalOCLinEcore.g:5695:3: lv_name_0_0= rulePrimitiveTypeIdentifier |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_name_0_0=rulePrimitiveTypeIdentifier(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getPrimitiveTypeCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_0_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrimitiveTypeIdentifier"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "rulePrimitiveTypeCS" |
| |
| |
| // $ANTLR start "entryRuleCollectionTypeIdentifier" |
| // InternalOCLinEcore.g:5719:1: entryRuleCollectionTypeIdentifier returns [String current=null] : iv_ruleCollectionTypeIdentifier= ruleCollectionTypeIdentifier EOF ; |
| public final String entryRuleCollectionTypeIdentifier() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_ruleCollectionTypeIdentifier = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:5720:2: (iv_ruleCollectionTypeIdentifier= ruleCollectionTypeIdentifier EOF ) |
| // InternalOCLinEcore.g:5721:2: iv_ruleCollectionTypeIdentifier= ruleCollectionTypeIdentifier EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getCollectionTypeIdentifierRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleCollectionTypeIdentifier=ruleCollectionTypeIdentifier(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleCollectionTypeIdentifier.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleCollectionTypeIdentifier" |
| |
| |
| // $ANTLR start "ruleCollectionTypeIdentifier" |
| // InternalOCLinEcore.g:5728:1: ruleCollectionTypeIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (kw= 'Set' | kw= 'Bag' | kw= 'Sequence' | kw= 'Collection' | kw= 'OrderedSet' ) ; |
| public final AntlrDatatypeRuleToken ruleCollectionTypeIdentifier() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| Token kw=null; |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:5731:28: ( (kw= 'Set' | kw= 'Bag' | kw= 'Sequence' | kw= 'Collection' | kw= 'OrderedSet' ) ) |
| // InternalOCLinEcore.g:5732:1: (kw= 'Set' | kw= 'Bag' | kw= 'Sequence' | kw= 'Collection' | kw= 'OrderedSet' ) |
| { |
| // InternalOCLinEcore.g:5732:1: (kw= 'Set' | kw= 'Bag' | kw= 'Sequence' | kw= 'Collection' | kw= 'OrderedSet' ) |
| int alt145=5; |
| switch ( input.LA(1) ) { |
| case 109: |
| { |
| alt145=1; |
| } |
| break; |
| case 110: |
| { |
| alt145=2; |
| } |
| break; |
| case 111: |
| { |
| alt145=3; |
| } |
| break; |
| case 112: |
| { |
| alt145=4; |
| } |
| break; |
| case 113: |
| { |
| alt145=5; |
| } |
| break; |
| default: |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 145, 0, input); |
| |
| throw nvae; |
| } |
| |
| switch (alt145) { |
| case 1 : |
| // InternalOCLinEcore.g:5733:2: kw= 'Set' |
| { |
| kw=(Token)match(input,109,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:5740:2: kw= 'Bag' |
| { |
| kw=(Token)match(input,110,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); |
| |
| } |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:5747:2: kw= 'Sequence' |
| { |
| kw=(Token)match(input,111,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); |
| |
| } |
| |
| } |
| break; |
| case 4 : |
| // InternalOCLinEcore.g:5754:2: kw= 'Collection' |
| { |
| kw=(Token)match(input,112,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); |
| |
| } |
| |
| } |
| break; |
| case 5 : |
| // InternalOCLinEcore.g:5761:2: kw= 'OrderedSet' |
| { |
| kw=(Token)match(input,113,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleCollectionTypeIdentifier" |
| |
| |
| // $ANTLR start "entryRuleCollectionTypeCS" |
| // InternalOCLinEcore.g:5774:1: entryRuleCollectionTypeCS returns [EObject current=null] : iv_ruleCollectionTypeCS= ruleCollectionTypeCS EOF ; |
| public final EObject entryRuleCollectionTypeCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleCollectionTypeCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:5775:2: (iv_ruleCollectionTypeCS= ruleCollectionTypeCS EOF ) |
| // InternalOCLinEcore.g:5776:2: iv_ruleCollectionTypeCS= ruleCollectionTypeCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getCollectionTypeCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleCollectionTypeCS=ruleCollectionTypeCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleCollectionTypeCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleCollectionTypeCS" |
| |
| |
| // $ANTLR start "ruleCollectionTypeCS" |
| // InternalOCLinEcore.g:5783:1: ruleCollectionTypeCS returns [EObject current=null] : ( ( (lv_name_0_0= ruleCollectionTypeIdentifier ) ) (otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS ) ) ( (lv_ownedCollectionMultiplicity_3_0= ruleMultiplicityCS ) )? otherlv_4= ')' )? ) ; |
| public final EObject ruleCollectionTypeCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| Token otherlv_4=null; |
| AntlrDatatypeRuleToken lv_name_0_0 = null; |
| |
| EObject lv_ownedType_2_0 = null; |
| |
| EObject lv_ownedCollectionMultiplicity_3_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:5786:28: ( ( ( (lv_name_0_0= ruleCollectionTypeIdentifier ) ) (otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS ) ) ( (lv_ownedCollectionMultiplicity_3_0= ruleMultiplicityCS ) )? otherlv_4= ')' )? ) ) |
| // InternalOCLinEcore.g:5787:1: ( ( (lv_name_0_0= ruleCollectionTypeIdentifier ) ) (otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS ) ) ( (lv_ownedCollectionMultiplicity_3_0= ruleMultiplicityCS ) )? otherlv_4= ')' )? ) |
| { |
| // InternalOCLinEcore.g:5787:1: ( ( (lv_name_0_0= ruleCollectionTypeIdentifier ) ) (otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS ) ) ( (lv_ownedCollectionMultiplicity_3_0= ruleMultiplicityCS ) )? otherlv_4= ')' )? ) |
| // InternalOCLinEcore.g:5787:2: ( (lv_name_0_0= ruleCollectionTypeIdentifier ) ) (otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS ) ) ( (lv_ownedCollectionMultiplicity_3_0= ruleMultiplicityCS ) )? otherlv_4= ')' )? |
| { |
| // InternalOCLinEcore.g:5787:2: ( (lv_name_0_0= ruleCollectionTypeIdentifier ) ) |
| // InternalOCLinEcore.g:5788:1: (lv_name_0_0= ruleCollectionTypeIdentifier ) |
| { |
| // InternalOCLinEcore.g:5788:1: (lv_name_0_0= ruleCollectionTypeIdentifier ) |
| // InternalOCLinEcore.g:5789:3: lv_name_0_0= ruleCollectionTypeIdentifier |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_92); |
| lv_name_0_0=ruleCollectionTypeIdentifier(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getCollectionTypeCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_0_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeIdentifier"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:5805:2: (otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS ) ) ( (lv_ownedCollectionMultiplicity_3_0= ruleMultiplicityCS ) )? otherlv_4= ')' )? |
| int alt147=2; |
| int LA147_0 = input.LA(1); |
| |
| if ( (LA147_0==54) ) { |
| alt147=1; |
| } |
| switch (alt147) { |
| case 1 : |
| // InternalOCLinEcore.g:5805:4: otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS ) ) ( (lv_ownedCollectionMultiplicity_3_0= ruleMultiplicityCS ) )? otherlv_4= ')' |
| { |
| otherlv_1=(Token)match(input,54,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:5809:1: ( (lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS ) ) |
| // InternalOCLinEcore.g:5810:1: (lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS ) |
| { |
| // InternalOCLinEcore.g:5810:1: (lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS ) |
| // InternalOCLinEcore.g:5811:3: lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpWithoutMultiplicityCSParserRuleCall_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_93); |
| lv_ownedType_2_0=ruleTypeExpWithoutMultiplicityCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getCollectionTypeCSRule()); |
| } |
| set( |
| current, |
| "ownedType", |
| lv_ownedType_2_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpWithoutMultiplicityCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:5827:2: ( (lv_ownedCollectionMultiplicity_3_0= ruleMultiplicityCS ) )? |
| int alt146=2; |
| int LA146_0 = input.LA(1); |
| |
| if ( (LA146_0==124) ) { |
| alt146=1; |
| } |
| switch (alt146) { |
| case 1 : |
| // InternalOCLinEcore.g:5828:1: (lv_ownedCollectionMultiplicity_3_0= ruleMultiplicityCS ) |
| { |
| // InternalOCLinEcore.g:5828:1: (lv_ownedCollectionMultiplicity_3_0= ruleMultiplicityCS ) |
| // InternalOCLinEcore.g:5829:3: lv_ownedCollectionMultiplicity_3_0= ruleMultiplicityCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getOwnedCollectionMultiplicityMultiplicityCSParserRuleCall_1_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_11); |
| lv_ownedCollectionMultiplicity_3_0=ruleMultiplicityCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getCollectionTypeCSRule()); |
| } |
| set( |
| current, |
| "ownedCollectionMultiplicity", |
| lv_ownedCollectionMultiplicity_3_0, |
| "org.eclipse.ocl.xtext.base.Base.MultiplicityCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_4=(Token)match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_4, grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_3()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleCollectionTypeCS" |
| |
| |
| // $ANTLR start "entryRuleMapTypeCS" |
| // InternalOCLinEcore.g:5857:1: entryRuleMapTypeCS returns [EObject current=null] : iv_ruleMapTypeCS= ruleMapTypeCS EOF ; |
| public final EObject entryRuleMapTypeCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleMapTypeCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:5858:2: (iv_ruleMapTypeCS= ruleMapTypeCS EOF ) |
| // InternalOCLinEcore.g:5859:2: iv_ruleMapTypeCS= ruleMapTypeCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getMapTypeCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleMapTypeCS=ruleMapTypeCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleMapTypeCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleMapTypeCS" |
| |
| |
| // $ANTLR start "ruleMapTypeCS" |
| // InternalOCLinEcore.g:5866:1: ruleMapTypeCS returns [EObject current=null] : ( ( (lv_name_0_0= 'Map' ) ) (otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')' )? ) ; |
| public final EObject ruleMapTypeCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token lv_name_0_0=null; |
| Token otherlv_1=null; |
| Token otherlv_3=null; |
| Token otherlv_5=null; |
| EObject lv_ownedKeyType_2_0 = null; |
| |
| EObject lv_ownedValueType_4_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:5869:28: ( ( ( (lv_name_0_0= 'Map' ) ) (otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')' )? ) ) |
| // InternalOCLinEcore.g:5870:1: ( ( (lv_name_0_0= 'Map' ) ) (otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')' )? ) |
| { |
| // InternalOCLinEcore.g:5870:1: ( ( (lv_name_0_0= 'Map' ) ) (otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')' )? ) |
| // InternalOCLinEcore.g:5870:2: ( (lv_name_0_0= 'Map' ) ) (otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')' )? |
| { |
| // InternalOCLinEcore.g:5870:2: ( (lv_name_0_0= 'Map' ) ) |
| // InternalOCLinEcore.g:5871:1: (lv_name_0_0= 'Map' ) |
| { |
| // InternalOCLinEcore.g:5871:1: (lv_name_0_0= 'Map' ) |
| // InternalOCLinEcore.g:5872:3: lv_name_0_0= 'Map' |
| { |
| lv_name_0_0=(Token)match(input,98,FollowSets000.FOLLOW_92); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_name_0_0, grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getMapTypeCSRule()); |
| } |
| setWithLastConsumed(current, "name", lv_name_0_0, "Map"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:5885:2: (otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')' )? |
| int alt148=2; |
| int LA148_0 = input.LA(1); |
| |
| if ( (LA148_0==54) ) { |
| alt148=1; |
| } |
| switch (alt148) { |
| case 1 : |
| // InternalOCLinEcore.g:5885:4: otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')' |
| { |
| otherlv_1=(Token)match(input,54,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:5889:1: ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) |
| // InternalOCLinEcore.g:5890:1: (lv_ownedKeyType_2_0= ruleTypeExpCS ) |
| { |
| // InternalOCLinEcore.g:5890:1: (lv_ownedKeyType_2_0= ruleTypeExpCS ) |
| // InternalOCLinEcore.g:5891:3: lv_ownedKeyType_2_0= ruleTypeExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_94); |
| lv_ownedKeyType_2_0=ruleTypeExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getMapTypeCSRule()); |
| } |
| set( |
| current, |
| "ownedKeyType", |
| lv_ownedKeyType_2_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_3=(Token)match(input,59,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_3, grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2()); |
| |
| } |
| // InternalOCLinEcore.g:5911:1: ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) |
| // InternalOCLinEcore.g:5912:1: (lv_ownedValueType_4_0= ruleTypeExpCS ) |
| { |
| // InternalOCLinEcore.g:5912:1: (lv_ownedValueType_4_0= ruleTypeExpCS ) |
| // InternalOCLinEcore.g:5913:3: lv_ownedValueType_4_0= ruleTypeExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_11); |
| lv_ownedValueType_4_0=ruleTypeExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getMapTypeCSRule()); |
| } |
| set( |
| current, |
| "ownedValueType", |
| lv_ownedValueType_4_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_5=(Token)match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_5, grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleMapTypeCS" |
| |
| |
| // $ANTLR start "entryRuleTupleTypeCS" |
| // InternalOCLinEcore.g:5941:1: entryRuleTupleTypeCS returns [EObject current=null] : iv_ruleTupleTypeCS= ruleTupleTypeCS EOF ; |
| public final EObject entryRuleTupleTypeCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleTupleTypeCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:5942:2: (iv_ruleTupleTypeCS= ruleTupleTypeCS EOF ) |
| // InternalOCLinEcore.g:5943:2: iv_ruleTupleTypeCS= ruleTupleTypeCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getTupleTypeCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleTupleTypeCS=ruleTupleTypeCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleTupleTypeCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleTupleTypeCS" |
| |
| |
| // $ANTLR start "ruleTupleTypeCS" |
| // InternalOCLinEcore.g:5950:1: ruleTupleTypeCS returns [EObject current=null] : ( ( (lv_name_0_0= 'Tuple' ) ) (otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')' )? ) ; |
| public final EObject ruleTupleTypeCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token lv_name_0_0=null; |
| Token otherlv_1=null; |
| Token otherlv_3=null; |
| Token otherlv_5=null; |
| EObject lv_ownedParts_2_0 = null; |
| |
| EObject lv_ownedParts_4_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:5953:28: ( ( ( (lv_name_0_0= 'Tuple' ) ) (otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')' )? ) ) |
| // InternalOCLinEcore.g:5954:1: ( ( (lv_name_0_0= 'Tuple' ) ) (otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')' )? ) |
| { |
| // InternalOCLinEcore.g:5954:1: ( ( (lv_name_0_0= 'Tuple' ) ) (otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')' )? ) |
| // InternalOCLinEcore.g:5954:2: ( (lv_name_0_0= 'Tuple' ) ) (otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')' )? |
| { |
| // InternalOCLinEcore.g:5954:2: ( (lv_name_0_0= 'Tuple' ) ) |
| // InternalOCLinEcore.g:5955:1: (lv_name_0_0= 'Tuple' ) |
| { |
| // InternalOCLinEcore.g:5955:1: (lv_name_0_0= 'Tuple' ) |
| // InternalOCLinEcore.g:5956:3: lv_name_0_0= 'Tuple' |
| { |
| lv_name_0_0=(Token)match(input,99,FollowSets000.FOLLOW_92); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_name_0_0, grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getTupleTypeCSRule()); |
| } |
| setWithLastConsumed(current, "name", lv_name_0_0, "Tuple"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:5969:2: (otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')' )? |
| int alt151=2; |
| int LA151_0 = input.LA(1); |
| |
| if ( (LA151_0==54) ) { |
| alt151=1; |
| } |
| switch (alt151) { |
| case 1 : |
| // InternalOCLinEcore.g:5969:4: otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')' |
| { |
| otherlv_1=(Token)match(input,54,FollowSets000.FOLLOW_55); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:5973:1: ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? |
| int alt150=2; |
| int LA150_0 = input.LA(1); |
| |
| if ( ((LA150_0>=RULE_SIMPLE_ID && LA150_0<=RULE_ESCAPED_ID)||LA150_0==17||(LA150_0>=19 && LA150_0<=53)||LA150_0==58||LA150_0==71||(LA150_0>=73 && LA150_0<=74)||LA150_0==76||LA150_0==80) ) { |
| alt150=1; |
| } |
| switch (alt150) { |
| case 1 : |
| // InternalOCLinEcore.g:5973:2: ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* |
| { |
| // InternalOCLinEcore.g:5973:2: ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) |
| // InternalOCLinEcore.g:5974:1: (lv_ownedParts_2_0= ruleTuplePartCS ) |
| { |
| // InternalOCLinEcore.g:5974:1: (lv_ownedParts_2_0= ruleTuplePartCS ) |
| // InternalOCLinEcore.g:5975:3: lv_ownedParts_2_0= ruleTuplePartCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_21); |
| lv_ownedParts_2_0=ruleTuplePartCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTupleTypeCSRule()); |
| } |
| add( |
| current, |
| "ownedParts", |
| lv_ownedParts_2_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TuplePartCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:5991:2: (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* |
| loop149: |
| do { |
| int alt149=2; |
| int LA149_0 = input.LA(1); |
| |
| if ( (LA149_0==59) ) { |
| alt149=1; |
| } |
| |
| |
| switch (alt149) { |
| case 1 : |
| // InternalOCLinEcore.g:5991:4: otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) |
| { |
| otherlv_3=(Token)match(input,59,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_3, grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:5995:1: ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) |
| // InternalOCLinEcore.g:5996:1: (lv_ownedParts_4_0= ruleTuplePartCS ) |
| { |
| // InternalOCLinEcore.g:5996:1: (lv_ownedParts_4_0= ruleTuplePartCS ) |
| // InternalOCLinEcore.g:5997:3: lv_ownedParts_4_0= ruleTuplePartCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_21); |
| lv_ownedParts_4_0=ruleTuplePartCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTupleTypeCSRule()); |
| } |
| add( |
| current, |
| "ownedParts", |
| lv_ownedParts_4_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TuplePartCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop149; |
| } |
| } while (true); |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_5=(Token)match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_5, grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleTupleTypeCS" |
| |
| |
| // $ANTLR start "entryRuleTuplePartCS" |
| // InternalOCLinEcore.g:6025:1: entryRuleTuplePartCS returns [EObject current=null] : iv_ruleTuplePartCS= ruleTuplePartCS EOF ; |
| public final EObject entryRuleTuplePartCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleTuplePartCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:6026:2: (iv_ruleTuplePartCS= ruleTuplePartCS EOF ) |
| // InternalOCLinEcore.g:6027:2: iv_ruleTuplePartCS= ruleTuplePartCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getTuplePartCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleTuplePartCS=ruleTuplePartCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleTuplePartCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleTuplePartCS" |
| |
| |
| // $ANTLR start "ruleTuplePartCS" |
| // InternalOCLinEcore.g:6034:1: ruleTuplePartCS returns [EObject current=null] : ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) ) ; |
| public final EObject ruleTuplePartCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| AntlrDatatypeRuleToken lv_name_0_0 = null; |
| |
| EObject lv_ownedType_2_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:6037:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) ) ) |
| // InternalOCLinEcore.g:6038:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) ) |
| { |
| // InternalOCLinEcore.g:6038:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) ) |
| // InternalOCLinEcore.g:6038:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) |
| { |
| // InternalOCLinEcore.g:6038:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:6039:1: (lv_name_0_0= ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:6039:1: (lv_name_0_0= ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:6040:3: lv_name_0_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_17); |
| lv_name_0_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTuplePartCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_0_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_1=(Token)match(input,56,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getTuplePartCSAccess().getColonKeyword_1()); |
| |
| } |
| // InternalOCLinEcore.g:6060:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) ) |
| // InternalOCLinEcore.g:6061:1: (lv_ownedType_2_0= ruleTypeExpCS ) |
| { |
| // InternalOCLinEcore.g:6061:1: (lv_ownedType_2_0= ruleTypeExpCS ) |
| // InternalOCLinEcore.g:6062:3: lv_ownedType_2_0= ruleTypeExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedType_2_0=ruleTypeExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTuplePartCSRule()); |
| } |
| set( |
| current, |
| "ownedType", |
| lv_ownedType_2_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleTuplePartCS" |
| |
| |
| // $ANTLR start "entryRuleCollectionLiteralExpCS" |
| // InternalOCLinEcore.g:6086:1: entryRuleCollectionLiteralExpCS returns [EObject current=null] : iv_ruleCollectionLiteralExpCS= ruleCollectionLiteralExpCS EOF ; |
| public final EObject entryRuleCollectionLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleCollectionLiteralExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:6087:2: (iv_ruleCollectionLiteralExpCS= ruleCollectionLiteralExpCS EOF ) |
| // InternalOCLinEcore.g:6088:2: iv_ruleCollectionLiteralExpCS= ruleCollectionLiteralExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getCollectionLiteralExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleCollectionLiteralExpCS=ruleCollectionLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleCollectionLiteralExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleCollectionLiteralExpCS" |
| |
| |
| // $ANTLR start "ruleCollectionLiteralExpCS" |
| // InternalOCLinEcore.g:6095:1: ruleCollectionLiteralExpCS returns [EObject current=null] : ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )? otherlv_5= '}' ) ; |
| public final EObject ruleCollectionLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| Token otherlv_3=null; |
| Token otherlv_5=null; |
| EObject lv_ownedType_0_0 = null; |
| |
| EObject lv_ownedParts_2_0 = null; |
| |
| EObject lv_ownedParts_4_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:6098:28: ( ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )? otherlv_5= '}' ) ) |
| // InternalOCLinEcore.g:6099:1: ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )? otherlv_5= '}' ) |
| { |
| // InternalOCLinEcore.g:6099:1: ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )? otherlv_5= '}' ) |
| // InternalOCLinEcore.g:6099:2: ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )? otherlv_5= '}' |
| { |
| // InternalOCLinEcore.g:6099:2: ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) |
| // InternalOCLinEcore.g:6100:1: (lv_ownedType_0_0= ruleCollectionTypeCS ) |
| { |
| // InternalOCLinEcore.g:6100:1: (lv_ownedType_0_0= ruleCollectionTypeCS ) |
| // InternalOCLinEcore.g:6101:3: lv_ownedType_0_0= ruleCollectionTypeCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_95); |
| lv_ownedType_0_0=ruleCollectionTypeCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule()); |
| } |
| set( |
| current, |
| "ownedType", |
| lv_ownedType_0_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_1=(Token)match(input,60,FollowSets000.FOLLOW_96); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); |
| |
| } |
| // InternalOCLinEcore.g:6121:1: ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )? |
| int alt153=2; |
| int LA153_0 = input.LA(1); |
| |
| if ( ((LA153_0>=RULE_INT && LA153_0<=RULE_SINGLE_QUOTED_STRING)||(LA153_0>=RULE_SIMPLE_ID && LA153_0<=RULE_ESCAPED_ID)||(LA153_0>=17 && LA153_0<=54)||LA153_0==56||LA153_0==58||LA153_0==71||(LA153_0>=73 && LA153_0<=74)||LA153_0==76||LA153_0==80||(LA153_0>=83 && LA153_0<=84)||(LA153_0>=98 && LA153_0<=99)||(LA153_0>=101 && LA153_0<=113)||LA153_0==116||(LA153_0>=118 && LA153_0<=121)||LA153_0==128||(LA153_0>=133 && LA153_0<=134)) ) { |
| alt153=1; |
| } |
| switch (alt153) { |
| case 1 : |
| // InternalOCLinEcore.g:6121:2: ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* |
| { |
| // InternalOCLinEcore.g:6121:2: ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) |
| // InternalOCLinEcore.g:6122:1: (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) |
| { |
| // InternalOCLinEcore.g:6122:1: (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) |
| // InternalOCLinEcore.g:6123:3: lv_ownedParts_2_0= ruleCollectionLiteralPartCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_97); |
| lv_ownedParts_2_0=ruleCollectionLiteralPartCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule()); |
| } |
| add( |
| current, |
| "ownedParts", |
| lv_ownedParts_2_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionLiteralPartCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:6139:2: (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* |
| loop152: |
| do { |
| int alt152=2; |
| int LA152_0 = input.LA(1); |
| |
| if ( (LA152_0==59) ) { |
| alt152=1; |
| } |
| |
| |
| switch (alt152) { |
| case 1 : |
| // InternalOCLinEcore.g:6139:4: otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) |
| { |
| otherlv_3=(Token)match(input,59,FollowSets000.FOLLOW_98); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_3, grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:6143:1: ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) |
| // InternalOCLinEcore.g:6144:1: (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) |
| { |
| // InternalOCLinEcore.g:6144:1: (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) |
| // InternalOCLinEcore.g:6145:3: lv_ownedParts_4_0= ruleCollectionLiteralPartCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_97); |
| lv_ownedParts_4_0=ruleCollectionLiteralPartCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule()); |
| } |
| add( |
| current, |
| "ownedParts", |
| lv_ownedParts_4_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionLiteralPartCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop152; |
| } |
| } while (true); |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_5=(Token)match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_5, grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleCollectionLiteralExpCS" |
| |
| |
| // $ANTLR start "entryRuleCollectionLiteralPartCS" |
| // InternalOCLinEcore.g:6173:1: entryRuleCollectionLiteralPartCS returns [EObject current=null] : iv_ruleCollectionLiteralPartCS= ruleCollectionLiteralPartCS EOF ; |
| public final EObject entryRuleCollectionLiteralPartCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleCollectionLiteralPartCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:6174:2: (iv_ruleCollectionLiteralPartCS= ruleCollectionLiteralPartCS EOF ) |
| // InternalOCLinEcore.g:6175:2: iv_ruleCollectionLiteralPartCS= ruleCollectionLiteralPartCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getCollectionLiteralPartCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleCollectionLiteralPartCS=ruleCollectionLiteralPartCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleCollectionLiteralPartCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleCollectionLiteralPartCS" |
| |
| |
| // $ANTLR start "ruleCollectionLiteralPartCS" |
| // InternalOCLinEcore.g:6182:1: ruleCollectionLiteralPartCS returns [EObject current=null] : ( ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? ) | ( (lv_ownedExpression_3_0= rulePatternExpCS ) ) ) ; |
| public final EObject ruleCollectionLiteralPartCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| EObject lv_ownedExpression_0_0 = null; |
| |
| EObject lv_ownedLastExpression_2_0 = null; |
| |
| EObject lv_ownedExpression_3_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:6185:28: ( ( ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? ) | ( (lv_ownedExpression_3_0= rulePatternExpCS ) ) ) ) |
| // InternalOCLinEcore.g:6186:1: ( ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? ) | ( (lv_ownedExpression_3_0= rulePatternExpCS ) ) ) |
| { |
| // InternalOCLinEcore.g:6186:1: ( ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? ) | ( (lv_ownedExpression_3_0= rulePatternExpCS ) ) ) |
| int alt155=2; |
| alt155 = dfa155.predict(input); |
| switch (alt155) { |
| case 1 : |
| // InternalOCLinEcore.g:6186:2: ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? ) |
| { |
| // InternalOCLinEcore.g:6186:2: ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? ) |
| // InternalOCLinEcore.g:6186:3: ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? |
| { |
| // InternalOCLinEcore.g:6186:3: ( (lv_ownedExpression_0_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:6187:1: (lv_ownedExpression_0_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:6187:1: (lv_ownedExpression_0_0= ruleExpCS ) |
| // InternalOCLinEcore.g:6188:3: lv_ownedExpression_0_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_99); |
| lv_ownedExpression_0_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule()); |
| } |
| set( |
| current, |
| "ownedExpression", |
| lv_ownedExpression_0_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:6204:2: (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? |
| int alt154=2; |
| int LA154_0 = input.LA(1); |
| |
| if ( (LA154_0==114) ) { |
| alt154=1; |
| } |
| switch (alt154) { |
| case 1 : |
| // InternalOCLinEcore.g:6204:4: otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) |
| { |
| otherlv_1=(Token)match(input,114,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:6208:1: ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:6209:1: (lv_ownedLastExpression_2_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:6209:1: (lv_ownedLastExpression_2_0= ruleExpCS ) |
| // InternalOCLinEcore.g:6210:3: lv_ownedLastExpression_2_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedLastExpression_2_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule()); |
| } |
| set( |
| current, |
| "ownedLastExpression", |
| lv_ownedLastExpression_2_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:6227:6: ( (lv_ownedExpression_3_0= rulePatternExpCS ) ) |
| { |
| // InternalOCLinEcore.g:6227:6: ( (lv_ownedExpression_3_0= rulePatternExpCS ) ) |
| // InternalOCLinEcore.g:6228:1: (lv_ownedExpression_3_0= rulePatternExpCS ) |
| { |
| // InternalOCLinEcore.g:6228:1: (lv_ownedExpression_3_0= rulePatternExpCS ) |
| // InternalOCLinEcore.g:6229:3: lv_ownedExpression_3_0= rulePatternExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedExpression_3_0=rulePatternExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule()); |
| } |
| set( |
| current, |
| "ownedExpression", |
| lv_ownedExpression_3_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleCollectionLiteralPartCS" |
| |
| |
| // $ANTLR start "entryRuleCollectionPatternCS" |
| // InternalOCLinEcore.g:6253:1: entryRuleCollectionPatternCS returns [EObject current=null] : iv_ruleCollectionPatternCS= ruleCollectionPatternCS EOF ; |
| public final EObject entryRuleCollectionPatternCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleCollectionPatternCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:6254:2: (iv_ruleCollectionPatternCS= ruleCollectionPatternCS EOF ) |
| // InternalOCLinEcore.g:6255:2: iv_ruleCollectionPatternCS= ruleCollectionPatternCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getCollectionPatternCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleCollectionPatternCS=ruleCollectionPatternCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleCollectionPatternCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleCollectionPatternCS" |
| |
| |
| // $ANTLR start "ruleCollectionPatternCS" |
| // InternalOCLinEcore.g:6262:1: ruleCollectionPatternCS returns [EObject current=null] : ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= rulePatternExpCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) ) )? otherlv_7= '}' ) ; |
| public final EObject ruleCollectionPatternCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| Token otherlv_3=null; |
| Token otherlv_5=null; |
| Token otherlv_7=null; |
| EObject lv_ownedType_0_0 = null; |
| |
| EObject lv_ownedParts_2_0 = null; |
| |
| EObject lv_ownedParts_4_0 = null; |
| |
| AntlrDatatypeRuleToken lv_restVariableName_6_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:6265:28: ( ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= rulePatternExpCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) ) )? otherlv_7= '}' ) ) |
| // InternalOCLinEcore.g:6266:1: ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= rulePatternExpCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) ) )? otherlv_7= '}' ) |
| { |
| // InternalOCLinEcore.g:6266:1: ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= rulePatternExpCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) ) )? otherlv_7= '}' ) |
| // InternalOCLinEcore.g:6266:2: ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= rulePatternExpCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) ) )? otherlv_7= '}' |
| { |
| // InternalOCLinEcore.g:6266:2: ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) |
| // InternalOCLinEcore.g:6267:1: (lv_ownedType_0_0= ruleCollectionTypeCS ) |
| { |
| // InternalOCLinEcore.g:6267:1: (lv_ownedType_0_0= ruleCollectionTypeCS ) |
| // InternalOCLinEcore.g:6268:3: lv_ownedType_0_0= ruleCollectionTypeCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_95); |
| lv_ownedType_0_0=ruleCollectionTypeCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule()); |
| } |
| set( |
| current, |
| "ownedType", |
| lv_ownedType_0_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_1=(Token)match(input,60,FollowSets000.FOLLOW_96); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1()); |
| |
| } |
| // InternalOCLinEcore.g:6288:1: ( ( (lv_ownedParts_2_0= rulePatternExpCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) ) )? |
| int alt157=2; |
| int LA157_0 = input.LA(1); |
| |
| if ( ((LA157_0>=RULE_SIMPLE_ID && LA157_0<=RULE_ESCAPED_ID)||LA157_0==17||(LA157_0>=19 && LA157_0<=53)||LA157_0==56||LA157_0==58||LA157_0==71||(LA157_0>=73 && LA157_0<=74)||LA157_0==76||LA157_0==80) ) { |
| alt157=1; |
| } |
| switch (alt157) { |
| case 1 : |
| // InternalOCLinEcore.g:6288:2: ( (lv_ownedParts_2_0= rulePatternExpCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) ) |
| { |
| // InternalOCLinEcore.g:6288:2: ( (lv_ownedParts_2_0= rulePatternExpCS ) ) |
| // InternalOCLinEcore.g:6289:1: (lv_ownedParts_2_0= rulePatternExpCS ) |
| { |
| // InternalOCLinEcore.g:6289:1: (lv_ownedParts_2_0= rulePatternExpCS ) |
| // InternalOCLinEcore.g:6290:3: lv_ownedParts_2_0= rulePatternExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_101); |
| lv_ownedParts_2_0=rulePatternExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule()); |
| } |
| add( |
| current, |
| "ownedParts", |
| lv_ownedParts_2_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:6306:2: (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* |
| loop156: |
| do { |
| int alt156=2; |
| int LA156_0 = input.LA(1); |
| |
| if ( (LA156_0==59) ) { |
| alt156=1; |
| } |
| |
| |
| switch (alt156) { |
| case 1 : |
| // InternalOCLinEcore.g:6306:4: otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) |
| { |
| otherlv_3=(Token)match(input,59,FollowSets000.FOLLOW_98); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_3, grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:6310:1: ( (lv_ownedParts_4_0= rulePatternExpCS ) ) |
| // InternalOCLinEcore.g:6311:1: (lv_ownedParts_4_0= rulePatternExpCS ) |
| { |
| // InternalOCLinEcore.g:6311:1: (lv_ownedParts_4_0= rulePatternExpCS ) |
| // InternalOCLinEcore.g:6312:3: lv_ownedParts_4_0= rulePatternExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_101); |
| lv_ownedParts_4_0=rulePatternExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule()); |
| } |
| add( |
| current, |
| "ownedParts", |
| lv_ownedParts_4_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop156; |
| } |
| } while (true); |
| |
| // InternalOCLinEcore.g:6328:4: (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) ) |
| // InternalOCLinEcore.g:6328:6: otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) |
| { |
| otherlv_5=(Token)match(input,115,FollowSets000.FOLLOW_102); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_5, grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:6332:1: ( (lv_restVariableName_6_0= ruleIdentifier ) ) |
| // InternalOCLinEcore.g:6333:1: (lv_restVariableName_6_0= ruleIdentifier ) |
| { |
| // InternalOCLinEcore.g:6333:1: (lv_restVariableName_6_0= ruleIdentifier ) |
| // InternalOCLinEcore.g:6334:3: lv_restVariableName_6_0= ruleIdentifier |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_40); |
| lv_restVariableName_6_0=ruleIdentifier(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule()); |
| } |
| set( |
| current, |
| "restVariableName", |
| lv_restVariableName_6_0, |
| "org.eclipse.ocl.xtext.base.Base.Identifier"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_7=(Token)match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_7, grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3()); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleCollectionPatternCS" |
| |
| |
| // $ANTLR start "entryRuleShadowPartCS" |
| // InternalOCLinEcore.g:6362:1: entryRuleShadowPartCS returns [EObject current=null] : iv_ruleShadowPartCS= ruleShadowPartCS EOF ; |
| public final EObject entryRuleShadowPartCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleShadowPartCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:6363:2: (iv_ruleShadowPartCS= ruleShadowPartCS EOF ) |
| // InternalOCLinEcore.g:6364:2: iv_ruleShadowPartCS= ruleShadowPartCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getShadowPartCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleShadowPartCS=ruleShadowPartCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleShadowPartCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleShadowPartCS" |
| |
| |
| // $ANTLR start "ruleShadowPartCS" |
| // InternalOCLinEcore.g:6371:1: ruleShadowPartCS returns [EObject current=null] : ( ( ( ( ruleUnrestrictedName ) ) otherlv_1= '=' ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) ) ) | ( (lv_ownedInitExpression_3_0= ruleStringLiteralExpCS ) ) ) ; |
| public final EObject ruleShadowPartCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| EObject lv_ownedInitExpression_2_1 = null; |
| |
| EObject lv_ownedInitExpression_2_2 = null; |
| |
| EObject lv_ownedInitExpression_3_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:6374:28: ( ( ( ( ( ruleUnrestrictedName ) ) otherlv_1= '=' ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) ) ) | ( (lv_ownedInitExpression_3_0= ruleStringLiteralExpCS ) ) ) ) |
| // InternalOCLinEcore.g:6375:1: ( ( ( ( ruleUnrestrictedName ) ) otherlv_1= '=' ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) ) ) | ( (lv_ownedInitExpression_3_0= ruleStringLiteralExpCS ) ) ) |
| { |
| // InternalOCLinEcore.g:6375:1: ( ( ( ( ruleUnrestrictedName ) ) otherlv_1= '=' ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) ) ) | ( (lv_ownedInitExpression_3_0= ruleStringLiteralExpCS ) ) ) |
| int alt159=2; |
| int LA159_0 = input.LA(1); |
| |
| if ( ((LA159_0>=RULE_SIMPLE_ID && LA159_0<=RULE_ESCAPED_ID)||LA159_0==17||(LA159_0>=19 && LA159_0<=53)||LA159_0==58||LA159_0==71||(LA159_0>=73 && LA159_0<=74)||LA159_0==76||LA159_0==80) ) { |
| alt159=1; |
| } |
| else if ( (LA159_0==RULE_SINGLE_QUOTED_STRING) ) { |
| alt159=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 159, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt159) { |
| case 1 : |
| // InternalOCLinEcore.g:6375:2: ( ( ( ruleUnrestrictedName ) ) otherlv_1= '=' ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) ) ) |
| { |
| // InternalOCLinEcore.g:6375:2: ( ( ( ruleUnrestrictedName ) ) otherlv_1= '=' ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) ) ) |
| // InternalOCLinEcore.g:6375:3: ( ( ruleUnrestrictedName ) ) otherlv_1= '=' ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) ) |
| { |
| // InternalOCLinEcore.g:6375:3: ( ( ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:6376:1: ( ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:6376:1: ( ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:6377:3: ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getShadowPartCSRule()); |
| } |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_42); |
| ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_1=(Token)match(input,62,FollowSets000.FOLLOW_98); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_0_1()); |
| |
| } |
| // InternalOCLinEcore.g:6397:1: ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) ) |
| // InternalOCLinEcore.g:6398:1: ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) |
| { |
| // InternalOCLinEcore.g:6398:1: ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) |
| // InternalOCLinEcore.g:6399:1: (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) |
| { |
| // InternalOCLinEcore.g:6399:1: (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) |
| int alt158=2; |
| alt158 = dfa158.predict(input); |
| switch (alt158) { |
| case 1 : |
| // InternalOCLinEcore.g:6400:3: lv_ownedInitExpression_2_1= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_2_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedInitExpression_2_1=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getShadowPartCSRule()); |
| } |
| set( |
| current, |
| "ownedInitExpression", |
| lv_ownedInitExpression_2_1, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:6415:8: lv_ownedInitExpression_2_2= rulePatternExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_0_2_0_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedInitExpression_2_2=rulePatternExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getShadowPartCSRule()); |
| } |
| set( |
| current, |
| "ownedInitExpression", |
| lv_ownedInitExpression_2_2, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:6434:6: ( (lv_ownedInitExpression_3_0= ruleStringLiteralExpCS ) ) |
| { |
| // InternalOCLinEcore.g:6434:6: ( (lv_ownedInitExpression_3_0= ruleStringLiteralExpCS ) ) |
| // InternalOCLinEcore.g:6435:1: (lv_ownedInitExpression_3_0= ruleStringLiteralExpCS ) |
| { |
| // InternalOCLinEcore.g:6435:1: (lv_ownedInitExpression_3_0= ruleStringLiteralExpCS ) |
| // InternalOCLinEcore.g:6436:3: lv_ownedInitExpression_3_0= ruleStringLiteralExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionStringLiteralExpCSParserRuleCall_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedInitExpression_3_0=ruleStringLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getShadowPartCSRule()); |
| } |
| set( |
| current, |
| "ownedInitExpression", |
| lv_ownedInitExpression_3_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.StringLiteralExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleShadowPartCS" |
| |
| |
| // $ANTLR start "entryRulePatternExpCS" |
| // InternalOCLinEcore.g:6460:1: entryRulePatternExpCS returns [EObject current=null] : iv_rulePatternExpCS= rulePatternExpCS EOF ; |
| public final EObject entryRulePatternExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_rulePatternExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:6461:2: (iv_rulePatternExpCS= rulePatternExpCS EOF ) |
| // InternalOCLinEcore.g:6462:2: iv_rulePatternExpCS= rulePatternExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getPatternExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_rulePatternExpCS=rulePatternExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_rulePatternExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRulePatternExpCS" |
| |
| |
| // $ANTLR start "rulePatternExpCS" |
| // InternalOCLinEcore.g:6469:1: rulePatternExpCS returns [EObject current=null] : ( ( (lv_patternVariableName_0_0= ruleUnrestrictedName ) )? otherlv_1= ':' ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) ) ) ; |
| public final EObject rulePatternExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| AntlrDatatypeRuleToken lv_patternVariableName_0_0 = null; |
| |
| EObject lv_ownedPatternType_2_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:6472:28: ( ( ( (lv_patternVariableName_0_0= ruleUnrestrictedName ) )? otherlv_1= ':' ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) ) ) ) |
| // InternalOCLinEcore.g:6473:1: ( ( (lv_patternVariableName_0_0= ruleUnrestrictedName ) )? otherlv_1= ':' ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) ) ) |
| { |
| // InternalOCLinEcore.g:6473:1: ( ( (lv_patternVariableName_0_0= ruleUnrestrictedName ) )? otherlv_1= ':' ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) ) ) |
| // InternalOCLinEcore.g:6473:2: ( (lv_patternVariableName_0_0= ruleUnrestrictedName ) )? otherlv_1= ':' ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) ) |
| { |
| // InternalOCLinEcore.g:6473:2: ( (lv_patternVariableName_0_0= ruleUnrestrictedName ) )? |
| int alt160=2; |
| int LA160_0 = input.LA(1); |
| |
| if ( ((LA160_0>=RULE_SIMPLE_ID && LA160_0<=RULE_ESCAPED_ID)||LA160_0==17||(LA160_0>=19 && LA160_0<=53)||LA160_0==58||LA160_0==71||(LA160_0>=73 && LA160_0<=74)||LA160_0==76||LA160_0==80) ) { |
| alt160=1; |
| } |
| switch (alt160) { |
| case 1 : |
| // InternalOCLinEcore.g:6474:1: (lv_patternVariableName_0_0= ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:6474:1: (lv_patternVariableName_0_0= ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:6475:3: lv_patternVariableName_0_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_17); |
| lv_patternVariableName_0_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getPatternExpCSRule()); |
| } |
| set( |
| current, |
| "patternVariableName", |
| lv_patternVariableName_0_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_1=(Token)match(input,56,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getPatternExpCSAccess().getColonKeyword_1()); |
| |
| } |
| // InternalOCLinEcore.g:6495:1: ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) ) |
| // InternalOCLinEcore.g:6496:1: (lv_ownedPatternType_2_0= ruleTypeExpCS ) |
| { |
| // InternalOCLinEcore.g:6496:1: (lv_ownedPatternType_2_0= ruleTypeExpCS ) |
| // InternalOCLinEcore.g:6497:3: lv_ownedPatternType_2_0= ruleTypeExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedPatternType_2_0=ruleTypeExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getPatternExpCSRule()); |
| } |
| set( |
| current, |
| "ownedPatternType", |
| lv_ownedPatternType_2_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "rulePatternExpCS" |
| |
| |
| // $ANTLR start "entryRuleLambdaLiteralExpCS" |
| // InternalOCLinEcore.g:6521:1: entryRuleLambdaLiteralExpCS returns [EObject current=null] : iv_ruleLambdaLiteralExpCS= ruleLambdaLiteralExpCS EOF ; |
| public final EObject entryRuleLambdaLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleLambdaLiteralExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:6522:2: (iv_ruleLambdaLiteralExpCS= ruleLambdaLiteralExpCS EOF ) |
| // InternalOCLinEcore.g:6523:2: iv_ruleLambdaLiteralExpCS= ruleLambdaLiteralExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getLambdaLiteralExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleLambdaLiteralExpCS=ruleLambdaLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleLambdaLiteralExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleLambdaLiteralExpCS" |
| |
| |
| // $ANTLR start "ruleLambdaLiteralExpCS" |
| // InternalOCLinEcore.g:6530:1: ruleLambdaLiteralExpCS returns [EObject current=null] : (otherlv_0= 'Lambda' otherlv_1= '{' ( (lv_ownedExpressionCS_2_0= ruleExpCS ) ) otherlv_3= '}' ) ; |
| public final EObject ruleLambdaLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_0=null; |
| Token otherlv_1=null; |
| Token otherlv_3=null; |
| EObject lv_ownedExpressionCS_2_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:6533:28: ( (otherlv_0= 'Lambda' otherlv_1= '{' ( (lv_ownedExpressionCS_2_0= ruleExpCS ) ) otherlv_3= '}' ) ) |
| // InternalOCLinEcore.g:6534:1: (otherlv_0= 'Lambda' otherlv_1= '{' ( (lv_ownedExpressionCS_2_0= ruleExpCS ) ) otherlv_3= '}' ) |
| { |
| // InternalOCLinEcore.g:6534:1: (otherlv_0= 'Lambda' otherlv_1= '{' ( (lv_ownedExpressionCS_2_0= ruleExpCS ) ) otherlv_3= '}' ) |
| // InternalOCLinEcore.g:6534:3: otherlv_0= 'Lambda' otherlv_1= '{' ( (lv_ownedExpressionCS_2_0= ruleExpCS ) ) otherlv_3= '}' |
| { |
| otherlv_0=(Token)match(input,116,FollowSets000.FOLLOW_95); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_0, grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0()); |
| |
| } |
| otherlv_1=(Token)match(input,60,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); |
| |
| } |
| // InternalOCLinEcore.g:6542:1: ( (lv_ownedExpressionCS_2_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:6543:1: (lv_ownedExpressionCS_2_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:6543:1: (lv_ownedExpressionCS_2_0= ruleExpCS ) |
| // InternalOCLinEcore.g:6544:3: lv_ownedExpressionCS_2_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_40); |
| lv_ownedExpressionCS_2_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getLambdaLiteralExpCSRule()); |
| } |
| set( |
| current, |
| "ownedExpressionCS", |
| lv_ownedExpressionCS_2_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_3=(Token)match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_3, grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleLambdaLiteralExpCS" |
| |
| |
| // $ANTLR start "entryRuleMapLiteralExpCS" |
| // InternalOCLinEcore.g:6572:1: entryRuleMapLiteralExpCS returns [EObject current=null] : iv_ruleMapLiteralExpCS= ruleMapLiteralExpCS EOF ; |
| public final EObject entryRuleMapLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleMapLiteralExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:6573:2: (iv_ruleMapLiteralExpCS= ruleMapLiteralExpCS EOF ) |
| // InternalOCLinEcore.g:6574:2: iv_ruleMapLiteralExpCS= ruleMapLiteralExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getMapLiteralExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleMapLiteralExpCS=ruleMapLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleMapLiteralExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleMapLiteralExpCS" |
| |
| |
| // $ANTLR start "ruleMapLiteralExpCS" |
| // InternalOCLinEcore.g:6581:1: ruleMapLiteralExpCS returns [EObject current=null] : ( ( (lv_ownedType_0_0= ruleMapTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )? otherlv_5= '}' ) ; |
| public final EObject ruleMapLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| Token otherlv_3=null; |
| Token otherlv_5=null; |
| EObject lv_ownedType_0_0 = null; |
| |
| EObject lv_ownedParts_2_0 = null; |
| |
| EObject lv_ownedParts_4_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:6584:28: ( ( ( (lv_ownedType_0_0= ruleMapTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )? otherlv_5= '}' ) ) |
| // InternalOCLinEcore.g:6585:1: ( ( (lv_ownedType_0_0= ruleMapTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )? otherlv_5= '}' ) |
| { |
| // InternalOCLinEcore.g:6585:1: ( ( (lv_ownedType_0_0= ruleMapTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )? otherlv_5= '}' ) |
| // InternalOCLinEcore.g:6585:2: ( (lv_ownedType_0_0= ruleMapTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )? otherlv_5= '}' |
| { |
| // InternalOCLinEcore.g:6585:2: ( (lv_ownedType_0_0= ruleMapTypeCS ) ) |
| // InternalOCLinEcore.g:6586:1: (lv_ownedType_0_0= ruleMapTypeCS ) |
| { |
| // InternalOCLinEcore.g:6586:1: (lv_ownedType_0_0= ruleMapTypeCS ) |
| // InternalOCLinEcore.g:6587:3: lv_ownedType_0_0= ruleMapTypeCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_95); |
| lv_ownedType_0_0=ruleMapTypeCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule()); |
| } |
| set( |
| current, |
| "ownedType", |
| lv_ownedType_0_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapTypeCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_1=(Token)match(input,60,FollowSets000.FOLLOW_103); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); |
| |
| } |
| // InternalOCLinEcore.g:6607:1: ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )? |
| int alt162=2; |
| int LA162_0 = input.LA(1); |
| |
| if ( ((LA162_0>=RULE_INT && LA162_0<=RULE_SINGLE_QUOTED_STRING)||(LA162_0>=RULE_SIMPLE_ID && LA162_0<=RULE_ESCAPED_ID)||(LA162_0>=17 && LA162_0<=54)||LA162_0==58||LA162_0==71||(LA162_0>=73 && LA162_0<=74)||LA162_0==76||LA162_0==80||(LA162_0>=83 && LA162_0<=84)||(LA162_0>=98 && LA162_0<=99)||(LA162_0>=101 && LA162_0<=113)||LA162_0==116||(LA162_0>=118 && LA162_0<=121)||LA162_0==128||(LA162_0>=133 && LA162_0<=134)) ) { |
| alt162=1; |
| } |
| switch (alt162) { |
| case 1 : |
| // InternalOCLinEcore.g:6607:2: ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* |
| { |
| // InternalOCLinEcore.g:6607:2: ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) |
| // InternalOCLinEcore.g:6608:1: (lv_ownedParts_2_0= ruleMapLiteralPartCS ) |
| { |
| // InternalOCLinEcore.g:6608:1: (lv_ownedParts_2_0= ruleMapLiteralPartCS ) |
| // InternalOCLinEcore.g:6609:3: lv_ownedParts_2_0= ruleMapLiteralPartCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_97); |
| lv_ownedParts_2_0=ruleMapLiteralPartCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule()); |
| } |
| add( |
| current, |
| "ownedParts", |
| lv_ownedParts_2_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapLiteralPartCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:6625:2: (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* |
| loop161: |
| do { |
| int alt161=2; |
| int LA161_0 = input.LA(1); |
| |
| if ( (LA161_0==59) ) { |
| alt161=1; |
| } |
| |
| |
| switch (alt161) { |
| case 1 : |
| // InternalOCLinEcore.g:6625:4: otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) |
| { |
| otherlv_3=(Token)match(input,59,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_3, grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:6629:1: ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) |
| // InternalOCLinEcore.g:6630:1: (lv_ownedParts_4_0= ruleMapLiteralPartCS ) |
| { |
| // InternalOCLinEcore.g:6630:1: (lv_ownedParts_4_0= ruleMapLiteralPartCS ) |
| // InternalOCLinEcore.g:6631:3: lv_ownedParts_4_0= ruleMapLiteralPartCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_97); |
| lv_ownedParts_4_0=ruleMapLiteralPartCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule()); |
| } |
| add( |
| current, |
| "ownedParts", |
| lv_ownedParts_4_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapLiteralPartCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop161; |
| } |
| } while (true); |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_5=(Token)match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_5, grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleMapLiteralExpCS" |
| |
| |
| // $ANTLR start "entryRuleMapLiteralPartCS" |
| // InternalOCLinEcore.g:6659:1: entryRuleMapLiteralPartCS returns [EObject current=null] : iv_ruleMapLiteralPartCS= ruleMapLiteralPartCS EOF ; |
| public final EObject entryRuleMapLiteralPartCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleMapLiteralPartCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:6660:2: (iv_ruleMapLiteralPartCS= ruleMapLiteralPartCS EOF ) |
| // InternalOCLinEcore.g:6661:2: iv_ruleMapLiteralPartCS= ruleMapLiteralPartCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getMapLiteralPartCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleMapLiteralPartCS=ruleMapLiteralPartCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleMapLiteralPartCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleMapLiteralPartCS" |
| |
| |
| // $ANTLR start "ruleMapLiteralPartCS" |
| // InternalOCLinEcore.g:6668:1: ruleMapLiteralPartCS returns [EObject current=null] : ( ( (lv_ownedKey_0_0= ruleExpCS ) ) otherlv_1= '<-' ( (lv_ownedValue_2_0= ruleExpCS ) ) ) ; |
| public final EObject ruleMapLiteralPartCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| EObject lv_ownedKey_0_0 = null; |
| |
| EObject lv_ownedValue_2_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:6671:28: ( ( ( (lv_ownedKey_0_0= ruleExpCS ) ) otherlv_1= '<-' ( (lv_ownedValue_2_0= ruleExpCS ) ) ) ) |
| // InternalOCLinEcore.g:6672:1: ( ( (lv_ownedKey_0_0= ruleExpCS ) ) otherlv_1= '<-' ( (lv_ownedValue_2_0= ruleExpCS ) ) ) |
| { |
| // InternalOCLinEcore.g:6672:1: ( ( (lv_ownedKey_0_0= ruleExpCS ) ) otherlv_1= '<-' ( (lv_ownedValue_2_0= ruleExpCS ) ) ) |
| // InternalOCLinEcore.g:6672:2: ( (lv_ownedKey_0_0= ruleExpCS ) ) otherlv_1= '<-' ( (lv_ownedValue_2_0= ruleExpCS ) ) |
| { |
| // InternalOCLinEcore.g:6672:2: ( (lv_ownedKey_0_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:6673:1: (lv_ownedKey_0_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:6673:1: (lv_ownedKey_0_0= ruleExpCS ) |
| // InternalOCLinEcore.g:6674:3: lv_ownedKey_0_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_104); |
| lv_ownedKey_0_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getMapLiteralPartCSRule()); |
| } |
| set( |
| current, |
| "ownedKey", |
| lv_ownedKey_0_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_1=(Token)match(input,117,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1()); |
| |
| } |
| // InternalOCLinEcore.g:6694:1: ( (lv_ownedValue_2_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:6695:1: (lv_ownedValue_2_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:6695:1: (lv_ownedValue_2_0= ruleExpCS ) |
| // InternalOCLinEcore.g:6696:3: lv_ownedValue_2_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedValue_2_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getMapLiteralPartCSRule()); |
| } |
| set( |
| current, |
| "ownedValue", |
| lv_ownedValue_2_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleMapLiteralPartCS" |
| |
| |
| // $ANTLR start "entryRulePrimitiveLiteralExpCS" |
| // InternalOCLinEcore.g:6720:1: entryRulePrimitiveLiteralExpCS returns [EObject current=null] : iv_rulePrimitiveLiteralExpCS= rulePrimitiveLiteralExpCS EOF ; |
| public final EObject entryRulePrimitiveLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_rulePrimitiveLiteralExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:6721:2: (iv_rulePrimitiveLiteralExpCS= rulePrimitiveLiteralExpCS EOF ) |
| // InternalOCLinEcore.g:6722:2: iv_rulePrimitiveLiteralExpCS= rulePrimitiveLiteralExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_rulePrimitiveLiteralExpCS=rulePrimitiveLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_rulePrimitiveLiteralExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRulePrimitiveLiteralExpCS" |
| |
| |
| // $ANTLR start "rulePrimitiveLiteralExpCS" |
| // InternalOCLinEcore.g:6729:1: rulePrimitiveLiteralExpCS returns [EObject current=null] : (this_NumberLiteralExpCS_0= ruleNumberLiteralExpCS | this_StringLiteralExpCS_1= ruleStringLiteralExpCS | this_BooleanLiteralExpCS_2= ruleBooleanLiteralExpCS | this_UnlimitedNaturalLiteralExpCS_3= ruleUnlimitedNaturalLiteralExpCS | this_InvalidLiteralExpCS_4= ruleInvalidLiteralExpCS | this_NullLiteralExpCS_5= ruleNullLiteralExpCS ) ; |
| public final EObject rulePrimitiveLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject this_NumberLiteralExpCS_0 = null; |
| |
| EObject this_StringLiteralExpCS_1 = null; |
| |
| EObject this_BooleanLiteralExpCS_2 = null; |
| |
| EObject this_UnlimitedNaturalLiteralExpCS_3 = null; |
| |
| EObject this_InvalidLiteralExpCS_4 = null; |
| |
| EObject this_NullLiteralExpCS_5 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:6732:28: ( (this_NumberLiteralExpCS_0= ruleNumberLiteralExpCS | this_StringLiteralExpCS_1= ruleStringLiteralExpCS | this_BooleanLiteralExpCS_2= ruleBooleanLiteralExpCS | this_UnlimitedNaturalLiteralExpCS_3= ruleUnlimitedNaturalLiteralExpCS | this_InvalidLiteralExpCS_4= ruleInvalidLiteralExpCS | this_NullLiteralExpCS_5= ruleNullLiteralExpCS ) ) |
| // InternalOCLinEcore.g:6733:1: (this_NumberLiteralExpCS_0= ruleNumberLiteralExpCS | this_StringLiteralExpCS_1= ruleStringLiteralExpCS | this_BooleanLiteralExpCS_2= ruleBooleanLiteralExpCS | this_UnlimitedNaturalLiteralExpCS_3= ruleUnlimitedNaturalLiteralExpCS | this_InvalidLiteralExpCS_4= ruleInvalidLiteralExpCS | this_NullLiteralExpCS_5= ruleNullLiteralExpCS ) |
| { |
| // InternalOCLinEcore.g:6733:1: (this_NumberLiteralExpCS_0= ruleNumberLiteralExpCS | this_StringLiteralExpCS_1= ruleStringLiteralExpCS | this_BooleanLiteralExpCS_2= ruleBooleanLiteralExpCS | this_UnlimitedNaturalLiteralExpCS_3= ruleUnlimitedNaturalLiteralExpCS | this_InvalidLiteralExpCS_4= ruleInvalidLiteralExpCS | this_NullLiteralExpCS_5= ruleNullLiteralExpCS ) |
| int alt163=6; |
| switch ( input.LA(1) ) { |
| case RULE_INT: |
| { |
| alt163=1; |
| } |
| break; |
| case RULE_SINGLE_QUOTED_STRING: |
| { |
| alt163=2; |
| } |
| break; |
| case 118: |
| case 119: |
| { |
| alt163=3; |
| } |
| break; |
| case 84: |
| { |
| alt163=4; |
| } |
| break; |
| case 120: |
| { |
| alt163=5; |
| } |
| break; |
| case 121: |
| { |
| alt163=6; |
| } |
| break; |
| default: |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 163, 0, input); |
| |
| throw nvae; |
| } |
| |
| switch (alt163) { |
| case 1 : |
| // InternalOCLinEcore.g:6734:2: this_NumberLiteralExpCS_0= ruleNumberLiteralExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_NumberLiteralExpCS_0=ruleNumberLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_NumberLiteralExpCS_0; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:6747:2: this_StringLiteralExpCS_1= ruleStringLiteralExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_StringLiteralExpCS_1=ruleStringLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_StringLiteralExpCS_1; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:6760:2: this_BooleanLiteralExpCS_2= ruleBooleanLiteralExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_BooleanLiteralExpCS_2=ruleBooleanLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_BooleanLiteralExpCS_2; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 4 : |
| // InternalOCLinEcore.g:6773:2: this_UnlimitedNaturalLiteralExpCS_3= ruleUnlimitedNaturalLiteralExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_UnlimitedNaturalLiteralExpCS_3=ruleUnlimitedNaturalLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_UnlimitedNaturalLiteralExpCS_3; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 5 : |
| // InternalOCLinEcore.g:6786:2: this_InvalidLiteralExpCS_4= ruleInvalidLiteralExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_InvalidLiteralExpCS_4=ruleInvalidLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_InvalidLiteralExpCS_4; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 6 : |
| // InternalOCLinEcore.g:6799:2: this_NullLiteralExpCS_5= ruleNullLiteralExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_NullLiteralExpCS_5=ruleNullLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_NullLiteralExpCS_5; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "rulePrimitiveLiteralExpCS" |
| |
| |
| // $ANTLR start "entryRuleTupleLiteralExpCS" |
| // InternalOCLinEcore.g:6818:1: entryRuleTupleLiteralExpCS returns [EObject current=null] : iv_ruleTupleLiteralExpCS= ruleTupleLiteralExpCS EOF ; |
| public final EObject entryRuleTupleLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleTupleLiteralExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:6819:2: (iv_ruleTupleLiteralExpCS= ruleTupleLiteralExpCS EOF ) |
| // InternalOCLinEcore.g:6820:2: iv_ruleTupleLiteralExpCS= ruleTupleLiteralExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getTupleLiteralExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleTupleLiteralExpCS=ruleTupleLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleTupleLiteralExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleTupleLiteralExpCS" |
| |
| |
| // $ANTLR start "ruleTupleLiteralExpCS" |
| // InternalOCLinEcore.g:6827:1: ruleTupleLiteralExpCS returns [EObject current=null] : (otherlv_0= 'Tuple' otherlv_1= '{' ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) ) )* otherlv_5= '}' ) ; |
| public final EObject ruleTupleLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_0=null; |
| Token otherlv_1=null; |
| Token otherlv_3=null; |
| Token otherlv_5=null; |
| EObject lv_ownedParts_2_0 = null; |
| |
| EObject lv_ownedParts_4_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:6830:28: ( (otherlv_0= 'Tuple' otherlv_1= '{' ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) ) )* otherlv_5= '}' ) ) |
| // InternalOCLinEcore.g:6831:1: (otherlv_0= 'Tuple' otherlv_1= '{' ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) ) )* otherlv_5= '}' ) |
| { |
| // InternalOCLinEcore.g:6831:1: (otherlv_0= 'Tuple' otherlv_1= '{' ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) ) )* otherlv_5= '}' ) |
| // InternalOCLinEcore.g:6831:3: otherlv_0= 'Tuple' otherlv_1= '{' ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) ) )* otherlv_5= '}' |
| { |
| otherlv_0=(Token)match(input,99,FollowSets000.FOLLOW_95); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_0, grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0()); |
| |
| } |
| otherlv_1=(Token)match(input,60,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); |
| |
| } |
| // InternalOCLinEcore.g:6839:1: ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) ) |
| // InternalOCLinEcore.g:6840:1: (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) |
| { |
| // InternalOCLinEcore.g:6840:1: (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) |
| // InternalOCLinEcore.g:6841:3: lv_ownedParts_2_0= ruleTupleLiteralPartCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_97); |
| lv_ownedParts_2_0=ruleTupleLiteralPartCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTupleLiteralExpCSRule()); |
| } |
| add( |
| current, |
| "ownedParts", |
| lv_ownedParts_2_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TupleLiteralPartCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:6857:2: (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) ) )* |
| loop164: |
| do { |
| int alt164=2; |
| int LA164_0 = input.LA(1); |
| |
| if ( (LA164_0==59) ) { |
| alt164=1; |
| } |
| |
| |
| switch (alt164) { |
| case 1 : |
| // InternalOCLinEcore.g:6857:4: otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) ) |
| { |
| otherlv_3=(Token)match(input,59,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_3, grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0()); |
| |
| } |
| // InternalOCLinEcore.g:6861:1: ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) ) |
| // InternalOCLinEcore.g:6862:1: (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) |
| { |
| // InternalOCLinEcore.g:6862:1: (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) |
| // InternalOCLinEcore.g:6863:3: lv_ownedParts_4_0= ruleTupleLiteralPartCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_97); |
| lv_ownedParts_4_0=ruleTupleLiteralPartCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTupleLiteralExpCSRule()); |
| } |
| add( |
| current, |
| "ownedParts", |
| lv_ownedParts_4_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TupleLiteralPartCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop164; |
| } |
| } while (true); |
| |
| otherlv_5=(Token)match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_5, grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4()); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleTupleLiteralExpCS" |
| |
| |
| // $ANTLR start "entryRuleTupleLiteralPartCS" |
| // InternalOCLinEcore.g:6891:1: entryRuleTupleLiteralPartCS returns [EObject current=null] : iv_ruleTupleLiteralPartCS= ruleTupleLiteralPartCS EOF ; |
| public final EObject entryRuleTupleLiteralPartCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleTupleLiteralPartCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:6892:2: (iv_ruleTupleLiteralPartCS= ruleTupleLiteralPartCS EOF ) |
| // InternalOCLinEcore.g:6893:2: iv_ruleTupleLiteralPartCS= ruleTupleLiteralPartCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getTupleLiteralPartCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleTupleLiteralPartCS=ruleTupleLiteralPartCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleTupleLiteralPartCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleTupleLiteralPartCS" |
| |
| |
| // $ANTLR start "ruleTupleLiteralPartCS" |
| // InternalOCLinEcore.g:6900:1: ruleTupleLiteralPartCS returns [EObject current=null] : ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) ) ; |
| public final EObject ruleTupleLiteralPartCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| Token otherlv_3=null; |
| AntlrDatatypeRuleToken lv_name_0_0 = null; |
| |
| EObject lv_ownedType_2_0 = null; |
| |
| EObject lv_ownedInitExpression_4_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:6903:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) ) ) |
| // InternalOCLinEcore.g:6904:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) ) |
| { |
| // InternalOCLinEcore.g:6904:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) ) |
| // InternalOCLinEcore.g:6904:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) |
| { |
| // InternalOCLinEcore.g:6904:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:6905:1: (lv_name_0_0= ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:6905:1: (lv_name_0_0= ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:6906:3: lv_name_0_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_105); |
| lv_name_0_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_0_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:6922:2: (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? |
| int alt165=2; |
| int LA165_0 = input.LA(1); |
| |
| if ( (LA165_0==56) ) { |
| alt165=1; |
| } |
| switch (alt165) { |
| case 1 : |
| // InternalOCLinEcore.g:6922:4: otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) |
| { |
| otherlv_1=(Token)match(input,56,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:6926:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) ) |
| // InternalOCLinEcore.g:6927:1: (lv_ownedType_2_0= ruleTypeExpCS ) |
| { |
| // InternalOCLinEcore.g:6927:1: (lv_ownedType_2_0= ruleTypeExpCS ) |
| // InternalOCLinEcore.g:6928:3: lv_ownedType_2_0= ruleTypeExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_42); |
| lv_ownedType_2_0=ruleTypeExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule()); |
| } |
| set( |
| current, |
| "ownedType", |
| lv_ownedType_2_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_3=(Token)match(input,62,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_3, grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2()); |
| |
| } |
| // InternalOCLinEcore.g:6948:1: ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:6949:1: (lv_ownedInitExpression_4_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:6949:1: (lv_ownedInitExpression_4_0= ruleExpCS ) |
| // InternalOCLinEcore.g:6950:3: lv_ownedInitExpression_4_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedInitExpression_4_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule()); |
| } |
| set( |
| current, |
| "ownedInitExpression", |
| lv_ownedInitExpression_4_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleTupleLiteralPartCS" |
| |
| |
| // $ANTLR start "entryRuleNumberLiteralExpCS" |
| // InternalOCLinEcore.g:6974:1: entryRuleNumberLiteralExpCS returns [EObject current=null] : iv_ruleNumberLiteralExpCS= ruleNumberLiteralExpCS EOF ; |
| public final EObject entryRuleNumberLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleNumberLiteralExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:6975:2: (iv_ruleNumberLiteralExpCS= ruleNumberLiteralExpCS EOF ) |
| // InternalOCLinEcore.g:6976:2: iv_ruleNumberLiteralExpCS= ruleNumberLiteralExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getNumberLiteralExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleNumberLiteralExpCS=ruleNumberLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleNumberLiteralExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleNumberLiteralExpCS" |
| |
| |
| // $ANTLR start "ruleNumberLiteralExpCS" |
| // InternalOCLinEcore.g:6983:1: ruleNumberLiteralExpCS returns [EObject current=null] : ( (lv_symbol_0_0= ruleNUMBER_LITERAL ) ) ; |
| public final EObject ruleNumberLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| AntlrDatatypeRuleToken lv_symbol_0_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:6986:28: ( ( (lv_symbol_0_0= ruleNUMBER_LITERAL ) ) ) |
| // InternalOCLinEcore.g:6987:1: ( (lv_symbol_0_0= ruleNUMBER_LITERAL ) ) |
| { |
| // InternalOCLinEcore.g:6987:1: ( (lv_symbol_0_0= ruleNUMBER_LITERAL ) ) |
| // InternalOCLinEcore.g:6988:1: (lv_symbol_0_0= ruleNUMBER_LITERAL ) |
| { |
| // InternalOCLinEcore.g:6988:1: (lv_symbol_0_0= ruleNUMBER_LITERAL ) |
| // InternalOCLinEcore.g:6989:3: lv_symbol_0_0= ruleNUMBER_LITERAL |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_symbol_0_0=ruleNUMBER_LITERAL(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNumberLiteralExpCSRule()); |
| } |
| set( |
| current, |
| "symbol", |
| lv_symbol_0_0, |
| "org.eclipse.ocl.xtext.base.Base.NUMBER_LITERAL"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleNumberLiteralExpCS" |
| |
| |
| // $ANTLR start "entryRuleStringLiteralExpCS" |
| // InternalOCLinEcore.g:7013:1: entryRuleStringLiteralExpCS returns [EObject current=null] : iv_ruleStringLiteralExpCS= ruleStringLiteralExpCS EOF ; |
| public final EObject entryRuleStringLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleStringLiteralExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:7014:2: (iv_ruleStringLiteralExpCS= ruleStringLiteralExpCS EOF ) |
| // InternalOCLinEcore.g:7015:2: iv_ruleStringLiteralExpCS= ruleStringLiteralExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getStringLiteralExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleStringLiteralExpCS=ruleStringLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleStringLiteralExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleStringLiteralExpCS" |
| |
| |
| // $ANTLR start "ruleStringLiteralExpCS" |
| // InternalOCLinEcore.g:7022:1: ruleStringLiteralExpCS returns [EObject current=null] : ( (lv_segments_0_0= ruleStringLiteral ) )+ ; |
| public final EObject ruleStringLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| AntlrDatatypeRuleToken lv_segments_0_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:7025:28: ( ( (lv_segments_0_0= ruleStringLiteral ) )+ ) |
| // InternalOCLinEcore.g:7026:1: ( (lv_segments_0_0= ruleStringLiteral ) )+ |
| { |
| // InternalOCLinEcore.g:7026:1: ( (lv_segments_0_0= ruleStringLiteral ) )+ |
| int cnt166=0; |
| loop166: |
| do { |
| int alt166=2; |
| int LA166_0 = input.LA(1); |
| |
| if ( (LA166_0==RULE_SINGLE_QUOTED_STRING) ) { |
| alt166=1; |
| } |
| |
| |
| switch (alt166) { |
| case 1 : |
| // InternalOCLinEcore.g:7027:1: (lv_segments_0_0= ruleStringLiteral ) |
| { |
| // InternalOCLinEcore.g:7027:1: (lv_segments_0_0= ruleStringLiteral ) |
| // InternalOCLinEcore.g:7028:3: lv_segments_0_0= ruleStringLiteral |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_106); |
| lv_segments_0_0=ruleStringLiteral(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getStringLiteralExpCSRule()); |
| } |
| add( |
| current, |
| "segments", |
| lv_segments_0_0, |
| "org.eclipse.ocl.xtext.base.Base.StringLiteral"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| if ( cnt166 >= 1 ) break loop166; |
| if (state.backtracking>0) {state.failed=true; return current;} |
| EarlyExitException eee = |
| new EarlyExitException(166, input); |
| throw eee; |
| } |
| cnt166++; |
| } while (true); |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleStringLiteralExpCS" |
| |
| |
| // $ANTLR start "entryRuleBooleanLiteralExpCS" |
| // InternalOCLinEcore.g:7052:1: entryRuleBooleanLiteralExpCS returns [EObject current=null] : iv_ruleBooleanLiteralExpCS= ruleBooleanLiteralExpCS EOF ; |
| public final EObject entryRuleBooleanLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleBooleanLiteralExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:7053:2: (iv_ruleBooleanLiteralExpCS= ruleBooleanLiteralExpCS EOF ) |
| // InternalOCLinEcore.g:7054:2: iv_ruleBooleanLiteralExpCS= ruleBooleanLiteralExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getBooleanLiteralExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleBooleanLiteralExpCS=ruleBooleanLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleBooleanLiteralExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleBooleanLiteralExpCS" |
| |
| |
| // $ANTLR start "ruleBooleanLiteralExpCS" |
| // InternalOCLinEcore.g:7061:1: ruleBooleanLiteralExpCS returns [EObject current=null] : ( ( (lv_symbol_0_0= 'true' ) ) | ( (lv_symbol_1_0= 'false' ) ) ) ; |
| public final EObject ruleBooleanLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token lv_symbol_0_0=null; |
| Token lv_symbol_1_0=null; |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:7064:28: ( ( ( (lv_symbol_0_0= 'true' ) ) | ( (lv_symbol_1_0= 'false' ) ) ) ) |
| // InternalOCLinEcore.g:7065:1: ( ( (lv_symbol_0_0= 'true' ) ) | ( (lv_symbol_1_0= 'false' ) ) ) |
| { |
| // InternalOCLinEcore.g:7065:1: ( ( (lv_symbol_0_0= 'true' ) ) | ( (lv_symbol_1_0= 'false' ) ) ) |
| int alt167=2; |
| int LA167_0 = input.LA(1); |
| |
| if ( (LA167_0==118) ) { |
| alt167=1; |
| } |
| else if ( (LA167_0==119) ) { |
| alt167=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 167, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt167) { |
| case 1 : |
| // InternalOCLinEcore.g:7065:2: ( (lv_symbol_0_0= 'true' ) ) |
| { |
| // InternalOCLinEcore.g:7065:2: ( (lv_symbol_0_0= 'true' ) ) |
| // InternalOCLinEcore.g:7066:1: (lv_symbol_0_0= 'true' ) |
| { |
| // InternalOCLinEcore.g:7066:1: (lv_symbol_0_0= 'true' ) |
| // InternalOCLinEcore.g:7067:3: lv_symbol_0_0= 'true' |
| { |
| lv_symbol_0_0=(Token)match(input,118,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_symbol_0_0, grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getBooleanLiteralExpCSRule()); |
| } |
| setWithLastConsumed(current, "symbol", lv_symbol_0_0, "true"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:7081:6: ( (lv_symbol_1_0= 'false' ) ) |
| { |
| // InternalOCLinEcore.g:7081:6: ( (lv_symbol_1_0= 'false' ) ) |
| // InternalOCLinEcore.g:7082:1: (lv_symbol_1_0= 'false' ) |
| { |
| // InternalOCLinEcore.g:7082:1: (lv_symbol_1_0= 'false' ) |
| // InternalOCLinEcore.g:7083:3: lv_symbol_1_0= 'false' |
| { |
| lv_symbol_1_0=(Token)match(input,119,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_symbol_1_0, grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getBooleanLiteralExpCSRule()); |
| } |
| setWithLastConsumed(current, "symbol", lv_symbol_1_0, "false"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleBooleanLiteralExpCS" |
| |
| |
| // $ANTLR start "entryRuleUnlimitedNaturalLiteralExpCS" |
| // InternalOCLinEcore.g:7104:1: entryRuleUnlimitedNaturalLiteralExpCS returns [EObject current=null] : iv_ruleUnlimitedNaturalLiteralExpCS= ruleUnlimitedNaturalLiteralExpCS EOF ; |
| public final EObject entryRuleUnlimitedNaturalLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleUnlimitedNaturalLiteralExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:7105:2: (iv_ruleUnlimitedNaturalLiteralExpCS= ruleUnlimitedNaturalLiteralExpCS EOF ) |
| // InternalOCLinEcore.g:7106:2: iv_ruleUnlimitedNaturalLiteralExpCS= ruleUnlimitedNaturalLiteralExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleUnlimitedNaturalLiteralExpCS=ruleUnlimitedNaturalLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleUnlimitedNaturalLiteralExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleUnlimitedNaturalLiteralExpCS" |
| |
| |
| // $ANTLR start "ruleUnlimitedNaturalLiteralExpCS" |
| // InternalOCLinEcore.g:7113:1: ruleUnlimitedNaturalLiteralExpCS returns [EObject current=null] : ( () otherlv_1= '*' ) ; |
| public final EObject ruleUnlimitedNaturalLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:7116:28: ( ( () otherlv_1= '*' ) ) |
| // InternalOCLinEcore.g:7117:1: ( () otherlv_1= '*' ) |
| { |
| // InternalOCLinEcore.g:7117:1: ( () otherlv_1= '*' ) |
| // InternalOCLinEcore.g:7117:2: () otherlv_1= '*' |
| { |
| // InternalOCLinEcore.g:7117:2: () |
| // InternalOCLinEcore.g:7118:2: |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| current = forceCreateModelElement( |
| grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0(), |
| current); |
| |
| } |
| |
| } |
| |
| otherlv_1=(Token)match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1()); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleUnlimitedNaturalLiteralExpCS" |
| |
| |
| // $ANTLR start "entryRuleInvalidLiteralExpCS" |
| // InternalOCLinEcore.g:7138:1: entryRuleInvalidLiteralExpCS returns [EObject current=null] : iv_ruleInvalidLiteralExpCS= ruleInvalidLiteralExpCS EOF ; |
| public final EObject entryRuleInvalidLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleInvalidLiteralExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:7139:2: (iv_ruleInvalidLiteralExpCS= ruleInvalidLiteralExpCS EOF ) |
| // InternalOCLinEcore.g:7140:2: iv_ruleInvalidLiteralExpCS= ruleInvalidLiteralExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getInvalidLiteralExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleInvalidLiteralExpCS=ruleInvalidLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleInvalidLiteralExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleInvalidLiteralExpCS" |
| |
| |
| // $ANTLR start "ruleInvalidLiteralExpCS" |
| // InternalOCLinEcore.g:7147:1: ruleInvalidLiteralExpCS returns [EObject current=null] : ( () otherlv_1= 'invalid' ) ; |
| public final EObject ruleInvalidLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:7150:28: ( ( () otherlv_1= 'invalid' ) ) |
| // InternalOCLinEcore.g:7151:1: ( () otherlv_1= 'invalid' ) |
| { |
| // InternalOCLinEcore.g:7151:1: ( () otherlv_1= 'invalid' ) |
| // InternalOCLinEcore.g:7151:2: () otherlv_1= 'invalid' |
| { |
| // InternalOCLinEcore.g:7151:2: () |
| // InternalOCLinEcore.g:7152:2: |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| current = forceCreateModelElement( |
| grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0(), |
| current); |
| |
| } |
| |
| } |
| |
| otherlv_1=(Token)match(input,120,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1()); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleInvalidLiteralExpCS" |
| |
| |
| // $ANTLR start "entryRuleNullLiteralExpCS" |
| // InternalOCLinEcore.g:7172:1: entryRuleNullLiteralExpCS returns [EObject current=null] : iv_ruleNullLiteralExpCS= ruleNullLiteralExpCS EOF ; |
| public final EObject entryRuleNullLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleNullLiteralExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:7173:2: (iv_ruleNullLiteralExpCS= ruleNullLiteralExpCS EOF ) |
| // InternalOCLinEcore.g:7174:2: iv_ruleNullLiteralExpCS= ruleNullLiteralExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getNullLiteralExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleNullLiteralExpCS=ruleNullLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleNullLiteralExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleNullLiteralExpCS" |
| |
| |
| // $ANTLR start "ruleNullLiteralExpCS" |
| // InternalOCLinEcore.g:7181:1: ruleNullLiteralExpCS returns [EObject current=null] : ( () otherlv_1= 'null' ) ; |
| public final EObject ruleNullLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:7184:28: ( ( () otherlv_1= 'null' ) ) |
| // InternalOCLinEcore.g:7185:1: ( () otherlv_1= 'null' ) |
| { |
| // InternalOCLinEcore.g:7185:1: ( () otherlv_1= 'null' ) |
| // InternalOCLinEcore.g:7185:2: () otherlv_1= 'null' |
| { |
| // InternalOCLinEcore.g:7185:2: () |
| // InternalOCLinEcore.g:7186:2: |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| current = forceCreateModelElement( |
| grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0(), |
| current); |
| |
| } |
| |
| } |
| |
| otherlv_1=(Token)match(input,121,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1()); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleNullLiteralExpCS" |
| |
| |
| // $ANTLR start "entryRuleTypeLiteralCS" |
| // InternalOCLinEcore.g:7206:1: entryRuleTypeLiteralCS returns [EObject current=null] : iv_ruleTypeLiteralCS= ruleTypeLiteralCS EOF ; |
| public final EObject entryRuleTypeLiteralCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleTypeLiteralCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:7207:2: (iv_ruleTypeLiteralCS= ruleTypeLiteralCS EOF ) |
| // InternalOCLinEcore.g:7208:2: iv_ruleTypeLiteralCS= ruleTypeLiteralCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getTypeLiteralCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleTypeLiteralCS=ruleTypeLiteralCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleTypeLiteralCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleTypeLiteralCS" |
| |
| |
| // $ANTLR start "ruleTypeLiteralCS" |
| // InternalOCLinEcore.g:7215:1: ruleTypeLiteralCS returns [EObject current=null] : (this_PrimitiveTypeCS_0= rulePrimitiveTypeCS | this_CollectionTypeCS_1= ruleCollectionTypeCS | this_MapTypeCS_2= ruleMapTypeCS | this_TupleTypeCS_3= ruleTupleTypeCS ) ; |
| public final EObject ruleTypeLiteralCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject this_PrimitiveTypeCS_0 = null; |
| |
| EObject this_CollectionTypeCS_1 = null; |
| |
| EObject this_MapTypeCS_2 = null; |
| |
| EObject this_TupleTypeCS_3 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:7218:28: ( (this_PrimitiveTypeCS_0= rulePrimitiveTypeCS | this_CollectionTypeCS_1= ruleCollectionTypeCS | this_MapTypeCS_2= ruleMapTypeCS | this_TupleTypeCS_3= ruleTupleTypeCS ) ) |
| // InternalOCLinEcore.g:7219:1: (this_PrimitiveTypeCS_0= rulePrimitiveTypeCS | this_CollectionTypeCS_1= ruleCollectionTypeCS | this_MapTypeCS_2= ruleMapTypeCS | this_TupleTypeCS_3= ruleTupleTypeCS ) |
| { |
| // InternalOCLinEcore.g:7219:1: (this_PrimitiveTypeCS_0= rulePrimitiveTypeCS | this_CollectionTypeCS_1= ruleCollectionTypeCS | this_MapTypeCS_2= ruleMapTypeCS | this_TupleTypeCS_3= ruleTupleTypeCS ) |
| int alt168=4; |
| switch ( input.LA(1) ) { |
| case 101: |
| case 102: |
| case 103: |
| case 104: |
| case 105: |
| case 106: |
| case 107: |
| case 108: |
| { |
| alt168=1; |
| } |
| break; |
| case 109: |
| case 110: |
| case 111: |
| case 112: |
| case 113: |
| { |
| alt168=2; |
| } |
| break; |
| case 98: |
| { |
| alt168=3; |
| } |
| break; |
| case 99: |
| { |
| alt168=4; |
| } |
| break; |
| default: |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 168, 0, input); |
| |
| throw nvae; |
| } |
| |
| switch (alt168) { |
| case 1 : |
| // InternalOCLinEcore.g:7220:2: this_PrimitiveTypeCS_0= rulePrimitiveTypeCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_PrimitiveTypeCS_0=rulePrimitiveTypeCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_PrimitiveTypeCS_0; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:7233:2: this_CollectionTypeCS_1= ruleCollectionTypeCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_CollectionTypeCS_1=ruleCollectionTypeCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_CollectionTypeCS_1; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:7246:2: this_MapTypeCS_2= ruleMapTypeCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_MapTypeCS_2=ruleMapTypeCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_MapTypeCS_2; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 4 : |
| // InternalOCLinEcore.g:7259:2: this_TupleTypeCS_3= ruleTupleTypeCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_TupleTypeCS_3=ruleTupleTypeCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_TupleTypeCS_3; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleTypeLiteralCS" |
| |
| |
| // $ANTLR start "entryRuleTypeLiteralWithMultiplicityCS" |
| // InternalOCLinEcore.g:7278:1: entryRuleTypeLiteralWithMultiplicityCS returns [EObject current=null] : iv_ruleTypeLiteralWithMultiplicityCS= ruleTypeLiteralWithMultiplicityCS EOF ; |
| public final EObject entryRuleTypeLiteralWithMultiplicityCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleTypeLiteralWithMultiplicityCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:7279:2: (iv_ruleTypeLiteralWithMultiplicityCS= ruleTypeLiteralWithMultiplicityCS EOF ) |
| // InternalOCLinEcore.g:7280:2: iv_ruleTypeLiteralWithMultiplicityCS= ruleTypeLiteralWithMultiplicityCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleTypeLiteralWithMultiplicityCS=ruleTypeLiteralWithMultiplicityCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleTypeLiteralWithMultiplicityCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleTypeLiteralWithMultiplicityCS" |
| |
| |
| // $ANTLR start "ruleTypeLiteralWithMultiplicityCS" |
| // InternalOCLinEcore.g:7287:1: ruleTypeLiteralWithMultiplicityCS returns [EObject current=null] : (this_TypeLiteralCS_0= ruleTypeLiteralCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? ) ; |
| public final EObject ruleTypeLiteralWithMultiplicityCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject this_TypeLiteralCS_0 = null; |
| |
| EObject lv_ownedMultiplicity_1_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:7290:28: ( (this_TypeLiteralCS_0= ruleTypeLiteralCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? ) ) |
| // InternalOCLinEcore.g:7291:1: (this_TypeLiteralCS_0= ruleTypeLiteralCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? ) |
| { |
| // InternalOCLinEcore.g:7291:1: (this_TypeLiteralCS_0= ruleTypeLiteralCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? ) |
| // InternalOCLinEcore.g:7292:2: this_TypeLiteralCS_0= ruleTypeLiteralCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_85); |
| this_TypeLiteralCS_0=ruleTypeLiteralCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_TypeLiteralCS_0; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| // InternalOCLinEcore.g:7303:1: ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? |
| int alt169=2; |
| int LA169_0 = input.LA(1); |
| |
| if ( (LA169_0==124) ) { |
| alt169=1; |
| } |
| switch (alt169) { |
| case 1 : |
| // InternalOCLinEcore.g:7304:1: (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) |
| { |
| // InternalOCLinEcore.g:7304:1: (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) |
| // InternalOCLinEcore.g:7305:3: lv_ownedMultiplicity_1_0= ruleMultiplicityCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedMultiplicity_1_0=ruleMultiplicityCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); |
| } |
| set( |
| current, |
| "ownedMultiplicity", |
| lv_ownedMultiplicity_1_0, |
| "org.eclipse.ocl.xtext.base.Base.MultiplicityCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleTypeLiteralWithMultiplicityCS" |
| |
| |
| // $ANTLR start "entryRuleTypeLiteralExpCS" |
| // InternalOCLinEcore.g:7329:1: entryRuleTypeLiteralExpCS returns [EObject current=null] : iv_ruleTypeLiteralExpCS= ruleTypeLiteralExpCS EOF ; |
| public final EObject entryRuleTypeLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleTypeLiteralExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:7330:2: (iv_ruleTypeLiteralExpCS= ruleTypeLiteralExpCS EOF ) |
| // InternalOCLinEcore.g:7331:2: iv_ruleTypeLiteralExpCS= ruleTypeLiteralExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getTypeLiteralExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleTypeLiteralExpCS=ruleTypeLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleTypeLiteralExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleTypeLiteralExpCS" |
| |
| |
| // $ANTLR start "ruleTypeLiteralExpCS" |
| // InternalOCLinEcore.g:7338:1: ruleTypeLiteralExpCS returns [EObject current=null] : ( (lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS ) ) ; |
| public final EObject ruleTypeLiteralExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject lv_ownedType_0_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:7341:28: ( ( (lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS ) ) ) |
| // InternalOCLinEcore.g:7342:1: ( (lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS ) ) |
| { |
| // InternalOCLinEcore.g:7342:1: ( (lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS ) ) |
| // InternalOCLinEcore.g:7343:1: (lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS ) |
| { |
| // InternalOCLinEcore.g:7343:1: (lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS ) |
| // InternalOCLinEcore.g:7344:3: lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedType_0_0=ruleTypeLiteralWithMultiplicityCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTypeLiteralExpCSRule()); |
| } |
| set( |
| current, |
| "ownedType", |
| lv_ownedType_0_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeLiteralWithMultiplicityCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleTypeLiteralExpCS" |
| |
| |
| // $ANTLR start "entryRuleTypeNameExpCS" |
| // InternalOCLinEcore.g:7368:1: entryRuleTypeNameExpCS returns [EObject current=null] : iv_ruleTypeNameExpCS= ruleTypeNameExpCS EOF ; |
| public final EObject entryRuleTypeNameExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleTypeNameExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:7369:2: (iv_ruleTypeNameExpCS= ruleTypeNameExpCS EOF ) |
| // InternalOCLinEcore.g:7370:2: iv_ruleTypeNameExpCS= ruleTypeNameExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getTypeNameExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleTypeNameExpCS=ruleTypeNameExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleTypeNameExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleTypeNameExpCS" |
| |
| |
| // $ANTLR start "ruleTypeNameExpCS" |
| // InternalOCLinEcore.g:7377:1: ruleTypeNameExpCS returns [EObject current=null] : ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )? )? ) ; |
| public final EObject ruleTypeNameExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_2=null; |
| Token otherlv_4=null; |
| EObject lv_ownedPathName_0_0 = null; |
| |
| EObject lv_ownedCurlyBracketedClause_1_0 = null; |
| |
| EObject lv_ownedPatternGuard_3_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:7380:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )? )? ) ) |
| // InternalOCLinEcore.g:7381:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )? )? ) |
| { |
| // InternalOCLinEcore.g:7381:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )? )? ) |
| // InternalOCLinEcore.g:7381:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )? )? |
| { |
| // InternalOCLinEcore.g:7381:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) ) |
| // InternalOCLinEcore.g:7382:1: (lv_ownedPathName_0_0= rulePathNameCS ) |
| { |
| // InternalOCLinEcore.g:7382:1: (lv_ownedPathName_0_0= rulePathNameCS ) |
| // InternalOCLinEcore.g:7383:3: lv_ownedPathName_0_0= rulePathNameCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_65); |
| lv_ownedPathName_0_0=rulePathNameCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule()); |
| } |
| set( |
| current, |
| "ownedPathName", |
| lv_ownedPathName_0_0, |
| "org.eclipse.ocl.xtext.base.Base.PathNameCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:7399:2: ( ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )? )? |
| int alt171=2; |
| int LA171_0 = input.LA(1); |
| |
| if ( (LA171_0==60) ) { |
| alt171=1; |
| } |
| switch (alt171) { |
| case 1 : |
| // InternalOCLinEcore.g:7399:3: ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )? |
| { |
| // InternalOCLinEcore.g:7399:3: ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) |
| // InternalOCLinEcore.g:7400:1: (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) |
| { |
| // InternalOCLinEcore.g:7400:1: (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) |
| // InternalOCLinEcore.g:7401:3: lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_65); |
| lv_ownedCurlyBracketedClause_1_0=ruleCurlyBracketedClauseCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule()); |
| } |
| set( |
| current, |
| "ownedCurlyBracketedClause", |
| lv_ownedCurlyBracketedClause_1_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CurlyBracketedClauseCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:7417:2: (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )? |
| int alt170=2; |
| int LA170_0 = input.LA(1); |
| |
| if ( (LA170_0==60) ) { |
| alt170=1; |
| } |
| switch (alt170) { |
| case 1 : |
| // InternalOCLinEcore.g:7417:4: otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' |
| { |
| otherlv_2=(Token)match(input,60,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_2, grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:7421:1: ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:7422:1: (lv_ownedPatternGuard_3_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:7422:1: (lv_ownedPatternGuard_3_0= ruleExpCS ) |
| // InternalOCLinEcore.g:7423:3: lv_ownedPatternGuard_3_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_40); |
| lv_ownedPatternGuard_3_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule()); |
| } |
| set( |
| current, |
| "ownedPatternGuard", |
| lv_ownedPatternGuard_3_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_4=(Token)match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_4, grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleTypeNameExpCS" |
| |
| |
| // $ANTLR start "entryRuleTypeExpWithoutMultiplicityCS" |
| // InternalOCLinEcore.g:7451:1: entryRuleTypeExpWithoutMultiplicityCS returns [EObject current=null] : iv_ruleTypeExpWithoutMultiplicityCS= ruleTypeExpWithoutMultiplicityCS EOF ; |
| public final EObject entryRuleTypeExpWithoutMultiplicityCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleTypeExpWithoutMultiplicityCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:7452:2: (iv_ruleTypeExpWithoutMultiplicityCS= ruleTypeExpWithoutMultiplicityCS EOF ) |
| // InternalOCLinEcore.g:7453:2: iv_ruleTypeExpWithoutMultiplicityCS= ruleTypeExpWithoutMultiplicityCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getTypeExpWithoutMultiplicityCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleTypeExpWithoutMultiplicityCS=ruleTypeExpWithoutMultiplicityCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleTypeExpWithoutMultiplicityCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleTypeExpWithoutMultiplicityCS" |
| |
| |
| // $ANTLR start "ruleTypeExpWithoutMultiplicityCS" |
| // InternalOCLinEcore.g:7460:1: ruleTypeExpWithoutMultiplicityCS returns [EObject current=null] : (this_TypeNameExpCS_0= ruleTypeNameExpCS | this_TypeLiteralCS_1= ruleTypeLiteralCS | this_CollectionPatternCS_2= ruleCollectionPatternCS ) ; |
| public final EObject ruleTypeExpWithoutMultiplicityCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject this_TypeNameExpCS_0 = null; |
| |
| EObject this_TypeLiteralCS_1 = null; |
| |
| EObject this_CollectionPatternCS_2 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:7463:28: ( (this_TypeNameExpCS_0= ruleTypeNameExpCS | this_TypeLiteralCS_1= ruleTypeLiteralCS | this_CollectionPatternCS_2= ruleCollectionPatternCS ) ) |
| // InternalOCLinEcore.g:7464:1: (this_TypeNameExpCS_0= ruleTypeNameExpCS | this_TypeLiteralCS_1= ruleTypeLiteralCS | this_CollectionPatternCS_2= ruleCollectionPatternCS ) |
| { |
| // InternalOCLinEcore.g:7464:1: (this_TypeNameExpCS_0= ruleTypeNameExpCS | this_TypeLiteralCS_1= ruleTypeLiteralCS | this_CollectionPatternCS_2= ruleCollectionPatternCS ) |
| int alt172=3; |
| alt172 = dfa172.predict(input); |
| switch (alt172) { |
| case 1 : |
| // InternalOCLinEcore.g:7465:2: this_TypeNameExpCS_0= ruleTypeNameExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypeExpWithoutMultiplicityCSAccess().getTypeNameExpCSParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_TypeNameExpCS_0=ruleTypeNameExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_TypeNameExpCS_0; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:7478:2: this_TypeLiteralCS_1= ruleTypeLiteralCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypeExpWithoutMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_TypeLiteralCS_1=ruleTypeLiteralCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_TypeLiteralCS_1; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:7491:2: this_CollectionPatternCS_2= ruleCollectionPatternCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypeExpWithoutMultiplicityCSAccess().getCollectionPatternCSParserRuleCall_2()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_CollectionPatternCS_2=ruleCollectionPatternCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_CollectionPatternCS_2; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleTypeExpWithoutMultiplicityCS" |
| |
| |
| // $ANTLR start "entryRuleTypeExpCS" |
| // InternalOCLinEcore.g:7510:1: entryRuleTypeExpCS returns [EObject current=null] : iv_ruleTypeExpCS= ruleTypeExpCS EOF ; |
| public final EObject entryRuleTypeExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleTypeExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:7511:2: (iv_ruleTypeExpCS= ruleTypeExpCS EOF ) |
| // InternalOCLinEcore.g:7512:2: iv_ruleTypeExpCS= ruleTypeExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getTypeExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleTypeExpCS=ruleTypeExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleTypeExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleTypeExpCS" |
| |
| |
| // $ANTLR start "ruleTypeExpCS" |
| // InternalOCLinEcore.g:7519:1: ruleTypeExpCS returns [EObject current=null] : (this_TypeExpWithoutMultiplicityCS_0= ruleTypeExpWithoutMultiplicityCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? ) ; |
| public final EObject ruleTypeExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject this_TypeExpWithoutMultiplicityCS_0 = null; |
| |
| EObject lv_ownedMultiplicity_1_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:7522:28: ( (this_TypeExpWithoutMultiplicityCS_0= ruleTypeExpWithoutMultiplicityCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? ) ) |
| // InternalOCLinEcore.g:7523:1: (this_TypeExpWithoutMultiplicityCS_0= ruleTypeExpWithoutMultiplicityCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? ) |
| { |
| // InternalOCLinEcore.g:7523:1: (this_TypeExpWithoutMultiplicityCS_0= ruleTypeExpWithoutMultiplicityCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? ) |
| // InternalOCLinEcore.g:7524:2: this_TypeExpWithoutMultiplicityCS_0= ruleTypeExpWithoutMultiplicityCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeExpWithoutMultiplicityCSParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_85); |
| this_TypeExpWithoutMultiplicityCS_0=ruleTypeExpWithoutMultiplicityCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_TypeExpWithoutMultiplicityCS_0; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| // InternalOCLinEcore.g:7535:1: ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? |
| int alt173=2; |
| int LA173_0 = input.LA(1); |
| |
| if ( (LA173_0==124) ) { |
| alt173=1; |
| } |
| switch (alt173) { |
| case 1 : |
| // InternalOCLinEcore.g:7536:1: (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) |
| { |
| // InternalOCLinEcore.g:7536:1: (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) |
| // InternalOCLinEcore.g:7537:3: lv_ownedMultiplicity_1_0= ruleMultiplicityCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedMultiplicity_1_0=ruleMultiplicityCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTypeExpCSRule()); |
| } |
| set( |
| current, |
| "ownedMultiplicity", |
| lv_ownedMultiplicity_1_0, |
| "org.eclipse.ocl.xtext.base.Base.MultiplicityCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleTypeExpCS" |
| |
| |
| // $ANTLR start "entryRuleExpCS" |
| // InternalOCLinEcore.g:7561:1: entryRuleExpCS returns [EObject current=null] : iv_ruleExpCS= ruleExpCS EOF ; |
| public final EObject entryRuleExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:7562:2: (iv_ruleExpCS= ruleExpCS EOF ) |
| // InternalOCLinEcore.g:7563:2: iv_ruleExpCS= ruleExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleExpCS=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleExpCS" |
| |
| |
| // $ANTLR start "ruleExpCS" |
| // InternalOCLinEcore.g:7570:1: ruleExpCS returns [EObject current=null] : ( (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) | this_PrefixedLetExpCS_4= rulePrefixedLetExpCS ) ; |
| public final EObject ruleExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject this_PrefixedPrimaryExpCS_0 = null; |
| |
| AntlrDatatypeRuleToken lv_name_2_0 = null; |
| |
| EObject lv_ownedRight_3_0 = null; |
| |
| EObject this_PrefixedLetExpCS_4 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:7573:28: ( ( (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) | this_PrefixedLetExpCS_4= rulePrefixedLetExpCS ) ) |
| // InternalOCLinEcore.g:7574:1: ( (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) | this_PrefixedLetExpCS_4= rulePrefixedLetExpCS ) |
| { |
| // InternalOCLinEcore.g:7574:1: ( (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) | this_PrefixedLetExpCS_4= rulePrefixedLetExpCS ) |
| int alt175=2; |
| alt175 = dfa175.predict(input); |
| switch (alt175) { |
| case 1 : |
| // InternalOCLinEcore.g:7574:2: (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) |
| { |
| // InternalOCLinEcore.g:7574:2: (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) |
| // InternalOCLinEcore.g:7575:2: this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_107); |
| this_PrefixedPrimaryExpCS_0=rulePrefixedPrimaryExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_PrefixedPrimaryExpCS_0; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| // InternalOCLinEcore.g:7586:1: ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? |
| int alt174=2; |
| int LA174_0 = input.LA(1); |
| |
| if ( (LA174_0==18||LA174_0==62||(LA174_0>=81 && LA174_0<=82)||(LA174_0>=84 && LA174_0<=97)) ) { |
| alt174=1; |
| } |
| switch (alt174) { |
| case 1 : |
| // InternalOCLinEcore.g:7586:2: () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) |
| { |
| // InternalOCLinEcore.g:7586:2: () |
| // InternalOCLinEcore.g:7587:2: |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| current = forceCreateModelElementAndSet( |
| grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0(), |
| current); |
| |
| } |
| |
| } |
| |
| // InternalOCLinEcore.g:7595:2: ( (lv_name_2_0= ruleBinaryOperatorName ) ) |
| // InternalOCLinEcore.g:7596:1: (lv_name_2_0= ruleBinaryOperatorName ) |
| { |
| // InternalOCLinEcore.g:7596:1: (lv_name_2_0= ruleBinaryOperatorName ) |
| // InternalOCLinEcore.g:7597:3: lv_name_2_0= ruleBinaryOperatorName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_100); |
| lv_name_2_0=ruleBinaryOperatorName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getExpCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_2_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.BinaryOperatorName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:7613:2: ( (lv_ownedRight_3_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:7614:1: (lv_ownedRight_3_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:7614:1: (lv_ownedRight_3_0= ruleExpCS ) |
| // InternalOCLinEcore.g:7615:3: lv_ownedRight_3_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedRight_3_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getExpCSRule()); |
| } |
| set( |
| current, |
| "ownedRight", |
| lv_ownedRight_3_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:7633:2: this_PrefixedLetExpCS_4= rulePrefixedLetExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_PrefixedLetExpCS_4=rulePrefixedLetExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_PrefixedLetExpCS_4; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleExpCS" |
| |
| |
| // $ANTLR start "entryRulePrefixedLetExpCS" |
| // InternalOCLinEcore.g:7652:1: entryRulePrefixedLetExpCS returns [EObject current=null] : iv_rulePrefixedLetExpCS= rulePrefixedLetExpCS EOF ; |
| public final EObject entryRulePrefixedLetExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_rulePrefixedLetExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:7653:2: (iv_rulePrefixedLetExpCS= rulePrefixedLetExpCS EOF ) |
| // InternalOCLinEcore.g:7654:2: iv_rulePrefixedLetExpCS= rulePrefixedLetExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getPrefixedLetExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_rulePrefixedLetExpCS=rulePrefixedLetExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_rulePrefixedLetExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRulePrefixedLetExpCS" |
| |
| |
| // $ANTLR start "rulePrefixedLetExpCS" |
| // InternalOCLinEcore.g:7661:1: rulePrefixedLetExpCS returns [EObject current=null] : ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) ) ) | this_LetExpCS_3= ruleLetExpCS ) ; |
| public final EObject rulePrefixedLetExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| AntlrDatatypeRuleToken lv_name_1_0 = null; |
| |
| EObject lv_ownedRight_2_0 = null; |
| |
| EObject this_LetExpCS_3 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:7664:28: ( ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) ) ) | this_LetExpCS_3= ruleLetExpCS ) ) |
| // InternalOCLinEcore.g:7665:1: ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) ) ) | this_LetExpCS_3= ruleLetExpCS ) |
| { |
| // InternalOCLinEcore.g:7665:1: ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) ) ) | this_LetExpCS_3= ruleLetExpCS ) |
| int alt176=2; |
| int LA176_0 = input.LA(1); |
| |
| if ( (LA176_0==18||LA176_0==83) ) { |
| alt176=1; |
| } |
| else if ( (LA176_0==133) ) { |
| alt176=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 176, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt176) { |
| case 1 : |
| // InternalOCLinEcore.g:7665:2: ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) ) ) |
| { |
| // InternalOCLinEcore.g:7665:2: ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) ) ) |
| // InternalOCLinEcore.g:7665:3: () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) ) |
| { |
| // InternalOCLinEcore.g:7665:3: () |
| // InternalOCLinEcore.g:7666:2: |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| current = forceCreateModelElement( |
| grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0(), |
| current); |
| |
| } |
| |
| } |
| |
| // InternalOCLinEcore.g:7674:2: ( (lv_name_1_0= ruleUnaryOperatorName ) ) |
| // InternalOCLinEcore.g:7675:1: (lv_name_1_0= ruleUnaryOperatorName ) |
| { |
| // InternalOCLinEcore.g:7675:1: (lv_name_1_0= ruleUnaryOperatorName ) |
| // InternalOCLinEcore.g:7676:3: lv_name_1_0= ruleUnaryOperatorName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_100); |
| lv_name_1_0=ruleUnaryOperatorName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getPrefixedLetExpCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_1_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnaryOperatorName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:7692:2: ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) ) |
| // InternalOCLinEcore.g:7693:1: (lv_ownedRight_2_0= rulePrefixedLetExpCS ) |
| { |
| // InternalOCLinEcore.g:7693:1: (lv_ownedRight_2_0= rulePrefixedLetExpCS ) |
| // InternalOCLinEcore.g:7694:3: lv_ownedRight_2_0= rulePrefixedLetExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedRight_2_0=rulePrefixedLetExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getPrefixedLetExpCSRule()); |
| } |
| set( |
| current, |
| "ownedRight", |
| lv_ownedRight_2_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrefixedLetExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:7712:2: this_LetExpCS_3= ruleLetExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_LetExpCS_3=ruleLetExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_LetExpCS_3; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "rulePrefixedLetExpCS" |
| |
| |
| // $ANTLR start "entryRulePrefixedPrimaryExpCS" |
| // InternalOCLinEcore.g:7731:1: entryRulePrefixedPrimaryExpCS returns [EObject current=null] : iv_rulePrefixedPrimaryExpCS= rulePrefixedPrimaryExpCS EOF ; |
| public final EObject entryRulePrefixedPrimaryExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_rulePrefixedPrimaryExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:7732:2: (iv_rulePrefixedPrimaryExpCS= rulePrefixedPrimaryExpCS EOF ) |
| // InternalOCLinEcore.g:7733:2: iv_rulePrefixedPrimaryExpCS= rulePrefixedPrimaryExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_rulePrefixedPrimaryExpCS=rulePrefixedPrimaryExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_rulePrefixedPrimaryExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRulePrefixedPrimaryExpCS" |
| |
| |
| // $ANTLR start "rulePrefixedPrimaryExpCS" |
| // InternalOCLinEcore.g:7740:1: rulePrefixedPrimaryExpCS returns [EObject current=null] : ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) ) ) | this_PrimaryExpCS_3= rulePrimaryExpCS ) ; |
| public final EObject rulePrefixedPrimaryExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| AntlrDatatypeRuleToken lv_name_1_0 = null; |
| |
| EObject lv_ownedRight_2_0 = null; |
| |
| EObject this_PrimaryExpCS_3 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:7743:28: ( ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) ) ) | this_PrimaryExpCS_3= rulePrimaryExpCS ) ) |
| // InternalOCLinEcore.g:7744:1: ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) ) ) | this_PrimaryExpCS_3= rulePrimaryExpCS ) |
| { |
| // InternalOCLinEcore.g:7744:1: ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) ) ) | this_PrimaryExpCS_3= rulePrimaryExpCS ) |
| int alt177=2; |
| int LA177_0 = input.LA(1); |
| |
| if ( (LA177_0==18||LA177_0==83) ) { |
| alt177=1; |
| } |
| else if ( ((LA177_0>=RULE_INT && LA177_0<=RULE_SINGLE_QUOTED_STRING)||(LA177_0>=RULE_SIMPLE_ID && LA177_0<=RULE_ESCAPED_ID)||LA177_0==17||(LA177_0>=19 && LA177_0<=54)||LA177_0==58||LA177_0==71||(LA177_0>=73 && LA177_0<=74)||LA177_0==76||LA177_0==80||LA177_0==84||(LA177_0>=98 && LA177_0<=99)||(LA177_0>=101 && LA177_0<=113)||LA177_0==116||(LA177_0>=118 && LA177_0<=121)||LA177_0==128||LA177_0==134) ) { |
| alt177=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 177, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt177) { |
| case 1 : |
| // InternalOCLinEcore.g:7744:2: ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) ) ) |
| { |
| // InternalOCLinEcore.g:7744:2: ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) ) ) |
| // InternalOCLinEcore.g:7744:3: () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) ) |
| { |
| // InternalOCLinEcore.g:7744:3: () |
| // InternalOCLinEcore.g:7745:2: |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| current = forceCreateModelElement( |
| grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0(), |
| current); |
| |
| } |
| |
| } |
| |
| // InternalOCLinEcore.g:7753:2: ( (lv_name_1_0= ruleUnaryOperatorName ) ) |
| // InternalOCLinEcore.g:7754:1: (lv_name_1_0= ruleUnaryOperatorName ) |
| { |
| // InternalOCLinEcore.g:7754:1: (lv_name_1_0= ruleUnaryOperatorName ) |
| // InternalOCLinEcore.g:7755:3: lv_name_1_0= ruleUnaryOperatorName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_29); |
| lv_name_1_0=ruleUnaryOperatorName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getPrefixedPrimaryExpCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_1_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnaryOperatorName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:7771:2: ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) ) |
| // InternalOCLinEcore.g:7772:1: (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) |
| { |
| // InternalOCLinEcore.g:7772:1: (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) |
| // InternalOCLinEcore.g:7773:3: lv_ownedRight_2_0= rulePrefixedPrimaryExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedRight_2_0=rulePrefixedPrimaryExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getPrefixedPrimaryExpCSRule()); |
| } |
| set( |
| current, |
| "ownedRight", |
| lv_ownedRight_2_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrefixedPrimaryExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:7791:2: this_PrimaryExpCS_3= rulePrimaryExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_PrimaryExpCS_3=rulePrimaryExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_PrimaryExpCS_3; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "rulePrefixedPrimaryExpCS" |
| |
| |
| // $ANTLR start "entryRulePrimaryExpCS" |
| // InternalOCLinEcore.g:7810:1: entryRulePrimaryExpCS returns [EObject current=null] : iv_rulePrimaryExpCS= rulePrimaryExpCS EOF ; |
| public final EObject entryRulePrimaryExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_rulePrimaryExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:7811:2: (iv_rulePrimaryExpCS= rulePrimaryExpCS EOF ) |
| // InternalOCLinEcore.g:7812:2: iv_rulePrimaryExpCS= rulePrimaryExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getPrimaryExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_rulePrimaryExpCS=rulePrimaryExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_rulePrimaryExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRulePrimaryExpCS" |
| |
| |
| // $ANTLR start "rulePrimaryExpCS" |
| // InternalOCLinEcore.g:7819:1: rulePrimaryExpCS returns [EObject current=null] : (this_NestedExpCS_0= ruleNestedExpCS | this_IfExpCS_1= ruleIfExpCS | this_SelfExpCS_2= ruleSelfExpCS | this_PrimitiveLiteralExpCS_3= rulePrimitiveLiteralExpCS | this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS | this_MapLiteralExpCS_5= ruleMapLiteralExpCS | this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS | this_LambdaLiteralExpCS_7= ruleLambdaLiteralExpCS | this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS | this_NameExpCS_9= ruleNameExpCS ) ; |
| public final EObject rulePrimaryExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject this_NestedExpCS_0 = null; |
| |
| EObject this_IfExpCS_1 = null; |
| |
| EObject this_SelfExpCS_2 = null; |
| |
| EObject this_PrimitiveLiteralExpCS_3 = null; |
| |
| EObject this_TupleLiteralExpCS_4 = null; |
| |
| EObject this_MapLiteralExpCS_5 = null; |
| |
| EObject this_CollectionLiteralExpCS_6 = null; |
| |
| EObject this_LambdaLiteralExpCS_7 = null; |
| |
| EObject this_TypeLiteralExpCS_8 = null; |
| |
| EObject this_NameExpCS_9 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:7822:28: ( (this_NestedExpCS_0= ruleNestedExpCS | this_IfExpCS_1= ruleIfExpCS | this_SelfExpCS_2= ruleSelfExpCS | this_PrimitiveLiteralExpCS_3= rulePrimitiveLiteralExpCS | this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS | this_MapLiteralExpCS_5= ruleMapLiteralExpCS | this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS | this_LambdaLiteralExpCS_7= ruleLambdaLiteralExpCS | this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS | this_NameExpCS_9= ruleNameExpCS ) ) |
| // InternalOCLinEcore.g:7823:1: (this_NestedExpCS_0= ruleNestedExpCS | this_IfExpCS_1= ruleIfExpCS | this_SelfExpCS_2= ruleSelfExpCS | this_PrimitiveLiteralExpCS_3= rulePrimitiveLiteralExpCS | this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS | this_MapLiteralExpCS_5= ruleMapLiteralExpCS | this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS | this_LambdaLiteralExpCS_7= ruleLambdaLiteralExpCS | this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS | this_NameExpCS_9= ruleNameExpCS ) |
| { |
| // InternalOCLinEcore.g:7823:1: (this_NestedExpCS_0= ruleNestedExpCS | this_IfExpCS_1= ruleIfExpCS | this_SelfExpCS_2= ruleSelfExpCS | this_PrimitiveLiteralExpCS_3= rulePrimitiveLiteralExpCS | this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS | this_MapLiteralExpCS_5= ruleMapLiteralExpCS | this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS | this_LambdaLiteralExpCS_7= ruleLambdaLiteralExpCS | this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS | this_NameExpCS_9= ruleNameExpCS ) |
| int alt178=10; |
| alt178 = dfa178.predict(input); |
| switch (alt178) { |
| case 1 : |
| // InternalOCLinEcore.g:7824:2: this_NestedExpCS_0= ruleNestedExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_NestedExpCS_0=ruleNestedExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_NestedExpCS_0; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:7837:2: this_IfExpCS_1= ruleIfExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_IfExpCS_1=ruleIfExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_IfExpCS_1; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:7850:2: this_SelfExpCS_2= ruleSelfExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_SelfExpCS_2=ruleSelfExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_SelfExpCS_2; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 4 : |
| // InternalOCLinEcore.g:7863:2: this_PrimitiveLiteralExpCS_3= rulePrimitiveLiteralExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_PrimitiveLiteralExpCS_3=rulePrimitiveLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_PrimitiveLiteralExpCS_3; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 5 : |
| // InternalOCLinEcore.g:7876:2: this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_TupleLiteralExpCS_4=ruleTupleLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_TupleLiteralExpCS_4; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 6 : |
| // InternalOCLinEcore.g:7889:2: this_MapLiteralExpCS_5= ruleMapLiteralExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_MapLiteralExpCS_5=ruleMapLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_MapLiteralExpCS_5; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 7 : |
| // InternalOCLinEcore.g:7902:2: this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_CollectionLiteralExpCS_6=ruleCollectionLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_CollectionLiteralExpCS_6; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 8 : |
| // InternalOCLinEcore.g:7915:2: this_LambdaLiteralExpCS_7= ruleLambdaLiteralExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_LambdaLiteralExpCS_7=ruleLambdaLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_LambdaLiteralExpCS_7; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 9 : |
| // InternalOCLinEcore.g:7928:2: this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_TypeLiteralExpCS_8=ruleTypeLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_TypeLiteralExpCS_8; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 10 : |
| // InternalOCLinEcore.g:7941:2: this_NameExpCS_9= ruleNameExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_NameExpCS_9=ruleNameExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_NameExpCS_9; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "rulePrimaryExpCS" |
| |
| |
| // $ANTLR start "entryRuleNameExpCS" |
| // InternalOCLinEcore.g:7960:1: entryRuleNameExpCS returns [EObject current=null] : iv_ruleNameExpCS= ruleNameExpCS EOF ; |
| public final EObject entryRuleNameExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleNameExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:7961:2: (iv_ruleNameExpCS= ruleNameExpCS EOF ) |
| // InternalOCLinEcore.g:7962:2: iv_ruleNameExpCS= ruleNameExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getNameExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleNameExpCS=ruleNameExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleNameExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleNameExpCS" |
| |
| |
| // $ANTLR start "ruleNameExpCS" |
| // InternalOCLinEcore.g:7969:1: ruleNameExpCS returns [EObject current=null] : ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( (lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS ) )* ( (lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS ) )? ( (lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS ) )? ( ( (lv_isPre_4_0= '@' ) ) otherlv_5= 'pre' )? ) ; |
| public final EObject ruleNameExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token lv_isPre_4_0=null; |
| Token otherlv_5=null; |
| EObject lv_ownedPathName_0_0 = null; |
| |
| EObject lv_ownedSquareBracketedClauses_1_0 = null; |
| |
| EObject lv_ownedRoundBracketedClause_2_0 = null; |
| |
| EObject lv_ownedCurlyBracketedClause_3_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:7972:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( (lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS ) )* ( (lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS ) )? ( (lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS ) )? ( ( (lv_isPre_4_0= '@' ) ) otherlv_5= 'pre' )? ) ) |
| // InternalOCLinEcore.g:7973:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( (lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS ) )* ( (lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS ) )? ( (lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS ) )? ( ( (lv_isPre_4_0= '@' ) ) otherlv_5= 'pre' )? ) |
| { |
| // InternalOCLinEcore.g:7973:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( (lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS ) )* ( (lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS ) )? ( (lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS ) )? ( ( (lv_isPre_4_0= '@' ) ) otherlv_5= 'pre' )? ) |
| // InternalOCLinEcore.g:7973:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( (lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS ) )* ( (lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS ) )? ( (lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS ) )? ( ( (lv_isPre_4_0= '@' ) ) otherlv_5= 'pre' )? |
| { |
| // InternalOCLinEcore.g:7973:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) ) |
| // InternalOCLinEcore.g:7974:1: (lv_ownedPathName_0_0= rulePathNameCS ) |
| { |
| // InternalOCLinEcore.g:7974:1: (lv_ownedPathName_0_0= rulePathNameCS ) |
| // InternalOCLinEcore.g:7975:3: lv_ownedPathName_0_0= rulePathNameCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_108); |
| lv_ownedPathName_0_0=rulePathNameCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNameExpCSRule()); |
| } |
| set( |
| current, |
| "ownedPathName", |
| lv_ownedPathName_0_0, |
| "org.eclipse.ocl.xtext.base.Base.PathNameCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:7991:2: ( (lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS ) )* |
| loop179: |
| do { |
| int alt179=2; |
| int LA179_0 = input.LA(1); |
| |
| if ( (LA179_0==124) ) { |
| alt179=1; |
| } |
| |
| |
| switch (alt179) { |
| case 1 : |
| // InternalOCLinEcore.g:7992:1: (lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS ) |
| { |
| // InternalOCLinEcore.g:7992:1: (lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS ) |
| // InternalOCLinEcore.g:7993:3: lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_108); |
| lv_ownedSquareBracketedClauses_1_0=ruleSquareBracketedClauseCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNameExpCSRule()); |
| } |
| add( |
| current, |
| "ownedSquareBracketedClauses", |
| lv_ownedSquareBracketedClauses_1_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.SquareBracketedClauseCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop179; |
| } |
| } while (true); |
| |
| // InternalOCLinEcore.g:8009:3: ( (lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS ) )? |
| int alt180=2; |
| int LA180_0 = input.LA(1); |
| |
| if ( (LA180_0==54) ) { |
| alt180=1; |
| } |
| switch (alt180) { |
| case 1 : |
| // InternalOCLinEcore.g:8010:1: (lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS ) |
| { |
| // InternalOCLinEcore.g:8010:1: (lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS ) |
| // InternalOCLinEcore.g:8011:3: lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_109); |
| lv_ownedRoundBracketedClause_2_0=ruleRoundBracketedClauseCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNameExpCSRule()); |
| } |
| set( |
| current, |
| "ownedRoundBracketedClause", |
| lv_ownedRoundBracketedClause_2_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.RoundBracketedClauseCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:8027:3: ( (lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS ) )? |
| int alt181=2; |
| int LA181_0 = input.LA(1); |
| |
| if ( (LA181_0==60) ) { |
| alt181=1; |
| } |
| switch (alt181) { |
| case 1 : |
| // InternalOCLinEcore.g:8028:1: (lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS ) |
| { |
| // InternalOCLinEcore.g:8028:1: (lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS ) |
| // InternalOCLinEcore.g:8029:3: lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_110); |
| lv_ownedCurlyBracketedClause_3_0=ruleCurlyBracketedClauseCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNameExpCSRule()); |
| } |
| set( |
| current, |
| "ownedCurlyBracketedClause", |
| lv_ownedCurlyBracketedClause_3_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CurlyBracketedClauseCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:8045:3: ( ( (lv_isPre_4_0= '@' ) ) otherlv_5= 'pre' )? |
| int alt182=2; |
| int LA182_0 = input.LA(1); |
| |
| if ( (LA182_0==122) ) { |
| alt182=1; |
| } |
| switch (alt182) { |
| case 1 : |
| // InternalOCLinEcore.g:8045:4: ( (lv_isPre_4_0= '@' ) ) otherlv_5= 'pre' |
| { |
| // InternalOCLinEcore.g:8045:4: ( (lv_isPre_4_0= '@' ) ) |
| // InternalOCLinEcore.g:8046:1: (lv_isPre_4_0= '@' ) |
| { |
| // InternalOCLinEcore.g:8046:1: (lv_isPre_4_0= '@' ) |
| // InternalOCLinEcore.g:8047:3: lv_isPre_4_0= '@' |
| { |
| lv_isPre_4_0=(Token)match(input,122,FollowSets000.FOLLOW_111); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_isPre_4_0, grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getNameExpCSRule()); |
| } |
| setWithLastConsumed(current, "isPre", true, "@"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_5=(Token)match(input,123,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_5, grammarAccess.getNameExpCSAccess().getPreKeyword_4_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleNameExpCS" |
| |
| |
| // $ANTLR start "entryRuleCurlyBracketedClauseCS" |
| // InternalOCLinEcore.g:8072:1: entryRuleCurlyBracketedClauseCS returns [EObject current=null] : iv_ruleCurlyBracketedClauseCS= ruleCurlyBracketedClauseCS EOF ; |
| public final EObject entryRuleCurlyBracketedClauseCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleCurlyBracketedClauseCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:8073:2: (iv_ruleCurlyBracketedClauseCS= ruleCurlyBracketedClauseCS EOF ) |
| // InternalOCLinEcore.g:8074:2: iv_ruleCurlyBracketedClauseCS= ruleCurlyBracketedClauseCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getCurlyBracketedClauseCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleCurlyBracketedClauseCS=ruleCurlyBracketedClauseCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleCurlyBracketedClauseCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleCurlyBracketedClauseCS" |
| |
| |
| // $ANTLR start "ruleCurlyBracketedClauseCS" |
| // InternalOCLinEcore.g:8081:1: ruleCurlyBracketedClauseCS returns [EObject current=null] : ( () otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? otherlv_5= '}' ) ; |
| public final EObject ruleCurlyBracketedClauseCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| Token otherlv_3=null; |
| Token otherlv_5=null; |
| EObject lv_ownedParts_2_0 = null; |
| |
| EObject lv_ownedParts_4_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:8084:28: ( ( () otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? otherlv_5= '}' ) ) |
| // InternalOCLinEcore.g:8085:1: ( () otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? otherlv_5= '}' ) |
| { |
| // InternalOCLinEcore.g:8085:1: ( () otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? otherlv_5= '}' ) |
| // InternalOCLinEcore.g:8085:2: () otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? otherlv_5= '}' |
| { |
| // InternalOCLinEcore.g:8085:2: () |
| // InternalOCLinEcore.g:8086:2: |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| current = forceCreateModelElement( |
| grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0(), |
| current); |
| |
| } |
| |
| } |
| |
| otherlv_1=(Token)match(input,60,FollowSets000.FOLLOW_84); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1()); |
| |
| } |
| // InternalOCLinEcore.g:8098:1: ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? |
| int alt184=2; |
| int LA184_0 = input.LA(1); |
| |
| if ( (LA184_0==RULE_SINGLE_QUOTED_STRING||(LA184_0>=RULE_SIMPLE_ID && LA184_0<=RULE_ESCAPED_ID)||LA184_0==17||(LA184_0>=19 && LA184_0<=53)||LA184_0==58||LA184_0==71||(LA184_0>=73 && LA184_0<=74)||LA184_0==76||LA184_0==80) ) { |
| alt184=1; |
| } |
| switch (alt184) { |
| case 1 : |
| // InternalOCLinEcore.g:8098:2: ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* |
| { |
| // InternalOCLinEcore.g:8098:2: ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) |
| // InternalOCLinEcore.g:8099:1: (lv_ownedParts_2_0= ruleShadowPartCS ) |
| { |
| // InternalOCLinEcore.g:8099:1: (lv_ownedParts_2_0= ruleShadowPartCS ) |
| // InternalOCLinEcore.g:8100:3: lv_ownedParts_2_0= ruleShadowPartCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_97); |
| lv_ownedParts_2_0=ruleShadowPartCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule()); |
| } |
| add( |
| current, |
| "ownedParts", |
| lv_ownedParts_2_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ShadowPartCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:8116:2: (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* |
| loop183: |
| do { |
| int alt183=2; |
| int LA183_0 = input.LA(1); |
| |
| if ( (LA183_0==59) ) { |
| alt183=1; |
| } |
| |
| |
| switch (alt183) { |
| case 1 : |
| // InternalOCLinEcore.g:8116:4: otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) |
| { |
| otherlv_3=(Token)match(input,59,FollowSets000.FOLLOW_20); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_3, grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:8120:1: ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) |
| // InternalOCLinEcore.g:8121:1: (lv_ownedParts_4_0= ruleShadowPartCS ) |
| { |
| // InternalOCLinEcore.g:8121:1: (lv_ownedParts_4_0= ruleShadowPartCS ) |
| // InternalOCLinEcore.g:8122:3: lv_ownedParts_4_0= ruleShadowPartCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_97); |
| lv_ownedParts_4_0=ruleShadowPartCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule()); |
| } |
| add( |
| current, |
| "ownedParts", |
| lv_ownedParts_4_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ShadowPartCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop183; |
| } |
| } while (true); |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_5=(Token)match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_5, grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3()); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleCurlyBracketedClauseCS" |
| |
| |
| // $ANTLR start "entryRuleRoundBracketedClauseCS" |
| // InternalOCLinEcore.g:8150:1: entryRuleRoundBracketedClauseCS returns [EObject current=null] : iv_ruleRoundBracketedClauseCS= ruleRoundBracketedClauseCS EOF ; |
| public final EObject entryRuleRoundBracketedClauseCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleRoundBracketedClauseCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:8151:2: (iv_ruleRoundBracketedClauseCS= ruleRoundBracketedClauseCS EOF ) |
| // InternalOCLinEcore.g:8152:2: iv_ruleRoundBracketedClauseCS= ruleRoundBracketedClauseCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getRoundBracketedClauseCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleRoundBracketedClauseCS=ruleRoundBracketedClauseCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleRoundBracketedClauseCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleRoundBracketedClauseCS" |
| |
| |
| // $ANTLR start "ruleRoundBracketedClauseCS" |
| // InternalOCLinEcore.g:8159:1: ruleRoundBracketedClauseCS returns [EObject current=null] : ( () otherlv_1= '(' ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( ( (lv_ownedArguments_3_1= ruleNavigatingCommaArgCS | lv_ownedArguments_3_2= ruleNavigatingSemiArgCS | lv_ownedArguments_3_3= ruleNavigatingBarArgCS ) ) )* )? otherlv_4= ')' ) ; |
| public final EObject ruleRoundBracketedClauseCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| Token otherlv_4=null; |
| EObject lv_ownedArguments_2_0 = null; |
| |
| EObject lv_ownedArguments_3_1 = null; |
| |
| EObject lv_ownedArguments_3_2 = null; |
| |
| EObject lv_ownedArguments_3_3 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:8162:28: ( ( () otherlv_1= '(' ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( ( (lv_ownedArguments_3_1= ruleNavigatingCommaArgCS | lv_ownedArguments_3_2= ruleNavigatingSemiArgCS | lv_ownedArguments_3_3= ruleNavigatingBarArgCS ) ) )* )? otherlv_4= ')' ) ) |
| // InternalOCLinEcore.g:8163:1: ( () otherlv_1= '(' ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( ( (lv_ownedArguments_3_1= ruleNavigatingCommaArgCS | lv_ownedArguments_3_2= ruleNavigatingSemiArgCS | lv_ownedArguments_3_3= ruleNavigatingBarArgCS ) ) )* )? otherlv_4= ')' ) |
| { |
| // InternalOCLinEcore.g:8163:1: ( () otherlv_1= '(' ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( ( (lv_ownedArguments_3_1= ruleNavigatingCommaArgCS | lv_ownedArguments_3_2= ruleNavigatingSemiArgCS | lv_ownedArguments_3_3= ruleNavigatingBarArgCS ) ) )* )? otherlv_4= ')' ) |
| // InternalOCLinEcore.g:8163:2: () otherlv_1= '(' ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( ( (lv_ownedArguments_3_1= ruleNavigatingCommaArgCS | lv_ownedArguments_3_2= ruleNavigatingSemiArgCS | lv_ownedArguments_3_3= ruleNavigatingBarArgCS ) ) )* )? otherlv_4= ')' |
| { |
| // InternalOCLinEcore.g:8163:2: () |
| // InternalOCLinEcore.g:8164:2: |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| current = forceCreateModelElement( |
| grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0(), |
| current); |
| |
| } |
| |
| } |
| |
| otherlv_1=(Token)match(input,54,FollowSets000.FOLLOW_112); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1()); |
| |
| } |
| // InternalOCLinEcore.g:8176:1: ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( ( (lv_ownedArguments_3_1= ruleNavigatingCommaArgCS | lv_ownedArguments_3_2= ruleNavigatingSemiArgCS | lv_ownedArguments_3_3= ruleNavigatingBarArgCS ) ) )* )? |
| int alt187=2; |
| int LA187_0 = input.LA(1); |
| |
| if ( ((LA187_0>=RULE_INT && LA187_0<=RULE_SINGLE_QUOTED_STRING)||(LA187_0>=RULE_SIMPLE_ID && LA187_0<=RULE_ESCAPED_ID)||(LA187_0>=17 && LA187_0<=54)||LA187_0==56||LA187_0==58||LA187_0==71||(LA187_0>=73 && LA187_0<=74)||LA187_0==76||LA187_0==80||(LA187_0>=83 && LA187_0<=84)||(LA187_0>=98 && LA187_0<=99)||(LA187_0>=101 && LA187_0<=113)||LA187_0==116||(LA187_0>=118 && LA187_0<=121)||LA187_0==128||(LA187_0>=133 && LA187_0<=134)) ) { |
| alt187=1; |
| } |
| switch (alt187) { |
| case 1 : |
| // InternalOCLinEcore.g:8176:2: ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( ( (lv_ownedArguments_3_1= ruleNavigatingCommaArgCS | lv_ownedArguments_3_2= ruleNavigatingSemiArgCS | lv_ownedArguments_3_3= ruleNavigatingBarArgCS ) ) )* |
| { |
| // InternalOCLinEcore.g:8176:2: ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) |
| // InternalOCLinEcore.g:8177:1: (lv_ownedArguments_2_0= ruleNavigatingArgCS ) |
| { |
| // InternalOCLinEcore.g:8177:1: (lv_ownedArguments_2_0= ruleNavigatingArgCS ) |
| // InternalOCLinEcore.g:8178:3: lv_ownedArguments_2_0= ruleNavigatingArgCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_113); |
| lv_ownedArguments_2_0=ruleNavigatingArgCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule()); |
| } |
| add( |
| current, |
| "ownedArguments", |
| lv_ownedArguments_2_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:8194:2: ( ( (lv_ownedArguments_3_1= ruleNavigatingCommaArgCS | lv_ownedArguments_3_2= ruleNavigatingSemiArgCS | lv_ownedArguments_3_3= ruleNavigatingBarArgCS ) ) )* |
| loop186: |
| do { |
| int alt186=2; |
| int LA186_0 = input.LA(1); |
| |
| if ( (LA186_0==57||LA186_0==59||LA186_0==127) ) { |
| alt186=1; |
| } |
| |
| |
| switch (alt186) { |
| case 1 : |
| // InternalOCLinEcore.g:8195:1: ( (lv_ownedArguments_3_1= ruleNavigatingCommaArgCS | lv_ownedArguments_3_2= ruleNavigatingSemiArgCS | lv_ownedArguments_3_3= ruleNavigatingBarArgCS ) ) |
| { |
| // InternalOCLinEcore.g:8195:1: ( (lv_ownedArguments_3_1= ruleNavigatingCommaArgCS | lv_ownedArguments_3_2= ruleNavigatingSemiArgCS | lv_ownedArguments_3_3= ruleNavigatingBarArgCS ) ) |
| // InternalOCLinEcore.g:8196:1: (lv_ownedArguments_3_1= ruleNavigatingCommaArgCS | lv_ownedArguments_3_2= ruleNavigatingSemiArgCS | lv_ownedArguments_3_3= ruleNavigatingBarArgCS ) |
| { |
| // InternalOCLinEcore.g:8196:1: (lv_ownedArguments_3_1= ruleNavigatingCommaArgCS | lv_ownedArguments_3_2= ruleNavigatingSemiArgCS | lv_ownedArguments_3_3= ruleNavigatingBarArgCS ) |
| int alt185=3; |
| switch ( input.LA(1) ) { |
| case 59: |
| { |
| alt185=1; |
| } |
| break; |
| case 57: |
| { |
| alt185=2; |
| } |
| break; |
| case 127: |
| { |
| alt185=3; |
| } |
| break; |
| default: |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 185, 0, input); |
| |
| throw nvae; |
| } |
| |
| switch (alt185) { |
| case 1 : |
| // InternalOCLinEcore.g:8197:3: lv_ownedArguments_3_1= ruleNavigatingCommaArgCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_113); |
| lv_ownedArguments_3_1=ruleNavigatingCommaArgCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule()); |
| } |
| add( |
| current, |
| "ownedArguments", |
| lv_ownedArguments_3_1, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:8212:8: lv_ownedArguments_3_2= ruleNavigatingSemiArgCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_1_0_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_113); |
| lv_ownedArguments_3_2=ruleNavigatingSemiArgCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule()); |
| } |
| add( |
| current, |
| "ownedArguments", |
| lv_ownedArguments_3_2, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingSemiArgCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:8227:8: lv_ownedArguments_3_3= ruleNavigatingBarArgCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_1_0_2()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_113); |
| lv_ownedArguments_3_3=ruleNavigatingBarArgCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule()); |
| } |
| add( |
| current, |
| "ownedArguments", |
| lv_ownedArguments_3_3, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingBarArgCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop186; |
| } |
| } while (true); |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_4=(Token)match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_4, grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3()); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleRoundBracketedClauseCS" |
| |
| |
| // $ANTLR start "entryRuleSquareBracketedClauseCS" |
| // InternalOCLinEcore.g:8257:1: entryRuleSquareBracketedClauseCS returns [EObject current=null] : iv_ruleSquareBracketedClauseCS= ruleSquareBracketedClauseCS EOF ; |
| public final EObject entryRuleSquareBracketedClauseCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleSquareBracketedClauseCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:8258:2: (iv_ruleSquareBracketedClauseCS= ruleSquareBracketedClauseCS EOF ) |
| // InternalOCLinEcore.g:8259:2: iv_ruleSquareBracketedClauseCS= ruleSquareBracketedClauseCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getSquareBracketedClauseCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleSquareBracketedClauseCS=ruleSquareBracketedClauseCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleSquareBracketedClauseCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleSquareBracketedClauseCS" |
| |
| |
| // $ANTLR start "ruleSquareBracketedClauseCS" |
| // InternalOCLinEcore.g:8266:1: ruleSquareBracketedClauseCS returns [EObject current=null] : (otherlv_0= '[' ( (lv_ownedTerms_1_0= ruleExpCS ) ) (otherlv_2= ',' ( (lv_ownedTerms_3_0= ruleExpCS ) ) )* otherlv_4= ']' ) ; |
| public final EObject ruleSquareBracketedClauseCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_0=null; |
| Token otherlv_2=null; |
| Token otherlv_4=null; |
| EObject lv_ownedTerms_1_0 = null; |
| |
| EObject lv_ownedTerms_3_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:8269:28: ( (otherlv_0= '[' ( (lv_ownedTerms_1_0= ruleExpCS ) ) (otherlv_2= ',' ( (lv_ownedTerms_3_0= ruleExpCS ) ) )* otherlv_4= ']' ) ) |
| // InternalOCLinEcore.g:8270:1: (otherlv_0= '[' ( (lv_ownedTerms_1_0= ruleExpCS ) ) (otherlv_2= ',' ( (lv_ownedTerms_3_0= ruleExpCS ) ) )* otherlv_4= ']' ) |
| { |
| // InternalOCLinEcore.g:8270:1: (otherlv_0= '[' ( (lv_ownedTerms_1_0= ruleExpCS ) ) (otherlv_2= ',' ( (lv_ownedTerms_3_0= ruleExpCS ) ) )* otherlv_4= ']' ) |
| // InternalOCLinEcore.g:8270:3: otherlv_0= '[' ( (lv_ownedTerms_1_0= ruleExpCS ) ) (otherlv_2= ',' ( (lv_ownedTerms_3_0= ruleExpCS ) ) )* otherlv_4= ']' |
| { |
| otherlv_0=(Token)match(input,124,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_0, grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0()); |
| |
| } |
| // InternalOCLinEcore.g:8274:1: ( (lv_ownedTerms_1_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:8275:1: (lv_ownedTerms_1_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:8275:1: (lv_ownedTerms_1_0= ruleExpCS ) |
| // InternalOCLinEcore.g:8276:3: lv_ownedTerms_1_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_114); |
| lv_ownedTerms_1_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getSquareBracketedClauseCSRule()); |
| } |
| add( |
| current, |
| "ownedTerms", |
| lv_ownedTerms_1_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:8292:2: (otherlv_2= ',' ( (lv_ownedTerms_3_0= ruleExpCS ) ) )* |
| loop188: |
| do { |
| int alt188=2; |
| int LA188_0 = input.LA(1); |
| |
| if ( (LA188_0==59) ) { |
| alt188=1; |
| } |
| |
| |
| switch (alt188) { |
| case 1 : |
| // InternalOCLinEcore.g:8292:4: otherlv_2= ',' ( (lv_ownedTerms_3_0= ruleExpCS ) ) |
| { |
| otherlv_2=(Token)match(input,59,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_2, grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:8296:1: ( (lv_ownedTerms_3_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:8297:1: (lv_ownedTerms_3_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:8297:1: (lv_ownedTerms_3_0= ruleExpCS ) |
| // InternalOCLinEcore.g:8298:3: lv_ownedTerms_3_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_114); |
| lv_ownedTerms_3_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getSquareBracketedClauseCSRule()); |
| } |
| add( |
| current, |
| "ownedTerms", |
| lv_ownedTerms_3_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop188; |
| } |
| } while (true); |
| |
| otherlv_4=(Token)match(input,125,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_4, grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3()); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleSquareBracketedClauseCS" |
| |
| |
| // $ANTLR start "entryRuleNavigatingArgCS" |
| // InternalOCLinEcore.g:8326:1: entryRuleNavigatingArgCS returns [EObject current=null] : iv_ruleNavigatingArgCS= ruleNavigatingArgCS EOF ; |
| public final EObject entryRuleNavigatingArgCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleNavigatingArgCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:8327:2: (iv_ruleNavigatingArgCS= ruleNavigatingArgCS EOF ) |
| // InternalOCLinEcore.g:8328:2: iv_ruleNavigatingArgCS= ruleNavigatingArgCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getNavigatingArgCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleNavigatingArgCS=ruleNavigatingArgCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleNavigatingArgCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleNavigatingArgCS" |
| |
| |
| // $ANTLR start "ruleNavigatingArgCS" |
| // InternalOCLinEcore.g:8335:1: ruleNavigatingArgCS returns [EObject current=null] : ( ( ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( (otherlv_1= '<-' ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) | (otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )? ) | ( (otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) )? (otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) )? otherlv_15= 'in' ( (lv_ownedInitExpression_16_0= ruleExpCS ) ) ) )? ) | (otherlv_17= ':' ( (lv_ownedType_18_0= ruleTypeExpCS ) ) ) ) ; |
| public final EObject ruleNavigatingArgCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| Token otherlv_3=null; |
| Token otherlv_5=null; |
| Token otherlv_7=null; |
| Token otherlv_9=null; |
| Token otherlv_11=null; |
| Token otherlv_13=null; |
| Token otherlv_15=null; |
| Token otherlv_17=null; |
| EObject lv_ownedNameExpression_0_0 = null; |
| |
| EObject lv_ownedCoIterator_2_0 = null; |
| |
| EObject lv_ownedInitExpression_4_0 = null; |
| |
| EObject lv_ownedType_6_0 = null; |
| |
| EObject lv_ownedCoIterator_8_0 = null; |
| |
| EObject lv_ownedInitExpression_10_0 = null; |
| |
| EObject lv_ownedType_12_0 = null; |
| |
| EObject lv_ownedCoIterator_14_0 = null; |
| |
| EObject lv_ownedInitExpression_16_0 = null; |
| |
| EObject lv_ownedType_18_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:8338:28: ( ( ( ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( (otherlv_1= '<-' ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) | (otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )? ) | ( (otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) )? (otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) )? otherlv_15= 'in' ( (lv_ownedInitExpression_16_0= ruleExpCS ) ) ) )? ) | (otherlv_17= ':' ( (lv_ownedType_18_0= ruleTypeExpCS ) ) ) ) ) |
| // InternalOCLinEcore.g:8339:1: ( ( ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( (otherlv_1= '<-' ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) | (otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )? ) | ( (otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) )? (otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) )? otherlv_15= 'in' ( (lv_ownedInitExpression_16_0= ruleExpCS ) ) ) )? ) | (otherlv_17= ':' ( (lv_ownedType_18_0= ruleTypeExpCS ) ) ) ) |
| { |
| // InternalOCLinEcore.g:8339:1: ( ( ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( (otherlv_1= '<-' ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) | (otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )? ) | ( (otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) )? (otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) )? otherlv_15= 'in' ( (lv_ownedInitExpression_16_0= ruleExpCS ) ) ) )? ) | (otherlv_17= ':' ( (lv_ownedType_18_0= ruleTypeExpCS ) ) ) ) |
| int alt195=2; |
| int LA195_0 = input.LA(1); |
| |
| if ( ((LA195_0>=RULE_INT && LA195_0<=RULE_SINGLE_QUOTED_STRING)||(LA195_0>=RULE_SIMPLE_ID && LA195_0<=RULE_ESCAPED_ID)||(LA195_0>=17 && LA195_0<=54)||LA195_0==58||LA195_0==71||(LA195_0>=73 && LA195_0<=74)||LA195_0==76||LA195_0==80||(LA195_0>=83 && LA195_0<=84)||(LA195_0>=98 && LA195_0<=99)||(LA195_0>=101 && LA195_0<=113)||LA195_0==116||(LA195_0>=118 && LA195_0<=121)||LA195_0==128||(LA195_0>=133 && LA195_0<=134)) ) { |
| alt195=1; |
| } |
| else if ( (LA195_0==56) ) { |
| alt195=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 195, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt195) { |
| case 1 : |
| // InternalOCLinEcore.g:8339:2: ( ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( (otherlv_1= '<-' ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) | (otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )? ) | ( (otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) )? (otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) )? otherlv_15= 'in' ( (lv_ownedInitExpression_16_0= ruleExpCS ) ) ) )? ) |
| { |
| // InternalOCLinEcore.g:8339:2: ( ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( (otherlv_1= '<-' ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) | (otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )? ) | ( (otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) )? (otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) )? otherlv_15= 'in' ( (lv_ownedInitExpression_16_0= ruleExpCS ) ) ) )? ) |
| // InternalOCLinEcore.g:8339:3: ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( (otherlv_1= '<-' ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) | (otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )? ) | ( (otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) )? (otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) )? otherlv_15= 'in' ( (lv_ownedInitExpression_16_0= ruleExpCS ) ) ) )? |
| { |
| // InternalOCLinEcore.g:8339:3: ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) |
| // InternalOCLinEcore.g:8340:1: (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) |
| { |
| // InternalOCLinEcore.g:8340:1: (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) |
| // InternalOCLinEcore.g:8341:3: lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_115); |
| lv_ownedNameExpression_0_0=ruleNavigatingArgExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule()); |
| } |
| set( |
| current, |
| "ownedNameExpression", |
| lv_ownedNameExpression_0_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:8357:2: ( (otherlv_1= '<-' ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) | (otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )? ) | ( (otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) )? (otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) )? otherlv_15= 'in' ( (lv_ownedInitExpression_16_0= ruleExpCS ) ) ) )? |
| int alt194=4; |
| alt194 = dfa194.predict(input); |
| switch (alt194) { |
| case 1 : |
| // InternalOCLinEcore.g:8357:3: (otherlv_1= '<-' ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) |
| { |
| // InternalOCLinEcore.g:8357:3: (otherlv_1= '<-' ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) |
| // InternalOCLinEcore.g:8357:5: otherlv_1= '<-' ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? |
| { |
| otherlv_1=(Token)match(input,117,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getNavigatingArgCSAccess().getLessThanSignHyphenMinusKeyword_0_1_0_0()); |
| |
| } |
| // InternalOCLinEcore.g:8361:1: ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) |
| // InternalOCLinEcore.g:8362:1: (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) |
| { |
| // InternalOCLinEcore.g:8362:1: (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) |
| // InternalOCLinEcore.g:8363:3: lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_0_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_116); |
| lv_ownedCoIterator_2_0=ruleCoIteratorVariableCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule()); |
| } |
| set( |
| current, |
| "ownedCoIterator", |
| lv_ownedCoIterator_2_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CoIteratorVariableCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:8379:2: (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? |
| int alt189=2; |
| int LA189_0 = input.LA(1); |
| |
| if ( (LA189_0==62) ) { |
| alt189=1; |
| } |
| switch (alt189) { |
| case 1 : |
| // InternalOCLinEcore.g:8379:4: otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) |
| { |
| otherlv_3=(Token)match(input,62,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_3, grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:8383:1: ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:8384:1: (lv_ownedInitExpression_4_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:8384:1: (lv_ownedInitExpression_4_0= ruleExpCS ) |
| // InternalOCLinEcore.g:8385:3: lv_ownedInitExpression_4_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedInitExpression_4_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule()); |
| } |
| set( |
| current, |
| "ownedInitExpression", |
| lv_ownedInitExpression_4_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:8402:6: (otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )? ) |
| { |
| // InternalOCLinEcore.g:8402:6: (otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )? ) |
| // InternalOCLinEcore.g:8402:8: otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )? |
| { |
| otherlv_5=(Token)match(input,56,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_5, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:8406:1: ( (lv_ownedType_6_0= ruleTypeExpCS ) ) |
| // InternalOCLinEcore.g:8407:1: (lv_ownedType_6_0= ruleTypeExpCS ) |
| { |
| // InternalOCLinEcore.g:8407:1: (lv_ownedType_6_0= ruleTypeExpCS ) |
| // InternalOCLinEcore.g:8408:3: lv_ownedType_6_0= ruleTypeExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_117); |
| lv_ownedType_6_0=ruleTypeExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule()); |
| } |
| set( |
| current, |
| "ownedType", |
| lv_ownedType_6_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:8424:2: (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? |
| int alt190=2; |
| int LA190_0 = input.LA(1); |
| |
| if ( (LA190_0==117) ) { |
| alt190=1; |
| } |
| switch (alt190) { |
| case 1 : |
| // InternalOCLinEcore.g:8424:4: otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) |
| { |
| otherlv_7=(Token)match(input,117,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_7, grammarAccess.getNavigatingArgCSAccess().getLessThanSignHyphenMinusKeyword_0_1_1_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:8428:1: ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) |
| // InternalOCLinEcore.g:8429:1: (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) |
| { |
| // InternalOCLinEcore.g:8429:1: (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) |
| // InternalOCLinEcore.g:8430:3: lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_1_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_116); |
| lv_ownedCoIterator_8_0=ruleCoIteratorVariableCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule()); |
| } |
| set( |
| current, |
| "ownedCoIterator", |
| lv_ownedCoIterator_8_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CoIteratorVariableCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:8446:4: (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )? |
| int alt191=2; |
| int LA191_0 = input.LA(1); |
| |
| if ( (LA191_0==62) ) { |
| alt191=1; |
| } |
| switch (alt191) { |
| case 1 : |
| // InternalOCLinEcore.g:8446:6: otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) |
| { |
| otherlv_9=(Token)match(input,62,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_9, grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_1_3_0()); |
| |
| } |
| // InternalOCLinEcore.g:8450:1: ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:8451:1: (lv_ownedInitExpression_10_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:8451:1: (lv_ownedInitExpression_10_0= ruleExpCS ) |
| // InternalOCLinEcore.g:8452:3: lv_ownedInitExpression_10_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_3_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedInitExpression_10_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule()); |
| } |
| set( |
| current, |
| "ownedInitExpression", |
| lv_ownedInitExpression_10_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:8469:6: ( (otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) )? (otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) )? otherlv_15= 'in' ( (lv_ownedInitExpression_16_0= ruleExpCS ) ) ) |
| { |
| // InternalOCLinEcore.g:8469:6: ( (otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) )? (otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) )? otherlv_15= 'in' ( (lv_ownedInitExpression_16_0= ruleExpCS ) ) ) |
| // InternalOCLinEcore.g:8469:7: (otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) )? (otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) )? otherlv_15= 'in' ( (lv_ownedInitExpression_16_0= ruleExpCS ) ) |
| { |
| // InternalOCLinEcore.g:8469:7: (otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) )? |
| int alt192=2; |
| int LA192_0 = input.LA(1); |
| |
| if ( (LA192_0==56) ) { |
| alt192=1; |
| } |
| switch (alt192) { |
| case 1 : |
| // InternalOCLinEcore.g:8469:9: otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) |
| { |
| otherlv_11=(Token)match(input,56,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_11, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_2_0_0()); |
| |
| } |
| // InternalOCLinEcore.g:8473:1: ( (lv_ownedType_12_0= ruleTypeExpCS ) ) |
| // InternalOCLinEcore.g:8474:1: (lv_ownedType_12_0= ruleTypeExpCS ) |
| { |
| // InternalOCLinEcore.g:8474:1: (lv_ownedType_12_0= ruleTypeExpCS ) |
| // InternalOCLinEcore.g:8475:3: lv_ownedType_12_0= ruleTypeExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_2_0_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_118); |
| lv_ownedType_12_0=ruleTypeExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule()); |
| } |
| set( |
| current, |
| "ownedType", |
| lv_ownedType_12_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:8491:4: (otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) )? |
| int alt193=2; |
| int LA193_0 = input.LA(1); |
| |
| if ( (LA193_0==117) ) { |
| alt193=1; |
| } |
| switch (alt193) { |
| case 1 : |
| // InternalOCLinEcore.g:8491:6: otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) |
| { |
| otherlv_13=(Token)match(input,117,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_13, grammarAccess.getNavigatingArgCSAccess().getLessThanSignHyphenMinusKeyword_0_1_2_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:8495:1: ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) |
| // InternalOCLinEcore.g:8496:1: (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) |
| { |
| // InternalOCLinEcore.g:8496:1: (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) |
| // InternalOCLinEcore.g:8497:3: lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_2_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_119); |
| lv_ownedCoIterator_14_0=ruleCoIteratorVariableCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule()); |
| } |
| set( |
| current, |
| "ownedCoIterator", |
| lv_ownedCoIterator_14_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CoIteratorVariableCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_15=(Token)match(input,126,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_15, grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_2_2()); |
| |
| } |
| // InternalOCLinEcore.g:8517:1: ( (lv_ownedInitExpression_16_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:8518:1: (lv_ownedInitExpression_16_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:8518:1: (lv_ownedInitExpression_16_0= ruleExpCS ) |
| // InternalOCLinEcore.g:8519:3: lv_ownedInitExpression_16_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_2_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedInitExpression_16_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule()); |
| } |
| set( |
| current, |
| "ownedInitExpression", |
| lv_ownedInitExpression_16_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:8536:6: (otherlv_17= ':' ( (lv_ownedType_18_0= ruleTypeExpCS ) ) ) |
| { |
| // InternalOCLinEcore.g:8536:6: (otherlv_17= ':' ( (lv_ownedType_18_0= ruleTypeExpCS ) ) ) |
| // InternalOCLinEcore.g:8536:8: otherlv_17= ':' ( (lv_ownedType_18_0= ruleTypeExpCS ) ) |
| { |
| otherlv_17=(Token)match(input,56,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_17, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:8540:1: ( (lv_ownedType_18_0= ruleTypeExpCS ) ) |
| // InternalOCLinEcore.g:8541:1: (lv_ownedType_18_0= ruleTypeExpCS ) |
| { |
| // InternalOCLinEcore.g:8541:1: (lv_ownedType_18_0= ruleTypeExpCS ) |
| // InternalOCLinEcore.g:8542:3: lv_ownedType_18_0= ruleTypeExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedType_18_0=ruleTypeExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule()); |
| } |
| set( |
| current, |
| "ownedType", |
| lv_ownedType_18_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleNavigatingArgCS" |
| |
| |
| // $ANTLR start "entryRuleNavigatingBarArgCS" |
| // InternalOCLinEcore.g:8566:1: entryRuleNavigatingBarArgCS returns [EObject current=null] : iv_ruleNavigatingBarArgCS= ruleNavigatingBarArgCS EOF ; |
| public final EObject entryRuleNavigatingBarArgCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleNavigatingBarArgCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:8567:2: (iv_ruleNavigatingBarArgCS= ruleNavigatingBarArgCS EOF ) |
| // InternalOCLinEcore.g:8568:2: iv_ruleNavigatingBarArgCS= ruleNavigatingBarArgCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getNavigatingBarArgCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleNavigatingBarArgCS=ruleNavigatingBarArgCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleNavigatingBarArgCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleNavigatingBarArgCS" |
| |
| |
| // $ANTLR start "ruleNavigatingBarArgCS" |
| // InternalOCLinEcore.g:8575:1: ruleNavigatingBarArgCS returns [EObject current=null] : ( ( (lv_prefix_0_0= '|' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? ) ; |
| public final EObject ruleNavigatingBarArgCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token lv_prefix_0_0=null; |
| Token otherlv_2=null; |
| Token otherlv_4=null; |
| EObject lv_ownedNameExpression_1_0 = null; |
| |
| EObject lv_ownedType_3_0 = null; |
| |
| EObject lv_ownedInitExpression_5_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:8578:28: ( ( ( (lv_prefix_0_0= '|' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? ) ) |
| // InternalOCLinEcore.g:8579:1: ( ( (lv_prefix_0_0= '|' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? ) |
| { |
| // InternalOCLinEcore.g:8579:1: ( ( (lv_prefix_0_0= '|' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? ) |
| // InternalOCLinEcore.g:8579:2: ( (lv_prefix_0_0= '|' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? |
| { |
| // InternalOCLinEcore.g:8579:2: ( (lv_prefix_0_0= '|' ) ) |
| // InternalOCLinEcore.g:8580:1: (lv_prefix_0_0= '|' ) |
| { |
| // InternalOCLinEcore.g:8580:1: (lv_prefix_0_0= '|' ) |
| // InternalOCLinEcore.g:8581:3: lv_prefix_0_0= '|' |
| { |
| lv_prefix_0_0=(Token)match(input,127,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getNavigatingBarArgCSRule()); |
| } |
| setWithLastConsumed(current, "prefix", lv_prefix_0_0, "|"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:8594:2: ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) |
| // InternalOCLinEcore.g:8595:1: (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) |
| { |
| // InternalOCLinEcore.g:8595:1: (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) |
| // InternalOCLinEcore.g:8596:3: lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_120); |
| lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule()); |
| } |
| set( |
| current, |
| "ownedNameExpression", |
| lv_ownedNameExpression_1_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:8612:2: (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? |
| int alt197=2; |
| int LA197_0 = input.LA(1); |
| |
| if ( (LA197_0==56) ) { |
| alt197=1; |
| } |
| switch (alt197) { |
| case 1 : |
| // InternalOCLinEcore.g:8612:4: otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? |
| { |
| otherlv_2=(Token)match(input,56,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_2, grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:8616:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) ) |
| // InternalOCLinEcore.g:8617:1: (lv_ownedType_3_0= ruleTypeExpCS ) |
| { |
| // InternalOCLinEcore.g:8617:1: (lv_ownedType_3_0= ruleTypeExpCS ) |
| // InternalOCLinEcore.g:8618:3: lv_ownedType_3_0= ruleTypeExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_116); |
| lv_ownedType_3_0=ruleTypeExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule()); |
| } |
| set( |
| current, |
| "ownedType", |
| lv_ownedType_3_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:8634:2: (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? |
| int alt196=2; |
| int LA196_0 = input.LA(1); |
| |
| if ( (LA196_0==62) ) { |
| alt196=1; |
| } |
| switch (alt196) { |
| case 1 : |
| // InternalOCLinEcore.g:8634:4: otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) |
| { |
| otherlv_4=(Token)match(input,62,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_4, grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:8638:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:8639:1: (lv_ownedInitExpression_5_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:8639:1: (lv_ownedInitExpression_5_0= ruleExpCS ) |
| // InternalOCLinEcore.g:8640:3: lv_ownedInitExpression_5_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedInitExpression_5_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule()); |
| } |
| set( |
| current, |
| "ownedInitExpression", |
| lv_ownedInitExpression_5_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleNavigatingBarArgCS" |
| |
| |
| // $ANTLR start "entryRuleNavigatingCommaArgCS" |
| // InternalOCLinEcore.g:8664:1: entryRuleNavigatingCommaArgCS returns [EObject current=null] : iv_ruleNavigatingCommaArgCS= ruleNavigatingCommaArgCS EOF ; |
| public final EObject entryRuleNavigatingCommaArgCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleNavigatingCommaArgCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:8665:2: (iv_ruleNavigatingCommaArgCS= ruleNavigatingCommaArgCS EOF ) |
| // InternalOCLinEcore.g:8666:2: iv_ruleNavigatingCommaArgCS= ruleNavigatingCommaArgCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getNavigatingCommaArgCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleNavigatingCommaArgCS=ruleNavigatingCommaArgCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleNavigatingCommaArgCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleNavigatingCommaArgCS" |
| |
| |
| // $ANTLR start "ruleNavigatingCommaArgCS" |
| // InternalOCLinEcore.g:8673:1: ruleNavigatingCommaArgCS returns [EObject current=null] : ( ( (lv_prefix_0_0= ',' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) ( (otherlv_2= '<-' ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) (otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) )? (otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) )? ) | ( (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) ) )? (otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) )? otherlv_16= 'in' ( (lv_ownedInitExpression_17_0= ruleExpCS ) ) ) )? ) ; |
| public final EObject ruleNavigatingCommaArgCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token lv_prefix_0_0=null; |
| Token otherlv_2=null; |
| Token otherlv_4=null; |
| Token otherlv_6=null; |
| Token otherlv_8=null; |
| Token otherlv_10=null; |
| Token otherlv_12=null; |
| Token otherlv_14=null; |
| Token otherlv_16=null; |
| EObject lv_ownedNameExpression_1_0 = null; |
| |
| EObject lv_ownedCoIterator_3_0 = null; |
| |
| EObject lv_ownedInitExpression_5_0 = null; |
| |
| EObject lv_ownedType_7_0 = null; |
| |
| EObject lv_ownedCoIterator_9_0 = null; |
| |
| EObject lv_ownedInitExpression_11_0 = null; |
| |
| EObject lv_ownedType_13_0 = null; |
| |
| EObject lv_ownedCoIterator_15_0 = null; |
| |
| EObject lv_ownedInitExpression_17_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:8676:28: ( ( ( (lv_prefix_0_0= ',' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) ( (otherlv_2= '<-' ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) (otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) )? (otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) )? ) | ( (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) ) )? (otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) )? otherlv_16= 'in' ( (lv_ownedInitExpression_17_0= ruleExpCS ) ) ) )? ) ) |
| // InternalOCLinEcore.g:8677:1: ( ( (lv_prefix_0_0= ',' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) ( (otherlv_2= '<-' ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) (otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) )? (otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) )? ) | ( (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) ) )? (otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) )? otherlv_16= 'in' ( (lv_ownedInitExpression_17_0= ruleExpCS ) ) ) )? ) |
| { |
| // InternalOCLinEcore.g:8677:1: ( ( (lv_prefix_0_0= ',' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) ( (otherlv_2= '<-' ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) (otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) )? (otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) )? ) | ( (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) ) )? (otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) )? otherlv_16= 'in' ( (lv_ownedInitExpression_17_0= ruleExpCS ) ) ) )? ) |
| // InternalOCLinEcore.g:8677:2: ( (lv_prefix_0_0= ',' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) ( (otherlv_2= '<-' ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) (otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) )? (otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) )? ) | ( (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) ) )? (otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) )? otherlv_16= 'in' ( (lv_ownedInitExpression_17_0= ruleExpCS ) ) ) )? |
| { |
| // InternalOCLinEcore.g:8677:2: ( (lv_prefix_0_0= ',' ) ) |
| // InternalOCLinEcore.g:8678:1: (lv_prefix_0_0= ',' ) |
| { |
| // InternalOCLinEcore.g:8678:1: (lv_prefix_0_0= ',' ) |
| // InternalOCLinEcore.g:8679:3: lv_prefix_0_0= ',' |
| { |
| lv_prefix_0_0=(Token)match(input,59,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getNavigatingCommaArgCSRule()); |
| } |
| setWithLastConsumed(current, "prefix", lv_prefix_0_0, ","); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:8692:2: ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) |
| // InternalOCLinEcore.g:8693:1: (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) |
| { |
| // InternalOCLinEcore.g:8693:1: (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) |
| // InternalOCLinEcore.g:8694:3: lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_115); |
| lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule()); |
| } |
| set( |
| current, |
| "ownedNameExpression", |
| lv_ownedNameExpression_1_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:8710:2: ( (otherlv_2= '<-' ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) (otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) )? (otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) )? ) | ( (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) ) )? (otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) )? otherlv_16= 'in' ( (lv_ownedInitExpression_17_0= ruleExpCS ) ) ) )? |
| int alt203=4; |
| alt203 = dfa203.predict(input); |
| switch (alt203) { |
| case 1 : |
| // InternalOCLinEcore.g:8710:3: (otherlv_2= '<-' ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) |
| { |
| // InternalOCLinEcore.g:8710:3: (otherlv_2= '<-' ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) |
| // InternalOCLinEcore.g:8710:5: otherlv_2= '<-' ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? |
| { |
| otherlv_2=(Token)match(input,117,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_2, grammarAccess.getNavigatingCommaArgCSAccess().getLessThanSignHyphenMinusKeyword_2_0_0()); |
| |
| } |
| // InternalOCLinEcore.g:8714:1: ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) |
| // InternalOCLinEcore.g:8715:1: (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) |
| { |
| // InternalOCLinEcore.g:8715:1: (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) |
| // InternalOCLinEcore.g:8716:3: lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_0_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_116); |
| lv_ownedCoIterator_3_0=ruleCoIteratorVariableCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule()); |
| } |
| set( |
| current, |
| "ownedCoIterator", |
| lv_ownedCoIterator_3_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CoIteratorVariableCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:8732:2: (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? |
| int alt198=2; |
| int LA198_0 = input.LA(1); |
| |
| if ( (LA198_0==62) ) { |
| alt198=1; |
| } |
| switch (alt198) { |
| case 1 : |
| // InternalOCLinEcore.g:8732:4: otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) |
| { |
| otherlv_4=(Token)match(input,62,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_4, grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:8736:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:8737:1: (lv_ownedInitExpression_5_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:8737:1: (lv_ownedInitExpression_5_0= ruleExpCS ) |
| // InternalOCLinEcore.g:8738:3: lv_ownedInitExpression_5_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedInitExpression_5_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule()); |
| } |
| set( |
| current, |
| "ownedInitExpression", |
| lv_ownedInitExpression_5_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:8755:6: (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) (otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) )? (otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) )? ) |
| { |
| // InternalOCLinEcore.g:8755:6: (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) (otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) )? (otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) )? ) |
| // InternalOCLinEcore.g:8755:8: otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) (otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) )? (otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) )? |
| { |
| otherlv_6=(Token)match(input,56,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_6, grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:8759:1: ( (lv_ownedType_7_0= ruleTypeExpCS ) ) |
| // InternalOCLinEcore.g:8760:1: (lv_ownedType_7_0= ruleTypeExpCS ) |
| { |
| // InternalOCLinEcore.g:8760:1: (lv_ownedType_7_0= ruleTypeExpCS ) |
| // InternalOCLinEcore.g:8761:3: lv_ownedType_7_0= ruleTypeExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_117); |
| lv_ownedType_7_0=ruleTypeExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule()); |
| } |
| set( |
| current, |
| "ownedType", |
| lv_ownedType_7_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:8777:2: (otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) )? |
| int alt199=2; |
| int LA199_0 = input.LA(1); |
| |
| if ( (LA199_0==117) ) { |
| alt199=1; |
| } |
| switch (alt199) { |
| case 1 : |
| // InternalOCLinEcore.g:8777:4: otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) |
| { |
| otherlv_8=(Token)match(input,117,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_8, grammarAccess.getNavigatingCommaArgCSAccess().getLessThanSignHyphenMinusKeyword_2_1_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:8781:1: ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) |
| // InternalOCLinEcore.g:8782:1: (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) |
| { |
| // InternalOCLinEcore.g:8782:1: (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) |
| // InternalOCLinEcore.g:8783:3: lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_1_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_116); |
| lv_ownedCoIterator_9_0=ruleCoIteratorVariableCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule()); |
| } |
| set( |
| current, |
| "ownedCoIterator", |
| lv_ownedCoIterator_9_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CoIteratorVariableCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:8799:4: (otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) )? |
| int alt200=2; |
| int LA200_0 = input.LA(1); |
| |
| if ( (LA200_0==62) ) { |
| alt200=1; |
| } |
| switch (alt200) { |
| case 1 : |
| // InternalOCLinEcore.g:8799:6: otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) |
| { |
| otherlv_10=(Token)match(input,62,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_10, grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_1_3_0()); |
| |
| } |
| // InternalOCLinEcore.g:8803:1: ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:8804:1: (lv_ownedInitExpression_11_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:8804:1: (lv_ownedInitExpression_11_0= ruleExpCS ) |
| // InternalOCLinEcore.g:8805:3: lv_ownedInitExpression_11_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_3_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedInitExpression_11_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule()); |
| } |
| set( |
| current, |
| "ownedInitExpression", |
| lv_ownedInitExpression_11_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:8822:6: ( (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) ) )? (otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) )? otherlv_16= 'in' ( (lv_ownedInitExpression_17_0= ruleExpCS ) ) ) |
| { |
| // InternalOCLinEcore.g:8822:6: ( (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) ) )? (otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) )? otherlv_16= 'in' ( (lv_ownedInitExpression_17_0= ruleExpCS ) ) ) |
| // InternalOCLinEcore.g:8822:7: (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) ) )? (otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) )? otherlv_16= 'in' ( (lv_ownedInitExpression_17_0= ruleExpCS ) ) |
| { |
| // InternalOCLinEcore.g:8822:7: (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) ) )? |
| int alt201=2; |
| int LA201_0 = input.LA(1); |
| |
| if ( (LA201_0==56) ) { |
| alt201=1; |
| } |
| switch (alt201) { |
| case 1 : |
| // InternalOCLinEcore.g:8822:9: otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) ) |
| { |
| otherlv_12=(Token)match(input,56,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_12, grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_2_0_0()); |
| |
| } |
| // InternalOCLinEcore.g:8826:1: ( (lv_ownedType_13_0= ruleTypeExpCS ) ) |
| // InternalOCLinEcore.g:8827:1: (lv_ownedType_13_0= ruleTypeExpCS ) |
| { |
| // InternalOCLinEcore.g:8827:1: (lv_ownedType_13_0= ruleTypeExpCS ) |
| // InternalOCLinEcore.g:8828:3: lv_ownedType_13_0= ruleTypeExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_2_0_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_118); |
| lv_ownedType_13_0=ruleTypeExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule()); |
| } |
| set( |
| current, |
| "ownedType", |
| lv_ownedType_13_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:8844:4: (otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) )? |
| int alt202=2; |
| int LA202_0 = input.LA(1); |
| |
| if ( (LA202_0==117) ) { |
| alt202=1; |
| } |
| switch (alt202) { |
| case 1 : |
| // InternalOCLinEcore.g:8844:6: otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) |
| { |
| otherlv_14=(Token)match(input,117,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_14, grammarAccess.getNavigatingCommaArgCSAccess().getLessThanSignHyphenMinusKeyword_2_2_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:8848:1: ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) |
| // InternalOCLinEcore.g:8849:1: (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) |
| { |
| // InternalOCLinEcore.g:8849:1: (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) |
| // InternalOCLinEcore.g:8850:3: lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_2_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_119); |
| lv_ownedCoIterator_15_0=ruleCoIteratorVariableCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule()); |
| } |
| set( |
| current, |
| "ownedCoIterator", |
| lv_ownedCoIterator_15_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CoIteratorVariableCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_16=(Token)match(input,126,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_16, grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_2_2()); |
| |
| } |
| // InternalOCLinEcore.g:8870:1: ( (lv_ownedInitExpression_17_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:8871:1: (lv_ownedInitExpression_17_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:8871:1: (lv_ownedInitExpression_17_0= ruleExpCS ) |
| // InternalOCLinEcore.g:8872:3: lv_ownedInitExpression_17_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedInitExpression_17_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule()); |
| } |
| set( |
| current, |
| "ownedInitExpression", |
| lv_ownedInitExpression_17_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleNavigatingCommaArgCS" |
| |
| |
| // $ANTLR start "entryRuleNavigatingSemiArgCS" |
| // InternalOCLinEcore.g:8896:1: entryRuleNavigatingSemiArgCS returns [EObject current=null] : iv_ruleNavigatingSemiArgCS= ruleNavigatingSemiArgCS EOF ; |
| public final EObject entryRuleNavigatingSemiArgCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleNavigatingSemiArgCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:8897:2: (iv_ruleNavigatingSemiArgCS= ruleNavigatingSemiArgCS EOF ) |
| // InternalOCLinEcore.g:8898:2: iv_ruleNavigatingSemiArgCS= ruleNavigatingSemiArgCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getNavigatingSemiArgCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleNavigatingSemiArgCS=ruleNavigatingSemiArgCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleNavigatingSemiArgCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleNavigatingSemiArgCS" |
| |
| |
| // $ANTLR start "ruleNavigatingSemiArgCS" |
| // InternalOCLinEcore.g:8905:1: ruleNavigatingSemiArgCS returns [EObject current=null] : ( ( (lv_prefix_0_0= ';' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? ) ; |
| public final EObject ruleNavigatingSemiArgCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token lv_prefix_0_0=null; |
| Token otherlv_2=null; |
| Token otherlv_4=null; |
| EObject lv_ownedNameExpression_1_0 = null; |
| |
| EObject lv_ownedType_3_0 = null; |
| |
| EObject lv_ownedInitExpression_5_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:8908:28: ( ( ( (lv_prefix_0_0= ';' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? ) ) |
| // InternalOCLinEcore.g:8909:1: ( ( (lv_prefix_0_0= ';' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? ) |
| { |
| // InternalOCLinEcore.g:8909:1: ( ( (lv_prefix_0_0= ';' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? ) |
| // InternalOCLinEcore.g:8909:2: ( (lv_prefix_0_0= ';' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? |
| { |
| // InternalOCLinEcore.g:8909:2: ( (lv_prefix_0_0= ';' ) ) |
| // InternalOCLinEcore.g:8910:1: (lv_prefix_0_0= ';' ) |
| { |
| // InternalOCLinEcore.g:8910:1: (lv_prefix_0_0= ';' ) |
| // InternalOCLinEcore.g:8911:3: lv_prefix_0_0= ';' |
| { |
| lv_prefix_0_0=(Token)match(input,57,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getNavigatingSemiArgCSRule()); |
| } |
| setWithLastConsumed(current, "prefix", lv_prefix_0_0, ";"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:8924:2: ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) |
| // InternalOCLinEcore.g:8925:1: (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) |
| { |
| // InternalOCLinEcore.g:8925:1: (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) |
| // InternalOCLinEcore.g:8926:3: lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_120); |
| lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule()); |
| } |
| set( |
| current, |
| "ownedNameExpression", |
| lv_ownedNameExpression_1_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:8942:2: (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? |
| int alt205=2; |
| int LA205_0 = input.LA(1); |
| |
| if ( (LA205_0==56) ) { |
| alt205=1; |
| } |
| switch (alt205) { |
| case 1 : |
| // InternalOCLinEcore.g:8942:4: otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? |
| { |
| otherlv_2=(Token)match(input,56,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_2, grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:8946:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) ) |
| // InternalOCLinEcore.g:8947:1: (lv_ownedType_3_0= ruleTypeExpCS ) |
| { |
| // InternalOCLinEcore.g:8947:1: (lv_ownedType_3_0= ruleTypeExpCS ) |
| // InternalOCLinEcore.g:8948:3: lv_ownedType_3_0= ruleTypeExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_116); |
| lv_ownedType_3_0=ruleTypeExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule()); |
| } |
| set( |
| current, |
| "ownedType", |
| lv_ownedType_3_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:8964:2: (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? |
| int alt204=2; |
| int LA204_0 = input.LA(1); |
| |
| if ( (LA204_0==62) ) { |
| alt204=1; |
| } |
| switch (alt204) { |
| case 1 : |
| // InternalOCLinEcore.g:8964:4: otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) |
| { |
| otherlv_4=(Token)match(input,62,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_4, grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:8968:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:8969:1: (lv_ownedInitExpression_5_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:8969:1: (lv_ownedInitExpression_5_0= ruleExpCS ) |
| // InternalOCLinEcore.g:8970:3: lv_ownedInitExpression_5_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedInitExpression_5_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule()); |
| } |
| set( |
| current, |
| "ownedInitExpression", |
| lv_ownedInitExpression_5_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleNavigatingSemiArgCS" |
| |
| |
| // $ANTLR start "entryRuleNavigatingArgExpCS" |
| // InternalOCLinEcore.g:8994:1: entryRuleNavigatingArgExpCS returns [EObject current=null] : iv_ruleNavigatingArgExpCS= ruleNavigatingArgExpCS EOF ; |
| public final EObject entryRuleNavigatingArgExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleNavigatingArgExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:8995:2: (iv_ruleNavigatingArgExpCS= ruleNavigatingArgExpCS EOF ) |
| // InternalOCLinEcore.g:8996:2: iv_ruleNavigatingArgExpCS= ruleNavigatingArgExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getNavigatingArgExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleNavigatingArgExpCS=ruleNavigatingArgExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleNavigatingArgExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleNavigatingArgExpCS" |
| |
| |
| // $ANTLR start "ruleNavigatingArgExpCS" |
| // InternalOCLinEcore.g:9003:1: ruleNavigatingArgExpCS returns [EObject current=null] : this_ExpCS_0= ruleExpCS ; |
| public final EObject ruleNavigatingArgExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject this_ExpCS_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:9006:28: (this_ExpCS_0= ruleExpCS ) |
| // InternalOCLinEcore.g:9008:2: this_ExpCS_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_ExpCS_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_ExpCS_0; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleNavigatingArgExpCS" |
| |
| |
| // $ANTLR start "entryRuleCoIteratorVariableCS" |
| // InternalOCLinEcore.g:9027:1: entryRuleCoIteratorVariableCS returns [EObject current=null] : iv_ruleCoIteratorVariableCS= ruleCoIteratorVariableCS EOF ; |
| public final EObject entryRuleCoIteratorVariableCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleCoIteratorVariableCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:9028:2: (iv_ruleCoIteratorVariableCS= ruleCoIteratorVariableCS EOF ) |
| // InternalOCLinEcore.g:9029:2: iv_ruleCoIteratorVariableCS= ruleCoIteratorVariableCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getCoIteratorVariableCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleCoIteratorVariableCS=ruleCoIteratorVariableCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleCoIteratorVariableCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleCoIteratorVariableCS" |
| |
| |
| // $ANTLR start "ruleCoIteratorVariableCS" |
| // InternalOCLinEcore.g:9036:1: ruleCoIteratorVariableCS returns [EObject current=null] : ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? ) ; |
| public final EObject ruleCoIteratorVariableCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| AntlrDatatypeRuleToken lv_name_0_0 = null; |
| |
| EObject lv_ownedType_2_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:9039:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? ) ) |
| // InternalOCLinEcore.g:9040:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? ) |
| { |
| // InternalOCLinEcore.g:9040:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? ) |
| // InternalOCLinEcore.g:9040:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? |
| { |
| // InternalOCLinEcore.g:9040:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:9041:1: (lv_name_0_0= ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:9041:1: (lv_name_0_0= ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:9042:3: lv_name_0_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getCoIteratorVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_120); |
| lv_name_0_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getCoIteratorVariableCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_0_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:9058:2: (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? |
| int alt206=2; |
| int LA206_0 = input.LA(1); |
| |
| if ( (LA206_0==56) ) { |
| alt206=1; |
| } |
| switch (alt206) { |
| case 1 : |
| // InternalOCLinEcore.g:9058:4: otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) |
| { |
| otherlv_1=(Token)match(input,56,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getCoIteratorVariableCSAccess().getColonKeyword_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:9062:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) ) |
| // InternalOCLinEcore.g:9063:1: (lv_ownedType_2_0= ruleTypeExpCS ) |
| { |
| // InternalOCLinEcore.g:9063:1: (lv_ownedType_2_0= ruleTypeExpCS ) |
| // InternalOCLinEcore.g:9064:3: lv_ownedType_2_0= ruleTypeExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getCoIteratorVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedType_2_0=ruleTypeExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getCoIteratorVariableCSRule()); |
| } |
| set( |
| current, |
| "ownedType", |
| lv_ownedType_2_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleCoIteratorVariableCS" |
| |
| |
| // $ANTLR start "entryRuleIfExpCS" |
| // InternalOCLinEcore.g:9088:1: entryRuleIfExpCS returns [EObject current=null] : iv_ruleIfExpCS= ruleIfExpCS EOF ; |
| public final EObject entryRuleIfExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleIfExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:9089:2: (iv_ruleIfExpCS= ruleIfExpCS EOF ) |
| // InternalOCLinEcore.g:9090:2: iv_ruleIfExpCS= ruleIfExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getIfExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleIfExpCS=ruleIfExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleIfExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleIfExpCS" |
| |
| |
| // $ANTLR start "ruleIfExpCS" |
| // InternalOCLinEcore.g:9097:1: ruleIfExpCS returns [EObject current=null] : (otherlv_0= 'if' ( ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ( (lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS ) )* otherlv_5= 'else' ( (lv_ownedElseExpression_6_0= ruleExpCS ) ) otherlv_7= 'endif' ) ; |
| public final EObject ruleIfExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_0=null; |
| Token otherlv_2=null; |
| Token otherlv_5=null; |
| Token otherlv_7=null; |
| EObject lv_ownedCondition_1_1 = null; |
| |
| EObject lv_ownedCondition_1_2 = null; |
| |
| EObject lv_ownedThenExpression_3_0 = null; |
| |
| EObject lv_ownedIfThenExpressions_4_0 = null; |
| |
| EObject lv_ownedElseExpression_6_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:9100:28: ( (otherlv_0= 'if' ( ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ( (lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS ) )* otherlv_5= 'else' ( (lv_ownedElseExpression_6_0= ruleExpCS ) ) otherlv_7= 'endif' ) ) |
| // InternalOCLinEcore.g:9101:1: (otherlv_0= 'if' ( ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ( (lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS ) )* otherlv_5= 'else' ( (lv_ownedElseExpression_6_0= ruleExpCS ) ) otherlv_7= 'endif' ) |
| { |
| // InternalOCLinEcore.g:9101:1: (otherlv_0= 'if' ( ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ( (lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS ) )* otherlv_5= 'else' ( (lv_ownedElseExpression_6_0= ruleExpCS ) ) otherlv_7= 'endif' ) |
| // InternalOCLinEcore.g:9101:3: otherlv_0= 'if' ( ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ( (lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS ) )* otherlv_5= 'else' ( (lv_ownedElseExpression_6_0= ruleExpCS ) ) otherlv_7= 'endif' |
| { |
| otherlv_0=(Token)match(input,128,FollowSets000.FOLLOW_98); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_0, grammarAccess.getIfExpCSAccess().getIfKeyword_0()); |
| |
| } |
| // InternalOCLinEcore.g:9105:1: ( ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) ) ) |
| // InternalOCLinEcore.g:9106:1: ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) ) |
| { |
| // InternalOCLinEcore.g:9106:1: ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) ) |
| // InternalOCLinEcore.g:9107:1: (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) |
| { |
| // InternalOCLinEcore.g:9107:1: (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) |
| int alt207=2; |
| alt207 = dfa207.predict(input); |
| switch (alt207) { |
| case 1 : |
| // InternalOCLinEcore.g:9108:3: lv_ownedCondition_1_1= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_121); |
| lv_ownedCondition_1_1=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getIfExpCSRule()); |
| } |
| set( |
| current, |
| "ownedCondition", |
| lv_ownedCondition_1_1, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:9123:8: lv_ownedCondition_1_2= rulePatternExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_121); |
| lv_ownedCondition_1_2=rulePatternExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getIfExpCSRule()); |
| } |
| set( |
| current, |
| "ownedCondition", |
| lv_ownedCondition_1_2, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| otherlv_2=(Token)match(input,129,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_2, grammarAccess.getIfExpCSAccess().getThenKeyword_2()); |
| |
| } |
| // InternalOCLinEcore.g:9145:1: ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:9146:1: (lv_ownedThenExpression_3_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:9146:1: (lv_ownedThenExpression_3_0= ruleExpCS ) |
| // InternalOCLinEcore.g:9147:3: lv_ownedThenExpression_3_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_122); |
| lv_ownedThenExpression_3_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getIfExpCSRule()); |
| } |
| set( |
| current, |
| "ownedThenExpression", |
| lv_ownedThenExpression_3_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:9163:2: ( (lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS ) )* |
| loop208: |
| do { |
| int alt208=2; |
| int LA208_0 = input.LA(1); |
| |
| if ( (LA208_0==132) ) { |
| alt208=1; |
| } |
| |
| |
| switch (alt208) { |
| case 1 : |
| // InternalOCLinEcore.g:9164:1: (lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS ) |
| { |
| // InternalOCLinEcore.g:9164:1: (lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS ) |
| // InternalOCLinEcore.g:9165:3: lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_122); |
| lv_ownedIfThenExpressions_4_0=ruleElseIfThenExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getIfExpCSRule()); |
| } |
| add( |
| current, |
| "ownedIfThenExpressions", |
| lv_ownedIfThenExpressions_4_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ElseIfThenExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop208; |
| } |
| } while (true); |
| |
| otherlv_5=(Token)match(input,130,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_5, grammarAccess.getIfExpCSAccess().getElseKeyword_5()); |
| |
| } |
| // InternalOCLinEcore.g:9185:1: ( (lv_ownedElseExpression_6_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:9186:1: (lv_ownedElseExpression_6_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:9186:1: (lv_ownedElseExpression_6_0= ruleExpCS ) |
| // InternalOCLinEcore.g:9187:3: lv_ownedElseExpression_6_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_123); |
| lv_ownedElseExpression_6_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getIfExpCSRule()); |
| } |
| set( |
| current, |
| "ownedElseExpression", |
| lv_ownedElseExpression_6_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_7=(Token)match(input,131,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_7, grammarAccess.getIfExpCSAccess().getEndifKeyword_7()); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleIfExpCS" |
| |
| |
| // $ANTLR start "entryRuleElseIfThenExpCS" |
| // InternalOCLinEcore.g:9215:1: entryRuleElseIfThenExpCS returns [EObject current=null] : iv_ruleElseIfThenExpCS= ruleElseIfThenExpCS EOF ; |
| public final EObject entryRuleElseIfThenExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleElseIfThenExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:9216:2: (iv_ruleElseIfThenExpCS= ruleElseIfThenExpCS EOF ) |
| // InternalOCLinEcore.g:9217:2: iv_ruleElseIfThenExpCS= ruleElseIfThenExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getElseIfThenExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleElseIfThenExpCS=ruleElseIfThenExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleElseIfThenExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleElseIfThenExpCS" |
| |
| |
| // $ANTLR start "ruleElseIfThenExpCS" |
| // InternalOCLinEcore.g:9224:1: ruleElseIfThenExpCS returns [EObject current=null] : (otherlv_0= 'elseif' ( (lv_ownedCondition_1_0= ruleExpCS ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ) ; |
| public final EObject ruleElseIfThenExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_0=null; |
| Token otherlv_2=null; |
| EObject lv_ownedCondition_1_0 = null; |
| |
| EObject lv_ownedThenExpression_3_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:9227:28: ( (otherlv_0= 'elseif' ( (lv_ownedCondition_1_0= ruleExpCS ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ) ) |
| // InternalOCLinEcore.g:9228:1: (otherlv_0= 'elseif' ( (lv_ownedCondition_1_0= ruleExpCS ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ) |
| { |
| // InternalOCLinEcore.g:9228:1: (otherlv_0= 'elseif' ( (lv_ownedCondition_1_0= ruleExpCS ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ) |
| // InternalOCLinEcore.g:9228:3: otherlv_0= 'elseif' ( (lv_ownedCondition_1_0= ruleExpCS ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) |
| { |
| otherlv_0=(Token)match(input,132,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_0, grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0()); |
| |
| } |
| // InternalOCLinEcore.g:9232:1: ( (lv_ownedCondition_1_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:9233:1: (lv_ownedCondition_1_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:9233:1: (lv_ownedCondition_1_0= ruleExpCS ) |
| // InternalOCLinEcore.g:9234:3: lv_ownedCondition_1_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_121); |
| lv_ownedCondition_1_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getElseIfThenExpCSRule()); |
| } |
| set( |
| current, |
| "ownedCondition", |
| lv_ownedCondition_1_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_2=(Token)match(input,129,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_2, grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2()); |
| |
| } |
| // InternalOCLinEcore.g:9254:1: ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:9255:1: (lv_ownedThenExpression_3_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:9255:1: (lv_ownedThenExpression_3_0= ruleExpCS ) |
| // InternalOCLinEcore.g:9256:3: lv_ownedThenExpression_3_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedThenExpression_3_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getElseIfThenExpCSRule()); |
| } |
| set( |
| current, |
| "ownedThenExpression", |
| lv_ownedThenExpression_3_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleElseIfThenExpCS" |
| |
| |
| // $ANTLR start "entryRuleLetExpCS" |
| // InternalOCLinEcore.g:9280:1: entryRuleLetExpCS returns [EObject current=null] : iv_ruleLetExpCS= ruleLetExpCS EOF ; |
| public final EObject entryRuleLetExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleLetExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:9281:2: (iv_ruleLetExpCS= ruleLetExpCS EOF ) |
| // InternalOCLinEcore.g:9282:2: iv_ruleLetExpCS= ruleLetExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getLetExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleLetExpCS=ruleLetExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleLetExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleLetExpCS" |
| |
| |
| // $ANTLR start "ruleLetExpCS" |
| // InternalOCLinEcore.g:9289:1: ruleLetExpCS returns [EObject current=null] : (otherlv_0= 'let' ( (lv_ownedVariables_1_0= ruleLetVariableCS ) ) (otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) ) )* otherlv_4= 'in' ( (lv_ownedInExpression_5_0= ruleExpCS ) ) ) ; |
| public final EObject ruleLetExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_0=null; |
| Token otherlv_2=null; |
| Token otherlv_4=null; |
| EObject lv_ownedVariables_1_0 = null; |
| |
| EObject lv_ownedVariables_3_0 = null; |
| |
| EObject lv_ownedInExpression_5_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:9292:28: ( (otherlv_0= 'let' ( (lv_ownedVariables_1_0= ruleLetVariableCS ) ) (otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) ) )* otherlv_4= 'in' ( (lv_ownedInExpression_5_0= ruleExpCS ) ) ) ) |
| // InternalOCLinEcore.g:9293:1: (otherlv_0= 'let' ( (lv_ownedVariables_1_0= ruleLetVariableCS ) ) (otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) ) )* otherlv_4= 'in' ( (lv_ownedInExpression_5_0= ruleExpCS ) ) ) |
| { |
| // InternalOCLinEcore.g:9293:1: (otherlv_0= 'let' ( (lv_ownedVariables_1_0= ruleLetVariableCS ) ) (otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) ) )* otherlv_4= 'in' ( (lv_ownedInExpression_5_0= ruleExpCS ) ) ) |
| // InternalOCLinEcore.g:9293:3: otherlv_0= 'let' ( (lv_ownedVariables_1_0= ruleLetVariableCS ) ) (otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) ) )* otherlv_4= 'in' ( (lv_ownedInExpression_5_0= ruleExpCS ) ) |
| { |
| otherlv_0=(Token)match(input,133,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_0, grammarAccess.getLetExpCSAccess().getLetKeyword_0()); |
| |
| } |
| // InternalOCLinEcore.g:9297:1: ( (lv_ownedVariables_1_0= ruleLetVariableCS ) ) |
| // InternalOCLinEcore.g:9298:1: (lv_ownedVariables_1_0= ruleLetVariableCS ) |
| { |
| // InternalOCLinEcore.g:9298:1: (lv_ownedVariables_1_0= ruleLetVariableCS ) |
| // InternalOCLinEcore.g:9299:3: lv_ownedVariables_1_0= ruleLetVariableCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_124); |
| lv_ownedVariables_1_0=ruleLetVariableCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getLetExpCSRule()); |
| } |
| add( |
| current, |
| "ownedVariables", |
| lv_ownedVariables_1_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.LetVariableCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:9315:2: (otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) ) )* |
| loop209: |
| do { |
| int alt209=2; |
| int LA209_0 = input.LA(1); |
| |
| if ( (LA209_0==59) ) { |
| alt209=1; |
| } |
| |
| |
| switch (alt209) { |
| case 1 : |
| // InternalOCLinEcore.g:9315:4: otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) ) |
| { |
| otherlv_2=(Token)match(input,59,FollowSets000.FOLLOW_3); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_2, grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:9319:1: ( (lv_ownedVariables_3_0= ruleLetVariableCS ) ) |
| // InternalOCLinEcore.g:9320:1: (lv_ownedVariables_3_0= ruleLetVariableCS ) |
| { |
| // InternalOCLinEcore.g:9320:1: (lv_ownedVariables_3_0= ruleLetVariableCS ) |
| // InternalOCLinEcore.g:9321:3: lv_ownedVariables_3_0= ruleLetVariableCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_124); |
| lv_ownedVariables_3_0=ruleLetVariableCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getLetExpCSRule()); |
| } |
| add( |
| current, |
| "ownedVariables", |
| lv_ownedVariables_3_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.LetVariableCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop209; |
| } |
| } while (true); |
| |
| otherlv_4=(Token)match(input,126,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_4, grammarAccess.getLetExpCSAccess().getInKeyword_3()); |
| |
| } |
| // InternalOCLinEcore.g:9341:1: ( (lv_ownedInExpression_5_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:9342:1: (lv_ownedInExpression_5_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:9342:1: (lv_ownedInExpression_5_0= ruleExpCS ) |
| // InternalOCLinEcore.g:9343:3: lv_ownedInExpression_5_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedInExpression_5_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getLetExpCSRule()); |
| } |
| set( |
| current, |
| "ownedInExpression", |
| lv_ownedInExpression_5_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleLetExpCS" |
| |
| |
| // $ANTLR start "entryRuleLetVariableCS" |
| // InternalOCLinEcore.g:9367:1: entryRuleLetVariableCS returns [EObject current=null] : iv_ruleLetVariableCS= ruleLetVariableCS EOF ; |
| public final EObject entryRuleLetVariableCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleLetVariableCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:9368:2: (iv_ruleLetVariableCS= ruleLetVariableCS EOF ) |
| // InternalOCLinEcore.g:9369:2: iv_ruleLetVariableCS= ruleLetVariableCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getLetVariableCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleLetVariableCS=ruleLetVariableCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleLetVariableCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleLetVariableCS" |
| |
| |
| // $ANTLR start "ruleLetVariableCS" |
| // InternalOCLinEcore.g:9376:1: ruleLetVariableCS returns [EObject current=null] : ( ( (lv_name_0_0= ruleUnrestrictedName ) ) ( (lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS ) )? (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) )? otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) ) ; |
| public final EObject ruleLetVariableCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_2=null; |
| Token otherlv_4=null; |
| AntlrDatatypeRuleToken lv_name_0_0 = null; |
| |
| EObject lv_ownedRoundBracketedClause_1_0 = null; |
| |
| EObject lv_ownedType_3_0 = null; |
| |
| EObject lv_ownedInitExpression_5_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:9379:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) ( (lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS ) )? (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) )? otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) ) ) |
| // InternalOCLinEcore.g:9380:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) ( (lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS ) )? (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) )? otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) ) |
| { |
| // InternalOCLinEcore.g:9380:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) ( (lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS ) )? (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) )? otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) ) |
| // InternalOCLinEcore.g:9380:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) ( (lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS ) )? (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) )? otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) |
| { |
| // InternalOCLinEcore.g:9380:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:9381:1: (lv_name_0_0= ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:9381:1: (lv_name_0_0= ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:9382:3: lv_name_0_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_125); |
| lv_name_0_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getLetVariableCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_0_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:9398:2: ( (lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS ) )? |
| int alt210=2; |
| int LA210_0 = input.LA(1); |
| |
| if ( (LA210_0==54) ) { |
| alt210=1; |
| } |
| switch (alt210) { |
| case 1 : |
| // InternalOCLinEcore.g:9399:1: (lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS ) |
| { |
| // InternalOCLinEcore.g:9399:1: (lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS ) |
| // InternalOCLinEcore.g:9400:3: lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_105); |
| lv_ownedRoundBracketedClause_1_0=ruleRoundBracketedClauseCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getLetVariableCSRule()); |
| } |
| set( |
| current, |
| "ownedRoundBracketedClause", |
| lv_ownedRoundBracketedClause_1_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.RoundBracketedClauseCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:9416:3: (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) )? |
| int alt211=2; |
| int LA211_0 = input.LA(1); |
| |
| if ( (LA211_0==56) ) { |
| alt211=1; |
| } |
| switch (alt211) { |
| case 1 : |
| // InternalOCLinEcore.g:9416:5: otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) |
| { |
| otherlv_2=(Token)match(input,56,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_2, grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:9420:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) ) |
| // InternalOCLinEcore.g:9421:1: (lv_ownedType_3_0= ruleTypeExpCS ) |
| { |
| // InternalOCLinEcore.g:9421:1: (lv_ownedType_3_0= ruleTypeExpCS ) |
| // InternalOCLinEcore.g:9422:3: lv_ownedType_3_0= ruleTypeExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_42); |
| lv_ownedType_3_0=ruleTypeExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getLetVariableCSRule()); |
| } |
| set( |
| current, |
| "ownedType", |
| lv_ownedType_3_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_4=(Token)match(input,62,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_4, grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3()); |
| |
| } |
| // InternalOCLinEcore.g:9442:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:9443:1: (lv_ownedInitExpression_5_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:9443:1: (lv_ownedInitExpression_5_0= ruleExpCS ) |
| // InternalOCLinEcore.g:9444:3: lv_ownedInitExpression_5_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedInitExpression_5_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getLetVariableCSRule()); |
| } |
| set( |
| current, |
| "ownedInitExpression", |
| lv_ownedInitExpression_5_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleLetVariableCS" |
| |
| |
| // $ANTLR start "entryRuleNestedExpCS" |
| // InternalOCLinEcore.g:9468:1: entryRuleNestedExpCS returns [EObject current=null] : iv_ruleNestedExpCS= ruleNestedExpCS EOF ; |
| public final EObject entryRuleNestedExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleNestedExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:9469:2: (iv_ruleNestedExpCS= ruleNestedExpCS EOF ) |
| // InternalOCLinEcore.g:9470:2: iv_ruleNestedExpCS= ruleNestedExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getNestedExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleNestedExpCS=ruleNestedExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleNestedExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleNestedExpCS" |
| |
| |
| // $ANTLR start "ruleNestedExpCS" |
| // InternalOCLinEcore.g:9477:1: ruleNestedExpCS returns [EObject current=null] : (otherlv_0= '(' ( (lv_ownedExpression_1_0= ruleExpCS ) ) otherlv_2= ')' ) ; |
| public final EObject ruleNestedExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_0=null; |
| Token otherlv_2=null; |
| EObject lv_ownedExpression_1_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:9480:28: ( (otherlv_0= '(' ( (lv_ownedExpression_1_0= ruleExpCS ) ) otherlv_2= ')' ) ) |
| // InternalOCLinEcore.g:9481:1: (otherlv_0= '(' ( (lv_ownedExpression_1_0= ruleExpCS ) ) otherlv_2= ')' ) |
| { |
| // InternalOCLinEcore.g:9481:1: (otherlv_0= '(' ( (lv_ownedExpression_1_0= ruleExpCS ) ) otherlv_2= ')' ) |
| // InternalOCLinEcore.g:9481:3: otherlv_0= '(' ( (lv_ownedExpression_1_0= ruleExpCS ) ) otherlv_2= ')' |
| { |
| otherlv_0=(Token)match(input,54,FollowSets000.FOLLOW_100); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_0, grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0()); |
| |
| } |
| // InternalOCLinEcore.g:9485:1: ( (lv_ownedExpression_1_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:9486:1: (lv_ownedExpression_1_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:9486:1: (lv_ownedExpression_1_0= ruleExpCS ) |
| // InternalOCLinEcore.g:9487:3: lv_ownedExpression_1_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_11); |
| lv_ownedExpression_1_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getNestedExpCSRule()); |
| } |
| set( |
| current, |
| "ownedExpression", |
| lv_ownedExpression_1_0, |
| "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| otherlv_2=(Token)match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_2, grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2()); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleNestedExpCS" |
| |
| |
| // $ANTLR start "entryRuleSelfExpCS" |
| // InternalOCLinEcore.g:9515:1: entryRuleSelfExpCS returns [EObject current=null] : iv_ruleSelfExpCS= ruleSelfExpCS EOF ; |
| public final EObject entryRuleSelfExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleSelfExpCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:9516:2: (iv_ruleSelfExpCS= ruleSelfExpCS EOF ) |
| // InternalOCLinEcore.g:9517:2: iv_ruleSelfExpCS= ruleSelfExpCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getSelfExpCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleSelfExpCS=ruleSelfExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleSelfExpCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleSelfExpCS" |
| |
| |
| // $ANTLR start "ruleSelfExpCS" |
| // InternalOCLinEcore.g:9524:1: ruleSelfExpCS returns [EObject current=null] : ( () otherlv_1= 'self' ) ; |
| public final EObject ruleSelfExpCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:9527:28: ( ( () otherlv_1= 'self' ) ) |
| // InternalOCLinEcore.g:9528:1: ( () otherlv_1= 'self' ) |
| { |
| // InternalOCLinEcore.g:9528:1: ( () otherlv_1= 'self' ) |
| // InternalOCLinEcore.g:9528:2: () otherlv_1= 'self' |
| { |
| // InternalOCLinEcore.g:9528:2: () |
| // InternalOCLinEcore.g:9529:2: |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| current = forceCreateModelElement( |
| grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0(), |
| current); |
| |
| } |
| |
| } |
| |
| otherlv_1=(Token)match(input,134,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getSelfExpCSAccess().getSelfKeyword_1()); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleSelfExpCS" |
| |
| |
| // $ANTLR start "entryRuleMultiplicityBoundsCS" |
| // InternalOCLinEcore.g:9549:1: entryRuleMultiplicityBoundsCS returns [EObject current=null] : iv_ruleMultiplicityBoundsCS= ruleMultiplicityBoundsCS EOF ; |
| public final EObject entryRuleMultiplicityBoundsCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleMultiplicityBoundsCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:9550:2: (iv_ruleMultiplicityBoundsCS= ruleMultiplicityBoundsCS EOF ) |
| // InternalOCLinEcore.g:9551:2: iv_ruleMultiplicityBoundsCS= ruleMultiplicityBoundsCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getMultiplicityBoundsCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleMultiplicityBoundsCS=ruleMultiplicityBoundsCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleMultiplicityBoundsCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleMultiplicityBoundsCS" |
| |
| |
| // $ANTLR start "ruleMultiplicityBoundsCS" |
| // InternalOCLinEcore.g:9558:1: ruleMultiplicityBoundsCS returns [EObject current=null] : ( ( (lv_lowerBound_0_0= ruleLOWER ) ) (otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) )? ) ; |
| public final EObject ruleMultiplicityBoundsCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| AntlrDatatypeRuleToken lv_lowerBound_0_0 = null; |
| |
| AntlrDatatypeRuleToken lv_upperBound_2_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:9561:28: ( ( ( (lv_lowerBound_0_0= ruleLOWER ) ) (otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) )? ) ) |
| // InternalOCLinEcore.g:9562:1: ( ( (lv_lowerBound_0_0= ruleLOWER ) ) (otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) )? ) |
| { |
| // InternalOCLinEcore.g:9562:1: ( ( (lv_lowerBound_0_0= ruleLOWER ) ) (otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) )? ) |
| // InternalOCLinEcore.g:9562:2: ( (lv_lowerBound_0_0= ruleLOWER ) ) (otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) )? |
| { |
| // InternalOCLinEcore.g:9562:2: ( (lv_lowerBound_0_0= ruleLOWER ) ) |
| // InternalOCLinEcore.g:9563:1: (lv_lowerBound_0_0= ruleLOWER ) |
| { |
| // InternalOCLinEcore.g:9563:1: (lv_lowerBound_0_0= ruleLOWER ) |
| // InternalOCLinEcore.g:9564:3: lv_lowerBound_0_0= ruleLOWER |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_99); |
| lv_lowerBound_0_0=ruleLOWER(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule()); |
| } |
| set( |
| current, |
| "lowerBound", |
| lv_lowerBound_0_0, |
| "org.eclipse.ocl.xtext.base.Base.LOWER"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:9580:2: (otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) )? |
| int alt212=2; |
| int LA212_0 = input.LA(1); |
| |
| if ( (LA212_0==114) ) { |
| alt212=1; |
| } |
| switch (alt212) { |
| case 1 : |
| // InternalOCLinEcore.g:9580:4: otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) |
| { |
| otherlv_1=(Token)match(input,114,FollowSets000.FOLLOW_126); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:9584:1: ( (lv_upperBound_2_0= ruleUPPER ) ) |
| // InternalOCLinEcore.g:9585:1: (lv_upperBound_2_0= ruleUPPER ) |
| { |
| // InternalOCLinEcore.g:9585:1: (lv_upperBound_2_0= ruleUPPER ) |
| // InternalOCLinEcore.g:9586:3: lv_upperBound_2_0= ruleUPPER |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_upperBound_2_0=ruleUPPER(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule()); |
| } |
| set( |
| current, |
| "upperBound", |
| lv_upperBound_2_0, |
| "org.eclipse.ocl.xtext.base.Base.UPPER"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleMultiplicityBoundsCS" |
| |
| |
| // $ANTLR start "entryRuleMultiplicityCS" |
| // InternalOCLinEcore.g:9610:1: entryRuleMultiplicityCS returns [EObject current=null] : iv_ruleMultiplicityCS= ruleMultiplicityCS EOF ; |
| public final EObject entryRuleMultiplicityCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleMultiplicityCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:9611:2: (iv_ruleMultiplicityCS= ruleMultiplicityCS EOF ) |
| // InternalOCLinEcore.g:9612:2: iv_ruleMultiplicityCS= ruleMultiplicityCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getMultiplicityCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleMultiplicityCS=ruleMultiplicityCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleMultiplicityCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleMultiplicityCS" |
| |
| |
| // $ANTLR start "ruleMultiplicityCS" |
| // InternalOCLinEcore.g:9619:1: ruleMultiplicityCS returns [EObject current=null] : (otherlv_0= '[' (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS ) (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )? otherlv_5= ']' ) ; |
| public final EObject ruleMultiplicityCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_0=null; |
| Token otherlv_3=null; |
| Token lv_isNullFree_4_0=null; |
| Token otherlv_5=null; |
| EObject this_MultiplicityBoundsCS_1 = null; |
| |
| EObject this_MultiplicityStringCS_2 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:9622:28: ( (otherlv_0= '[' (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS ) (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )? otherlv_5= ']' ) ) |
| // InternalOCLinEcore.g:9623:1: (otherlv_0= '[' (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS ) (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )? otherlv_5= ']' ) |
| { |
| // InternalOCLinEcore.g:9623:1: (otherlv_0= '[' (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS ) (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )? otherlv_5= ']' ) |
| // InternalOCLinEcore.g:9623:3: otherlv_0= '[' (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS ) (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )? otherlv_5= ']' |
| { |
| otherlv_0=(Token)match(input,124,FollowSets000.FOLLOW_127); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_0, grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0()); |
| |
| } |
| // InternalOCLinEcore.g:9627:1: (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS ) |
| int alt213=2; |
| int LA213_0 = input.LA(1); |
| |
| if ( (LA213_0==RULE_INT) ) { |
| alt213=1; |
| } |
| else if ( (LA213_0==84||LA213_0==86||LA213_0==137) ) { |
| alt213=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 213, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt213) { |
| case 1 : |
| // InternalOCLinEcore.g:9628:2: this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_128); |
| this_MultiplicityBoundsCS_1=ruleMultiplicityBoundsCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_MultiplicityBoundsCS_1; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:9641:2: this_MultiplicityStringCS_2= ruleMultiplicityStringCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_128); |
| this_MultiplicityStringCS_2=ruleMultiplicityStringCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_MultiplicityStringCS_2; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:9652:2: (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )? |
| int alt214=3; |
| int LA214_0 = input.LA(1); |
| |
| if ( (LA214_0==135) ) { |
| alt214=1; |
| } |
| else if ( (LA214_0==136) ) { |
| alt214=2; |
| } |
| switch (alt214) { |
| case 1 : |
| // InternalOCLinEcore.g:9652:4: otherlv_3= '|?' |
| { |
| otherlv_3=(Token)match(input,135,FollowSets000.FOLLOW_129); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_3, grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0()); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:9657:6: ( (lv_isNullFree_4_0= '|1' ) ) |
| { |
| // InternalOCLinEcore.g:9657:6: ( (lv_isNullFree_4_0= '|1' ) ) |
| // InternalOCLinEcore.g:9658:1: (lv_isNullFree_4_0= '|1' ) |
| { |
| // InternalOCLinEcore.g:9658:1: (lv_isNullFree_4_0= '|1' ) |
| // InternalOCLinEcore.g:9659:3: lv_isNullFree_4_0= '|1' |
| { |
| lv_isNullFree_4_0=(Token)match(input,136,FollowSets000.FOLLOW_129); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_isNullFree_4_0, grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getMultiplicityCSRule()); |
| } |
| setWithLastConsumed(current, "isNullFree", true, "|1"); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_5=(Token)match(input,125,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_5, grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3()); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleMultiplicityCS" |
| |
| |
| // $ANTLR start "entryRuleMultiplicityStringCS" |
| // InternalOCLinEcore.g:9684:1: entryRuleMultiplicityStringCS returns [EObject current=null] : iv_ruleMultiplicityStringCS= ruleMultiplicityStringCS EOF ; |
| public final EObject entryRuleMultiplicityStringCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleMultiplicityStringCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:9685:2: (iv_ruleMultiplicityStringCS= ruleMultiplicityStringCS EOF ) |
| // InternalOCLinEcore.g:9686:2: iv_ruleMultiplicityStringCS= ruleMultiplicityStringCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getMultiplicityStringCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleMultiplicityStringCS=ruleMultiplicityStringCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleMultiplicityStringCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleMultiplicityStringCS" |
| |
| |
| // $ANTLR start "ruleMultiplicityStringCS" |
| // InternalOCLinEcore.g:9693:1: ruleMultiplicityStringCS returns [EObject current=null] : ( ( (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) ) ) ; |
| public final EObject ruleMultiplicityStringCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token lv_stringBounds_0_1=null; |
| Token lv_stringBounds_0_2=null; |
| Token lv_stringBounds_0_3=null; |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:9696:28: ( ( ( (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) ) ) ) |
| // InternalOCLinEcore.g:9697:1: ( ( (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) ) ) |
| { |
| // InternalOCLinEcore.g:9697:1: ( ( (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) ) ) |
| // InternalOCLinEcore.g:9698:1: ( (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) ) |
| { |
| // InternalOCLinEcore.g:9698:1: ( (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) ) |
| // InternalOCLinEcore.g:9699:1: (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) |
| { |
| // InternalOCLinEcore.g:9699:1: (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) |
| int alt215=3; |
| switch ( input.LA(1) ) { |
| case 84: |
| { |
| alt215=1; |
| } |
| break; |
| case 86: |
| { |
| alt215=2; |
| } |
| break; |
| case 137: |
| { |
| alt215=3; |
| } |
| break; |
| default: |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 215, 0, input); |
| |
| throw nvae; |
| } |
| |
| switch (alt215) { |
| case 1 : |
| // InternalOCLinEcore.g:9700:3: lv_stringBounds_0_1= '*' |
| { |
| lv_stringBounds_0_1=(Token)match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_stringBounds_0_1, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getMultiplicityStringCSRule()); |
| } |
| setWithLastConsumed(current, "stringBounds", lv_stringBounds_0_1, null); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:9712:8: lv_stringBounds_0_2= '+' |
| { |
| lv_stringBounds_0_2=(Token)match(input,86,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_stringBounds_0_2, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getMultiplicityStringCSRule()); |
| } |
| setWithLastConsumed(current, "stringBounds", lv_stringBounds_0_2, null); |
| |
| } |
| |
| } |
| break; |
| case 3 : |
| // InternalOCLinEcore.g:9724:8: lv_stringBounds_0_3= '?' |
| { |
| lv_stringBounds_0_3=(Token)match(input,137,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(lv_stringBounds_0_3, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2()); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getMultiplicityStringCSRule()); |
| } |
| setWithLastConsumed(current, "stringBounds", lv_stringBounds_0_3, null); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleMultiplicityStringCS" |
| |
| |
| // $ANTLR start "entryRulePathNameCS" |
| // InternalOCLinEcore.g:9747:1: entryRulePathNameCS returns [EObject current=null] : iv_rulePathNameCS= rulePathNameCS EOF ; |
| public final EObject entryRulePathNameCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_rulePathNameCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:9748:2: (iv_rulePathNameCS= rulePathNameCS EOF ) |
| // InternalOCLinEcore.g:9749:2: iv_rulePathNameCS= rulePathNameCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getPathNameCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_rulePathNameCS=rulePathNameCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_rulePathNameCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRulePathNameCS" |
| |
| |
| // $ANTLR start "rulePathNameCS" |
| // InternalOCLinEcore.g:9756:1: rulePathNameCS returns [EObject current=null] : ( ( (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) ; |
| public final EObject rulePathNameCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| EObject lv_ownedPathElements_0_0 = null; |
| |
| EObject lv_ownedPathElements_2_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:9759:28: ( ( ( (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) ) |
| // InternalOCLinEcore.g:9760:1: ( ( (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) |
| { |
| // InternalOCLinEcore.g:9760:1: ( ( (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) |
| // InternalOCLinEcore.g:9760:2: ( (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* |
| { |
| // InternalOCLinEcore.g:9760:2: ( (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) ) |
| // InternalOCLinEcore.g:9761:1: (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) |
| { |
| // InternalOCLinEcore.g:9761:1: (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) |
| // InternalOCLinEcore.g:9762:3: lv_ownedPathElements_0_0= ruleFirstPathElementCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_90); |
| lv_ownedPathElements_0_0=ruleFirstPathElementCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getPathNameCSRule()); |
| } |
| add( |
| current, |
| "ownedPathElements", |
| lv_ownedPathElements_0_0, |
| "org.eclipse.ocl.xtext.base.Base.FirstPathElementCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:9778:2: (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* |
| loop216: |
| do { |
| int alt216=2; |
| int LA216_0 = input.LA(1); |
| |
| if ( (LA216_0==100) ) { |
| alt216=1; |
| } |
| |
| |
| switch (alt216) { |
| case 1 : |
| // InternalOCLinEcore.g:9778:4: otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) |
| { |
| otherlv_1=(Token)match(input,100,FollowSets000.FOLLOW_91); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:9782:1: ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) |
| // InternalOCLinEcore.g:9783:1: (lv_ownedPathElements_2_0= ruleNextPathElementCS ) |
| { |
| // InternalOCLinEcore.g:9783:1: (lv_ownedPathElements_2_0= ruleNextPathElementCS ) |
| // InternalOCLinEcore.g:9784:3: lv_ownedPathElements_2_0= ruleNextPathElementCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_90); |
| lv_ownedPathElements_2_0=ruleNextPathElementCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getPathNameCSRule()); |
| } |
| add( |
| current, |
| "ownedPathElements", |
| lv_ownedPathElements_2_0, |
| "org.eclipse.ocl.xtext.base.Base.NextPathElementCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop216; |
| } |
| } while (true); |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "rulePathNameCS" |
| |
| |
| // $ANTLR start "entryRuleFirstPathElementCS" |
| // InternalOCLinEcore.g:9808:1: entryRuleFirstPathElementCS returns [EObject current=null] : iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF ; |
| public final EObject entryRuleFirstPathElementCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleFirstPathElementCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:9809:2: (iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF ) |
| // InternalOCLinEcore.g:9810:2: iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getFirstPathElementCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleFirstPathElementCS=ruleFirstPathElementCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleFirstPathElementCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleFirstPathElementCS" |
| |
| |
| // $ANTLR start "ruleFirstPathElementCS" |
| // InternalOCLinEcore.g:9817:1: ruleFirstPathElementCS returns [EObject current=null] : ( ( ruleUnrestrictedName ) ) ; |
| public final EObject ruleFirstPathElementCS() throws RecognitionException { |
| EObject current = null; |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:9820:28: ( ( ( ruleUnrestrictedName ) ) ) |
| // InternalOCLinEcore.g:9821:1: ( ( ruleUnrestrictedName ) ) |
| { |
| // InternalOCLinEcore.g:9821:1: ( ( ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:9822:1: ( ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:9822:1: ( ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:9823:3: ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getFirstPathElementCSRule()); |
| } |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleFirstPathElementCS" |
| |
| |
| // $ANTLR start "entryRuleNextPathElementCS" |
| // InternalOCLinEcore.g:9847:1: entryRuleNextPathElementCS returns [EObject current=null] : iv_ruleNextPathElementCS= ruleNextPathElementCS EOF ; |
| public final EObject entryRuleNextPathElementCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleNextPathElementCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:9848:2: (iv_ruleNextPathElementCS= ruleNextPathElementCS EOF ) |
| // InternalOCLinEcore.g:9849:2: iv_ruleNextPathElementCS= ruleNextPathElementCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getNextPathElementCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleNextPathElementCS=ruleNextPathElementCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleNextPathElementCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleNextPathElementCS" |
| |
| |
| // $ANTLR start "ruleNextPathElementCS" |
| // InternalOCLinEcore.g:9856:1: ruleNextPathElementCS returns [EObject current=null] : ( ( ruleUnreservedName ) ) ; |
| public final EObject ruleNextPathElementCS() throws RecognitionException { |
| EObject current = null; |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:9859:28: ( ( ( ruleUnreservedName ) ) ) |
| // InternalOCLinEcore.g:9860:1: ( ( ruleUnreservedName ) ) |
| { |
| // InternalOCLinEcore.g:9860:1: ( ( ruleUnreservedName ) ) |
| // InternalOCLinEcore.g:9861:1: ( ruleUnreservedName ) |
| { |
| // InternalOCLinEcore.g:9861:1: ( ruleUnreservedName ) |
| // InternalOCLinEcore.g:9862:3: ruleUnreservedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElement(grammarAccess.getNextPathElementCSRule()); |
| } |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| ruleUnreservedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleNextPathElementCS" |
| |
| |
| // $ANTLR start "entryRuleTemplateBindingCS" |
| // InternalOCLinEcore.g:9886:1: entryRuleTemplateBindingCS returns [EObject current=null] : iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF ; |
| public final EObject entryRuleTemplateBindingCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleTemplateBindingCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:9887:2: (iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF ) |
| // InternalOCLinEcore.g:9888:2: iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getTemplateBindingCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleTemplateBindingCS=ruleTemplateBindingCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleTemplateBindingCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleTemplateBindingCS" |
| |
| |
| // $ANTLR start "ruleTemplateBindingCS" |
| // InternalOCLinEcore.g:9895:1: ruleTemplateBindingCS returns [EObject current=null] : ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) ; |
| public final EObject ruleTemplateBindingCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| EObject lv_ownedSubstitutions_0_0 = null; |
| |
| EObject lv_ownedSubstitutions_2_0 = null; |
| |
| EObject lv_ownedMultiplicity_3_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:9898:28: ( ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) ) |
| // InternalOCLinEcore.g:9899:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) |
| { |
| // InternalOCLinEcore.g:9899:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) |
| // InternalOCLinEcore.g:9899:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? |
| { |
| // InternalOCLinEcore.g:9899:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) |
| // InternalOCLinEcore.g:9900:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) |
| { |
| // InternalOCLinEcore.g:9900:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) |
| // InternalOCLinEcore.g:9901:3: lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_130); |
| lv_ownedSubstitutions_0_0=ruleTemplateParameterSubstitutionCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule()); |
| } |
| add( |
| current, |
| "ownedSubstitutions", |
| lv_ownedSubstitutions_0_0, |
| "org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:9917:2: (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* |
| loop217: |
| do { |
| int alt217=2; |
| int LA217_0 = input.LA(1); |
| |
| if ( (LA217_0==59) ) { |
| alt217=1; |
| } |
| |
| |
| switch (alt217) { |
| case 1 : |
| // InternalOCLinEcore.g:9917:4: otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) |
| { |
| otherlv_1=(Token)match(input,59,FollowSets000.FOLLOW_88); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:9921:1: ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) |
| // InternalOCLinEcore.g:9922:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) |
| { |
| // InternalOCLinEcore.g:9922:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) |
| // InternalOCLinEcore.g:9923:3: lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_130); |
| lv_ownedSubstitutions_2_0=ruleTemplateParameterSubstitutionCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule()); |
| } |
| add( |
| current, |
| "ownedSubstitutions", |
| lv_ownedSubstitutions_2_0, |
| "org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop217; |
| } |
| } while (true); |
| |
| // InternalOCLinEcore.g:9939:4: ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? |
| int alt218=2; |
| int LA218_0 = input.LA(1); |
| |
| if ( (LA218_0==124) ) { |
| alt218=1; |
| } |
| switch (alt218) { |
| case 1 : |
| // InternalOCLinEcore.g:9940:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) |
| { |
| // InternalOCLinEcore.g:9940:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) |
| // InternalOCLinEcore.g:9941:3: lv_ownedMultiplicity_3_0= ruleMultiplicityCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedMultiplicity_3_0=ruleMultiplicityCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule()); |
| } |
| set( |
| current, |
| "ownedMultiplicity", |
| lv_ownedMultiplicity_3_0, |
| "org.eclipse.ocl.xtext.base.Base.MultiplicityCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleTemplateBindingCS" |
| |
| |
| // $ANTLR start "entryRuleTemplateParameterSubstitutionCS" |
| // InternalOCLinEcore.g:9965:1: entryRuleTemplateParameterSubstitutionCS returns [EObject current=null] : iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF ; |
| public final EObject entryRuleTemplateParameterSubstitutionCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleTemplateParameterSubstitutionCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:9966:2: (iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF ) |
| // InternalOCLinEcore.g:9967:2: iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleTemplateParameterSubstitutionCS=ruleTemplateParameterSubstitutionCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleTemplateParameterSubstitutionCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleTemplateParameterSubstitutionCS" |
| |
| |
| // $ANTLR start "ruleTemplateParameterSubstitutionCS" |
| // InternalOCLinEcore.g:9974:1: ruleTemplateParameterSubstitutionCS returns [EObject current=null] : ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) ; |
| public final EObject ruleTemplateParameterSubstitutionCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject lv_ownedActualParameter_0_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:9977:28: ( ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) ) |
| // InternalOCLinEcore.g:9978:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) |
| { |
| // InternalOCLinEcore.g:9978:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) |
| // InternalOCLinEcore.g:9979:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS ) |
| { |
| // InternalOCLinEcore.g:9979:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS ) |
| // InternalOCLinEcore.g:9980:3: lv_ownedActualParameter_0_0= ruleTypeRefCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedActualParameter_0_0=ruleTypeRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTemplateParameterSubstitutionCSRule()); |
| } |
| set( |
| current, |
| "ownedActualParameter", |
| lv_ownedActualParameter_0_0, |
| "org.eclipse.ocl.xtext.base.Base.TypeRefCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleTemplateParameterSubstitutionCS" |
| |
| |
| // $ANTLR start "entryRuleTypeParameterCS" |
| // InternalOCLinEcore.g:10004:1: entryRuleTypeParameterCS returns [EObject current=null] : iv_ruleTypeParameterCS= ruleTypeParameterCS EOF ; |
| public final EObject entryRuleTypeParameterCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleTypeParameterCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:10005:2: (iv_ruleTypeParameterCS= ruleTypeParameterCS EOF ) |
| // InternalOCLinEcore.g:10006:2: iv_ruleTypeParameterCS= ruleTypeParameterCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getTypeParameterCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleTypeParameterCS=ruleTypeParameterCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleTypeParameterCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleTypeParameterCS" |
| |
| |
| // $ANTLR start "ruleTypeParameterCS" |
| // InternalOCLinEcore.g:10013:1: ruleTypeParameterCS returns [EObject current=null] : ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) ; |
| public final EObject ruleTypeParameterCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| Token otherlv_3=null; |
| AntlrDatatypeRuleToken lv_name_0_0 = null; |
| |
| EObject lv_ownedExtends_2_0 = null; |
| |
| EObject lv_ownedExtends_4_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:10016:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) ) |
| // InternalOCLinEcore.g:10017:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) |
| { |
| // InternalOCLinEcore.g:10017:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) |
| // InternalOCLinEcore.g:10017:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? |
| { |
| // InternalOCLinEcore.g:10017:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) |
| // InternalOCLinEcore.g:10018:1: (lv_name_0_0= ruleUnrestrictedName ) |
| { |
| // InternalOCLinEcore.g:10018:1: (lv_name_0_0= ruleUnrestrictedName ) |
| // InternalOCLinEcore.g:10019:3: lv_name_0_0= ruleUnrestrictedName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_131); |
| lv_name_0_0=ruleUnrestrictedName(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTypeParameterCSRule()); |
| } |
| set( |
| current, |
| "name", |
| lv_name_0_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:10035:2: (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? |
| int alt220=2; |
| int LA220_0 = input.LA(1); |
| |
| if ( (LA220_0==30) ) { |
| alt220=1; |
| } |
| switch (alt220) { |
| case 1 : |
| // InternalOCLinEcore.g:10035:4: otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* |
| { |
| otherlv_1=(Token)match(input,30,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0()); |
| |
| } |
| // InternalOCLinEcore.g:10039:1: ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) |
| // InternalOCLinEcore.g:10040:1: (lv_ownedExtends_2_0= ruleTypedRefCS ) |
| { |
| // InternalOCLinEcore.g:10040:1: (lv_ownedExtends_2_0= ruleTypedRefCS ) |
| // InternalOCLinEcore.g:10041:3: lv_ownedExtends_2_0= ruleTypedRefCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_132); |
| lv_ownedExtends_2_0=ruleTypedRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTypeParameterCSRule()); |
| } |
| add( |
| current, |
| "ownedExtends", |
| lv_ownedExtends_2_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedRefCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:10057:2: (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* |
| loop219: |
| do { |
| int alt219=2; |
| int LA219_0 = input.LA(1); |
| |
| if ( (LA219_0==138) ) { |
| alt219=1; |
| } |
| |
| |
| switch (alt219) { |
| case 1 : |
| // InternalOCLinEcore.g:10057:4: otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) |
| { |
| otherlv_3=(Token)match(input,138,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_3, grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:10061:1: ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) |
| // InternalOCLinEcore.g:10062:1: (lv_ownedExtends_4_0= ruleTypedRefCS ) |
| { |
| // InternalOCLinEcore.g:10062:1: (lv_ownedExtends_4_0= ruleTypedRefCS ) |
| // InternalOCLinEcore.g:10063:3: lv_ownedExtends_4_0= ruleTypedRefCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_132); |
| lv_ownedExtends_4_0=ruleTypedRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getTypeParameterCSRule()); |
| } |
| add( |
| current, |
| "ownedExtends", |
| lv_ownedExtends_4_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedRefCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| default : |
| break loop219; |
| } |
| } while (true); |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleTypeParameterCS" |
| |
| |
| // $ANTLR start "entryRuleTypeRefCS" |
| // InternalOCLinEcore.g:10087:1: entryRuleTypeRefCS returns [EObject current=null] : iv_ruleTypeRefCS= ruleTypeRefCS EOF ; |
| public final EObject entryRuleTypeRefCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleTypeRefCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:10088:2: (iv_ruleTypeRefCS= ruleTypeRefCS EOF ) |
| // InternalOCLinEcore.g:10089:2: iv_ruleTypeRefCS= ruleTypeRefCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getTypeRefCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleTypeRefCS=ruleTypeRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleTypeRefCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleTypeRefCS" |
| |
| |
| // $ANTLR start "ruleTypeRefCS" |
| // InternalOCLinEcore.g:10096:1: ruleTypeRefCS returns [EObject current=null] : (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) ; |
| public final EObject ruleTypeRefCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject this_TypedRefCS_0 = null; |
| |
| EObject this_WildcardTypeRefCS_1 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:10099:28: ( (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) ) |
| // InternalOCLinEcore.g:10100:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) |
| { |
| // InternalOCLinEcore.g:10100:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) |
| int alt221=2; |
| int LA221_0 = input.LA(1); |
| |
| if ( ((LA221_0>=RULE_SIMPLE_ID && LA221_0<=RULE_ESCAPED_ID)||LA221_0==17||(LA221_0>=19 && LA221_0<=53)||LA221_0==58||LA221_0==71||(LA221_0>=73 && LA221_0<=74)||LA221_0==76||LA221_0==80||(LA221_0>=98 && LA221_0<=99)||(LA221_0>=101 && LA221_0<=113)) ) { |
| alt221=1; |
| } |
| else if ( (LA221_0==137) ) { |
| alt221=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 221, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt221) { |
| case 1 : |
| // InternalOCLinEcore.g:10101:2: this_TypedRefCS_0= ruleTypedRefCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_TypedRefCS_0=ruleTypedRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_TypedRefCS_0; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:10114:2: this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_WildcardTypeRefCS_1=ruleWildcardTypeRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current = this_WildcardTypeRefCS_1; |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleTypeRefCS" |
| |
| |
| // $ANTLR start "entryRuleWildcardTypeRefCS" |
| // InternalOCLinEcore.g:10133:1: entryRuleWildcardTypeRefCS returns [EObject current=null] : iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF ; |
| public final EObject entryRuleWildcardTypeRefCS() throws RecognitionException { |
| EObject current = null; |
| |
| EObject iv_ruleWildcardTypeRefCS = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:10134:2: (iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF ) |
| // InternalOCLinEcore.g:10135:2: iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getWildcardTypeRefCSRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleWildcardTypeRefCS=ruleWildcardTypeRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleWildcardTypeRefCS; |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleWildcardTypeRefCS" |
| |
| |
| // $ANTLR start "ruleWildcardTypeRefCS" |
| // InternalOCLinEcore.g:10142:1: ruleWildcardTypeRefCS returns [EObject current=null] : ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) ; |
| public final EObject ruleWildcardTypeRefCS() throws RecognitionException { |
| EObject current = null; |
| |
| Token otherlv_1=null; |
| Token otherlv_2=null; |
| EObject lv_ownedExtends_3_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:10145:28: ( ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) ) |
| // InternalOCLinEcore.g:10146:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) |
| { |
| // InternalOCLinEcore.g:10146:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) |
| // InternalOCLinEcore.g:10146:2: () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? |
| { |
| // InternalOCLinEcore.g:10146:2: () |
| // InternalOCLinEcore.g:10147:2: |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| current = forceCreateModelElement( |
| grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0(), |
| current); |
| |
| } |
| |
| } |
| |
| otherlv_1=(Token)match(input,137,FollowSets000.FOLLOW_131); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_1, grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1()); |
| |
| } |
| // InternalOCLinEcore.g:10159:1: (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? |
| int alt222=2; |
| int LA222_0 = input.LA(1); |
| |
| if ( (LA222_0==30) ) { |
| alt222=1; |
| } |
| switch (alt222) { |
| case 1 : |
| // InternalOCLinEcore.g:10159:3: otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) |
| { |
| otherlv_2=(Token)match(input,30,FollowSets000.FOLLOW_29); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(otherlv_2, grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0()); |
| |
| } |
| // InternalOCLinEcore.g:10163:1: ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) |
| // InternalOCLinEcore.g:10164:1: (lv_ownedExtends_3_0= ruleTypedRefCS ) |
| { |
| // InternalOCLinEcore.g:10164:1: (lv_ownedExtends_3_0= ruleTypedRefCS ) |
| // InternalOCLinEcore.g:10165:3: lv_ownedExtends_3_0= ruleTypedRefCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedExtends_3_0=ruleTypedRefCS(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| if (current==null) { |
| current = createModelElementForParent(grammarAccess.getWildcardTypeRefCSRule()); |
| } |
| set( |
| current, |
| "ownedExtends", |
| lv_ownedExtends_3_0, |
| "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedRefCS"); |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleWildcardTypeRefCS" |
| |
| |
| // $ANTLR start "entryRuleID" |
| // InternalOCLinEcore.g:10189:1: entryRuleID returns [String current=null] : iv_ruleID= ruleID EOF ; |
| public final String entryRuleID() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_ruleID = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:10190:2: (iv_ruleID= ruleID EOF ) |
| // InternalOCLinEcore.g:10191:2: iv_ruleID= ruleID EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getIDRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleID=ruleID(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleID.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleID" |
| |
| |
| // $ANTLR start "ruleID" |
| // InternalOCLinEcore.g:10198:1: ruleID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) ; |
| public final AntlrDatatypeRuleToken ruleID() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| Token this_SIMPLE_ID_0=null; |
| Token this_ESCAPED_ID_1=null; |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:10201:28: ( (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) ) |
| // InternalOCLinEcore.g:10202:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) |
| { |
| // InternalOCLinEcore.g:10202:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) |
| int alt223=2; |
| int LA223_0 = input.LA(1); |
| |
| if ( (LA223_0==RULE_SIMPLE_ID) ) { |
| alt223=1; |
| } |
| else if ( (LA223_0==RULE_ESCAPED_ID) ) { |
| alt223=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 223, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt223) { |
| case 1 : |
| // InternalOCLinEcore.g:10202:6: this_SIMPLE_ID_0= RULE_SIMPLE_ID |
| { |
| this_SIMPLE_ID_0=(Token)match(input,RULE_SIMPLE_ID,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(this_SIMPLE_ID_0); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(this_SIMPLE_ID_0, grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0()); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:10210:10: this_ESCAPED_ID_1= RULE_ESCAPED_ID |
| { |
| this_ESCAPED_ID_1=(Token)match(input,RULE_ESCAPED_ID,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(this_ESCAPED_ID_1); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(this_ESCAPED_ID_1, grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleID" |
| |
| |
| // $ANTLR start "entryRuleIdentifier" |
| // InternalOCLinEcore.g:10225:1: entryRuleIdentifier returns [String current=null] : iv_ruleIdentifier= ruleIdentifier EOF ; |
| public final String entryRuleIdentifier() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_ruleIdentifier = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:10226:2: (iv_ruleIdentifier= ruleIdentifier EOF ) |
| // InternalOCLinEcore.g:10227:2: iv_ruleIdentifier= ruleIdentifier EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getIdentifierRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleIdentifier=ruleIdentifier(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleIdentifier.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleIdentifier" |
| |
| |
| // $ANTLR start "ruleIdentifier" |
| // InternalOCLinEcore.g:10234:1: ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_ID_0= ruleID ; |
| public final AntlrDatatypeRuleToken ruleIdentifier() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| AntlrDatatypeRuleToken this_ID_0 = null; |
| |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:10237:28: (this_ID_0= ruleID ) |
| // InternalOCLinEcore.g:10239:5: this_ID_0= ruleID |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getIdentifierAccess().getIDParserRuleCall()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_ID_0=ruleID(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(this_ID_0); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| afterParserOrEnumRuleCall(); |
| |
| } |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleIdentifier" |
| |
| |
| // $ANTLR start "entryRuleLOWER" |
| // InternalOCLinEcore.g:10257:1: entryRuleLOWER returns [String current=null] : iv_ruleLOWER= ruleLOWER EOF ; |
| public final String entryRuleLOWER() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_ruleLOWER = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:10258:2: (iv_ruleLOWER= ruleLOWER EOF ) |
| // InternalOCLinEcore.g:10259:2: iv_ruleLOWER= ruleLOWER EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getLOWERRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleLOWER=ruleLOWER(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleLOWER.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleLOWER" |
| |
| |
| // $ANTLR start "ruleLOWER" |
| // InternalOCLinEcore.g:10266:1: ruleLOWER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_INT_0= RULE_INT ; |
| public final AntlrDatatypeRuleToken ruleLOWER() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| Token this_INT_0=null; |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:10269:28: (this_INT_0= RULE_INT ) |
| // InternalOCLinEcore.g:10270:5: this_INT_0= RULE_INT |
| { |
| this_INT_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(this_INT_0); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(this_INT_0, grammarAccess.getLOWERAccess().getINTTerminalRuleCall()); |
| |
| } |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleLOWER" |
| |
| |
| // $ANTLR start "entryRuleNUMBER_LITERAL" |
| // InternalOCLinEcore.g:10285:1: entryRuleNUMBER_LITERAL returns [String current=null] : iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF ; |
| public final String entryRuleNUMBER_LITERAL() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_ruleNUMBER_LITERAL = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:10286:2: (iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF ) |
| // InternalOCLinEcore.g:10287:2: iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getNUMBER_LITERALRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleNUMBER_LITERAL=ruleNUMBER_LITERAL(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleNUMBER_LITERAL.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleNUMBER_LITERAL" |
| |
| |
| // $ANTLR start "ruleNUMBER_LITERAL" |
| // InternalOCLinEcore.g:10294:1: ruleNUMBER_LITERAL returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_INT_0= RULE_INT ; |
| public final AntlrDatatypeRuleToken ruleNUMBER_LITERAL() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| Token this_INT_0=null; |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:10297:28: (this_INT_0= RULE_INT ) |
| // InternalOCLinEcore.g:10298:5: this_INT_0= RULE_INT |
| { |
| this_INT_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(this_INT_0); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(this_INT_0, grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall()); |
| |
| } |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleNUMBER_LITERAL" |
| |
| |
| // $ANTLR start "entryRuleStringLiteral" |
| // InternalOCLinEcore.g:10313:1: entryRuleStringLiteral returns [String current=null] : iv_ruleStringLiteral= ruleStringLiteral EOF ; |
| public final String entryRuleStringLiteral() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_ruleStringLiteral = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:10314:2: (iv_ruleStringLiteral= ruleStringLiteral EOF ) |
| // InternalOCLinEcore.g:10315:2: iv_ruleStringLiteral= ruleStringLiteral EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getStringLiteralRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleStringLiteral=ruleStringLiteral(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleStringLiteral.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleStringLiteral" |
| |
| |
| // $ANTLR start "ruleStringLiteral" |
| // InternalOCLinEcore.g:10322:1: ruleStringLiteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING ; |
| public final AntlrDatatypeRuleToken ruleStringLiteral() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| Token this_SINGLE_QUOTED_STRING_0=null; |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:10325:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING ) |
| // InternalOCLinEcore.g:10326:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING |
| { |
| this_SINGLE_QUOTED_STRING_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(this_SINGLE_QUOTED_STRING_0); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); |
| |
| } |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleStringLiteral" |
| |
| |
| // $ANTLR start "entryRuleUPPER" |
| // InternalOCLinEcore.g:10341:1: entryRuleUPPER returns [String current=null] : iv_ruleUPPER= ruleUPPER EOF ; |
| public final String entryRuleUPPER() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_ruleUPPER = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:10342:2: (iv_ruleUPPER= ruleUPPER EOF ) |
| // InternalOCLinEcore.g:10343:2: iv_ruleUPPER= ruleUPPER EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getUPPERRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleUPPER=ruleUPPER(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleUPPER.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleUPPER" |
| |
| |
| // $ANTLR start "ruleUPPER" |
| // InternalOCLinEcore.g:10350:1: ruleUPPER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT | kw= '*' ) ; |
| public final AntlrDatatypeRuleToken ruleUPPER() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| Token this_INT_0=null; |
| Token kw=null; |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:10353:28: ( (this_INT_0= RULE_INT | kw= '*' ) ) |
| // InternalOCLinEcore.g:10354:1: (this_INT_0= RULE_INT | kw= '*' ) |
| { |
| // InternalOCLinEcore.g:10354:1: (this_INT_0= RULE_INT | kw= '*' ) |
| int alt224=2; |
| int LA224_0 = input.LA(1); |
| |
| if ( (LA224_0==RULE_INT) ) { |
| alt224=1; |
| } |
| else if ( (LA224_0==84) ) { |
| alt224=2; |
| } |
| else { |
| if (state.backtracking>0) {state.failed=true; return current;} |
| NoViableAltException nvae = |
| new NoViableAltException("", 224, 0, input); |
| |
| throw nvae; |
| } |
| switch (alt224) { |
| case 1 : |
| // InternalOCLinEcore.g:10354:6: this_INT_0= RULE_INT |
| { |
| this_INT_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(this_INT_0); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(this_INT_0, grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0()); |
| |
| } |
| |
| } |
| break; |
| case 2 : |
| // InternalOCLinEcore.g:10363:2: kw= '*' |
| { |
| kw=(Token)match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(kw); |
| newLeafNode(kw, grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); |
| |
| } |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleUPPER" |
| |
| |
| // $ANTLR start "entryRuleURI" |
| // InternalOCLinEcore.g:10376:1: entryRuleURI returns [String current=null] : iv_ruleURI= ruleURI EOF ; |
| public final String entryRuleURI() throws RecognitionException { |
| String current = null; |
| |
| AntlrDatatypeRuleToken iv_ruleURI = null; |
| |
| |
| try { |
| // InternalOCLinEcore.g:10377:2: (iv_ruleURI= ruleURI EOF ) |
| // InternalOCLinEcore.g:10378:2: iv_ruleURI= ruleURI EOF |
| { |
| if ( state.backtracking==0 ) { |
| newCompositeNode(grammarAccess.getURIRule()); |
| } |
| pushFollow(FollowSets000.FOLLOW_1); |
| iv_ruleURI=ruleURI(); |
| |
| state._fsp--; |
| if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| current =iv_ruleURI.getText(); |
| } |
| match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| |
| } |
| |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "entryRuleURI" |
| |
| |
| // $ANTLR start "ruleURI" |
| // InternalOCLinEcore.g:10385:1: ruleURI returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING ; |
| public final AntlrDatatypeRuleToken ruleURI() throws RecognitionException { |
| AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
| |
| Token this_SINGLE_QUOTED_STRING_0=null; |
| |
| enterRule(); |
| |
| try { |
| // InternalOCLinEcore.g:10388:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING ) |
| // InternalOCLinEcore.g:10389:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING |
| { |
| this_SINGLE_QUOTED_STRING_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return current; |
| if ( state.backtracking==0 ) { |
| |
| current.merge(this_SINGLE_QUOTED_STRING_0); |
| |
| } |
| if ( state.backtracking==0 ) { |
| |
| newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); |
| |
| } |
| |
| } |
| |
| if ( state.backtracking==0 ) { |
| leaveRule(); |
| } |
| } |
| |
| catch (RecognitionException re) { |
| recover(input,re); |
| appendSkippedTokens(); |
| } |
| finally { |
| } |
| return current; |
| } |
| // $ANTLR end "ruleURI" |
| |
| // $ANTLR start synpred315_InternalOCLinEcore |
| public final void synpred315_InternalOCLinEcore_fragment() throws RecognitionException { |
| EObject this_TypeLiteralCS_1 = null; |
| |
| |
| // InternalOCLinEcore.g:7478:2: (this_TypeLiteralCS_1= ruleTypeLiteralCS ) |
| // InternalOCLinEcore.g:7478:2: this_TypeLiteralCS_1= ruleTypeLiteralCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_TypeLiteralCS_1=ruleTypeLiteralCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| } |
| // $ANTLR end synpred315_InternalOCLinEcore |
| |
| // $ANTLR start synpred318_InternalOCLinEcore |
| public final void synpred318_InternalOCLinEcore_fragment() throws RecognitionException { |
| EObject this_PrefixedPrimaryExpCS_0 = null; |
| |
| AntlrDatatypeRuleToken lv_name_2_0 = null; |
| |
| EObject lv_ownedRight_3_0 = null; |
| |
| |
| // InternalOCLinEcore.g:7574:2: ( (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) ) |
| // InternalOCLinEcore.g:7574:2: (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) |
| { |
| // InternalOCLinEcore.g:7574:2: (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) |
| // InternalOCLinEcore.g:7575:2: this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_107); |
| this_PrefixedPrimaryExpCS_0=rulePrefixedPrimaryExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| // InternalOCLinEcore.g:7586:1: ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? |
| int alt313=2; |
| int LA313_0 = input.LA(1); |
| |
| if ( (LA313_0==18||LA313_0==62||(LA313_0>=81 && LA313_0<=82)||(LA313_0>=84 && LA313_0<=97)) ) { |
| alt313=1; |
| } |
| switch (alt313) { |
| case 1 : |
| // InternalOCLinEcore.g:7586:2: () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) |
| { |
| // InternalOCLinEcore.g:7586:2: () |
| // InternalOCLinEcore.g:7587:2: |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| |
| } |
| |
| // InternalOCLinEcore.g:7595:2: ( (lv_name_2_0= ruleBinaryOperatorName ) ) |
| // InternalOCLinEcore.g:7596:1: (lv_name_2_0= ruleBinaryOperatorName ) |
| { |
| // InternalOCLinEcore.g:7596:1: (lv_name_2_0= ruleBinaryOperatorName ) |
| // InternalOCLinEcore.g:7597:3: lv_name_2_0= ruleBinaryOperatorName |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_100); |
| lv_name_2_0=ruleBinaryOperatorName(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:7613:2: ( (lv_ownedRight_3_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:7614:1: (lv_ownedRight_3_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:7614:1: (lv_ownedRight_3_0= ruleExpCS ) |
| // InternalOCLinEcore.g:7615:3: lv_ownedRight_3_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedRight_3_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| } |
| // $ANTLR end synpred318_InternalOCLinEcore |
| |
| // $ANTLR start synpred325_InternalOCLinEcore |
| public final void synpred325_InternalOCLinEcore_fragment() throws RecognitionException { |
| EObject this_TupleLiteralExpCS_4 = null; |
| |
| |
| // InternalOCLinEcore.g:7876:2: (this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS ) |
| // InternalOCLinEcore.g:7876:2: this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_TupleLiteralExpCS_4=ruleTupleLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| } |
| // $ANTLR end synpred325_InternalOCLinEcore |
| |
| // $ANTLR start synpred326_InternalOCLinEcore |
| public final void synpred326_InternalOCLinEcore_fragment() throws RecognitionException { |
| EObject this_MapLiteralExpCS_5 = null; |
| |
| |
| // InternalOCLinEcore.g:7889:2: (this_MapLiteralExpCS_5= ruleMapLiteralExpCS ) |
| // InternalOCLinEcore.g:7889:2: this_MapLiteralExpCS_5= ruleMapLiteralExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_MapLiteralExpCS_5=ruleMapLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| } |
| // $ANTLR end synpred326_InternalOCLinEcore |
| |
| // $ANTLR start synpred327_InternalOCLinEcore |
| public final void synpred327_InternalOCLinEcore_fragment() throws RecognitionException { |
| EObject this_CollectionLiteralExpCS_6 = null; |
| |
| |
| // InternalOCLinEcore.g:7902:2: (this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS ) |
| // InternalOCLinEcore.g:7902:2: this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_CollectionLiteralExpCS_6=ruleCollectionLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| } |
| // $ANTLR end synpred327_InternalOCLinEcore |
| |
| // $ANTLR start synpred329_InternalOCLinEcore |
| public final void synpred329_InternalOCLinEcore_fragment() throws RecognitionException { |
| EObject this_TypeLiteralExpCS_8 = null; |
| |
| |
| // InternalOCLinEcore.g:7928:2: (this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS ) |
| // InternalOCLinEcore.g:7928:2: this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| /* */ |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| this_TypeLiteralExpCS_8=ruleTypeLiteralExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| } |
| // $ANTLR end synpred329_InternalOCLinEcore |
| |
| // $ANTLR start synpred342_InternalOCLinEcore |
| public final void synpred342_InternalOCLinEcore_fragment() throws RecognitionException { |
| Token otherlv_1=null; |
| Token otherlv_3=null; |
| EObject lv_ownedCoIterator_2_0 = null; |
| |
| EObject lv_ownedInitExpression_4_0 = null; |
| |
| |
| // InternalOCLinEcore.g:8357:3: ( (otherlv_1= '<-' ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) ) |
| // InternalOCLinEcore.g:8357:3: (otherlv_1= '<-' ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) |
| { |
| // InternalOCLinEcore.g:8357:3: (otherlv_1= '<-' ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) |
| // InternalOCLinEcore.g:8357:5: otherlv_1= '<-' ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? |
| { |
| otherlv_1=(Token)match(input,117,FollowSets000.FOLLOW_3); if (state.failed) return ; |
| // InternalOCLinEcore.g:8361:1: ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) |
| // InternalOCLinEcore.g:8362:1: (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) |
| { |
| // InternalOCLinEcore.g:8362:1: (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) |
| // InternalOCLinEcore.g:8363:3: lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_0_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_116); |
| lv_ownedCoIterator_2_0=ruleCoIteratorVariableCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:8379:2: (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? |
| int alt318=2; |
| int LA318_0 = input.LA(1); |
| |
| if ( (LA318_0==62) ) { |
| alt318=1; |
| } |
| switch (alt318) { |
| case 1 : |
| // InternalOCLinEcore.g:8379:4: otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) |
| { |
| otherlv_3=(Token)match(input,62,FollowSets000.FOLLOW_100); if (state.failed) return ; |
| // InternalOCLinEcore.g:8383:1: ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:8384:1: (lv_ownedInitExpression_4_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:8384:1: (lv_ownedInitExpression_4_0= ruleExpCS ) |
| // InternalOCLinEcore.g:8385:3: lv_ownedInitExpression_4_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedInitExpression_4_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| } |
| // $ANTLR end synpred342_InternalOCLinEcore |
| |
| // $ANTLR start synpred345_InternalOCLinEcore |
| public final void synpred345_InternalOCLinEcore_fragment() throws RecognitionException { |
| Token otherlv_5=null; |
| Token otherlv_7=null; |
| Token otherlv_9=null; |
| EObject lv_ownedType_6_0 = null; |
| |
| EObject lv_ownedCoIterator_8_0 = null; |
| |
| EObject lv_ownedInitExpression_10_0 = null; |
| |
| |
| // InternalOCLinEcore.g:8402:6: ( (otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )? ) ) |
| // InternalOCLinEcore.g:8402:6: (otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )? ) |
| { |
| // InternalOCLinEcore.g:8402:6: (otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )? ) |
| // InternalOCLinEcore.g:8402:8: otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )? |
| { |
| otherlv_5=(Token)match(input,56,FollowSets000.FOLLOW_29); if (state.failed) return ; |
| // InternalOCLinEcore.g:8406:1: ( (lv_ownedType_6_0= ruleTypeExpCS ) ) |
| // InternalOCLinEcore.g:8407:1: (lv_ownedType_6_0= ruleTypeExpCS ) |
| { |
| // InternalOCLinEcore.g:8407:1: (lv_ownedType_6_0= ruleTypeExpCS ) |
| // InternalOCLinEcore.g:8408:3: lv_ownedType_6_0= ruleTypeExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_117); |
| lv_ownedType_6_0=ruleTypeExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:8424:2: (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? |
| int alt319=2; |
| int LA319_0 = input.LA(1); |
| |
| if ( (LA319_0==117) ) { |
| alt319=1; |
| } |
| switch (alt319) { |
| case 1 : |
| // InternalOCLinEcore.g:8424:4: otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) |
| { |
| otherlv_7=(Token)match(input,117,FollowSets000.FOLLOW_3); if (state.failed) return ; |
| // InternalOCLinEcore.g:8428:1: ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) |
| // InternalOCLinEcore.g:8429:1: (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) |
| { |
| // InternalOCLinEcore.g:8429:1: (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) |
| // InternalOCLinEcore.g:8430:3: lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_1_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_116); |
| lv_ownedCoIterator_8_0=ruleCoIteratorVariableCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:8446:4: (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )? |
| int alt320=2; |
| int LA320_0 = input.LA(1); |
| |
| if ( (LA320_0==62) ) { |
| alt320=1; |
| } |
| switch (alt320) { |
| case 1 : |
| // InternalOCLinEcore.g:8446:6: otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) |
| { |
| otherlv_9=(Token)match(input,62,FollowSets000.FOLLOW_100); if (state.failed) return ; |
| // InternalOCLinEcore.g:8450:1: ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:8451:1: (lv_ownedInitExpression_10_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:8451:1: (lv_ownedInitExpression_10_0= ruleExpCS ) |
| // InternalOCLinEcore.g:8452:3: lv_ownedInitExpression_10_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_3_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedInitExpression_10_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| } |
| // $ANTLR end synpred345_InternalOCLinEcore |
| |
| // $ANTLR start synpred348_InternalOCLinEcore |
| public final void synpred348_InternalOCLinEcore_fragment() throws RecognitionException { |
| Token otherlv_11=null; |
| Token otherlv_13=null; |
| Token otherlv_15=null; |
| EObject lv_ownedType_12_0 = null; |
| |
| EObject lv_ownedCoIterator_14_0 = null; |
| |
| EObject lv_ownedInitExpression_16_0 = null; |
| |
| |
| // InternalOCLinEcore.g:8469:6: ( ( (otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) )? (otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) )? otherlv_15= 'in' ( (lv_ownedInitExpression_16_0= ruleExpCS ) ) ) ) |
| // InternalOCLinEcore.g:8469:6: ( (otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) )? (otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) )? otherlv_15= 'in' ( (lv_ownedInitExpression_16_0= ruleExpCS ) ) ) |
| { |
| // InternalOCLinEcore.g:8469:6: ( (otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) )? (otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) )? otherlv_15= 'in' ( (lv_ownedInitExpression_16_0= ruleExpCS ) ) ) |
| // InternalOCLinEcore.g:8469:7: (otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) )? (otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) )? otherlv_15= 'in' ( (lv_ownedInitExpression_16_0= ruleExpCS ) ) |
| { |
| // InternalOCLinEcore.g:8469:7: (otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) )? |
| int alt321=2; |
| int LA321_0 = input.LA(1); |
| |
| if ( (LA321_0==56) ) { |
| alt321=1; |
| } |
| switch (alt321) { |
| case 1 : |
| // InternalOCLinEcore.g:8469:9: otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) |
| { |
| otherlv_11=(Token)match(input,56,FollowSets000.FOLLOW_29); if (state.failed) return ; |
| // InternalOCLinEcore.g:8473:1: ( (lv_ownedType_12_0= ruleTypeExpCS ) ) |
| // InternalOCLinEcore.g:8474:1: (lv_ownedType_12_0= ruleTypeExpCS ) |
| { |
| // InternalOCLinEcore.g:8474:1: (lv_ownedType_12_0= ruleTypeExpCS ) |
| // InternalOCLinEcore.g:8475:3: lv_ownedType_12_0= ruleTypeExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_2_0_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_118); |
| lv_ownedType_12_0=ruleTypeExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:8491:4: (otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) )? |
| int alt322=2; |
| int LA322_0 = input.LA(1); |
| |
| if ( (LA322_0==117) ) { |
| alt322=1; |
| } |
| switch (alt322) { |
| case 1 : |
| // InternalOCLinEcore.g:8491:6: otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) |
| { |
| otherlv_13=(Token)match(input,117,FollowSets000.FOLLOW_3); if (state.failed) return ; |
| // InternalOCLinEcore.g:8495:1: ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) |
| // InternalOCLinEcore.g:8496:1: (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) |
| { |
| // InternalOCLinEcore.g:8496:1: (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) |
| // InternalOCLinEcore.g:8497:3: lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_2_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_119); |
| lv_ownedCoIterator_14_0=ruleCoIteratorVariableCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_15=(Token)match(input,126,FollowSets000.FOLLOW_100); if (state.failed) return ; |
| // InternalOCLinEcore.g:8517:1: ( (lv_ownedInitExpression_16_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:8518:1: (lv_ownedInitExpression_16_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:8518:1: (lv_ownedInitExpression_16_0= ruleExpCS ) |
| // InternalOCLinEcore.g:8519:3: lv_ownedInitExpression_16_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_2_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedInitExpression_16_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| } |
| // $ANTLR end synpred348_InternalOCLinEcore |
| |
| // $ANTLR start synpred353_InternalOCLinEcore |
| public final void synpred353_InternalOCLinEcore_fragment() throws RecognitionException { |
| Token otherlv_2=null; |
| Token otherlv_4=null; |
| EObject lv_ownedCoIterator_3_0 = null; |
| |
| EObject lv_ownedInitExpression_5_0 = null; |
| |
| |
| // InternalOCLinEcore.g:8710:3: ( (otherlv_2= '<-' ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) ) |
| // InternalOCLinEcore.g:8710:3: (otherlv_2= '<-' ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) |
| { |
| // InternalOCLinEcore.g:8710:3: (otherlv_2= '<-' ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) |
| // InternalOCLinEcore.g:8710:5: otherlv_2= '<-' ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? |
| { |
| otherlv_2=(Token)match(input,117,FollowSets000.FOLLOW_3); if (state.failed) return ; |
| // InternalOCLinEcore.g:8714:1: ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) |
| // InternalOCLinEcore.g:8715:1: (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) |
| { |
| // InternalOCLinEcore.g:8715:1: (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) |
| // InternalOCLinEcore.g:8716:3: lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_0_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_116); |
| lv_ownedCoIterator_3_0=ruleCoIteratorVariableCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:8732:2: (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? |
| int alt330=2; |
| int LA330_0 = input.LA(1); |
| |
| if ( (LA330_0==62) ) { |
| alt330=1; |
| } |
| switch (alt330) { |
| case 1 : |
| // InternalOCLinEcore.g:8732:4: otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) |
| { |
| otherlv_4=(Token)match(input,62,FollowSets000.FOLLOW_100); if (state.failed) return ; |
| // InternalOCLinEcore.g:8736:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:8737:1: (lv_ownedInitExpression_5_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:8737:1: (lv_ownedInitExpression_5_0= ruleExpCS ) |
| // InternalOCLinEcore.g:8738:3: lv_ownedInitExpression_5_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedInitExpression_5_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| } |
| // $ANTLR end synpred353_InternalOCLinEcore |
| |
| // $ANTLR start synpred356_InternalOCLinEcore |
| public final void synpred356_InternalOCLinEcore_fragment() throws RecognitionException { |
| Token otherlv_6=null; |
| Token otherlv_8=null; |
| Token otherlv_10=null; |
| EObject lv_ownedType_7_0 = null; |
| |
| EObject lv_ownedCoIterator_9_0 = null; |
| |
| EObject lv_ownedInitExpression_11_0 = null; |
| |
| |
| // InternalOCLinEcore.g:8755:6: ( (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) (otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) )? (otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) )? ) ) |
| // InternalOCLinEcore.g:8755:6: (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) (otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) )? (otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) )? ) |
| { |
| // InternalOCLinEcore.g:8755:6: (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) (otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) )? (otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) )? ) |
| // InternalOCLinEcore.g:8755:8: otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) (otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) )? (otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) )? |
| { |
| otherlv_6=(Token)match(input,56,FollowSets000.FOLLOW_29); if (state.failed) return ; |
| // InternalOCLinEcore.g:8759:1: ( (lv_ownedType_7_0= ruleTypeExpCS ) ) |
| // InternalOCLinEcore.g:8760:1: (lv_ownedType_7_0= ruleTypeExpCS ) |
| { |
| // InternalOCLinEcore.g:8760:1: (lv_ownedType_7_0= ruleTypeExpCS ) |
| // InternalOCLinEcore.g:8761:3: lv_ownedType_7_0= ruleTypeExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_117); |
| lv_ownedType_7_0=ruleTypeExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| |
| |
| } |
| |
| // InternalOCLinEcore.g:8777:2: (otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) )? |
| int alt331=2; |
| int LA331_0 = input.LA(1); |
| |
| if ( (LA331_0==117) ) { |
| alt331=1; |
| } |
| switch (alt331) { |
| case 1 : |
| // InternalOCLinEcore.g:8777:4: otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) |
| { |
| otherlv_8=(Token)match(input,117,FollowSets000.FOLLOW_3); if (state.failed) return ; |
| // InternalOCLinEcore.g:8781:1: ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) |
| // InternalOCLinEcore.g:8782:1: (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) |
| { |
| // InternalOCLinEcore.g:8782:1: (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) |
| // InternalOCLinEcore.g:8783:3: lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_1_2_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_116); |
| lv_ownedCoIterator_9_0=ruleCoIteratorVariableCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:8799:4: (otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) )? |
| int alt332=2; |
| int LA332_0 = input.LA(1); |
| |
| if ( (LA332_0==62) ) { |
| alt332=1; |
| } |
| switch (alt332) { |
| case 1 : |
| // InternalOCLinEcore.g:8799:6: otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) |
| { |
| otherlv_10=(Token)match(input,62,FollowSets000.FOLLOW_100); if (state.failed) return ; |
| // InternalOCLinEcore.g:8803:1: ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:8804:1: (lv_ownedInitExpression_11_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:8804:1: (lv_ownedInitExpression_11_0= ruleExpCS ) |
| // InternalOCLinEcore.g:8805:3: lv_ownedInitExpression_11_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_3_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedInitExpression_11_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| } |
| // $ANTLR end synpred356_InternalOCLinEcore |
| |
| // $ANTLR start synpred359_InternalOCLinEcore |
| public final void synpred359_InternalOCLinEcore_fragment() throws RecognitionException { |
| Token otherlv_12=null; |
| Token otherlv_14=null; |
| Token otherlv_16=null; |
| EObject lv_ownedType_13_0 = null; |
| |
| EObject lv_ownedCoIterator_15_0 = null; |
| |
| EObject lv_ownedInitExpression_17_0 = null; |
| |
| |
| // InternalOCLinEcore.g:8822:6: ( ( (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) ) )? (otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) )? otherlv_16= 'in' ( (lv_ownedInitExpression_17_0= ruleExpCS ) ) ) ) |
| // InternalOCLinEcore.g:8822:6: ( (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) ) )? (otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) )? otherlv_16= 'in' ( (lv_ownedInitExpression_17_0= ruleExpCS ) ) ) |
| { |
| // InternalOCLinEcore.g:8822:6: ( (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) ) )? (otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) )? otherlv_16= 'in' ( (lv_ownedInitExpression_17_0= ruleExpCS ) ) ) |
| // InternalOCLinEcore.g:8822:7: (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) ) )? (otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) )? otherlv_16= 'in' ( (lv_ownedInitExpression_17_0= ruleExpCS ) ) |
| { |
| // InternalOCLinEcore.g:8822:7: (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) ) )? |
| int alt333=2; |
| int LA333_0 = input.LA(1); |
| |
| if ( (LA333_0==56) ) { |
| alt333=1; |
| } |
| switch (alt333) { |
| case 1 : |
| // InternalOCLinEcore.g:8822:9: otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) ) |
| { |
| otherlv_12=(Token)match(input,56,FollowSets000.FOLLOW_29); if (state.failed) return ; |
| // InternalOCLinEcore.g:8826:1: ( (lv_ownedType_13_0= ruleTypeExpCS ) ) |
| // InternalOCLinEcore.g:8827:1: (lv_ownedType_13_0= ruleTypeExpCS ) |
| { |
| // InternalOCLinEcore.g:8827:1: (lv_ownedType_13_0= ruleTypeExpCS ) |
| // InternalOCLinEcore.g:8828:3: lv_ownedType_13_0= ruleTypeExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_2_0_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_118); |
| lv_ownedType_13_0=ruleTypeExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| // InternalOCLinEcore.g:8844:4: (otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) )? |
| int alt334=2; |
| int LA334_0 = input.LA(1); |
| |
| if ( (LA334_0==117) ) { |
| alt334=1; |
| } |
| switch (alt334) { |
| case 1 : |
| // InternalOCLinEcore.g:8844:6: otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) |
| { |
| otherlv_14=(Token)match(input,117,FollowSets000.FOLLOW_3); if (state.failed) return ; |
| // InternalOCLinEcore.g:8848:1: ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) |
| // InternalOCLinEcore.g:8849:1: (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) |
| { |
| // InternalOCLinEcore.g:8849:1: (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) |
| // InternalOCLinEcore.g:8850:3: lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_2_1_1_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_119); |
| lv_ownedCoIterator_15_0=ruleCoIteratorVariableCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| break; |
| |
| } |
| |
| otherlv_16=(Token)match(input,126,FollowSets000.FOLLOW_100); if (state.failed) return ; |
| // InternalOCLinEcore.g:8870:1: ( (lv_ownedInitExpression_17_0= ruleExpCS ) ) |
| // InternalOCLinEcore.g:8871:1: (lv_ownedInitExpression_17_0= ruleExpCS ) |
| { |
| // InternalOCLinEcore.g:8871:1: (lv_ownedInitExpression_17_0= ruleExpCS ) |
| // InternalOCLinEcore.g:8872:3: lv_ownedInitExpression_17_0= ruleExpCS |
| { |
| if ( state.backtracking==0 ) { |
| |
| newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_3_0()); |
| |
| } |
| pushFollow(FollowSets000.FOLLOW_2); |
| lv_ownedInitExpression_17_0=ruleExpCS(); |
| |
| state._fsp--; |
| if (state.failed) return ; |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| |
| |
| } |
| } |
| // $ANTLR end synpred359_InternalOCLinEcore |
| |
| // Delegated rules |
| |
| public final boolean synpred348_InternalOCLinEcore() { |
| state.backtracking++; |
| int start = input.mark(); |
| try { |
| synpred348_InternalOCLinEcore_fragment(); // can never throw exception |
| } catch (RecognitionException re) { |
| System.err.println("impossible: "+re); |
| } |
| boolean success = !state.failed; |
| input.rewind(start); |
| state.backtracking--; |
| state.failed=false; |
| return success; |
| } |
| public final boolean synpred315_InternalOCLinEcore() { |
| state.backtracking++; |
| int start = input.mark(); |
| try { |
| synpred315_InternalOCLinEcore_fragment(); // can never throw exception |
| } catch (RecognitionException re) { |
| System.err.println("impossible: "+re); |
| } |
| boolean success = !state.failed; |
| input.rewind(start); |
| state.backtracking--; |
| state.failed=false; |
| return success; |
| } |
| public final boolean synpred326_InternalOCLinEcore() { |
| state.backtracking++; |
| int start = input.mark(); |
| try { |
| synpred326_InternalOCLinEcore_fragment(); // can never throw exception |
| } catch (RecognitionException re) { |
| System.err.println("impossible: "+re); |
| } |
| boolean success = !state.failed; |
| input.rewind(start); |
| state.backtracking--; |
| state.failed=false; |
| return success; |
| } |
| public final boolean synpred359_InternalOCLinEcore() { |
| state.backtracking++; |
| int start = input.mark(); |
| try { |
| synpred359_InternalOCLinEcore_fragment(); // can never throw exception |
| } catch (RecognitionException re) { |
| System.err.println("impossible: "+re); |
| } |
| boolean success = !state.failed; |
| input.rewind(start); |
| state.backtracking--; |
| state.failed=false; |
| return success; |
| } |
| public final boolean synpred356_InternalOCLinEcore() { |
| state.backtracking++; |
| int start = input.mark(); |
| try { |
| synpred356_InternalOCLinEcore_fragment(); // can never throw exception |
| } catch (RecognitionException re) { |
| System.err.println("impossible: "+re); |
| } |
| boolean success = !state.failed; |
| input.rewind(start); |
| state.backtracking--; |
| state.failed=false; |
| return success; |
| } |
| public final boolean synpred329_InternalOCLinEcore() { |
| state.backtracking++; |
| int start = input.mark(); |
| try { |
| synpred329_InternalOCLinEcore_fragment(); // can never throw exception |
| } catch (RecognitionException re) { |
| System.err.println("impossible: "+re); |
| } |
| boolean success = !state.failed; |
| input.rewind(start); |
| state.backtracking--; |
| state.failed=false; |
| return success; |
| } |
| public final boolean synpred327_InternalOCLinEcore() { |
| state.backtracking++; |
| int start = input.mark(); |
| try { |
| synpred327_InternalOCLinEcore_fragment(); // can never throw exception |
| } catch (RecognitionException re) { |
| System.err.println("impossible: "+re); |
| } |
| boolean success = !state.failed; |
| input.rewind(start); |
| state.backtracking--; |
| state.failed=false; |
| return success; |
| } |
| public final boolean synpred342_InternalOCLinEcore() { |
| state.backtracking++; |
| int start = input.mark(); |
| try { |
| synpred342_InternalOCLinEcore_fragment(); // can never throw exception |
| } catch (RecognitionException re) { |
| System.err.println("impossible: "+re); |
| } |
| boolean success = !state.failed; |
| input.rewind(start); |
| state.backtracking--; |
| state.failed=false; |
| return success; |
| } |
| public final boolean synpred325_InternalOCLinEcore() { |
| state.backtracking++; |
| int start = input.mark(); |
| try { |
| synpred325_InternalOCLinEcore_fragment(); // can never throw exception |
| } catch (RecognitionException re) { |
| System.err.println("impossible: "+re); |
| } |
| boolean success = !state.failed; |
| input.rewind(start); |
| state.backtracking--; |
| state.failed=false; |
| return success; |
| } |
| public final boolean synpred345_InternalOCLinEcore() { |
| state.backtracking++; |
| int start = input.mark(); |
| try { |
| synpred345_InternalOCLinEcore_fragment(); // can never throw exception |
| } catch (RecognitionException re) { |
| System.err.println("impossible: "+re); |
| } |
| boolean success = !state.failed; |
| input.rewind(start); |
| state.backtracking--; |
| state.failed=false; |
| return success; |
| } |
| public final boolean synpred353_InternalOCLinEcore() { |
| state.backtracking++; |
| int start = input.mark(); |
| try { |
| synpred353_InternalOCLinEcore_fragment(); // can never throw exception |
| } catch (RecognitionException re) { |
| System.err.println("impossible: "+re); |
| } |
| boolean success = !state.failed; |
| input.rewind(start); |
| state.backtracking--; |
| state.failed=false; |
| return success; |
| } |
| public final boolean synpred318_InternalOCLinEcore() { |
| state.backtracking++; |
| int start = input.mark(); |
| try { |
| synpred318_InternalOCLinEcore_fragment(); // can never throw exception |
| } catch (RecognitionException re) { |
| System.err.println("impossible: "+re); |
| } |
| boolean success = !state.failed; |
| input.rewind(start); |
| state.backtracking--; |
| state.failed=false; |
| return success; |
| } |
| |
| |
| protected DFA65 dfa65 = new DFA65(this); |
| protected DFA67 dfa67 = new DFA67(this); |
| protected DFA125 dfa125 = new DFA125(this); |
| protected DFA155 dfa155 = new DFA155(this); |
| protected DFA158 dfa158 = new DFA158(this); |
| protected DFA172 dfa172 = new DFA172(this); |
| protected DFA175 dfa175 = new DFA175(this); |
| protected DFA178 dfa178 = new DFA178(this); |
| protected DFA194 dfa194 = new DFA194(this); |
| protected DFA203 dfa203 = new DFA203(this); |
| protected DFA207 dfa207 = new DFA207(this); |
| static final String dfa_1s = "\57\uffff"; |
| static final String dfa_2s = "\1\5\54\70\2\uffff"; |
| static final String dfa_3s = "\1\120\54\144\2\uffff"; |
| static final String dfa_4s = "\55\uffff\1\2\1\1"; |
| static final String dfa_5s = "\57\uffff}>"; |
| static final String[] dfa_6s = { |
| "\1\55\2\uffff\1\1\1\2\7\uffff\1\25\1\uffff\1\3\1\4\1\5\1\6\1\7\1\10\1\11\1\12\1\13\1\14\1\15\1\16\1\17\1\20\1\21\1\22\1\23\1\24\1\26\1\27\1\30\1\31\1\32\1\33\1\34\1\35\1\36\1\37\1\40\1\41\1\42\1\43\1\44\1\45\1\50\4\uffff\1\46\14\uffff\1\53\1\uffff\1\47\1\51\1\uffff\1\52\3\uffff\1\54", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "\1\56\1\55\21\uffff\1\55\30\uffff\1\55", |
| "", |
| "" |
| }; |
| |
| static final short[] dfa_1 = DFA.unpackEncodedString(dfa_1s); |
| static final char[] dfa_2 = DFA.unpackEncodedStringToUnsignedChars(dfa_2s); |
| static final char[] dfa_3 = DFA.unpackEncodedStringToUnsignedChars(dfa_3s); |
| static final short[] dfa_4 = DFA.unpackEncodedString(dfa_4s); |
| static final short[] dfa_5 = DFA.unpackEncodedString(dfa_5s); |
| static final short[][] dfa_6 = unpackEncodedStringArray(dfa_6s); |
| |
| class DFA65 extends DFA { |
| |
| public DFA65(BaseRecognizer recognizer) { |
| this.recognizer = recognizer; |
| this.decisionNumber = 65; |
| this.eot = dfa_1; |
| this.eof = dfa_1; |
| this.min = dfa_2; |
| this.max = dfa_3; |
| this.accept = dfa_4; |
| this.special = dfa_5; |
| this.transition = dfa_6; |
| } |
| public String getDescription() { |
| return "2363:2: ( ( (lv_name_2_0= ruleUnrestrictedName ) ) otherlv_3= ':' )?"; |
| } |
| } |
| static final String dfa_7s = "\23\uffff"; |
| static final String dfa_8s = "\1\10\1\27\1\10\1\31\2\10\1\uffff\1\10\1\24\3\10\1\24\2\uffff\1\24\2\uffff\1\24"; |
| static final String dfa_9s = "\1\112\1\76\1\120\1\76\2\120\1\uffff\1\120\1\76\1\121\2\120\1\76\2\uffff\1\53\2\uffff\1\53"; |
| static final String dfa_10s = "\6\uffff\1\2\6\uffff\1\1\1\5\1\uffff\1\3\1\4\1\uffff"; |
| static final String dfa_11s = "\23\uffff}>"; |
| static final String[] dfa_12s = { |
| "\2\6\7\uffff\1\6\1\uffff\1\1\1\7\2\6\1\2\1\6\1\4\1\10\2\6\1\5\7\6\1\11\1\6\1\12\2\6\1\3\1\13\3\6\1\14\5\6\25\uffff\1\6", |
| "\1\15\40\uffff\2\6\2\uffff\1\6\1\uffff\1\6", |
| "\2\15\7\uffff\1\15\1\uffff\43\15\2\uffff\2\6\1\15\1\uffff\1\6\1\uffff\1\6\10\uffff\1\15\1\uffff\2\15\1\uffff\1\15\3\uffff\1\15", |
| "\1\15\36\uffff\2\6\2\uffff\1\6\1\uffff\1\6", |
| "\2\15\7\uffff\1\15\1\uffff\43\15\2\uffff\2\6\1\15\1\uffff\1\6\1\uffff\1\6\10\uffff\1\15\1\uffff\2\15\1\uffff\1\15\3\uffff\1\15", |
| "\2\15\7\uffff\1\15\1\uffff\43\15\2\uffff\2\6\1\15\1\uffff\1\6\1\uffff\1\6\10\uffff\1\15\1\uffff\2\15\1\uffff\1\15\3\uffff\1\15", |
| "", |
| "\2\16\7\uffff\1\16\1\uffff\43\16\2\uffff\2\6\1\16\1\uffff\1\6\1\uffff\1\6\10\uffff\1\16\1\uffff\2\16\1\uffff\1\16\3\uffff\1\16", |
| "\1\16\20\uffff\1\20\5\uffff\1\16\3\uffff\1\17\10\uffff\2\6\2\uffff\1\6\1\uffff\1\6", |
| "\2\20\7\uffff\1\20\1\uffff\44\20\1\uffff\2\6\1\20\1\uffff\1\6\1\uffff\1\6\10\uffff\1\20\1\uffff\2\20\1\uffff\1\20\3\uffff\2\20", |
| "\2\21\7\uffff\1\21\1\uffff\43\21\2\uffff\2\6\1\21\1\uffff\1\6\1\uffff\1\6\10\uffff\1\21\1\uffff\2\21\1\uffff\1\21\3\uffff\1\21", |
| "\2\16\7\uffff\1\16\1\uffff\43\16\2\uffff\2\6\1\16\1\uffff\1\6\1\uffff\1\6\10\uffff\1\16\1\uffff\2\16\1\uffff\1\16\3\uffff\1\16", |
| "\1\16\5\uffff\1\22\12\uffff\1\20\5\uffff\1\16\14\uffff\2\6\2\uffff\1\6\1\uffff\1\6", |
| "", |
| "", |
| "\1\16\20\uffff\1\20\5\uffff\1\16", |
| "", |
| "", |
| "\1\16\20\uffff\1\20\5\uffff\1\16" |
| }; |
| |
| static final short[] dfa_7 = DFA.unpackEncodedString(dfa_7s); |
| static final char[] dfa_8 = DFA.unpackEncodedStringToUnsignedChars(dfa_8s); |
| static final char[] dfa_9 = DFA.unpackEncodedStringToUnsignedChars(dfa_9s); |
| static final short[] dfa_10 = DFA.unpackEncodedString(dfa_10s); |
| static final short[] dfa_11 = DFA.unpackEncodedString(dfa_11s); |
| static final short[][] dfa_12 = unpackEncodedStringArray(dfa_12s); |
| |
| class DFA67 extends DFA { |
| |
| public DFA67(BaseRecognizer recognizer) { |
| this.recognizer = recognizer; |
| this.decisionNumber = 67; |
| this.eot = dfa_7; |
| this.eof = dfa_7; |
| this.min = dfa_8; |
| this.max = dfa_9; |
| this.accept = dfa_10; |
| this.special = dfa_11; |
| this.transition = dfa_12; |
| } |
| public String getDescription() { |
| return "2443:1: (this_ClassCS_0= ruleClassCS | this_EnumerationLiteralCS_1= ruleEnumerationLiteralCS | this_OperationCS_2= ruleOperationCS | this_PackageCS_3= rulePackageCS | this_StructuralFeatureCS_4= ruleStructuralFeatureCS )"; |
| } |
| } |
| static final String dfa_13s = "\12\uffff"; |
| static final String dfa_14s = "\1\24\2\uffff\2\24\3\uffff\2\24"; |
| static final String dfa_15s = "\1\120\2\uffff\1\53\1\57\3\uffff\2\53"; |
| static final String dfa_16s = "\1\uffff\1\5\1\1\2\uffff\1\2\1\3\1\4\2\uffff"; |
| static final String dfa_17s = "\12\uffff}>"; |
| static final String[] dfa_18s = { |
| "\1\6\1\uffff\1\7\3\uffff\1\4\12\uffff\1\5\5\uffff\1\6\3\uffff\1\3\5\uffff\1\7\4\uffff\1\2\2\uffff\1\1\13\uffff\1\2\6\uffff\1\2", |
| "", |
| "", |
| "\1\6\5\uffff\1\10\12\uffff\1\5\5\uffff\1\6", |
| "\1\6\20\uffff\1\5\5\uffff\1\6\3\uffff\1\11", |
| "", |
| "", |
| "", |
| "\1\6\20\uffff\1\5\5\uffff\1\6", |
| "\1\6\20\uffff\1\5\5\uffff\1\6" |
| }; |
| |
| static final short[] dfa_13 = DFA.unpackEncodedString(dfa_13s); |
| static final char[] dfa_14 = DFA.unpackEncodedStringToUnsignedChars(dfa_14s); |
| static final char[] dfa_15 = DFA.unpackEncodedStringToUnsignedChars(dfa_15s); |
| static final short[] dfa_16 = DFA.unpackEncodedString(dfa_16s); |
| static final short[] dfa_17 = DFA.unpackEncodedString(dfa_17s); |
| static final short[][] dfa_18 = unpackEncodedStringArray(dfa_18s); |
| |
| class DFA125 extends DFA { |
| |
| public DFA125(BaseRecognizer recognizer) { |
| this.recognizer = recognizer; |
| this.decisionNumber = 125; |
| this.eot = dfa_13; |
| this.eof = dfa_13; |
| this.min = dfa_14; |
| this.max = dfa_15; |
| this.accept = dfa_16; |
| this.special = dfa_17; |
| this.transition = dfa_18; |
| } |
| public String getDescription() { |
| return "()* loopback of 4381:1: ( ( (lv_ownedAnnotations_14_0= ruleAnnotationElementCS ) ) | ( (lv_ownedOperations_15_0= ruleOperationCS ) ) | ( (lv_ownedProperties_16_0= ruleStructuralFeatureCS ) ) | ( (lv_ownedConstraints_17_0= ruleInvariantConstraintCS ) ) )*"; |
| } |
| } |
| static final String dfa_19s = "\2\uffff\54\1\1\uffff"; |
| static final String dfa_20s = "\1\4\1\uffff\54\22\1\uffff"; |
| static final String dfa_21s = "\1\u0086\1\uffff\54\174\1\uffff"; |
| static final String dfa_22s = "\1\uffff\1\1\54\uffff\1\2"; |
| static final String[] dfa_23s = { |
| "\2\1\2\uffff\1\2\1\3\7\uffff\1\26\1\1\1\4\1\5\1\6\1\7\1\10\1\11\1\12\1\13\1\14\1\15\1\16\1\17\1\20\1\21\1\22\1\23\1\24\1\25\1\27\1\30\1\31\1\32\1\33\1\34\1\35\1\36\1\37\1\40\1\41\1\42\1\43\1\44\1\45\1\46\1\51\1\1\1\uffff\1\56\1\uffff\1\47\14\uffff\1\54\1\uffff\1\50\1\52\1\uffff\1\53\3\uffff\1\55\2\uffff\2\1\15\uffff\2\1\1\uffff\15\1\2\uffff\1\1\1\uffff\4\1\6\uffff\1\1\4\uffff\2\1", |
| "", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\15\uffff\1\1\7\uffff\1\1\1\uffff\1\1", |
| "" |
| }; |
| static final short[] dfa_19 = DFA.unpackEncodedString(dfa_19s); |
| static final char[] dfa_20 = DFA.unpackEncodedStringToUnsignedChars(dfa_20s); |
| static final char[] dfa_21 = DFA.unpackEncodedStringToUnsignedChars(dfa_21s); |
| static final short[] dfa_22 = DFA.unpackEncodedString(dfa_22s); |
| static final short[][] dfa_23 = unpackEncodedStringArray(dfa_23s); |
| |
| class DFA155 extends DFA { |
| |
| public DFA155(BaseRecognizer recognizer) { |
| this.recognizer = recognizer; |
| this.decisionNumber = 155; |
| this.eot = dfa_1; |
| this.eof = dfa_19; |
| this.min = dfa_20; |
| this.max = dfa_21; |
| this.accept = dfa_22; |
| this.special = dfa_5; |
| this.transition = dfa_23; |
| } |
| public String getDescription() { |
| return "6186:1: ( ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? ) | ( (lv_ownedExpression_3_0= rulePatternExpCS ) ) )"; |
| } |
| } |
| static final String[] dfa_24s = { |
| "\2\1\2\uffff\1\2\1\3\7\uffff\1\26\1\1\1\4\1\5\1\6\1\7\1\10\1\11\1\12\1\13\1\14\1\15\1\16\1\17\1\20\1\21\1\22\1\23\1\24\1\25\1\27\1\30\1\31\1\32\1\33\1\34\1\35\1\36\1\37\1\40\1\41\1\42\1\43\1\44\1\45\1\46\1\51\1\1\1\uffff\1\56\1\uffff\1\47\14\uffff\1\54\1\uffff\1\50\1\52\1\uffff\1\53\3\uffff\1\55\2\uffff\2\1\15\uffff\2\1\1\uffff\15\1\2\uffff\1\1\1\uffff\4\1\6\uffff\1\1\4\uffff\2\1", |
| "", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\2\uffff\4\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1", |
| "" |
| }; |
| static final short[][] dfa_24 = unpackEncodedStringArray(dfa_24s); |
| |
| class DFA158 extends DFA { |
| |
| public DFA158(BaseRecognizer recognizer) { |
| this.recognizer = recognizer; |
| this.decisionNumber = 158; |
| this.eot = dfa_1; |
| this.eof = dfa_19; |
| this.min = dfa_20; |
| this.max = dfa_21; |
| this.accept = dfa_22; |
| this.special = dfa_5; |
| this.transition = dfa_24; |
| } |
| public String getDescription() { |
| return "6399:1: (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS )"; |
| } |
| } |
| static final String dfa_25s = "\75\uffff"; |
| static final String dfa_26s = "\1\10\64\uffff\5\0\3\uffff"; |
| static final String dfa_27s = "\1\161\64\uffff\5\0\3\uffff"; |
| static final String dfa_28s = "\1\uffff\1\1\53\uffff\1\2\16\uffff\1\3"; |
| static final String dfa_29s = "\65\uffff\1\0\1\1\1\2\1\3\1\4\3\uffff}>"; |
| static final String[] dfa_30s = { |
| "\2\1\7\uffff\1\1\1\uffff\43\1\4\uffff\1\1\14\uffff\1\1\1\uffff\2\1\1\uffff\1\1\3\uffff\1\1\21\uffff\2\55\1\uffff\10\55\1\65\1\66\1\67\1\70\1\71", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "\1\uffff", |
| "\1\uffff", |
| "\1\uffff", |
| "\1\uffff", |
| "\1\uffff", |
| "", |
| "", |
| "" |
| }; |
| |
| static final short[] dfa_25 = DFA.unpackEncodedString(dfa_25s); |
| static final char[] dfa_26 = DFA.unpackEncodedStringToUnsignedChars(dfa_26s); |
| static final char[] dfa_27 = DFA.unpackEncodedStringToUnsignedChars(dfa_27s); |
| static final short[] dfa_28 = DFA.unpackEncodedString(dfa_28s); |
| static final short[] dfa_29 = DFA.unpackEncodedString(dfa_29s); |
| static final short[][] dfa_30 = unpackEncodedStringArray(dfa_30s); |
| |
| class DFA172 extends DFA { |
| |
| public DFA172(BaseRecognizer recognizer) { |
| this.recognizer = recognizer; |
| this.decisionNumber = 172; |
| this.eot = dfa_25; |
| this.eof = dfa_25; |
| this.min = dfa_26; |
| this.max = dfa_27; |
| this.accept = dfa_28; |
| this.special = dfa_29; |
| this.transition = dfa_30; |
| } |
| public String getDescription() { |
| return "7464:1: (this_TypeNameExpCS_0= ruleTypeNameExpCS | this_TypeLiteralCS_1= ruleTypeLiteralCS | this_CollectionPatternCS_2= ruleCollectionPatternCS )"; |
| } |
| public int specialStateTransition(int s, IntStream _input) throws NoViableAltException { |
| TokenStream input = (TokenStream)_input; |
| int _s = s; |
| switch ( s ) { |
| case 0 : |
| int LA172_53 = input.LA(1); |
| |
| |
| int index172_53 = input.index(); |
| input.rewind(); |
| s = -1; |
| if ( (synpred315_InternalOCLinEcore()) ) {s = 45;} |
| |
| else if ( (true) ) {s = 60;} |
| |
| |
| input.seek(index172_53); |
| if ( s>=0 ) return s; |
| break; |
| case 1 : |
| int LA172_54 = input.LA(1); |
| |
| |
| int index172_54 = input.index(); |
| input.rewind(); |
| s = -1; |
| if ( (synpred315_InternalOCLinEcore()) ) {s = 45;} |
| |
| else if ( (true) ) {s = 60;} |
| |
| |
| input.seek(index172_54); |
| if ( s>=0 ) return s; |
| break; |
| case 2 : |
| int LA172_55 = input.LA(1); |
| |
| |
| int index172_55 = input.index(); |
| input.rewind(); |
| s = -1; |
| if ( (synpred315_InternalOCLinEcore()) ) {s = 45;} |
| |
| else if ( (true) ) {s = 60;} |
| |
| |
| input.seek(index172_55); |
| if ( s>=0 ) return s; |
| break; |
| case 3 : |
| int LA172_56 = input.LA(1); |
| |
| |
| int index172_56 = input.index(); |
| input.rewind(); |
| s = -1; |
| if ( (synpred315_InternalOCLinEcore()) ) {s = 45;} |
| |
| else if ( (true) ) {s = 60;} |
| |
| |
| input.seek(index172_56); |
| if ( s>=0 ) return s; |
| break; |
| case 4 : |
| int LA172_57 = input.LA(1); |
| |
| |
| int index172_57 = input.index(); |
| input.rewind(); |
| s = -1; |
| if ( (synpred315_InternalOCLinEcore()) ) {s = 45;} |
| |
| else if ( (true) ) {s = 60;} |
| |
| |
| input.seek(index172_57); |
| if ( s>=0 ) return s; |
| break; |
| } |
| if (state.backtracking>0) {state.failed=true; return -1;} |
| NoViableAltException nvae = |
| new NoViableAltException(getDescription(), 172, _s, input); |
| error(nvae); |
| throw nvae; |
| } |
| } |
| static final String dfa_31s = "\112\uffff"; |
| static final String dfa_32s = "\1\4\2\0\107\uffff"; |
| static final String dfa_33s = "\1\u0086\2\0\107\uffff"; |
| static final String dfa_34s = "\3\uffff\1\1\105\uffff\1\2"; |
| static final String dfa_35s = "\1\uffff\1\0\1\1\107\uffff}>"; |
| static final String[] dfa_36s = { |
| "\2\3\2\uffff\2\3\7\uffff\1\3\1\1\44\3\3\uffff\1\3\14\uffff\1\3\1\uffff\2\3\1\uffff\1\3\3\uffff\1\3\2\uffff\1\2\1\3\15\uffff\2\3\1\uffff\15\3\2\uffff\1\3\1\uffff\4\3\6\uffff\1\3\4\uffff\1\111\1\3", |
| "\1\uffff", |
| "\1\uffff", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "" |
| }; |
| |
| static final short[] dfa_31 = DFA.unpackEncodedString(dfa_31s); |
| static final char[] dfa_32 = DFA.unpackEncodedStringToUnsignedChars(dfa_32s); |
| static final char[] dfa_33 = DFA.unpackEncodedStringToUnsignedChars(dfa_33s); |
| static final short[] dfa_34 = DFA.unpackEncodedString(dfa_34s); |
| static final short[] dfa_35 = DFA.unpackEncodedString(dfa_35s); |
| static final short[][] dfa_36 = unpackEncodedStringArray(dfa_36s); |
| |
| class DFA175 extends DFA { |
| |
| public DFA175(BaseRecognizer recognizer) { |
| this.recognizer = recognizer; |
| this.decisionNumber = 175; |
| this.eot = dfa_31; |
| this.eof = dfa_31; |
| this.min = dfa_32; |
| this.max = dfa_33; |
| this.accept = dfa_34; |
| this.special = dfa_35; |
| this.transition = dfa_36; |
| } |
| public String getDescription() { |
| return "7574:1: ( (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) | this_PrefixedLetExpCS_4= rulePrefixedLetExpCS )"; |
| } |
| public int specialStateTransition(int s, IntStream _input) throws NoViableAltException { |
| TokenStream input = (TokenStream)_input; |
| int _s = s; |
| switch ( s ) { |
| case 0 : |
| int LA175_1 = input.LA(1); |
| |
| |
| int index175_1 = input.index(); |
| input.rewind(); |
| s = -1; |
| if ( (synpred318_InternalOCLinEcore()) ) {s = 3;} |
| |
| else if ( (true) ) {s = 73;} |
| |
| |
| input.seek(index175_1); |
| if ( s>=0 ) return s; |
| break; |
| case 1 : |
| int LA175_2 = input.LA(1); |
| |
| |
| int index175_2 = input.index(); |
| input.rewind(); |
| s = -1; |
| if ( (synpred318_InternalOCLinEcore()) ) {s = 3;} |
| |
| else if ( (true) ) {s = 73;} |
| |
| |
| input.seek(index175_2); |
| if ( s>=0 ) return s; |
| break; |
| } |
| if (state.backtracking>0) {state.failed=true; return -1;} |
| NoViableAltException nvae = |
| new NoViableAltException(getDescription(), 175, _s, input); |
| error(nvae); |
| throw nvae; |
| } |
| } |
| static final String dfa_37s = "\1\4\12\uffff\7\0\70\uffff"; |
| static final String dfa_38s = "\1\u0086\12\uffff\7\0\70\uffff"; |
| static final String dfa_39s = "\1\uffff\1\1\1\2\1\3\1\4\15\uffff\1\10\1\11\7\uffff\1\12\53\uffff\1\5\1\6\1\7"; |
| static final String dfa_40s = "\13\uffff\1\0\1\1\1\2\1\3\1\4\1\5\1\6\70\uffff}>"; |
| static final String[] dfa_41s = { |
| "\2\4\2\uffff\2\33\7\uffff\1\33\1\uffff\43\33\1\1\3\uffff\1\33\14\uffff\1\33\1\uffff\2\33\1\uffff\1\33\3\uffff\1\33\3\uffff\1\4\15\uffff\1\14\1\13\1\uffff\10\23\1\15\1\16\1\17\1\20\1\21\2\uffff\1\22\1\uffff\4\4\6\uffff\1\2\5\uffff\1\3", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "\1\uffff", |
| "\1\uffff", |
| "\1\uffff", |
| "\1\uffff", |
| "\1\uffff", |
| "\1\uffff", |
| "\1\uffff", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "" |
| }; |
| static final char[] dfa_37 = DFA.unpackEncodedStringToUnsignedChars(dfa_37s); |
| static final char[] dfa_38 = DFA.unpackEncodedStringToUnsignedChars(dfa_38s); |
| static final short[] dfa_39 = DFA.unpackEncodedString(dfa_39s); |
| static final short[] dfa_40 = DFA.unpackEncodedString(dfa_40s); |
| static final short[][] dfa_41 = unpackEncodedStringArray(dfa_41s); |
| |
| class DFA178 extends DFA { |
| |
| public DFA178(BaseRecognizer recognizer) { |
| this.recognizer = recognizer; |
| this.decisionNumber = 178; |
| this.eot = dfa_31; |
| this.eof = dfa_31; |
| this.min = dfa_37; |
| this.max = dfa_38; |
| this.accept = dfa_39; |
| this.special = dfa_40; |
| this.transition = dfa_41; |
| } |
| public String getDescription() { |
| return "7823:1: (this_NestedExpCS_0= ruleNestedExpCS | this_IfExpCS_1= ruleIfExpCS | this_SelfExpCS_2= ruleSelfExpCS | this_PrimitiveLiteralExpCS_3= rulePrimitiveLiteralExpCS | this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS | this_MapLiteralExpCS_5= ruleMapLiteralExpCS | this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS | this_LambdaLiteralExpCS_7= ruleLambdaLiteralExpCS | this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS | this_NameExpCS_9= ruleNameExpCS )"; |
| } |
| public int specialStateTransition(int s, IntStream _input) throws NoViableAltException { |
| TokenStream input = (TokenStream)_input; |
| int _s = s; |
| switch ( s ) { |
| case 0 : |
| int LA178_11 = input.LA(1); |
| |
| |
| int index178_11 = input.index(); |
| input.rewind(); |
| s = -1; |
| if ( (synpred325_InternalOCLinEcore()) ) {s = 71;} |
| |
| else if ( (synpred329_InternalOCLinEcore()) ) {s = 19;} |
| |
| |
| input.seek(index178_11); |
| if ( s>=0 ) return s; |
| break; |
| case 1 : |
| int LA178_12 = input.LA(1); |
| |
| |
| int index178_12 = input.index(); |
| input.rewind(); |
| s = -1; |
| if ( (synpred326_InternalOCLinEcore()) ) {s = 72;} |
| |
| else if ( (synpred329_InternalOCLinEcore()) ) {s = 19;} |
| |
| |
| input.seek(index178_12); |
| if ( s>=0 ) return s; |
| break; |
| case 2 : |
| int LA178_13 = input.LA(1); |
| |
| |
| int index178_13 = input.index(); |
| input.rewind(); |
| s = -1; |
| if ( (synpred327_InternalOCLinEcore()) ) {s = 73;} |
| |
| else if ( (synpred329_InternalOCLinEcore()) ) {s = 19;} |
| |
| |
| input.seek(index178_13); |
| if ( s>=0 ) return s; |
| break; |
| case 3 : |
| int LA178_14 = input.LA(1); |
| |
| |
| int index178_14 = input.index(); |
| input.rewind(); |
| s = -1; |
| if ( (synpred327_InternalOCLinEcore()) ) {s = 73;} |
| |
| else if ( (synpred329_InternalOCLinEcore()) ) {s = 19;} |
| |
| |
| input.seek(index178_14); |
| if ( s>=0 ) return s; |
| break; |
| case 4 : |
| int LA178_15 = input.LA(1); |
| |
| |
| int index178_15 = input.index(); |
| input.rewind(); |
| s = -1; |
| if ( (synpred327_InternalOCLinEcore()) ) {s = 73;} |
| |
| else if ( (synpred329_InternalOCLinEcore()) ) {s = 19;} |
| |
| |
| input.seek(index178_15); |
| if ( s>=0 ) return s; |
| break; |
| case 5 : |
| int LA178_16 = input.LA(1); |
| |
| |
| int index178_16 = input.index(); |
| input.rewind(); |
| s = -1; |
| if ( (synpred327_InternalOCLinEcore()) ) {s = 73;} |
| |
| else if ( (synpred329_InternalOCLinEcore()) ) {s = 19;} |
| |
| |
| input.seek(index178_16); |
| if ( s>=0 ) return s; |
| break; |
| case 6 : |
| int LA178_17 = input.LA(1); |
| |
| |
| int index178_17 = input.index(); |
| input.rewind(); |
| s = -1; |
| if ( (synpred327_InternalOCLinEcore()) ) {s = 73;} |
| |
| else if ( (synpred329_InternalOCLinEcore()) ) {s = 19;} |
| |
| |
| input.seek(index178_17); |
| if ( s>=0 ) return s; |
| break; |
| } |
| if (state.backtracking>0) {state.failed=true; return -1;} |
| NoViableAltException nvae = |
| new NoViableAltException(getDescription(), 178, _s, input); |
| error(nvae); |
| throw nvae; |
| } |
| } |
| static final String dfa_42s = "\13\uffff"; |
| static final String dfa_43s = "\1\4\12\uffff"; |
| static final String dfa_44s = "\1\67\2\0\10\uffff"; |
| static final String dfa_45s = "\1\177\2\0\10\uffff"; |
| static final String dfa_46s = "\3\uffff\1\3\1\4\4\uffff\1\1\1\2"; |
| static final String dfa_47s = "\1\uffff\1\0\1\1\10\uffff}>"; |
| static final String[] dfa_48s = { |
| "\1\4\1\2\1\4\1\uffff\1\4\71\uffff\1\1\10\uffff\1\3\1\4", |
| "\1\uffff", |
| "\1\uffff", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "" |
| }; |
| |
| static final short[] dfa_42 = DFA.unpackEncodedString(dfa_42s); |
| static final short[] dfa_43 = DFA.unpackEncodedString(dfa_43s); |
| static final char[] dfa_44 = DFA.unpackEncodedStringToUnsignedChars(dfa_44s); |
| static final char[] dfa_45 = DFA.unpackEncodedStringToUnsignedChars(dfa_45s); |
| static final short[] dfa_46 = DFA.unpackEncodedString(dfa_46s); |
| static final short[] dfa_47 = DFA.unpackEncodedString(dfa_47s); |
| static final short[][] dfa_48 = unpackEncodedStringArray(dfa_48s); |
| |
| class DFA194 extends DFA { |
| |
| public DFA194(BaseRecognizer recognizer) { |
| this.recognizer = recognizer; |
| this.decisionNumber = 194; |
| this.eot = dfa_42; |
| this.eof = dfa_43; |
| this.min = dfa_44; |
| this.max = dfa_45; |
| this.accept = dfa_46; |
| this.special = dfa_47; |
| this.transition = dfa_48; |
| } |
| public String getDescription() { |
| return "8357:2: ( (otherlv_1= '<-' ( (lv_ownedCoIterator_2_0= ruleCoIteratorVariableCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) | (otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) (otherlv_7= '<-' ( (lv_ownedCoIterator_8_0= ruleCoIteratorVariableCS ) ) )? (otherlv_9= '=' ( (lv_ownedInitExpression_10_0= ruleExpCS ) ) )? ) | ( (otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) ) )? (otherlv_13= '<-' ( (lv_ownedCoIterator_14_0= ruleCoIteratorVariableCS ) ) )? otherlv_15= 'in' ( (lv_ownedInitExpression_16_0= ruleExpCS ) ) ) )?"; |
| } |
| public int specialStateTransition(int s, IntStream _input) throws NoViableAltException { |
| TokenStream input = (TokenStream)_input; |
| int _s = s; |
| switch ( s ) { |
| case 0 : |
| int LA194_1 = input.LA(1); |
| |
| |
| int index194_1 = input.index(); |
| input.rewind(); |
| s = -1; |
| if ( (synpred342_InternalOCLinEcore()) ) {s = 9;} |
| |
| else if ( (synpred348_InternalOCLinEcore()) ) {s = 3;} |
| |
| |
| input.seek(index194_1); |
| if ( s>=0 ) return s; |
| break; |
| case 1 : |
| int LA194_2 = input.LA(1); |
| |
| |
| int index194_2 = input.index(); |
| input.rewind(); |
| s = -1; |
| if ( (synpred345_InternalOCLinEcore()) ) {s = 10;} |
| |
| else if ( (synpred348_InternalOCLinEcore()) ) {s = 3;} |
| |
| |
| input.seek(index194_2); |
| if ( s>=0 ) return s; |
| break; |
| } |
| if (state.backtracking>0) {state.failed=true; return -1;} |
| NoViableAltException nvae = |
| new NoViableAltException(getDescription(), 194, _s, input); |
| error(nvae); |
| throw nvae; |
| } |
| } |
| |
| class DFA203 extends DFA { |
| |
| public DFA203(BaseRecognizer recognizer) { |
| this.recognizer = recognizer; |
| this.decisionNumber = 203; |
| this.eot = dfa_42; |
| this.eof = dfa_43; |
| this.min = dfa_44; |
| this.max = dfa_45; |
| this.accept = dfa_46; |
| this.special = dfa_47; |
| this.transition = dfa_48; |
| } |
| public String getDescription() { |
| return "8710:2: ( (otherlv_2= '<-' ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) (otherlv_8= '<-' ( (lv_ownedCoIterator_9_0= ruleCoIteratorVariableCS ) ) )? (otherlv_10= '=' ( (lv_ownedInitExpression_11_0= ruleExpCS ) ) )? ) | ( (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypeExpCS ) ) )? (otherlv_14= '<-' ( (lv_ownedCoIterator_15_0= ruleCoIteratorVariableCS ) ) )? otherlv_16= 'in' ( (lv_ownedInitExpression_17_0= ruleExpCS ) ) ) )?"; |
| } |
| public int specialStateTransition(int s, IntStream _input) throws NoViableAltException { |
| TokenStream input = (TokenStream)_input; |
| int _s = s; |
| switch ( s ) { |
| case 0 : |
| int LA203_1 = input.LA(1); |
| |
| |
| int index203_1 = input.index(); |
| input.rewind(); |
| s = -1; |
| if ( (synpred353_InternalOCLinEcore()) ) {s = 9;} |
| |
| else if ( (synpred359_InternalOCLinEcore()) ) {s = 3;} |
| |
| |
| input.seek(index203_1); |
| if ( s>=0 ) return s; |
| break; |
| case 1 : |
| int LA203_2 = input.LA(1); |
| |
| |
| int index203_2 = input.index(); |
| input.rewind(); |
| s = -1; |
| if ( (synpred356_InternalOCLinEcore()) ) {s = 10;} |
| |
| else if ( (synpred359_InternalOCLinEcore()) ) {s = 3;} |
| |
| |
| input.seek(index203_2); |
| if ( s>=0 ) return s; |
| break; |
| } |
| if (state.backtracking>0) {state.failed=true; return -1;} |
| NoViableAltException nvae = |
| new NoViableAltException(getDescription(), 203, _s, input); |
| error(nvae); |
| throw nvae; |
| } |
| } |
| static final String dfa_49s = "\1\u0086\1\uffff\54\u0081\1\uffff"; |
| static final String[] dfa_50s = { |
| "\2\1\2\uffff\1\2\1\3\7\uffff\1\26\1\1\1\4\1\5\1\6\1\7\1\10\1\11\1\12\1\13\1\14\1\15\1\16\1\17\1\20\1\21\1\22\1\23\1\24\1\25\1\27\1\30\1\31\1\32\1\33\1\34\1\35\1\36\1\37\1\40\1\41\1\42\1\43\1\44\1\45\1\46\1\51\1\1\1\uffff\1\56\1\uffff\1\47\14\uffff\1\54\1\uffff\1\50\1\52\1\uffff\1\53\3\uffff\1\55\2\uffff\2\1\15\uffff\2\1\1\uffff\15\1\2\uffff\1\1\1\uffff\4\1\6\uffff\1\1\4\uffff\2\1", |
| "", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "\1\1\43\uffff\1\1\1\uffff\1\56\3\uffff\1\1\1\uffff\1\1\22\uffff\2\1\1\uffff\16\1\2\uffff\1\1\25\uffff\1\1\1\uffff\1\1\4\uffff\1\1", |
| "" |
| }; |
| static final char[] dfa_49 = DFA.unpackEncodedStringToUnsignedChars(dfa_49s); |
| static final short[][] dfa_50 = unpackEncodedStringArray(dfa_50s); |
| |
| class DFA207 extends DFA { |
| |
| public DFA207(BaseRecognizer recognizer) { |
| this.recognizer = recognizer; |
| this.decisionNumber = 207; |
| this.eot = dfa_1; |
| this.eof = dfa_1; |
| this.min = dfa_20; |
| this.max = dfa_49; |
| this.accept = dfa_22; |
| this.special = dfa_5; |
| this.transition = dfa_50; |
| } |
| public String getDescription() { |
| return "9107:1: (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS )"; |
| } |
| } |
| |
| |
| |
| private static class FollowSets000 { |
| public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L}); |
| public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L}); |
| public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x043FFFFFFFFA0300L,0x0000000000011680L}); |
| public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000009100000002L}); |
| public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x0000008000000002L}); |
| public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0000000000000010L}); |
| public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x0020000000000000L}); |
| public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x073FFFFFFFFA0300L,0x0000000000011680L}); |
| public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0340000000000000L}); |
| public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x047FFFFFFFFE03B0L,0x03D3FFEC00191680L,0x0000000000000061L}); |
| public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0080000000000000L}); |
| public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0300000000000000L}); |
| public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x067FFFFFFFFE03B0L,0x03D3FFEC00191680L,0x0000000000000061L}); |
| public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0200000000000000L}); |
| public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x053FFFFFFFFA0300L,0x0000000000011680L}); |
| public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x0140000000000000L}); |
| public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0100000000000000L}); |
| public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x167FFFFFFFFA0320L,0x0000000000011680L}); |
| public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x1240000000000000L}); |
| public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x043FFFFFFFFA0320L,0x0000000000011680L}); |
| public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x0880000000000000L}); |
| public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x1200000000000000L}); |
| public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x041FFFFFFFFA0300L,0x0000000000010600L}); |
| public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x241FFFFFFFFA0300L,0x0000000000010600L}); |
| public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x0000000004100000L}); |
| public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0000000000100000L}); |
| public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0000800000100000L}); |
| public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x5300000000000000L}); |
| public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x047FFFFFFFFE0330L,0x03D3FFEC00191680L,0x0000000000000041L}); |
| public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x5200000000000000L}); |
| public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0000000000000020L}); |
| public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x801E104090000000L,0x000000000000007FL}); |
| public static final BitSet FOLLOW_33 = new BitSet(new long[]{0xA81E104090000000L,0x000000000000007FL}); |
| public static final BitSet FOLLOW_34 = new BitSet(new long[]{0xA01E104090000000L,0x000000000000007FL}); |
| public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x2400000208000000L,0x0000000000010200L}); |
| public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x0000000002000000L}); |
| public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x1340000000000000L,0x0000000000020000L}); |
| public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x1300000000000000L}); |
| public static final BitSet FOLLOW_39 = new BitSet(new long[]{0x2000000000000000L,0x0000000000000180L}); |
| public static final BitSet FOLLOW_40 = new BitSet(new long[]{0x2000000000000000L}); |
| public static final BitSet FOLLOW_41 = new BitSet(new long[]{0x2420000000400000L,0x0000000000010200L}); |
| public static final BitSet FOLLOW_42 = new BitSet(new long[]{0x4000000000000000L}); |
| public static final BitSet FOLLOW_43 = new BitSet(new long[]{0x0000000000000062L}); |
| public static final BitSet FOLLOW_44 = new BitSet(new long[]{0x0240000000000020L}); |
| public static final BitSet FOLLOW_45 = new BitSet(new long[]{0x0240000000000000L}); |
| public static final BitSet FOLLOW_46 = new BitSet(new long[]{0x243FFFFFFFFA0300L,0x0000000000010600L}); |
| public static final BitSet FOLLOW_47 = new BitSet(new long[]{0x0000000000040010L}); |
| public static final BitSet FOLLOW_48 = new BitSet(new long[]{0x2400000000000000L,0x0000000000010200L}); |
| public static final BitSet FOLLOW_49 = new BitSet(new long[]{0x0200000000000000L,0x0000000000000800L}); |
| public static final BitSet FOLLOW_50 = new BitSet(new long[]{0x0000002004000000L}); |
| public static final BitSet FOLLOW_51 = new BitSet(new long[]{0x0000002000000000L}); |
| public static final BitSet FOLLOW_52 = new BitSet(new long[]{0x0000802000000000L}); |
| public static final BitSet FOLLOW_53 = new BitSet(new long[]{0x047FFFFFFFFA0300L,0x0000000000031680L}); |
| public static final BitSet FOLLOW_54 = new BitSet(new long[]{0x0040000000000000L}); |
| public static final BitSet FOLLOW_55 = new BitSet(new long[]{0x04BFFFFFFFFA0300L,0x0000000000011680L}); |
| public static final BitSet FOLLOW_56 = new BitSet(new long[]{0x1301000000000000L}); |
| public static final BitSet FOLLOW_57 = new BitSet(new long[]{0x1201000000000000L}); |
| public static final BitSet FOLLOW_58 = new BitSet(new long[]{0x1A00000000000000L}); |
| public static final BitSet FOLLOW_59 = new BitSet(new long[]{0x8006004010000000L,0x000000000000001AL}); |
| public static final BitSet FOLLOW_60 = new BitSet(new long[]{0xA806004010000000L,0x000000000000001AL}); |
| public static final BitSet FOLLOW_61 = new BitSet(new long[]{0xA006004010000000L,0x000000000000001AL}); |
| public static final BitSet FOLLOW_62 = new BitSet(new long[]{0x2400030000200000L,0x0000000000010200L}); |
| public static final BitSet FOLLOW_63 = new BitSet(new long[]{0x2400048022880000L,0x0000000000010200L}); |
| public static final BitSet FOLLOW_64 = new BitSet(new long[]{0x1100000000000002L}); |
| public static final BitSet FOLLOW_65 = new BitSet(new long[]{0x1000000000000002L}); |
| public static final BitSet FOLLOW_66 = new BitSet(new long[]{0x0004004000000000L,0x0000000000000012L}); |
| public static final BitSet FOLLOW_67 = new BitSet(new long[]{0x2804004000000000L,0x0000000000000012L}); |
| public static final BitSet FOLLOW_68 = new BitSet(new long[]{0x2004004000000000L,0x0000000000000012L}); |
| public static final BitSet FOLLOW_69 = new BitSet(new long[]{0x0000080004000000L}); |
| public static final BitSet FOLLOW_70 = new BitSet(new long[]{0x0000080000000000L}); |
| public static final BitSet FOLLOW_71 = new BitSet(new long[]{0x0000880000000000L}); |
| public static final BitSet FOLLOW_72 = new BitSet(new long[]{0x5300000000000000L,0x0000000000002000L}); |
| public static final BitSet FOLLOW_73 = new BitSet(new long[]{0x801E504011000000L,0x000000000000C07EL}); |
| public static final BitSet FOLLOW_74 = new BitSet(new long[]{0xA81E504011000000L,0x000000000000C07EL}); |
| public static final BitSet FOLLOW_75 = new BitSet(new long[]{0xA01E504011000000L,0x000000000000C07EL}); |
| public static final BitSet FOLLOW_76 = new BitSet(new long[]{0x2400000A08000000L,0x0000000000011200L}); |
| public static final BitSet FOLLOW_77 = new BitSet(new long[]{0x0A00000000000000L}); |
| public static final BitSet FOLLOW_78 = new BitSet(new long[]{0x0000000000800000L}); |
| public static final BitSet FOLLOW_79 = new BitSet(new long[]{0x1340000040000000L,0x0000000000020000L}); |
| public static final BitSet FOLLOW_80 = new BitSet(new long[]{0x1300000040000000L}); |
| public static final BitSet FOLLOW_81 = new BitSet(new long[]{0x1B00000000000000L}); |
| public static final BitSet FOLLOW_82 = new BitSet(new long[]{0x2000000400000000L}); |
| public static final BitSet FOLLOW_83 = new BitSet(new long[]{0x143FFFFFFFFA0320L,0x0000000000011680L}); |
| public static final BitSet FOLLOW_84 = new BitSet(new long[]{0x243FFFFFFFFA0320L,0x0000000000011680L}); |
| public static final BitSet FOLLOW_85 = new BitSet(new long[]{0x0000000000000002L,0x1000000000000000L}); |
| public static final BitSet FOLLOW_86 = new BitSet(new long[]{0x0800000000000000L,0x0000000000040000L}); |
| public static final BitSet FOLLOW_87 = new BitSet(new long[]{0x0040000000000002L,0x0000000000020000L}); |
| public static final BitSet FOLLOW_88 = new BitSet(new long[]{0x047FFFFFFFFE0330L,0x03D3FFEC00191680L,0x0000000000000241L}); |
| public static final BitSet FOLLOW_89 = new BitSet(new long[]{0x0000000000000000L,0x0000000000040000L}); |
| public static final BitSet FOLLOW_90 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000000L}); |
| public static final BitSet FOLLOW_91 = new BitSet(new long[]{0x043FFFFFFFFA0300L,0x0003FFEC00011680L}); |
| public static final BitSet FOLLOW_92 = new BitSet(new long[]{0x0040000000000002L}); |
| public static final BitSet FOLLOW_93 = new BitSet(new long[]{0x0080000000000000L,0x1000000000000000L}); |
| public static final BitSet FOLLOW_94 = new BitSet(new long[]{0x0800000000000000L}); |
| public static final BitSet FOLLOW_95 = new BitSet(new long[]{0x1000000000000000L}); |
| public static final BitSet FOLLOW_96 = new BitSet(new long[]{0x257FFFFFFFFE0330L,0x03D3FFEC00191680L,0x0000000000000061L}); |
| public static final BitSet FOLLOW_97 = new BitSet(new long[]{0x2800000000000000L}); |
| public static final BitSet FOLLOW_98 = new BitSet(new long[]{0x057FFFFFFFFE0330L,0x03D3FFEC00191680L,0x0000000000000061L}); |
| public static final BitSet FOLLOW_99 = new BitSet(new long[]{0x0000000000000002L,0x0004000000000000L}); |
| public static final BitSet FOLLOW_100 = new BitSet(new long[]{0x047FFFFFFFFE0330L,0x03D3FFEC00191680L,0x0000000000000061L}); |
| public static final BitSet FOLLOW_101 = new BitSet(new long[]{0x0800000000000000L,0x0008000000000000L}); |
| public static final BitSet FOLLOW_102 = new BitSet(new long[]{0x0000000000000300L}); |
| public static final BitSet FOLLOW_103 = new BitSet(new long[]{0x247FFFFFFFFE0330L,0x03D3FFEC00191680L,0x0000000000000061L}); |
| public static final BitSet FOLLOW_104 = new BitSet(new long[]{0x0000000000000000L,0x0020000000000000L}); |
| public static final BitSet FOLLOW_105 = new BitSet(new long[]{0x4100000000000000L}); |
| public static final BitSet FOLLOW_106 = new BitSet(new long[]{0x0000000000000022L}); |
| public static final BitSet FOLLOW_107 = new BitSet(new long[]{0x4000000000040002L,0x00000003FFF60000L}); |
| public static final BitSet FOLLOW_108 = new BitSet(new long[]{0x1040000000000002L,0x1400000000000000L}); |
| public static final BitSet FOLLOW_109 = new BitSet(new long[]{0x1000000000000002L,0x0400000000000000L}); |
| public static final BitSet FOLLOW_110 = new BitSet(new long[]{0x0000000000000002L,0x0400000000000000L}); |
| public static final BitSet FOLLOW_111 = new BitSet(new long[]{0x0000000000000000L,0x0800000000000000L}); |
| public static final BitSet FOLLOW_112 = new BitSet(new long[]{0x05FFFFFFFFFE0330L,0x03D3FFEC00191680L,0x0000000000000061L}); |
| public static final BitSet FOLLOW_113 = new BitSet(new long[]{0x0A80000000000000L,0x8000000000000000L}); |
| public static final BitSet FOLLOW_114 = new BitSet(new long[]{0x0800000000000000L,0x2000000000000000L}); |
| public static final BitSet FOLLOW_115 = new BitSet(new long[]{0x0100000000000002L,0x4020000000000000L}); |
| public static final BitSet FOLLOW_116 = new BitSet(new long[]{0x4000000000000002L}); |
| public static final BitSet FOLLOW_117 = new BitSet(new long[]{0x4000000000000002L,0x0020000000000000L}); |
| public static final BitSet FOLLOW_118 = new BitSet(new long[]{0x0000000000000000L,0x4020000000000000L}); |
| public static final BitSet FOLLOW_119 = new BitSet(new long[]{0x0000000000000000L,0x4000000000000000L}); |
| public static final BitSet FOLLOW_120 = new BitSet(new long[]{0x0100000000000002L}); |
| public static final BitSet FOLLOW_121 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000002L}); |
| public static final BitSet FOLLOW_122 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000014L}); |
| public static final BitSet FOLLOW_123 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000008L}); |
| public static final BitSet FOLLOW_124 = new BitSet(new long[]{0x0800000000000000L,0x4000000000000000L}); |
| public static final BitSet FOLLOW_125 = new BitSet(new long[]{0x4140000000000000L}); |
| public static final BitSet FOLLOW_126 = new BitSet(new long[]{0x0000000000000010L,0x0000000000100000L}); |
| public static final BitSet FOLLOW_127 = new BitSet(new long[]{0x0000000000000010L,0x0000000000500000L,0x0000000000000200L}); |
| public static final BitSet FOLLOW_128 = new BitSet(new long[]{0x0000000000000000L,0x2000000000000000L,0x0000000000000180L}); |
| public static final BitSet FOLLOW_129 = new BitSet(new long[]{0x0000000000000000L,0x2000000000000000L}); |
| public static final BitSet FOLLOW_130 = new BitSet(new long[]{0x0800000000000002L,0x1000000000000000L}); |
| public static final BitSet FOLLOW_131 = new BitSet(new long[]{0x0000000040000002L}); |
| public static final BitSet FOLLOW_132 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000000L,0x0000000000000400L}); |
| } |
| |
| |
| } |