blob: 6dcaa3e65926216487228e61d0bb4d8158ef0c60 [file] [log] [blame]
package org.eclipse.ocl.xtext.completeocl.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.completeocl.services.CompleteOCLGrammarAccess;
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, 2022 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 InternalCompleteOCLParser extends org.eclipse.ocl.xtext.base.utilities.CompatibilityAbstractInternalAntlrParser {
public static final String[] tokenNames = new String[] {
"<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_UNQUOTED_STRING", "RULE_SIMPLE_ID", "RULE_ESCAPED_ID", "RULE_INT", "RULE_SINGLE_QUOTED_STRING", "RULE_ESCAPED_CHARACTER", "RULE_LETTER_CHARACTER", "RULE_DOUBLE_QUOTED_STRING", "RULE_ML_SINGLE_QUOTED_STRING", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'^'", "'^^'", "'context'", "'inv'", "'('", "')'", "':'", "'static'", "'def'", "','", "'='", "'import'", "'include'", "'library'", "'::*'", "'pre'", "'post'", "'body'", "'package'", "'endpackage'", "'derive'", "'init'", "'<'", "'>'", "'?'", "'Boolean'", "'Integer'", "'Real'", "'String'", "'UnlimitedNatural'", "'OclAny'", "'OclInvalid'", "'OclMessage'", "'OclState'", "'OclVoid'", "'-'", "'not'", "'not2'", "'*'", "'/'", "'+'", "'>='", "'<='", "'<>'", "'and'", "'and2'", "'implies'", "'implies2'", "'or'", "'or2'", "'xor'", "'xor2'", "'.'", "'->'", "'?.'", "'?->'", "'Map'", "'Tuple'", "'::'", "'Set'", "'Bag'", "'Sequence'", "'Collection'", "'OrderedSet'", "'{'", "'}'", "'..'", "'++'", "'Lambda'", "'with'", "'<-'", "'true'", "'false'", "'invalid'", "'null'", "'@'", "'['", "']'", "'in'", "'|'", "';'", "'if'", "'then'", "'else'", "'endif'", "'elseif'", "'let'", "'self'", "'|?'", "'|1'", "'extends'", "'&&'"
};
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__52=52;
public static final int T__53=53;
public static final int T__54=54;
public static final int T__60=60;
public static final int T__61=61;
public static final int RULE_INT=7;
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__68=68;
public static final int T__69=69;
public static final int T__62=62;
public static final int T__63=63;
public static final int T__64=64;
public static final int T__65=65;
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=8;
public static final int T__48=48;
public static final int T__49=49;
public static final int RULE_DOUBLE_QUOTED_STRING=11;
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=6;
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=10;
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=9;
public static final int T__95=95;
public static final int RULE_ML_SINGLE_QUOTED_STRING=12;
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__70=70;
public static final int T__71=71;
public static final int T__72=72;
public static final int RULE_UNQUOTED_STRING=4;
public static final int RULE_SL_COMMENT=14;
public static final int T__77=77;
public static final int T__78=78;
public static final int T__79=79;
public static final int T__73=73;
public static final int EOF=-1;
public static final int T__74=74;
public static final int T__75=75;
public static final int T__76=76;
public static final int T__80=80;
public static final int T__81=81;
public static final int T__82=82;
public static final int RULE_SIMPLE_ID=5;
public static final int T__83=83;
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__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 InternalCompleteOCLParser(TokenStream input) {
this(input, new RecognizerSharedState());
}
public InternalCompleteOCLParser(TokenStream input, RecognizerSharedState state) {
super(input, state);
}
public String[] getTokenNames() { return InternalCompleteOCLParser.tokenNames; }
public String getGrammarFileName() { return "InternalCompleteOCL.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 CompleteOCLGrammarAccess grammarAccess;
public InternalCompleteOCLParser(TokenStream input, CompleteOCLGrammarAccess grammarAccess) {
this(input);
this.grammarAccess = grammarAccess;
registerRules(grammarAccess.getGrammar());
}
@Override
protected String getFirstRuleName() {
return "CompleteOCLDocumentCS";
}
@Override
protected CompleteOCLGrammarAccess getGrammarAccess() {
return grammarAccess;
}
// $ANTLR start "entryRuleCompleteOCLDocumentCS"
// InternalCompleteOCL.g:80:1: entryRuleCompleteOCLDocumentCS returns [EObject current=null] : iv_ruleCompleteOCLDocumentCS= ruleCompleteOCLDocumentCS EOF ;
public final EObject entryRuleCompleteOCLDocumentCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleCompleteOCLDocumentCS = null;
try {
// InternalCompleteOCL.g:81:2: (iv_ruleCompleteOCLDocumentCS= ruleCompleteOCLDocumentCS EOF )
// InternalCompleteOCL.g:82:2: iv_ruleCompleteOCLDocumentCS= ruleCompleteOCLDocumentCS EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCompleteOCLDocumentCSRule());
}
pushFollow(FollowSets000.FOLLOW_1);
iv_ruleCompleteOCLDocumentCS=ruleCompleteOCLDocumentCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleCompleteOCLDocumentCS;
}
match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleCompleteOCLDocumentCS"
// $ANTLR start "ruleCompleteOCLDocumentCS"
// InternalCompleteOCL.g:89:1: ruleCompleteOCLDocumentCS returns [EObject current=null] : ( ( (lv_ownedImports_0_0= ruleImportCS ) )* ( ( (lv_ownedPackages_1_0= rulePackageDeclarationCS ) ) | ( (lv_ownedContexts_2_0= ruleContextDeclCS ) ) )* ) ;
public final EObject ruleCompleteOCLDocumentCS() throws RecognitionException {
EObject current = null;
EObject lv_ownedImports_0_0 = null;
EObject lv_ownedPackages_1_0 = null;
EObject lv_ownedContexts_2_0 = null;
enterRule();
try {
// InternalCompleteOCL.g:92:28: ( ( ( (lv_ownedImports_0_0= ruleImportCS ) )* ( ( (lv_ownedPackages_1_0= rulePackageDeclarationCS ) ) | ( (lv_ownedContexts_2_0= ruleContextDeclCS ) ) )* ) )
// InternalCompleteOCL.g:93:1: ( ( (lv_ownedImports_0_0= ruleImportCS ) )* ( ( (lv_ownedPackages_1_0= rulePackageDeclarationCS ) ) | ( (lv_ownedContexts_2_0= ruleContextDeclCS ) ) )* )
{
// InternalCompleteOCL.g:93:1: ( ( (lv_ownedImports_0_0= ruleImportCS ) )* ( ( (lv_ownedPackages_1_0= rulePackageDeclarationCS ) ) | ( (lv_ownedContexts_2_0= ruleContextDeclCS ) ) )* )
// InternalCompleteOCL.g:93:2: ( (lv_ownedImports_0_0= ruleImportCS ) )* ( ( (lv_ownedPackages_1_0= rulePackageDeclarationCS ) ) | ( (lv_ownedContexts_2_0= ruleContextDeclCS ) ) )*
{
// InternalCompleteOCL.g:93:2: ( (lv_ownedImports_0_0= ruleImportCS ) )*
loop1:
do {
int alt1=2;
int LA1_0 = input.LA(1);
if ( ((LA1_0>=28 && LA1_0<=30)) ) {
alt1=1;
}
switch (alt1) {
case 1 :
// InternalCompleteOCL.g:94:1: (lv_ownedImports_0_0= ruleImportCS )
{
// InternalCompleteOCL.g:94:1: (lv_ownedImports_0_0= ruleImportCS )
// InternalCompleteOCL.g:95:3: lv_ownedImports_0_0= ruleImportCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedImportsImportCSParserRuleCall_0_0());
}
pushFollow(FollowSets000.FOLLOW_3);
lv_ownedImports_0_0=ruleImportCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getCompleteOCLDocumentCSRule());
}
add(
current,
"ownedImports",
lv_ownedImports_0_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ImportCS");
afterParserOrEnumRuleCall();
}
}
}
break;
default :
break loop1;
}
} while (true);
// InternalCompleteOCL.g:111:3: ( ( (lv_ownedPackages_1_0= rulePackageDeclarationCS ) ) | ( (lv_ownedContexts_2_0= ruleContextDeclCS ) ) )*
loop2:
do {
int alt2=3;
int LA2_0 = input.LA(1);
if ( (LA2_0==35) ) {
alt2=1;
}
else if ( (LA2_0==19) ) {
alt2=2;
}
switch (alt2) {
case 1 :
// InternalCompleteOCL.g:111:4: ( (lv_ownedPackages_1_0= rulePackageDeclarationCS ) )
{
// InternalCompleteOCL.g:111:4: ( (lv_ownedPackages_1_0= rulePackageDeclarationCS ) )
// InternalCompleteOCL.g:112:1: (lv_ownedPackages_1_0= rulePackageDeclarationCS )
{
// InternalCompleteOCL.g:112:1: (lv_ownedPackages_1_0= rulePackageDeclarationCS )
// InternalCompleteOCL.g:113:3: lv_ownedPackages_1_0= rulePackageDeclarationCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedPackagesPackageDeclarationCSParserRuleCall_1_0_0());
}
pushFollow(FollowSets000.FOLLOW_4);
lv_ownedPackages_1_0=rulePackageDeclarationCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getCompleteOCLDocumentCSRule());
}
add(
current,
"ownedPackages",
lv_ownedPackages_1_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.PackageDeclarationCS");
afterParserOrEnumRuleCall();
}
}
}
}
break;
case 2 :
// InternalCompleteOCL.g:130:6: ( (lv_ownedContexts_2_0= ruleContextDeclCS ) )
{
// InternalCompleteOCL.g:130:6: ( (lv_ownedContexts_2_0= ruleContextDeclCS ) )
// InternalCompleteOCL.g:131:1: (lv_ownedContexts_2_0= ruleContextDeclCS )
{
// InternalCompleteOCL.g:131:1: (lv_ownedContexts_2_0= ruleContextDeclCS )
// InternalCompleteOCL.g:132:3: lv_ownedContexts_2_0= ruleContextDeclCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedContextsContextDeclCSParserRuleCall_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_4);
lv_ownedContexts_2_0=ruleContextDeclCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getCompleteOCLDocumentCSRule());
}
add(
current,
"ownedContexts",
lv_ownedContexts_2_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ContextDeclCS");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop2;
}
} while (true);
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleCompleteOCLDocumentCS"
// $ANTLR start "entryRuleCompleteOCLNavigationOperatorName"
// InternalCompleteOCL.g:156:1: entryRuleCompleteOCLNavigationOperatorName returns [String current=null] : iv_ruleCompleteOCLNavigationOperatorName= ruleCompleteOCLNavigationOperatorName EOF ;
public final String entryRuleCompleteOCLNavigationOperatorName() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleCompleteOCLNavigationOperatorName = null;
try {
// InternalCompleteOCL.g:157:2: (iv_ruleCompleteOCLNavigationOperatorName= ruleCompleteOCLNavigationOperatorName EOF )
// InternalCompleteOCL.g:158:2: iv_ruleCompleteOCLNavigationOperatorName= ruleCompleteOCLNavigationOperatorName EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCompleteOCLNavigationOperatorNameRule());
}
pushFollow(FollowSets000.FOLLOW_1);
iv_ruleCompleteOCLNavigationOperatorName=ruleCompleteOCLNavigationOperatorName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleCompleteOCLNavigationOperatorName.getText();
}
match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleCompleteOCLNavigationOperatorName"
// $ANTLR start "ruleCompleteOCLNavigationOperatorName"
// InternalCompleteOCL.g:165:1: ruleCompleteOCLNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (kw= '^' | kw= '^^' ) ;
public final AntlrDatatypeRuleToken ruleCompleteOCLNavigationOperatorName() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
Token kw=null;
enterRule();
try {
// InternalCompleteOCL.g:168:28: ( (kw= '^' | kw= '^^' ) )
// InternalCompleteOCL.g:169:1: (kw= '^' | kw= '^^' )
{
// InternalCompleteOCL.g:169:1: (kw= '^' | kw= '^^' )
int alt3=2;
int LA3_0 = input.LA(1);
if ( (LA3_0==17) ) {
alt3=1;
}
else if ( (LA3_0==18) ) {
alt3=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 3, 0, input);
throw nvae;
}
switch (alt3) {
case 1 :
// InternalCompleteOCL.g:170:2: kw= '^'
{
kw=(Token)match(input,17,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentKeyword_0());
}
}
break;
case 2 :
// InternalCompleteOCL.g:177: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.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentCircumflexAccentKeyword_1());
}
}
break;
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleCompleteOCLNavigationOperatorName"
// $ANTLR start "entryRuleClassifierContextDeclCS"
// InternalCompleteOCL.g:190:1: entryRuleClassifierContextDeclCS returns [EObject current=null] : iv_ruleClassifierContextDeclCS= ruleClassifierContextDeclCS EOF ;
public final EObject entryRuleClassifierContextDeclCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleClassifierContextDeclCS = null;
try {
// InternalCompleteOCL.g:191:2: (iv_ruleClassifierContextDeclCS= ruleClassifierContextDeclCS EOF )
// InternalCompleteOCL.g:192:2: iv_ruleClassifierContextDeclCS= ruleClassifierContextDeclCS EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getClassifierContextDeclCSRule());
}
pushFollow(FollowSets000.FOLLOW_1);
iv_ruleClassifierContextDeclCS=ruleClassifierContextDeclCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleClassifierContextDeclCS;
}
match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleClassifierContextDeclCS"
// $ANTLR start "ruleClassifierContextDeclCS"
// InternalCompleteOCL.g:199:1: ruleClassifierContextDeclCS returns [EObject current=null] : (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_selfName_2_0= ruleUnrestrictedName ) )? ( (lv_ownedPathName_3_0= ruleUnreservedPathNameCS ) ) ( (otherlv_4= 'inv' ( (lv_ownedInvariants_5_0= ruleConstraintCS ) ) ) | ( (lv_ownedDefinitions_6_0= ruleDefCS ) ) )+ ) ;
public final EObject ruleClassifierContextDeclCS() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token otherlv_4=null;
EObject lv_ownedSignature_1_0 = null;
AntlrDatatypeRuleToken lv_selfName_2_0 = null;
EObject lv_ownedPathName_3_0 = null;
EObject lv_ownedInvariants_5_0 = null;
EObject lv_ownedDefinitions_6_0 = null;
enterRule();
try {
// InternalCompleteOCL.g:202:28: ( (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_selfName_2_0= ruleUnrestrictedName ) )? ( (lv_ownedPathName_3_0= ruleUnreservedPathNameCS ) ) ( (otherlv_4= 'inv' ( (lv_ownedInvariants_5_0= ruleConstraintCS ) ) ) | ( (lv_ownedDefinitions_6_0= ruleDefCS ) ) )+ ) )
// InternalCompleteOCL.g:203:1: (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_selfName_2_0= ruleUnrestrictedName ) )? ( (lv_ownedPathName_3_0= ruleUnreservedPathNameCS ) ) ( (otherlv_4= 'inv' ( (lv_ownedInvariants_5_0= ruleConstraintCS ) ) ) | ( (lv_ownedDefinitions_6_0= ruleDefCS ) ) )+ )
{
// InternalCompleteOCL.g:203:1: (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_selfName_2_0= ruleUnrestrictedName ) )? ( (lv_ownedPathName_3_0= ruleUnreservedPathNameCS ) ) ( (otherlv_4= 'inv' ( (lv_ownedInvariants_5_0= ruleConstraintCS ) ) ) | ( (lv_ownedDefinitions_6_0= ruleDefCS ) ) )+ )
// InternalCompleteOCL.g:203:3: otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_selfName_2_0= ruleUnrestrictedName ) )? ( (lv_ownedPathName_3_0= ruleUnreservedPathNameCS ) ) ( (otherlv_4= 'inv' ( (lv_ownedInvariants_5_0= ruleConstraintCS ) ) ) | ( (lv_ownedDefinitions_6_0= ruleDefCS ) ) )+
{
otherlv_0=(Token)match(input,19,FollowSets000.FOLLOW_5); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getClassifierContextDeclCSAccess().getContextKeyword_0());
}
// InternalCompleteOCL.g:207:1: ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )?
int alt4=2;
int LA4_0 = input.LA(1);
if ( (LA4_0==21||LA4_0==39) ) {
alt4=1;
}
switch (alt4) {
case 1 :
// InternalCompleteOCL.g:208:1: (lv_ownedSignature_1_0= ruleTemplateSignatureCS )
{
// InternalCompleteOCL.g:208:1: (lv_ownedSignature_1_0= ruleTemplateSignatureCS )
// InternalCompleteOCL.g:209:3: lv_ownedSignature_1_0= ruleTemplateSignatureCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0());
}
pushFollow(FollowSets000.FOLLOW_5);
lv_ownedSignature_1_0=ruleTemplateSignatureCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getClassifierContextDeclCSRule());
}
set(
current,
"ownedSignature",
lv_ownedSignature_1_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.TemplateSignatureCS");
afterParserOrEnumRuleCall();
}
}
}
break;
}
// InternalCompleteOCL.g:225:3: ( (lv_selfName_2_0= ruleUnrestrictedName ) )?
int alt5=2;
switch ( input.LA(1) ) {
case RULE_SIMPLE_ID:
{
int LA5_1 = input.LA(2);
if ( ((LA5_1>=RULE_SIMPLE_ID && LA5_1<=RULE_ESCAPED_ID)||(LA5_1>=28 && LA5_1<=30)||(LA5_1>=42 && LA5_1<=51)||(LA5_1>=73 && LA5_1<=74)||(LA5_1>=76 && LA5_1<=80)) ) {
alt5=1;
}
}
break;
case RULE_ESCAPED_ID:
{
int LA5_2 = input.LA(2);
if ( ((LA5_2>=RULE_SIMPLE_ID && LA5_2<=RULE_ESCAPED_ID)||(LA5_2>=28 && LA5_2<=30)||(LA5_2>=42 && LA5_2<=51)||(LA5_2>=73 && LA5_2<=74)||(LA5_2>=76 && LA5_2<=80)) ) {
alt5=1;
}
}
break;
case 28:
{
int LA5_3 = input.LA(2);
if ( ((LA5_3>=RULE_SIMPLE_ID && LA5_3<=RULE_ESCAPED_ID)||(LA5_3>=28 && LA5_3<=30)||(LA5_3>=42 && LA5_3<=51)||(LA5_3>=73 && LA5_3<=74)||(LA5_3>=76 && LA5_3<=80)) ) {
alt5=1;
}
}
break;
case 29:
{
int LA5_4 = input.LA(2);
if ( ((LA5_4>=RULE_SIMPLE_ID && LA5_4<=RULE_ESCAPED_ID)||(LA5_4>=28 && LA5_4<=30)||(LA5_4>=42 && LA5_4<=51)||(LA5_4>=73 && LA5_4<=74)||(LA5_4>=76 && LA5_4<=80)) ) {
alt5=1;
}
}
break;
case 30:
{
int LA5_5 = input.LA(2);
if ( ((LA5_5>=RULE_SIMPLE_ID && LA5_5<=RULE_ESCAPED_ID)||(LA5_5>=28 && LA5_5<=30)||(LA5_5>=42 && LA5_5<=51)||(LA5_5>=73 && LA5_5<=74)||(LA5_5>=76 && LA5_5<=80)) ) {
alt5=1;
}
}
break;
}
switch (alt5) {
case 1 :
// InternalCompleteOCL.g:226:1: (lv_selfName_2_0= ruleUnrestrictedName )
{
// InternalCompleteOCL.g:226:1: (lv_selfName_2_0= ruleUnrestrictedName )
// InternalCompleteOCL.g:227:3: lv_selfName_2_0= ruleUnrestrictedName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getSelfNameUnrestrictedNameParserRuleCall_2_0());
}
pushFollow(FollowSets000.FOLLOW_5);
lv_selfName_2_0=ruleUnrestrictedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getClassifierContextDeclCSRule());
}
set(
current,
"selfName",
lv_selfName_2_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
afterParserOrEnumRuleCall();
}
}
}
break;
}
// InternalCompleteOCL.g:243:3: ( (lv_ownedPathName_3_0= ruleUnreservedPathNameCS ) )
// InternalCompleteOCL.g:244:1: (lv_ownedPathName_3_0= ruleUnreservedPathNameCS )
{
// InternalCompleteOCL.g:244:1: (lv_ownedPathName_3_0= ruleUnreservedPathNameCS )
// InternalCompleteOCL.g:245:3: lv_ownedPathName_3_0= ruleUnreservedPathNameCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_3_0());
}
pushFollow(FollowSets000.FOLLOW_6);
lv_ownedPathName_3_0=ruleUnreservedPathNameCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getClassifierContextDeclCSRule());
}
set(
current,
"ownedPathName",
lv_ownedPathName_3_0,
"org.eclipse.ocl.xtext.base.Base.UnreservedPathNameCS");
afterParserOrEnumRuleCall();
}
}
}
// InternalCompleteOCL.g:261:2: ( (otherlv_4= 'inv' ( (lv_ownedInvariants_5_0= ruleConstraintCS ) ) ) | ( (lv_ownedDefinitions_6_0= ruleDefCS ) ) )+
int cnt6=0;
loop6:
do {
int alt6=3;
int LA6_0 = input.LA(1);
if ( (LA6_0==20) ) {
alt6=1;
}
else if ( ((LA6_0>=24 && LA6_0<=25)) ) {
alt6=2;
}
switch (alt6) {
case 1 :
// InternalCompleteOCL.g:261:3: (otherlv_4= 'inv' ( (lv_ownedInvariants_5_0= ruleConstraintCS ) ) )
{
// InternalCompleteOCL.g:261:3: (otherlv_4= 'inv' ( (lv_ownedInvariants_5_0= ruleConstraintCS ) ) )
// InternalCompleteOCL.g:261:5: otherlv_4= 'inv' ( (lv_ownedInvariants_5_0= ruleConstraintCS ) )
{
otherlv_4=(Token)match(input,20,FollowSets000.FOLLOW_7); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getClassifierContextDeclCSAccess().getInvKeyword_4_0_0());
}
// InternalCompleteOCL.g:265:1: ( (lv_ownedInvariants_5_0= ruleConstraintCS ) )
// InternalCompleteOCL.g:266:1: (lv_ownedInvariants_5_0= ruleConstraintCS )
{
// InternalCompleteOCL.g:266:1: (lv_ownedInvariants_5_0= ruleConstraintCS )
// InternalCompleteOCL.g:267:3: lv_ownedInvariants_5_0= ruleConstraintCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedInvariantsConstraintCSParserRuleCall_4_0_1_0());
}
pushFollow(FollowSets000.FOLLOW_8);
lv_ownedInvariants_5_0=ruleConstraintCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getClassifierContextDeclCSRule());
}
add(
current,
"ownedInvariants",
lv_ownedInvariants_5_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ConstraintCS");
afterParserOrEnumRuleCall();
}
}
}
}
}
break;
case 2 :
// InternalCompleteOCL.g:284:6: ( (lv_ownedDefinitions_6_0= ruleDefCS ) )
{
// InternalCompleteOCL.g:284:6: ( (lv_ownedDefinitions_6_0= ruleDefCS ) )
// InternalCompleteOCL.g:285:1: (lv_ownedDefinitions_6_0= ruleDefCS )
{
// InternalCompleteOCL.g:285:1: (lv_ownedDefinitions_6_0= ruleDefCS )
// InternalCompleteOCL.g:286:3: lv_ownedDefinitions_6_0= ruleDefCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedDefinitionsDefCSParserRuleCall_4_1_0());
}
pushFollow(FollowSets000.FOLLOW_8);
lv_ownedDefinitions_6_0=ruleDefCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getClassifierContextDeclCSRule());
}
add(
current,
"ownedDefinitions",
lv_ownedDefinitions_6_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.DefCS");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
if ( cnt6 >= 1 ) break loop6;
if (state.backtracking>0) {state.failed=true; return current;}
EarlyExitException eee =
new EarlyExitException(6, input);
throw eee;
}
cnt6++;
} while (true);
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleClassifierContextDeclCS"
// $ANTLR start "entryRuleConstraintCS"
// InternalCompleteOCL.g:310:1: entryRuleConstraintCS returns [EObject current=null] : iv_ruleConstraintCS= ruleConstraintCS EOF ;
public final EObject entryRuleConstraintCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleConstraintCS = null;
try {
// InternalCompleteOCL.g:311:2: (iv_ruleConstraintCS= ruleConstraintCS EOF )
// InternalCompleteOCL.g:312:2: iv_ruleConstraintCS= ruleConstraintCS EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getConstraintCSRule());
}
pushFollow(FollowSets000.FOLLOW_1);
iv_ruleConstraintCS=ruleConstraintCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleConstraintCS;
}
match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleConstraintCS"
// $ANTLR start "ruleConstraintCS"
// InternalCompleteOCL.g:319:1: ruleConstraintCS returns [EObject current=null] : ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= '(' ( (lv_ownedMessageSpecification_2_0= ruleSpecificationCS ) ) otherlv_3= ')' )? )? otherlv_4= ':' ( (lv_ownedSpecification_5_0= ruleSpecificationCS ) ) ) ;
public final EObject ruleConstraintCS() throws RecognitionException {
EObject current = null;
Token otherlv_1=null;
Token otherlv_3=null;
Token otherlv_4=null;
AntlrDatatypeRuleToken lv_name_0_0 = null;
EObject lv_ownedMessageSpecification_2_0 = null;
EObject lv_ownedSpecification_5_0 = null;
enterRule();
try {
// InternalCompleteOCL.g:322:28: ( ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= '(' ( (lv_ownedMessageSpecification_2_0= ruleSpecificationCS ) ) otherlv_3= ')' )? )? otherlv_4= ':' ( (lv_ownedSpecification_5_0= ruleSpecificationCS ) ) ) )
// InternalCompleteOCL.g:323:1: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= '(' ( (lv_ownedMessageSpecification_2_0= ruleSpecificationCS ) ) otherlv_3= ')' )? )? otherlv_4= ':' ( (lv_ownedSpecification_5_0= ruleSpecificationCS ) ) )
{
// InternalCompleteOCL.g:323:1: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= '(' ( (lv_ownedMessageSpecification_2_0= ruleSpecificationCS ) ) otherlv_3= ')' )? )? otherlv_4= ':' ( (lv_ownedSpecification_5_0= ruleSpecificationCS ) ) )
// InternalCompleteOCL.g:323:2: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= '(' ( (lv_ownedMessageSpecification_2_0= ruleSpecificationCS ) ) otherlv_3= ')' )? )? otherlv_4= ':' ( (lv_ownedSpecification_5_0= ruleSpecificationCS ) )
{
// InternalCompleteOCL.g:323:2: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= '(' ( (lv_ownedMessageSpecification_2_0= ruleSpecificationCS ) ) otherlv_3= ')' )? )?
int alt8=2;
int LA8_0 = input.LA(1);
if ( ((LA8_0>=RULE_SIMPLE_ID && LA8_0<=RULE_ESCAPED_ID)||(LA8_0>=28 && LA8_0<=30)) ) {
alt8=1;
}
switch (alt8) {
case 1 :
// InternalCompleteOCL.g:323:3: ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= '(' ( (lv_ownedMessageSpecification_2_0= ruleSpecificationCS ) ) otherlv_3= ')' )?
{
// InternalCompleteOCL.g:323:3: ( (lv_name_0_0= ruleUnrestrictedName ) )
// InternalCompleteOCL.g:324:1: (lv_name_0_0= ruleUnrestrictedName )
{
// InternalCompleteOCL.g:324:1: (lv_name_0_0= ruleUnrestrictedName )
// InternalCompleteOCL.g:325:3: lv_name_0_0= ruleUnrestrictedName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0());
}
pushFollow(FollowSets000.FOLLOW_9);
lv_name_0_0=ruleUnrestrictedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getConstraintCSRule());
}
set(
current,
"name",
lv_name_0_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
afterParserOrEnumRuleCall();
}
}
}
// InternalCompleteOCL.g:341:2: (otherlv_1= '(' ( (lv_ownedMessageSpecification_2_0= ruleSpecificationCS ) ) otherlv_3= ')' )?
int alt7=2;
int LA7_0 = input.LA(1);
if ( (LA7_0==21) ) {
alt7=1;
}
switch (alt7) {
case 1 :
// InternalCompleteOCL.g:341:4: otherlv_1= '(' ( (lv_ownedMessageSpecification_2_0= ruleSpecificationCS ) ) otherlv_3= ')'
{
otherlv_1=(Token)match(input,21,FollowSets000.FOLLOW_10); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getConstraintCSAccess().getLeftParenthesisKeyword_0_1_0());
}
// InternalCompleteOCL.g:345:1: ( (lv_ownedMessageSpecification_2_0= ruleSpecificationCS ) )
// InternalCompleteOCL.g:346:1: (lv_ownedMessageSpecification_2_0= ruleSpecificationCS )
{
// InternalCompleteOCL.g:346:1: (lv_ownedMessageSpecification_2_0= ruleSpecificationCS )
// InternalCompleteOCL.g:347:3: lv_ownedMessageSpecification_2_0= ruleSpecificationCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_0_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_11);
lv_ownedMessageSpecification_2_0=ruleSpecificationCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getConstraintCSRule());
}
set(
current,
"ownedMessageSpecification",
lv_ownedMessageSpecification_2_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.SpecificationCS");
afterParserOrEnumRuleCall();
}
}
}
otherlv_3=(Token)match(input,22,FollowSets000.FOLLOW_12); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getConstraintCSAccess().getRightParenthesisKeyword_0_1_2());
}
}
break;
}
}
break;
}
otherlv_4=(Token)match(input,23,FollowSets000.FOLLOW_10); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getConstraintCSAccess().getColonKeyword_1());
}
// InternalCompleteOCL.g:371:1: ( (lv_ownedSpecification_5_0= ruleSpecificationCS ) )
// InternalCompleteOCL.g:372:1: (lv_ownedSpecification_5_0= ruleSpecificationCS )
{
// InternalCompleteOCL.g:372:1: (lv_ownedSpecification_5_0= ruleSpecificationCS )
// InternalCompleteOCL.g:373:3: lv_ownedSpecification_5_0= ruleSpecificationCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_2_0());
}
pushFollow(FollowSets000.FOLLOW_2);
lv_ownedSpecification_5_0=ruleSpecificationCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getConstraintCSRule());
}
set(
current,
"ownedSpecification",
lv_ownedSpecification_5_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.SpecificationCS");
afterParserOrEnumRuleCall();
}
}
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleConstraintCS"
// $ANTLR start "entryRuleContextDeclCS"
// InternalCompleteOCL.g:397:1: entryRuleContextDeclCS returns [EObject current=null] : iv_ruleContextDeclCS= ruleContextDeclCS EOF ;
public final EObject entryRuleContextDeclCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleContextDeclCS = null;
try {
// InternalCompleteOCL.g:398:2: (iv_ruleContextDeclCS= ruleContextDeclCS EOF )
// InternalCompleteOCL.g:399:2: iv_ruleContextDeclCS= ruleContextDeclCS EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getContextDeclCSRule());
}
pushFollow(FollowSets000.FOLLOW_1);
iv_ruleContextDeclCS=ruleContextDeclCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleContextDeclCS;
}
match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleContextDeclCS"
// $ANTLR start "ruleContextDeclCS"
// InternalCompleteOCL.g:406:1: ruleContextDeclCS returns [EObject current=null] : (this_PropertyContextDeclCS_0= rulePropertyContextDeclCS | this_ClassifierContextDeclCS_1= ruleClassifierContextDeclCS | this_OperationContextDeclCS_2= ruleOperationContextDeclCS ) ;
public final EObject ruleContextDeclCS() throws RecognitionException {
EObject current = null;
EObject this_PropertyContextDeclCS_0 = null;
EObject this_ClassifierContextDeclCS_1 = null;
EObject this_OperationContextDeclCS_2 = null;
enterRule();
try {
// InternalCompleteOCL.g:409:28: ( (this_PropertyContextDeclCS_0= rulePropertyContextDeclCS | this_ClassifierContextDeclCS_1= ruleClassifierContextDeclCS | this_OperationContextDeclCS_2= ruleOperationContextDeclCS ) )
// InternalCompleteOCL.g:410:1: (this_PropertyContextDeclCS_0= rulePropertyContextDeclCS | this_ClassifierContextDeclCS_1= ruleClassifierContextDeclCS | this_OperationContextDeclCS_2= ruleOperationContextDeclCS )
{
// InternalCompleteOCL.g:410:1: (this_PropertyContextDeclCS_0= rulePropertyContextDeclCS | this_ClassifierContextDeclCS_1= ruleClassifierContextDeclCS | this_OperationContextDeclCS_2= ruleOperationContextDeclCS )
int alt9=3;
int LA9_0 = input.LA(1);
if ( (LA9_0==19) ) {
int LA9_1 = input.LA(2);
if ( (synpred11_InternalCompleteOCL()) ) {
alt9=1;
}
else if ( (synpred12_InternalCompleteOCL()) ) {
alt9=2;
}
else if ( (true) ) {
alt9=3;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 9, 1, input);
throw nvae;
}
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 9, 0, input);
throw nvae;
}
switch (alt9) {
case 1 :
// InternalCompleteOCL.g:411:2: this_PropertyContextDeclCS_0= rulePropertyContextDeclCS
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getContextDeclCSAccess().getPropertyContextDeclCSParserRuleCall_0());
}
pushFollow(FollowSets000.FOLLOW_2);
this_PropertyContextDeclCS_0=rulePropertyContextDeclCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_PropertyContextDeclCS_0;
afterParserOrEnumRuleCall();
}
}
break;
case 2 :
// InternalCompleteOCL.g:424:2: this_ClassifierContextDeclCS_1= ruleClassifierContextDeclCS
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getContextDeclCSAccess().getClassifierContextDeclCSParserRuleCall_1());
}
pushFollow(FollowSets000.FOLLOW_2);
this_ClassifierContextDeclCS_1=ruleClassifierContextDeclCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_ClassifierContextDeclCS_1;
afterParserOrEnumRuleCall();
}
}
break;
case 3 :
// InternalCompleteOCL.g:437:2: this_OperationContextDeclCS_2= ruleOperationContextDeclCS
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getContextDeclCSAccess().getOperationContextDeclCSParserRuleCall_2());
}
pushFollow(FollowSets000.FOLLOW_2);
this_OperationContextDeclCS_2=ruleOperationContextDeclCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_OperationContextDeclCS_2;
afterParserOrEnumRuleCall();
}
}
break;
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleContextDeclCS"
// $ANTLR start "entryRuleDefCS"
// InternalCompleteOCL.g:456:1: entryRuleDefCS returns [EObject current=null] : iv_ruleDefCS= ruleDefCS EOF ;
public final EObject entryRuleDefCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleDefCS = null;
try {
// InternalCompleteOCL.g:457:2: (iv_ruleDefCS= ruleDefCS EOF )
// InternalCompleteOCL.g:458:2: iv_ruleDefCS= ruleDefCS EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getDefCSRule());
}
pushFollow(FollowSets000.FOLLOW_1);
iv_ruleDefCS=ruleDefCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleDefCS;
}
match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleDefCS"
// $ANTLR start "ruleDefCS"
// InternalCompleteOCL.g:465:1: ruleDefCS returns [EObject current=null] : (this_DefOperationCS_0= ruleDefOperationCS | this_DefPropertyCS_1= ruleDefPropertyCS ) ;
public final EObject ruleDefCS() throws RecognitionException {
EObject current = null;
EObject this_DefOperationCS_0 = null;
EObject this_DefPropertyCS_1 = null;
enterRule();
try {
// InternalCompleteOCL.g:468:28: ( (this_DefOperationCS_0= ruleDefOperationCS | this_DefPropertyCS_1= ruleDefPropertyCS ) )
// InternalCompleteOCL.g:469:1: (this_DefOperationCS_0= ruleDefOperationCS | this_DefPropertyCS_1= ruleDefPropertyCS )
{
// InternalCompleteOCL.g:469:1: (this_DefOperationCS_0= ruleDefOperationCS | this_DefPropertyCS_1= ruleDefPropertyCS )
int alt10=2;
alt10 = dfa10.predict(input);
switch (alt10) {
case 1 :
// InternalCompleteOCL.g:470:2: this_DefOperationCS_0= ruleDefOperationCS
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getDefCSAccess().getDefOperationCSParserRuleCall_0());
}
pushFollow(FollowSets000.FOLLOW_2);
this_DefOperationCS_0=ruleDefOperationCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_DefOperationCS_0;
afterParserOrEnumRuleCall();
}
}
break;
case 2 :
// InternalCompleteOCL.g:483:2: this_DefPropertyCS_1= ruleDefPropertyCS
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getDefCSAccess().getDefPropertyCSParserRuleCall_1());
}
pushFollow(FollowSets000.FOLLOW_2);
this_DefPropertyCS_1=ruleDefPropertyCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_DefPropertyCS_1;
afterParserOrEnumRuleCall();
}
}
break;
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleDefCS"
// $ANTLR start "entryRuleDefOperationCS"
// InternalCompleteOCL.g:502:1: entryRuleDefOperationCS returns [EObject current=null] : iv_ruleDefOperationCS= ruleDefOperationCS EOF ;
public final EObject entryRuleDefOperationCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleDefOperationCS = null;
try {
// InternalCompleteOCL.g:503:2: (iv_ruleDefOperationCS= ruleDefOperationCS EOF )
// InternalCompleteOCL.g:504:2: iv_ruleDefOperationCS= ruleDefOperationCS EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getDefOperationCSRule());
}
pushFollow(FollowSets000.FOLLOW_1);
iv_ruleDefOperationCS=ruleDefOperationCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleDefOperationCS;
}
match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleDefOperationCS"
// $ANTLR start "ruleDefOperationCS"
// InternalCompleteOCL.g:511:1: ruleDefOperationCS returns [EObject current=null] : ( ( (lv_isStatic_0_0= 'static' ) )? otherlv_1= 'def' ( ruleUnrestrictedName )? otherlv_3= ':' ( (lv_ownedSignature_4_0= ruleTemplateSignatureCS ) )? ( (lv_name_5_0= ruleUnrestrictedName ) ) otherlv_6= '(' ( ( (lv_ownedParameters_7_0= ruleDefParameterCS ) ) (otherlv_8= ',' ( (lv_ownedParameters_9_0= ruleDefParameterCS ) ) )* )? otherlv_10= ')' otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) )? otherlv_13= '=' ( (lv_ownedSpecification_14_0= ruleSpecificationCS ) ) ) ;
public final EObject ruleDefOperationCS() throws RecognitionException {
EObject current = null;
Token lv_isStatic_0_0=null;
Token otherlv_1=null;
Token otherlv_3=null;
Token otherlv_6=null;
Token otherlv_8=null;
Token otherlv_10=null;
Token otherlv_11=null;
Token otherlv_13=null;
EObject lv_ownedSignature_4_0 = null;
AntlrDatatypeRuleToken lv_name_5_0 = null;
EObject lv_ownedParameters_7_0 = null;
EObject lv_ownedParameters_9_0 = null;
EObject lv_ownedType_12_0 = null;
EObject lv_ownedSpecification_14_0 = null;
enterRule();
try {
// InternalCompleteOCL.g:514:28: ( ( ( (lv_isStatic_0_0= 'static' ) )? otherlv_1= 'def' ( ruleUnrestrictedName )? otherlv_3= ':' ( (lv_ownedSignature_4_0= ruleTemplateSignatureCS ) )? ( (lv_name_5_0= ruleUnrestrictedName ) ) otherlv_6= '(' ( ( (lv_ownedParameters_7_0= ruleDefParameterCS ) ) (otherlv_8= ',' ( (lv_ownedParameters_9_0= ruleDefParameterCS ) ) )* )? otherlv_10= ')' otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) )? otherlv_13= '=' ( (lv_ownedSpecification_14_0= ruleSpecificationCS ) ) ) )
// InternalCompleteOCL.g:515:1: ( ( (lv_isStatic_0_0= 'static' ) )? otherlv_1= 'def' ( ruleUnrestrictedName )? otherlv_3= ':' ( (lv_ownedSignature_4_0= ruleTemplateSignatureCS ) )? ( (lv_name_5_0= ruleUnrestrictedName ) ) otherlv_6= '(' ( ( (lv_ownedParameters_7_0= ruleDefParameterCS ) ) (otherlv_8= ',' ( (lv_ownedParameters_9_0= ruleDefParameterCS ) ) )* )? otherlv_10= ')' otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) )? otherlv_13= '=' ( (lv_ownedSpecification_14_0= ruleSpecificationCS ) ) )
{
// InternalCompleteOCL.g:515:1: ( ( (lv_isStatic_0_0= 'static' ) )? otherlv_1= 'def' ( ruleUnrestrictedName )? otherlv_3= ':' ( (lv_ownedSignature_4_0= ruleTemplateSignatureCS ) )? ( (lv_name_5_0= ruleUnrestrictedName ) ) otherlv_6= '(' ( ( (lv_ownedParameters_7_0= ruleDefParameterCS ) ) (otherlv_8= ',' ( (lv_ownedParameters_9_0= ruleDefParameterCS ) ) )* )? otherlv_10= ')' otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) )? otherlv_13= '=' ( (lv_ownedSpecification_14_0= ruleSpecificationCS ) ) )
// InternalCompleteOCL.g:515:2: ( (lv_isStatic_0_0= 'static' ) )? otherlv_1= 'def' ( ruleUnrestrictedName )? otherlv_3= ':' ( (lv_ownedSignature_4_0= ruleTemplateSignatureCS ) )? ( (lv_name_5_0= ruleUnrestrictedName ) ) otherlv_6= '(' ( ( (lv_ownedParameters_7_0= ruleDefParameterCS ) ) (otherlv_8= ',' ( (lv_ownedParameters_9_0= ruleDefParameterCS ) ) )* )? otherlv_10= ')' otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) )? otherlv_13= '=' ( (lv_ownedSpecification_14_0= ruleSpecificationCS ) )
{
// InternalCompleteOCL.g:515:2: ( (lv_isStatic_0_0= 'static' ) )?
int alt11=2;
int LA11_0 = input.LA(1);
if ( (LA11_0==24) ) {
alt11=1;
}
switch (alt11) {
case 1 :
// InternalCompleteOCL.g:516:1: (lv_isStatic_0_0= 'static' )
{
// InternalCompleteOCL.g:516:1: (lv_isStatic_0_0= 'static' )
// InternalCompleteOCL.g:517:3: lv_isStatic_0_0= 'static'
{
lv_isStatic_0_0=(Token)match(input,24,FollowSets000.FOLLOW_13); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_isStatic_0_0, grammarAccess.getDefOperationCSAccess().getIsStaticStaticKeyword_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getDefOperationCSRule());
}
setWithLastConsumed(current, "isStatic", true, "static");
}
}
}
break;
}
otherlv_1=(Token)match(input,25,FollowSets000.FOLLOW_7); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getDefOperationCSAccess().getDefKeyword_1());
}
// InternalCompleteOCL.g:534:1: ( ruleUnrestrictedName )?
int alt12=2;
int LA12_0 = input.LA(1);
if ( ((LA12_0>=RULE_SIMPLE_ID && LA12_0<=RULE_ESCAPED_ID)||(LA12_0>=28 && LA12_0<=30)) ) {
alt12=1;
}
switch (alt12) {
case 1 :
// InternalCompleteOCL.g:535:2: ruleUnrestrictedName
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getDefOperationCSAccess().getUnrestrictedNameParserRuleCall_2());
}
pushFollow(FollowSets000.FOLLOW_12);
ruleUnrestrictedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
break;
}
otherlv_3=(Token)match(input,23,FollowSets000.FOLLOW_14); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getDefOperationCSAccess().getColonKeyword_3());
}
// InternalCompleteOCL.g:549:1: ( (lv_ownedSignature_4_0= ruleTemplateSignatureCS ) )?
int alt13=2;
int LA13_0 = input.LA(1);
if ( (LA13_0==21||LA13_0==39) ) {
alt13=1;
}
switch (alt13) {
case 1 :
// InternalCompleteOCL.g:550:1: (lv_ownedSignature_4_0= ruleTemplateSignatureCS )
{
// InternalCompleteOCL.g:550:1: (lv_ownedSignature_4_0= ruleTemplateSignatureCS )
// InternalCompleteOCL.g:551:3: lv_ownedSignature_4_0= ruleTemplateSignatureCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_4_0());
}
pushFollow(FollowSets000.FOLLOW_15);
lv_ownedSignature_4_0=ruleTemplateSignatureCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getDefOperationCSRule());
}
set(
current,
"ownedSignature",
lv_ownedSignature_4_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.TemplateSignatureCS");
afterParserOrEnumRuleCall();
}
}
}
break;
}
// InternalCompleteOCL.g:567:3: ( (lv_name_5_0= ruleUnrestrictedName ) )
// InternalCompleteOCL.g:568:1: (lv_name_5_0= ruleUnrestrictedName )
{
// InternalCompleteOCL.g:568:1: (lv_name_5_0= ruleUnrestrictedName )
// InternalCompleteOCL.g:569:3: lv_name_5_0= ruleUnrestrictedName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getDefOperationCSAccess().getNameUnrestrictedNameParserRuleCall_5_0());
}
pushFollow(FollowSets000.FOLLOW_16);
lv_name_5_0=ruleUnrestrictedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getDefOperationCSRule());
}
set(
current,
"name",
lv_name_5_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
afterParserOrEnumRuleCall();
}
}
}
otherlv_6=(Token)match(input,21,FollowSets000.FOLLOW_17); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_6, grammarAccess.getDefOperationCSAccess().getLeftParenthesisKeyword_6());
}
// InternalCompleteOCL.g:589:1: ( ( (lv_ownedParameters_7_0= ruleDefParameterCS ) ) (otherlv_8= ',' ( (lv_ownedParameters_9_0= ruleDefParameterCS ) ) )* )?
int alt15=2;
int LA15_0 = input.LA(1);
if ( ((LA15_0>=RULE_SIMPLE_ID && LA15_0<=RULE_ESCAPED_ID)||(LA15_0>=28 && LA15_0<=30)) ) {
alt15=1;
}
switch (alt15) {
case 1 :
// InternalCompleteOCL.g:589:2: ( (lv_ownedParameters_7_0= ruleDefParameterCS ) ) (otherlv_8= ',' ( (lv_ownedParameters_9_0= ruleDefParameterCS ) ) )*
{
// InternalCompleteOCL.g:589:2: ( (lv_ownedParameters_7_0= ruleDefParameterCS ) )
// InternalCompleteOCL.g:590:1: (lv_ownedParameters_7_0= ruleDefParameterCS )
{
// InternalCompleteOCL.g:590:1: (lv_ownedParameters_7_0= ruleDefParameterCS )
// InternalCompleteOCL.g:591:3: lv_ownedParameters_7_0= ruleDefParameterCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_0_0());
}
pushFollow(FollowSets000.FOLLOW_18);
lv_ownedParameters_7_0=ruleDefParameterCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getDefOperationCSRule());
}
add(
current,
"ownedParameters",
lv_ownedParameters_7_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.DefParameterCS");
afterParserOrEnumRuleCall();
}
}
}
// InternalCompleteOCL.g:607:2: (otherlv_8= ',' ( (lv_ownedParameters_9_0= ruleDefParameterCS ) ) )*
loop14:
do {
int alt14=2;
int LA14_0 = input.LA(1);
if ( (LA14_0==26) ) {
alt14=1;
}
switch (alt14) {
case 1 :
// InternalCompleteOCL.g:607:4: otherlv_8= ',' ( (lv_ownedParameters_9_0= ruleDefParameterCS ) )
{
otherlv_8=(Token)match(input,26,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_8, grammarAccess.getDefOperationCSAccess().getCommaKeyword_7_1_0());
}
// InternalCompleteOCL.g:611:1: ( (lv_ownedParameters_9_0= ruleDefParameterCS ) )
// InternalCompleteOCL.g:612:1: (lv_ownedParameters_9_0= ruleDefParameterCS )
{
// InternalCompleteOCL.g:612:1: (lv_ownedParameters_9_0= ruleDefParameterCS )
// InternalCompleteOCL.g:613:3: lv_ownedParameters_9_0= ruleDefParameterCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_18);
lv_ownedParameters_9_0=ruleDefParameterCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getDefOperationCSRule());
}
add(
current,
"ownedParameters",
lv_ownedParameters_9_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.DefParameterCS");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop14;
}
} while (true);
}
break;
}
otherlv_10=(Token)match(input,22,FollowSets000.FOLLOW_12); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_10, grammarAccess.getDefOperationCSAccess().getRightParenthesisKeyword_8());
}
otherlv_11=(Token)match(input,23,FollowSets000.FOLLOW_19); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_11, grammarAccess.getDefOperationCSAccess().getColonKeyword_9());
}
// InternalCompleteOCL.g:637:1: ( (lv_ownedType_12_0= ruleTypeExpCS ) )?
int alt16=2;
int LA16_0 = input.LA(1);
if ( ((LA16_0>=RULE_SIMPLE_ID && LA16_0<=RULE_ESCAPED_ID)||(LA16_0>=28 && LA16_0<=30)||(LA16_0>=42 && LA16_0<=51)||(LA16_0>=73 && LA16_0<=74)||(LA16_0>=76 && LA16_0<=80)) ) {
alt16=1;
}
switch (alt16) {
case 1 :
// InternalCompleteOCL.g:638:1: (lv_ownedType_12_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:638:1: (lv_ownedType_12_0= ruleTypeExpCS )
// InternalCompleteOCL.g:639:3: lv_ownedType_12_0= ruleTypeExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedTypeTypeExpCSParserRuleCall_10_0());
}
pushFollow(FollowSets000.FOLLOW_20);
lv_ownedType_12_0=ruleTypeExpCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getDefOperationCSRule());
}
set(
current,
"ownedType",
lv_ownedType_12_0,
"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
afterParserOrEnumRuleCall();
}
}
}
break;
}
otherlv_13=(Token)match(input,27,FollowSets000.FOLLOW_10); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_13, grammarAccess.getDefOperationCSAccess().getEqualsSignKeyword_11());
}
// InternalCompleteOCL.g:659:1: ( (lv_ownedSpecification_14_0= ruleSpecificationCS ) )
// InternalCompleteOCL.g:660:1: (lv_ownedSpecification_14_0= ruleSpecificationCS )
{
// InternalCompleteOCL.g:660:1: (lv_ownedSpecification_14_0= ruleSpecificationCS )
// InternalCompleteOCL.g:661:3: lv_ownedSpecification_14_0= ruleSpecificationCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_12_0());
}
pushFollow(FollowSets000.FOLLOW_2);
lv_ownedSpecification_14_0=ruleSpecificationCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getDefOperationCSRule());
}
set(
current,
"ownedSpecification",
lv_ownedSpecification_14_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.SpecificationCS");
afterParserOrEnumRuleCall();
}
}
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleDefOperationCS"
// $ANTLR start "entryRuleDefParameterCS"
// InternalCompleteOCL.g:685:1: entryRuleDefParameterCS returns [EObject current=null] : iv_ruleDefParameterCS= ruleDefParameterCS EOF ;
public final EObject entryRuleDefParameterCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleDefParameterCS = null;
try {
// InternalCompleteOCL.g:686:2: (iv_ruleDefParameterCS= ruleDefParameterCS EOF )
// InternalCompleteOCL.g:687:2: iv_ruleDefParameterCS= ruleDefParameterCS EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getDefParameterCSRule());
}
pushFollow(FollowSets000.FOLLOW_1);
iv_ruleDefParameterCS=ruleDefParameterCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleDefParameterCS;
}
match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleDefParameterCS"
// $ANTLR start "ruleDefParameterCS"
// InternalCompleteOCL.g:694:1: ruleDefParameterCS returns [EObject current=null] : ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) ) ;
public final EObject ruleDefParameterCS() throws RecognitionException {
EObject current = null;
Token otherlv_1=null;
AntlrDatatypeRuleToken lv_name_0_0 = null;
EObject lv_ownedType_2_0 = null;
enterRule();
try {
// InternalCompleteOCL.g:697:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) ) )
// InternalCompleteOCL.g:698:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )
{
// InternalCompleteOCL.g:698:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )
// InternalCompleteOCL.g:698:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) )
{
// InternalCompleteOCL.g:698:2: ( (lv_name_0_0= ruleUnrestrictedName ) )
// InternalCompleteOCL.g:699:1: (lv_name_0_0= ruleUnrestrictedName )
{
// InternalCompleteOCL.g:699:1: (lv_name_0_0= ruleUnrestrictedName )
// InternalCompleteOCL.g:700:3: lv_name_0_0= ruleUnrestrictedName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getDefParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
}
pushFollow(FollowSets000.FOLLOW_12);
lv_name_0_0=ruleUnrestrictedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getDefParameterCSRule());
}
set(
current,
"name",
lv_name_0_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
afterParserOrEnumRuleCall();
}
}
}
otherlv_1=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getDefParameterCSAccess().getColonKeyword_1());
}
// InternalCompleteOCL.g:720:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:721:1: (lv_ownedType_2_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:721:1: (lv_ownedType_2_0= ruleTypeExpCS )
// InternalCompleteOCL.g:722:3: lv_ownedType_2_0= ruleTypeExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getDefParameterCSAccess().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.getDefParameterCSRule());
}
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 "ruleDefParameterCS"
// $ANTLR start "entryRuleDefPropertyCS"
// InternalCompleteOCL.g:746:1: entryRuleDefPropertyCS returns [EObject current=null] : iv_ruleDefPropertyCS= ruleDefPropertyCS EOF ;
public final EObject entryRuleDefPropertyCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleDefPropertyCS = null;
try {
// InternalCompleteOCL.g:747:2: (iv_ruleDefPropertyCS= ruleDefPropertyCS EOF )
// InternalCompleteOCL.g:748:2: iv_ruleDefPropertyCS= ruleDefPropertyCS EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getDefPropertyCSRule());
}
pushFollow(FollowSets000.FOLLOW_1);
iv_ruleDefPropertyCS=ruleDefPropertyCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleDefPropertyCS;
}
match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleDefPropertyCS"
// $ANTLR start "ruleDefPropertyCS"
// InternalCompleteOCL.g:755:1: ruleDefPropertyCS returns [EObject current=null] : ( ( (lv_isStatic_0_0= 'static' ) )? otherlv_1= 'def' ( ruleUnrestrictedName )? otherlv_3= ':' ( (lv_name_4_0= ruleUnrestrictedName ) ) otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) otherlv_7= '=' ( (lv_ownedSpecification_8_0= ruleSpecificationCS ) ) ) ;
public final EObject ruleDefPropertyCS() throws RecognitionException {
EObject current = null;
Token lv_isStatic_0_0=null;
Token otherlv_1=null;
Token otherlv_3=null;
Token otherlv_5=null;
Token otherlv_7=null;
AntlrDatatypeRuleToken lv_name_4_0 = null;
EObject lv_ownedType_6_0 = null;
EObject lv_ownedSpecification_8_0 = null;
enterRule();
try {
// InternalCompleteOCL.g:758:28: ( ( ( (lv_isStatic_0_0= 'static' ) )? otherlv_1= 'def' ( ruleUnrestrictedName )? otherlv_3= ':' ( (lv_name_4_0= ruleUnrestrictedName ) ) otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) otherlv_7= '=' ( (lv_ownedSpecification_8_0= ruleSpecificationCS ) ) ) )
// InternalCompleteOCL.g:759:1: ( ( (lv_isStatic_0_0= 'static' ) )? otherlv_1= 'def' ( ruleUnrestrictedName )? otherlv_3= ':' ( (lv_name_4_0= ruleUnrestrictedName ) ) otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) otherlv_7= '=' ( (lv_ownedSpecification_8_0= ruleSpecificationCS ) ) )
{
// InternalCompleteOCL.g:759:1: ( ( (lv_isStatic_0_0= 'static' ) )? otherlv_1= 'def' ( ruleUnrestrictedName )? otherlv_3= ':' ( (lv_name_4_0= ruleUnrestrictedName ) ) otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) otherlv_7= '=' ( (lv_ownedSpecification_8_0= ruleSpecificationCS ) ) )
// InternalCompleteOCL.g:759:2: ( (lv_isStatic_0_0= 'static' ) )? otherlv_1= 'def' ( ruleUnrestrictedName )? otherlv_3= ':' ( (lv_name_4_0= ruleUnrestrictedName ) ) otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) otherlv_7= '=' ( (lv_ownedSpecification_8_0= ruleSpecificationCS ) )
{
// InternalCompleteOCL.g:759:2: ( (lv_isStatic_0_0= 'static' ) )?
int alt17=2;
int LA17_0 = input.LA(1);
if ( (LA17_0==24) ) {
alt17=1;
}
switch (alt17) {
case 1 :
// InternalCompleteOCL.g:760:1: (lv_isStatic_0_0= 'static' )
{
// InternalCompleteOCL.g:760:1: (lv_isStatic_0_0= 'static' )
// InternalCompleteOCL.g:761:3: lv_isStatic_0_0= 'static'
{
lv_isStatic_0_0=(Token)match(input,24,FollowSets000.FOLLOW_13); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_isStatic_0_0, grammarAccess.getDefPropertyCSAccess().getIsStaticStaticKeyword_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getDefPropertyCSRule());
}
setWithLastConsumed(current, "isStatic", true, "static");
}
}
}
break;
}
otherlv_1=(Token)match(input,25,FollowSets000.FOLLOW_7); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getDefPropertyCSAccess().getDefKeyword_1());
}
// InternalCompleteOCL.g:778:1: ( ruleUnrestrictedName )?
int alt18=2;
int LA18_0 = input.LA(1);
if ( ((LA18_0>=RULE_SIMPLE_ID && LA18_0<=RULE_ESCAPED_ID)||(LA18_0>=28 && LA18_0<=30)) ) {
alt18=1;
}
switch (alt18) {
case 1 :
// InternalCompleteOCL.g:779:2: ruleUnrestrictedName
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getDefPropertyCSAccess().getUnrestrictedNameParserRuleCall_2());
}
pushFollow(FollowSets000.FOLLOW_12);
ruleUnrestrictedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
break;
}
otherlv_3=(Token)match(input,23,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getDefPropertyCSAccess().getColonKeyword_3());
}
// InternalCompleteOCL.g:793:1: ( (lv_name_4_0= ruleUnrestrictedName ) )
// InternalCompleteOCL.g:794:1: (lv_name_4_0= ruleUnrestrictedName )
{
// InternalCompleteOCL.g:794:1: (lv_name_4_0= ruleUnrestrictedName )
// InternalCompleteOCL.g:795:3: lv_name_4_0= ruleUnrestrictedName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getDefPropertyCSAccess().getNameUnrestrictedNameParserRuleCall_4_0());
}
pushFollow(FollowSets000.FOLLOW_12);
lv_name_4_0=ruleUnrestrictedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getDefPropertyCSRule());
}
set(
current,
"name",
lv_name_4_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
afterParserOrEnumRuleCall();
}
}
}
otherlv_5=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_5, grammarAccess.getDefPropertyCSAccess().getColonKeyword_5());
}
// InternalCompleteOCL.g:815:1: ( (lv_ownedType_6_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:816:1: (lv_ownedType_6_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:816:1: (lv_ownedType_6_0= ruleTypeExpCS )
// InternalCompleteOCL.g:817:3: lv_ownedType_6_0= ruleTypeExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getDefPropertyCSAccess().getOwnedTypeTypeExpCSParserRuleCall_6_0());
}
pushFollow(FollowSets000.FOLLOW_20);
lv_ownedType_6_0=ruleTypeExpCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getDefPropertyCSRule());
}
set(
current,
"ownedType",
lv_ownedType_6_0,
"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
afterParserOrEnumRuleCall();
}
}
}
otherlv_7=(Token)match(input,27,FollowSets000.FOLLOW_10); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_7, grammarAccess.getDefPropertyCSAccess().getEqualsSignKeyword_7());
}
// InternalCompleteOCL.g:837:1: ( (lv_ownedSpecification_8_0= ruleSpecificationCS ) )
// InternalCompleteOCL.g:838:1: (lv_ownedSpecification_8_0= ruleSpecificationCS )
{
// InternalCompleteOCL.g:838:1: (lv_ownedSpecification_8_0= ruleSpecificationCS )
// InternalCompleteOCL.g:839:3: lv_ownedSpecification_8_0= ruleSpecificationCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getDefPropertyCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_8_0());
}
pushFollow(FollowSets000.FOLLOW_2);
lv_ownedSpecification_8_0=ruleSpecificationCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getDefPropertyCSRule());
}
set(
current,
"ownedSpecification",
lv_ownedSpecification_8_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.SpecificationCS");
afterParserOrEnumRuleCall();
}
}
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleDefPropertyCS"
// $ANTLR start "entryRuleImportCS"
// InternalCompleteOCL.g:863:1: entryRuleImportCS returns [EObject current=null] : iv_ruleImportCS= ruleImportCS EOF ;
public final EObject entryRuleImportCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleImportCS = null;
try {
// InternalCompleteOCL.g:864:2: (iv_ruleImportCS= ruleImportCS EOF )
// InternalCompleteOCL.g:865: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"
// InternalCompleteOCL.g:872:1: ruleImportCS returns [EObject current=null] : ( (otherlv_0= 'import' | otherlv_1= 'include' | otherlv_2= 'library' ) ( ( (lv_name_3_0= ruleIdentifier ) ) otherlv_4= ':' )? ( (lv_ownedPathName_5_0= ruleURIPathNameCS ) ) ( (lv_isAll_6_0= '::*' ) )? ) ;
public final EObject ruleImportCS() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token otherlv_1=null;
Token otherlv_2=null;
Token otherlv_4=null;
Token lv_isAll_6_0=null;
AntlrDatatypeRuleToken lv_name_3_0 = null;
EObject lv_ownedPathName_5_0 = null;
enterRule();
try {
// InternalCompleteOCL.g:875:28: ( ( (otherlv_0= 'import' | otherlv_1= 'include' | otherlv_2= 'library' ) ( ( (lv_name_3_0= ruleIdentifier ) ) otherlv_4= ':' )? ( (lv_ownedPathName_5_0= ruleURIPathNameCS ) ) ( (lv_isAll_6_0= '::*' ) )? ) )
// InternalCompleteOCL.g:876:1: ( (otherlv_0= 'import' | otherlv_1= 'include' | otherlv_2= 'library' ) ( ( (lv_name_3_0= ruleIdentifier ) ) otherlv_4= ':' )? ( (lv_ownedPathName_5_0= ruleURIPathNameCS ) ) ( (lv_isAll_6_0= '::*' ) )? )
{
// InternalCompleteOCL.g:876:1: ( (otherlv_0= 'import' | otherlv_1= 'include' | otherlv_2= 'library' ) ( ( (lv_name_3_0= ruleIdentifier ) ) otherlv_4= ':' )? ( (lv_ownedPathName_5_0= ruleURIPathNameCS ) ) ( (lv_isAll_6_0= '::*' ) )? )
// InternalCompleteOCL.g:876:2: (otherlv_0= 'import' | otherlv_1= 'include' | otherlv_2= 'library' ) ( ( (lv_name_3_0= ruleIdentifier ) ) otherlv_4= ':' )? ( (lv_ownedPathName_5_0= ruleURIPathNameCS ) ) ( (lv_isAll_6_0= '::*' ) )?
{
// InternalCompleteOCL.g:876:2: (otherlv_0= 'import' | otherlv_1= 'include' | otherlv_2= 'library' )
int alt19=3;
switch ( input.LA(1) ) {
case 28:
{
alt19=1;
}
break;
case 29:
{
alt19=2;
}
break;
case 30:
{
alt19=3;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 19, 0, input);
throw nvae;
}
switch (alt19) {
case 1 :
// InternalCompleteOCL.g:876:4: otherlv_0= 'import'
{
otherlv_0=(Token)match(input,28,FollowSets000.FOLLOW_22); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getImportCSAccess().getImportKeyword_0_0());
}
}
break;
case 2 :
// InternalCompleteOCL.g:881:7: otherlv_1= 'include'
{
otherlv_1=(Token)match(input,29,FollowSets000.FOLLOW_22); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getImportCSAccess().getIncludeKeyword_0_1());
}
}
break;
case 3 :
// InternalCompleteOCL.g:886:7: otherlv_2= 'library'
{
otherlv_2=(Token)match(input,30,FollowSets000.FOLLOW_22); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getImportCSAccess().getLibraryKeyword_0_2());
}
}
break;
}
// InternalCompleteOCL.g:890:2: ( ( (lv_name_3_0= ruleIdentifier ) ) otherlv_4= ':' )?
int alt20=2;
int LA20_0 = input.LA(1);
if ( (LA20_0==RULE_SIMPLE_ID) ) {
int LA20_1 = input.LA(2);
if ( (LA20_1==23) ) {
alt20=1;
}
}
else if ( (LA20_0==RULE_ESCAPED_ID) ) {
int LA20_2 = input.LA(2);
if ( (LA20_2==23) ) {
alt20=1;
}
}
switch (alt20) {
case 1 :
// InternalCompleteOCL.g:890:3: ( (lv_name_3_0= ruleIdentifier ) ) otherlv_4= ':'
{
// InternalCompleteOCL.g:890:3: ( (lv_name_3_0= ruleIdentifier ) )
// InternalCompleteOCL.g:891:1: (lv_name_3_0= ruleIdentifier )
{
// InternalCompleteOCL.g:891:1: (lv_name_3_0= ruleIdentifier )
// InternalCompleteOCL.g:892:3: lv_name_3_0= ruleIdentifier
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getImportCSAccess().getNameIdentifierParserRuleCall_1_0_0());
}
pushFollow(FollowSets000.FOLLOW_12);
lv_name_3_0=ruleIdentifier();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getImportCSRule());
}
set(
current,
"name",
lv_name_3_0,
"org.eclipse.ocl.xtext.base.Base.Identifier");
afterParserOrEnumRuleCall();
}
}
}
otherlv_4=(Token)match(input,23,FollowSets000.FOLLOW_22); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getImportCSAccess().getColonKeyword_1_1());
}
}
break;
}
// InternalCompleteOCL.g:912:3: ( (lv_ownedPathName_5_0= ruleURIPathNameCS ) )
// InternalCompleteOCL.g:913:1: (lv_ownedPathName_5_0= ruleURIPathNameCS )
{
// InternalCompleteOCL.g:913:1: (lv_ownedPathName_5_0= ruleURIPathNameCS )
// InternalCompleteOCL.g:914:3: lv_ownedPathName_5_0= ruleURIPathNameCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0());
}
pushFollow(FollowSets000.FOLLOW_23);
lv_ownedPathName_5_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_5_0,
"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.URIPathNameCS");
afterParserOrEnumRuleCall();
}
}
}
// InternalCompleteOCL.g:930:2: ( (lv_isAll_6_0= '::*' ) )?
int alt21=2;
int LA21_0 = input.LA(1);
if ( (LA21_0==31) ) {
alt21=1;
}
switch (alt21) {
case 1 :
// InternalCompleteOCL.g:931:1: (lv_isAll_6_0= '::*' )
{
// InternalCompleteOCL.g:931:1: (lv_isAll_6_0= '::*' )
// InternalCompleteOCL.g:932:3: lv_isAll_6_0= '::*'
{
lv_isAll_6_0=(Token)match(input,31,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_isAll_6_0, grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getImportCSRule());
}
setWithLastConsumed(current, "isAll", true, "::*");
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleImportCS"
// $ANTLR start "entryRuleOperationContextDeclCS"
// InternalCompleteOCL.g:953:1: entryRuleOperationContextDeclCS returns [EObject current=null] : iv_ruleOperationContextDeclCS= ruleOperationContextDeclCS EOF ;
public final EObject entryRuleOperationContextDeclCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleOperationContextDeclCS = null;
try {
// InternalCompleteOCL.g:954:2: (iv_ruleOperationContextDeclCS= ruleOperationContextDeclCS EOF )
// InternalCompleteOCL.g:955:2: iv_ruleOperationContextDeclCS= ruleOperationContextDeclCS EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getOperationContextDeclCSRule());
}
pushFollow(FollowSets000.FOLLOW_1);
iv_ruleOperationContextDeclCS=ruleOperationContextDeclCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleOperationContextDeclCS;
}
match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleOperationContextDeclCS"
// $ANTLR start "ruleOperationContextDeclCS"
// InternalCompleteOCL.g:962:1: ruleOperationContextDeclCS returns [EObject current=null] : (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_ownedPathName_2_0= ruleUnreservedPathNameCS ) ) otherlv_3= '(' ( ( (lv_ownedParameters_4_0= ruleParameterCS ) ) (otherlv_5= ',' ( (lv_ownedParameters_6_0= ruleParameterCS ) ) )* )? otherlv_7= ')' otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypeExpCS ) )? ( (otherlv_10= 'pre' ( (lv_ownedPreconditions_11_0= ruleConstraintCS ) ) ) | (otherlv_12= 'post' ( (lv_ownedPostconditions_13_0= ruleConstraintCS ) ) ) | (otherlv_14= 'body' ( ruleUnrestrictedName )? otherlv_16= ':' ( (lv_ownedBodies_17_0= ruleSpecificationCS ) ) ) )* ) ;
public final EObject ruleOperationContextDeclCS() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token otherlv_3=null;
Token otherlv_5=null;
Token otherlv_7=null;
Token otherlv_8=null;
Token otherlv_10=null;
Token otherlv_12=null;
Token otherlv_14=null;
Token otherlv_16=null;
EObject lv_ownedSignature_1_0 = null;
EObject lv_ownedPathName_2_0 = null;
EObject lv_ownedParameters_4_0 = null;
EObject lv_ownedParameters_6_0 = null;
EObject lv_ownedType_9_0 = null;
EObject lv_ownedPreconditions_11_0 = null;
EObject lv_ownedPostconditions_13_0 = null;
EObject lv_ownedBodies_17_0 = null;
enterRule();
try {
// InternalCompleteOCL.g:965:28: ( (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_ownedPathName_2_0= ruleUnreservedPathNameCS ) ) otherlv_3= '(' ( ( (lv_ownedParameters_4_0= ruleParameterCS ) ) (otherlv_5= ',' ( (lv_ownedParameters_6_0= ruleParameterCS ) ) )* )? otherlv_7= ')' otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypeExpCS ) )? ( (otherlv_10= 'pre' ( (lv_ownedPreconditions_11_0= ruleConstraintCS ) ) ) | (otherlv_12= 'post' ( (lv_ownedPostconditions_13_0= ruleConstraintCS ) ) ) | (otherlv_14= 'body' ( ruleUnrestrictedName )? otherlv_16= ':' ( (lv_ownedBodies_17_0= ruleSpecificationCS ) ) ) )* ) )
// InternalCompleteOCL.g:966:1: (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_ownedPathName_2_0= ruleUnreservedPathNameCS ) ) otherlv_3= '(' ( ( (lv_ownedParameters_4_0= ruleParameterCS ) ) (otherlv_5= ',' ( (lv_ownedParameters_6_0= ruleParameterCS ) ) )* )? otherlv_7= ')' otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypeExpCS ) )? ( (otherlv_10= 'pre' ( (lv_ownedPreconditions_11_0= ruleConstraintCS ) ) ) | (otherlv_12= 'post' ( (lv_ownedPostconditions_13_0= ruleConstraintCS ) ) ) | (otherlv_14= 'body' ( ruleUnrestrictedName )? otherlv_16= ':' ( (lv_ownedBodies_17_0= ruleSpecificationCS ) ) ) )* )
{
// InternalCompleteOCL.g:966:1: (otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_ownedPathName_2_0= ruleUnreservedPathNameCS ) ) otherlv_3= '(' ( ( (lv_ownedParameters_4_0= ruleParameterCS ) ) (otherlv_5= ',' ( (lv_ownedParameters_6_0= ruleParameterCS ) ) )* )? otherlv_7= ')' otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypeExpCS ) )? ( (otherlv_10= 'pre' ( (lv_ownedPreconditions_11_0= ruleConstraintCS ) ) ) | (otherlv_12= 'post' ( (lv_ownedPostconditions_13_0= ruleConstraintCS ) ) ) | (otherlv_14= 'body' ( ruleUnrestrictedName )? otherlv_16= ':' ( (lv_ownedBodies_17_0= ruleSpecificationCS ) ) ) )* )
// InternalCompleteOCL.g:966:3: otherlv_0= 'context' ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_ownedPathName_2_0= ruleUnreservedPathNameCS ) ) otherlv_3= '(' ( ( (lv_ownedParameters_4_0= ruleParameterCS ) ) (otherlv_5= ',' ( (lv_ownedParameters_6_0= ruleParameterCS ) ) )* )? otherlv_7= ')' otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypeExpCS ) )? ( (otherlv_10= 'pre' ( (lv_ownedPreconditions_11_0= ruleConstraintCS ) ) ) | (otherlv_12= 'post' ( (lv_ownedPostconditions_13_0= ruleConstraintCS ) ) ) | (otherlv_14= 'body' ( ruleUnrestrictedName )? otherlv_16= ':' ( (lv_ownedBodies_17_0= ruleSpecificationCS ) ) ) )*
{
otherlv_0=(Token)match(input,19,FollowSets000.FOLLOW_5); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getOperationContextDeclCSAccess().getContextKeyword_0());
}
// InternalCompleteOCL.g:970:1: ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )?
int alt22=2;
int LA22_0 = input.LA(1);
if ( (LA22_0==21||LA22_0==39) ) {
alt22=1;
}
switch (alt22) {
case 1 :
// InternalCompleteOCL.g:971:1: (lv_ownedSignature_1_0= ruleTemplateSignatureCS )
{
// InternalCompleteOCL.g:971:1: (lv_ownedSignature_1_0= ruleTemplateSignatureCS )
// InternalCompleteOCL.g:972:3: lv_ownedSignature_1_0= ruleTemplateSignatureCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0());
}
pushFollow(FollowSets000.FOLLOW_5);
lv_ownedSignature_1_0=ruleTemplateSignatureCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
}
set(
current,
"ownedSignature",
lv_ownedSignature_1_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.TemplateSignatureCS");
afterParserOrEnumRuleCall();
}
}
}
break;
}
// InternalCompleteOCL.g:988:3: ( (lv_ownedPathName_2_0= ruleUnreservedPathNameCS ) )
// InternalCompleteOCL.g:989:1: (lv_ownedPathName_2_0= ruleUnreservedPathNameCS )
{
// InternalCompleteOCL.g:989:1: (lv_ownedPathName_2_0= ruleUnreservedPathNameCS )
// InternalCompleteOCL.g:990:3: lv_ownedPathName_2_0= ruleUnreservedPathNameCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_2_0());
}
pushFollow(FollowSets000.FOLLOW_16);
lv_ownedPathName_2_0=ruleUnreservedPathNameCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
}
set(
current,
"ownedPathName",
lv_ownedPathName_2_0,
"org.eclipse.ocl.xtext.base.Base.UnreservedPathNameCS");
afterParserOrEnumRuleCall();
}
}
}
otherlv_3=(Token)match(input,21,FollowSets000.FOLLOW_24); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getOperationContextDeclCSAccess().getLeftParenthesisKeyword_3());
}
// InternalCompleteOCL.g:1010:1: ( ( (lv_ownedParameters_4_0= ruleParameterCS ) ) (otherlv_5= ',' ( (lv_ownedParameters_6_0= ruleParameterCS ) ) )* )?
int alt24=2;
int LA24_0 = input.LA(1);
if ( ((LA24_0>=RULE_SIMPLE_ID && LA24_0<=RULE_ESCAPED_ID)||(LA24_0>=28 && LA24_0<=30)||(LA24_0>=42 && LA24_0<=51)||(LA24_0>=73 && LA24_0<=74)||(LA24_0>=76 && LA24_0<=80)) ) {
alt24=1;
}
switch (alt24) {
case 1 :
// InternalCompleteOCL.g:1010:2: ( (lv_ownedParameters_4_0= ruleParameterCS ) ) (otherlv_5= ',' ( (lv_ownedParameters_6_0= ruleParameterCS ) ) )*
{
// InternalCompleteOCL.g:1010:2: ( (lv_ownedParameters_4_0= ruleParameterCS ) )
// InternalCompleteOCL.g:1011:1: (lv_ownedParameters_4_0= ruleParameterCS )
{
// InternalCompleteOCL.g:1011:1: (lv_ownedParameters_4_0= ruleParameterCS )
// InternalCompleteOCL.g:1012:3: lv_ownedParameters_4_0= ruleParameterCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_0_0());
}
pushFollow(FollowSets000.FOLLOW_18);
lv_ownedParameters_4_0=ruleParameterCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
}
add(
current,
"ownedParameters",
lv_ownedParameters_4_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ParameterCS");
afterParserOrEnumRuleCall();
}
}
}
// InternalCompleteOCL.g:1028:2: (otherlv_5= ',' ( (lv_ownedParameters_6_0= ruleParameterCS ) ) )*
loop23:
do {
int alt23=2;
int LA23_0 = input.LA(1);
if ( (LA23_0==26) ) {
alt23=1;
}
switch (alt23) {
case 1 :
// InternalCompleteOCL.g:1028:4: otherlv_5= ',' ( (lv_ownedParameters_6_0= ruleParameterCS ) )
{
otherlv_5=(Token)match(input,26,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_5, grammarAccess.getOperationContextDeclCSAccess().getCommaKeyword_4_1_0());
}
// InternalCompleteOCL.g:1032:1: ( (lv_ownedParameters_6_0= ruleParameterCS ) )
// InternalCompleteOCL.g:1033:1: (lv_ownedParameters_6_0= ruleParameterCS )
{
// InternalCompleteOCL.g:1033:1: (lv_ownedParameters_6_0= ruleParameterCS )
// InternalCompleteOCL.g:1034:3: lv_ownedParameters_6_0= ruleParameterCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_18);
lv_ownedParameters_6_0=ruleParameterCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
}
add(
current,
"ownedParameters",
lv_ownedParameters_6_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ParameterCS");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop23;
}
} while (true);
}
break;
}
otherlv_7=(Token)match(input,22,FollowSets000.FOLLOW_12); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_7, grammarAccess.getOperationContextDeclCSAccess().getRightParenthesisKeyword_5());
}
otherlv_8=(Token)match(input,23,FollowSets000.FOLLOW_25); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_8, grammarAccess.getOperationContextDeclCSAccess().getColonKeyword_6());
}
// InternalCompleteOCL.g:1058:1: ( (lv_ownedType_9_0= ruleTypeExpCS ) )?
int alt25=2;
int LA25_0 = input.LA(1);
if ( ((LA25_0>=RULE_SIMPLE_ID && LA25_0<=RULE_ESCAPED_ID)||(LA25_0>=28 && LA25_0<=30)||(LA25_0>=42 && LA25_0<=51)||(LA25_0>=73 && LA25_0<=74)||(LA25_0>=76 && LA25_0<=80)) ) {
alt25=1;
}
switch (alt25) {
case 1 :
// InternalCompleteOCL.g:1059:1: (lv_ownedType_9_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:1059:1: (lv_ownedType_9_0= ruleTypeExpCS )
// InternalCompleteOCL.g:1060:3: lv_ownedType_9_0= ruleTypeExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_7_0());
}
pushFollow(FollowSets000.FOLLOW_26);
lv_ownedType_9_0=ruleTypeExpCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
}
set(
current,
"ownedType",
lv_ownedType_9_0,
"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
afterParserOrEnumRuleCall();
}
}
}
break;
}
// InternalCompleteOCL.g:1076:3: ( (otherlv_10= 'pre' ( (lv_ownedPreconditions_11_0= ruleConstraintCS ) ) ) | (otherlv_12= 'post' ( (lv_ownedPostconditions_13_0= ruleConstraintCS ) ) ) | (otherlv_14= 'body' ( ruleUnrestrictedName )? otherlv_16= ':' ( (lv_ownedBodies_17_0= ruleSpecificationCS ) ) ) )*
loop27:
do {
int alt27=4;
switch ( input.LA(1) ) {
case 32:
{
alt27=1;
}
break;
case 33:
{
alt27=2;
}
break;
case 34:
{
alt27=3;
}
break;
}
switch (alt27) {
case 1 :
// InternalCompleteOCL.g:1076:4: (otherlv_10= 'pre' ( (lv_ownedPreconditions_11_0= ruleConstraintCS ) ) )
{
// InternalCompleteOCL.g:1076:4: (otherlv_10= 'pre' ( (lv_ownedPreconditions_11_0= ruleConstraintCS ) ) )
// InternalCompleteOCL.g:1076:6: otherlv_10= 'pre' ( (lv_ownedPreconditions_11_0= ruleConstraintCS ) )
{
otherlv_10=(Token)match(input,32,FollowSets000.FOLLOW_7); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_10, grammarAccess.getOperationContextDeclCSAccess().getPreKeyword_8_0_0());
}
// InternalCompleteOCL.g:1080:1: ( (lv_ownedPreconditions_11_0= ruleConstraintCS ) )
// InternalCompleteOCL.g:1081:1: (lv_ownedPreconditions_11_0= ruleConstraintCS )
{
// InternalCompleteOCL.g:1081:1: (lv_ownedPreconditions_11_0= ruleConstraintCS )
// InternalCompleteOCL.g:1082:3: lv_ownedPreconditions_11_0= ruleConstraintCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedPreconditionsConstraintCSParserRuleCall_8_0_1_0());
}
pushFollow(FollowSets000.FOLLOW_26);
lv_ownedPreconditions_11_0=ruleConstraintCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
}
add(
current,
"ownedPreconditions",
lv_ownedPreconditions_11_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ConstraintCS");
afterParserOrEnumRuleCall();
}
}
}
}
}
break;
case 2 :
// InternalCompleteOCL.g:1099:6: (otherlv_12= 'post' ( (lv_ownedPostconditions_13_0= ruleConstraintCS ) ) )
{
// InternalCompleteOCL.g:1099:6: (otherlv_12= 'post' ( (lv_ownedPostconditions_13_0= ruleConstraintCS ) ) )
// InternalCompleteOCL.g:1099:8: otherlv_12= 'post' ( (lv_ownedPostconditions_13_0= ruleConstraintCS ) )
{
otherlv_12=(Token)match(input,33,FollowSets000.FOLLOW_7); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_12, grammarAccess.getOperationContextDeclCSAccess().getPostKeyword_8_1_0());
}
// InternalCompleteOCL.g:1103:1: ( (lv_ownedPostconditions_13_0= ruleConstraintCS ) )
// InternalCompleteOCL.g:1104:1: (lv_ownedPostconditions_13_0= ruleConstraintCS )
{
// InternalCompleteOCL.g:1104:1: (lv_ownedPostconditions_13_0= ruleConstraintCS )
// InternalCompleteOCL.g:1105:3: lv_ownedPostconditions_13_0= ruleConstraintCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedPostconditionsConstraintCSParserRuleCall_8_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_26);
lv_ownedPostconditions_13_0=ruleConstraintCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
}
add(
current,
"ownedPostconditions",
lv_ownedPostconditions_13_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ConstraintCS");
afterParserOrEnumRuleCall();
}
}
}
}
}
break;
case 3 :
// InternalCompleteOCL.g:1122:6: (otherlv_14= 'body' ( ruleUnrestrictedName )? otherlv_16= ':' ( (lv_ownedBodies_17_0= ruleSpecificationCS ) ) )
{
// InternalCompleteOCL.g:1122:6: (otherlv_14= 'body' ( ruleUnrestrictedName )? otherlv_16= ':' ( (lv_ownedBodies_17_0= ruleSpecificationCS ) ) )
// InternalCompleteOCL.g:1122:8: otherlv_14= 'body' ( ruleUnrestrictedName )? otherlv_16= ':' ( (lv_ownedBodies_17_0= ruleSpecificationCS ) )
{
otherlv_14=(Token)match(input,34,FollowSets000.FOLLOW_7); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_14, grammarAccess.getOperationContextDeclCSAccess().getBodyKeyword_8_2_0());
}
// InternalCompleteOCL.g:1126:1: ( ruleUnrestrictedName )?
int alt26=2;
int LA26_0 = input.LA(1);
if ( ((LA26_0>=RULE_SIMPLE_ID && LA26_0<=RULE_ESCAPED_ID)||(LA26_0>=28 && LA26_0<=30)) ) {
alt26=1;
}
switch (alt26) {
case 1 :
// InternalCompleteOCL.g:1127:2: ruleUnrestrictedName
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getUnrestrictedNameParserRuleCall_8_2_1());
}
pushFollow(FollowSets000.FOLLOW_12);
ruleUnrestrictedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
break;
}
otherlv_16=(Token)match(input,23,FollowSets000.FOLLOW_10); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_16, grammarAccess.getOperationContextDeclCSAccess().getColonKeyword_8_2_2());
}
// InternalCompleteOCL.g:1141:1: ( (lv_ownedBodies_17_0= ruleSpecificationCS ) )
// InternalCompleteOCL.g:1142:1: (lv_ownedBodies_17_0= ruleSpecificationCS )
{
// InternalCompleteOCL.g:1142:1: (lv_ownedBodies_17_0= ruleSpecificationCS )
// InternalCompleteOCL.g:1143:3: lv_ownedBodies_17_0= ruleSpecificationCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedBodiesSpecificationCSParserRuleCall_8_2_3_0());
}
pushFollow(FollowSets000.FOLLOW_26);
lv_ownedBodies_17_0=ruleSpecificationCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
}
add(
current,
"ownedBodies",
lv_ownedBodies_17_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.SpecificationCS");
afterParserOrEnumRuleCall();
}
}
}
}
}
break;
default :
break loop27;
}
} while (true);
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleOperationContextDeclCS"
// $ANTLR start "entryRulePackageDeclarationCS"
// InternalCompleteOCL.g:1167:1: entryRulePackageDeclarationCS returns [EObject current=null] : iv_rulePackageDeclarationCS= rulePackageDeclarationCS EOF ;
public final EObject entryRulePackageDeclarationCS() throws RecognitionException {
EObject current = null;
EObject iv_rulePackageDeclarationCS = null;
try {
// InternalCompleteOCL.g:1168:2: (iv_rulePackageDeclarationCS= rulePackageDeclarationCS EOF )
// InternalCompleteOCL.g:1169:2: iv_rulePackageDeclarationCS= rulePackageDeclarationCS EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getPackageDeclarationCSRule());
}
pushFollow(FollowSets000.FOLLOW_1);
iv_rulePackageDeclarationCS=rulePackageDeclarationCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_rulePackageDeclarationCS;
}
match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRulePackageDeclarationCS"
// $ANTLR start "rulePackageDeclarationCS"
// InternalCompleteOCL.g:1176:1: rulePackageDeclarationCS returns [EObject current=null] : (otherlv_0= 'package' ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) ) (otherlv_2= 'inv' ( (lv_ownedInvariants_3_0= ruleConstraintCS ) ) )* ( (lv_ownedContexts_4_0= ruleContextDeclCS ) )* otherlv_5= 'endpackage' ) ;
public final EObject rulePackageDeclarationCS() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token otherlv_2=null;
Token otherlv_5=null;
EObject lv_ownedPathName_1_0 = null;
EObject lv_ownedInvariants_3_0 = null;
EObject lv_ownedContexts_4_0 = null;
enterRule();
try {
// InternalCompleteOCL.g:1179:28: ( (otherlv_0= 'package' ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) ) (otherlv_2= 'inv' ( (lv_ownedInvariants_3_0= ruleConstraintCS ) ) )* ( (lv_ownedContexts_4_0= ruleContextDeclCS ) )* otherlv_5= 'endpackage' ) )
// InternalCompleteOCL.g:1180:1: (otherlv_0= 'package' ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) ) (otherlv_2= 'inv' ( (lv_ownedInvariants_3_0= ruleConstraintCS ) ) )* ( (lv_ownedContexts_4_0= ruleContextDeclCS ) )* otherlv_5= 'endpackage' )
{
// InternalCompleteOCL.g:1180:1: (otherlv_0= 'package' ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) ) (otherlv_2= 'inv' ( (lv_ownedInvariants_3_0= ruleConstraintCS ) ) )* ( (lv_ownedContexts_4_0= ruleContextDeclCS ) )* otherlv_5= 'endpackage' )
// InternalCompleteOCL.g:1180:3: otherlv_0= 'package' ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) ) (otherlv_2= 'inv' ( (lv_ownedInvariants_3_0= ruleConstraintCS ) ) )* ( (lv_ownedContexts_4_0= ruleContextDeclCS ) )* otherlv_5= 'endpackage'
{
otherlv_0=(Token)match(input,35,FollowSets000.FOLLOW_5); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getPackageDeclarationCSAccess().getPackageKeyword_0());
}
// InternalCompleteOCL.g:1184:1: ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) )
// InternalCompleteOCL.g:1185:1: (lv_ownedPathName_1_0= ruleUnreservedPathNameCS )
{
// InternalCompleteOCL.g:1185:1: (lv_ownedPathName_1_0= ruleUnreservedPathNameCS )
// InternalCompleteOCL.g:1186:3: lv_ownedPathName_1_0= ruleUnreservedPathNameCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_1_0());
}
pushFollow(FollowSets000.FOLLOW_27);
lv_ownedPathName_1_0=ruleUnreservedPathNameCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getPackageDeclarationCSRule());
}
set(
current,
"ownedPathName",
lv_ownedPathName_1_0,
"org.eclipse.ocl.xtext.base.Base.UnreservedPathNameCS");
afterParserOrEnumRuleCall();
}
}
}
// InternalCompleteOCL.g:1202:2: (otherlv_2= 'inv' ( (lv_ownedInvariants_3_0= ruleConstraintCS ) ) )*
loop28:
do {
int alt28=2;
int LA28_0 = input.LA(1);
if ( (LA28_0==20) ) {
alt28=1;
}
switch (alt28) {
case 1 :
// InternalCompleteOCL.g:1202:4: otherlv_2= 'inv' ( (lv_ownedInvariants_3_0= ruleConstraintCS ) )
{
otherlv_2=(Token)match(input,20,FollowSets000.FOLLOW_7); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getPackageDeclarationCSAccess().getInvKeyword_2_0());
}
// InternalCompleteOCL.g:1206:1: ( (lv_ownedInvariants_3_0= ruleConstraintCS ) )
// InternalCompleteOCL.g:1207:1: (lv_ownedInvariants_3_0= ruleConstraintCS )
{
// InternalCompleteOCL.g:1207:1: (lv_ownedInvariants_3_0= ruleConstraintCS )
// InternalCompleteOCL.g:1208:3: lv_ownedInvariants_3_0= ruleConstraintCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getPackageDeclarationCSAccess().getOwnedInvariantsConstraintCSParserRuleCall_2_1_0());
}
pushFollow(FollowSets000.FOLLOW_27);
lv_ownedInvariants_3_0=ruleConstraintCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getPackageDeclarationCSRule());
}
add(
current,
"ownedInvariants",
lv_ownedInvariants_3_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ConstraintCS");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop28;
}
} while (true);
// InternalCompleteOCL.g:1224:4: ( (lv_ownedContexts_4_0= ruleContextDeclCS ) )*
loop29:
do {
int alt29=2;
int LA29_0 = input.LA(1);
if ( (LA29_0==19) ) {
alt29=1;
}
switch (alt29) {
case 1 :
// InternalCompleteOCL.g:1225:1: (lv_ownedContexts_4_0= ruleContextDeclCS )
{
// InternalCompleteOCL.g:1225:1: (lv_ownedContexts_4_0= ruleContextDeclCS )
// InternalCompleteOCL.g:1226:3: lv_ownedContexts_4_0= ruleContextDeclCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getPackageDeclarationCSAccess().getOwnedContextsContextDeclCSParserRuleCall_3_0());
}
pushFollow(FollowSets000.FOLLOW_28);
lv_ownedContexts_4_0=ruleContextDeclCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getPackageDeclarationCSRule());
}
add(
current,
"ownedContexts",
lv_ownedContexts_4_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ContextDeclCS");
afterParserOrEnumRuleCall();
}
}
}
break;
default :
break loop29;
}
} while (true);
otherlv_5=(Token)match(input,36,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_5, grammarAccess.getPackageDeclarationCSAccess().getEndpackageKeyword_4());
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "rulePackageDeclarationCS"
// $ANTLR start "entryRuleParameterCS"
// InternalCompleteOCL.g:1254:1: entryRuleParameterCS returns [EObject current=null] : iv_ruleParameterCS= ruleParameterCS EOF ;
public final EObject entryRuleParameterCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleParameterCS = null;
try {
// InternalCompleteOCL.g:1255:2: (iv_ruleParameterCS= ruleParameterCS EOF )
// InternalCompleteOCL.g:1256: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"
// InternalCompleteOCL.g:1263:1: ruleParameterCS returns [EObject current=null] : ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' )? ( (lv_ownedType_2_0= ruleTypeExpCS ) ) ) ;
public final EObject ruleParameterCS() throws RecognitionException {
EObject current = null;
Token otherlv_1=null;
AntlrDatatypeRuleToken lv_name_0_0 = null;
EObject lv_ownedType_2_0 = null;
enterRule();
try {
// InternalCompleteOCL.g:1266:28: ( ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' )? ( (lv_ownedType_2_0= ruleTypeExpCS ) ) ) )
// InternalCompleteOCL.g:1267:1: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' )? ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )
{
// InternalCompleteOCL.g:1267:1: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' )? ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )
// InternalCompleteOCL.g:1267:2: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' )? ( (lv_ownedType_2_0= ruleTypeExpCS ) )
{
// InternalCompleteOCL.g:1267:2: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' )?
int alt30=2;
switch ( input.LA(1) ) {
case RULE_SIMPLE_ID:
{
int LA30_1 = input.LA(2);
if ( (LA30_1==23) ) {
alt30=1;
}
}
break;
case RULE_ESCAPED_ID:
{
int LA30_2 = input.LA(2);
if ( (LA30_2==23) ) {
alt30=1;
}
}
break;
case 28:
{
int LA30_3 = input.LA(2);
if ( (LA30_3==23) ) {
alt30=1;
}
}
break;
case 29:
{
int LA30_4 = input.LA(2);
if ( (LA30_4==23) ) {
alt30=1;
}
}
break;
case 30:
{
int LA30_5 = input.LA(2);
if ( (LA30_5==23) ) {
alt30=1;
}
}
break;
}
switch (alt30) {
case 1 :
// InternalCompleteOCL.g:1267:3: ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':'
{
// InternalCompleteOCL.g:1267:3: ( (lv_name_0_0= ruleUnrestrictedName ) )
// InternalCompleteOCL.g:1268:1: (lv_name_0_0= ruleUnrestrictedName )
{
// InternalCompleteOCL.g:1268:1: (lv_name_0_0= ruleUnrestrictedName )
// InternalCompleteOCL.g:1269:3: lv_name_0_0= ruleUnrestrictedName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0());
}
pushFollow(FollowSets000.FOLLOW_12);
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.completeocl.CompleteOCL.UnrestrictedName");
afterParserOrEnumRuleCall();
}
}
}
otherlv_1=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getParameterCSAccess().getColonKeyword_0_1());
}
}
break;
}
// InternalCompleteOCL.g:1289:3: ( (lv_ownedType_2_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:1290:1: (lv_ownedType_2_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:1290:1: (lv_ownedType_2_0= ruleTypeExpCS )
// InternalCompleteOCL.g:1291:3: lv_ownedType_2_0= ruleTypeExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getParameterCSAccess().getOwnedTypeTypeExpCSParserRuleCall_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.getParameterCSRule());
}
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 "ruleParameterCS"
// $ANTLR start "entryRulePropertyContextDeclCS"
// InternalCompleteOCL.g:1315:1: entryRulePropertyContextDeclCS returns [EObject current=null] : iv_rulePropertyContextDeclCS= rulePropertyContextDeclCS EOF ;
public final EObject entryRulePropertyContextDeclCS() throws RecognitionException {
EObject current = null;
EObject iv_rulePropertyContextDeclCS = null;
try {
// InternalCompleteOCL.g:1316:2: (iv_rulePropertyContextDeclCS= rulePropertyContextDeclCS EOF )
// InternalCompleteOCL.g:1317:2: iv_rulePropertyContextDeclCS= rulePropertyContextDeclCS EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getPropertyContextDeclCSRule());
}
pushFollow(FollowSets000.FOLLOW_1);
iv_rulePropertyContextDeclCS=rulePropertyContextDeclCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_rulePropertyContextDeclCS;
}
match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRulePropertyContextDeclCS"
// $ANTLR start "rulePropertyContextDeclCS"
// InternalCompleteOCL.g:1324:1: rulePropertyContextDeclCS returns [EObject current=null] : (otherlv_0= 'context' ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) ( (otherlv_4= 'derive' ( ruleUnrestrictedName )? otherlv_6= ':' ( (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS ) ) ) | (otherlv_8= 'init' ( ruleUnrestrictedName )? otherlv_10= ':' ( (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS ) ) ) )* ) ;
public final EObject rulePropertyContextDeclCS() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token otherlv_2=null;
Token otherlv_4=null;
Token otherlv_6=null;
Token otherlv_8=null;
Token otherlv_10=null;
EObject lv_ownedPathName_1_0 = null;
EObject lv_ownedType_3_0 = null;
EObject lv_ownedDefaultExpressions_7_0 = null;
EObject lv_ownedDefaultExpressions_11_0 = null;
enterRule();
try {
// InternalCompleteOCL.g:1327:28: ( (otherlv_0= 'context' ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) ( (otherlv_4= 'derive' ( ruleUnrestrictedName )? otherlv_6= ':' ( (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS ) ) ) | (otherlv_8= 'init' ( ruleUnrestrictedName )? otherlv_10= ':' ( (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS ) ) ) )* ) )
// InternalCompleteOCL.g:1328:1: (otherlv_0= 'context' ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) ( (otherlv_4= 'derive' ( ruleUnrestrictedName )? otherlv_6= ':' ( (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS ) ) ) | (otherlv_8= 'init' ( ruleUnrestrictedName )? otherlv_10= ':' ( (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS ) ) ) )* )
{
// InternalCompleteOCL.g:1328:1: (otherlv_0= 'context' ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) ( (otherlv_4= 'derive' ( ruleUnrestrictedName )? otherlv_6= ':' ( (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS ) ) ) | (otherlv_8= 'init' ( ruleUnrestrictedName )? otherlv_10= ':' ( (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS ) ) ) )* )
// InternalCompleteOCL.g:1328:3: otherlv_0= 'context' ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) ( (otherlv_4= 'derive' ( ruleUnrestrictedName )? otherlv_6= ':' ( (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS ) ) ) | (otherlv_8= 'init' ( ruleUnrestrictedName )? otherlv_10= ':' ( (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS ) ) ) )*
{
otherlv_0=(Token)match(input,19,FollowSets000.FOLLOW_5); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getPropertyContextDeclCSAccess().getContextKeyword_0());
}
// InternalCompleteOCL.g:1332:1: ( (lv_ownedPathName_1_0= ruleUnreservedPathNameCS ) )
// InternalCompleteOCL.g:1333:1: (lv_ownedPathName_1_0= ruleUnreservedPathNameCS )
{
// InternalCompleteOCL.g:1333:1: (lv_ownedPathName_1_0= ruleUnreservedPathNameCS )
// InternalCompleteOCL.g:1334:3: lv_ownedPathName_1_0= ruleUnreservedPathNameCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNameUnreservedPathNameCSParserRuleCall_1_0());
}
pushFollow(FollowSets000.FOLLOW_12);
lv_ownedPathName_1_0=ruleUnreservedPathNameCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getPropertyContextDeclCSRule());
}
set(
current,
"ownedPathName",
lv_ownedPathName_1_0,
"org.eclipse.ocl.xtext.base.Base.UnreservedPathNameCS");
afterParserOrEnumRuleCall();
}
}
}
otherlv_2=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_2());
}
// InternalCompleteOCL.g:1354:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:1355:1: (lv_ownedType_3_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:1355:1: (lv_ownedType_3_0= ruleTypeExpCS )
// InternalCompleteOCL.g:1356:3: lv_ownedType_3_0= ruleTypeExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_3_0());
}
pushFollow(FollowSets000.FOLLOW_29);
lv_ownedType_3_0=ruleTypeExpCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getPropertyContextDeclCSRule());
}
set(
current,
"ownedType",
lv_ownedType_3_0,
"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
afterParserOrEnumRuleCall();
}
}
}
// InternalCompleteOCL.g:1372:2: ( (otherlv_4= 'derive' ( ruleUnrestrictedName )? otherlv_6= ':' ( (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS ) ) ) | (otherlv_8= 'init' ( ruleUnrestrictedName )? otherlv_10= ':' ( (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS ) ) ) )*
loop33:
do {
int alt33=3;
int LA33_0 = input.LA(1);
if ( (LA33_0==37) ) {
alt33=1;
}
else if ( (LA33_0==38) ) {
alt33=2;
}
switch (alt33) {
case 1 :
// InternalCompleteOCL.g:1372:3: (otherlv_4= 'derive' ( ruleUnrestrictedName )? otherlv_6= ':' ( (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS ) ) )
{
// InternalCompleteOCL.g:1372:3: (otherlv_4= 'derive' ( ruleUnrestrictedName )? otherlv_6= ':' ( (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS ) ) )
// InternalCompleteOCL.g:1372:5: otherlv_4= 'derive' ( ruleUnrestrictedName )? otherlv_6= ':' ( (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS ) )
{
otherlv_4=(Token)match(input,37,FollowSets000.FOLLOW_7); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getPropertyContextDeclCSAccess().getDeriveKeyword_4_0_0());
}
// InternalCompleteOCL.g:1376:1: ( ruleUnrestrictedName )?
int alt31=2;
int LA31_0 = input.LA(1);
if ( ((LA31_0>=RULE_SIMPLE_ID && LA31_0<=RULE_ESCAPED_ID)||(LA31_0>=28 && LA31_0<=30)) ) {
alt31=1;
}
switch (alt31) {
case 1 :
// InternalCompleteOCL.g:1377:2: ruleUnrestrictedName
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getUnrestrictedNameParserRuleCall_4_0_1());
}
pushFollow(FollowSets000.FOLLOW_12);
ruleUnrestrictedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
break;
}
otherlv_6=(Token)match(input,23,FollowSets000.FOLLOW_10); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_6, grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_4_0_2());
}
// InternalCompleteOCL.g:1391:1: ( (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS ) )
// InternalCompleteOCL.g:1392:1: (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS )
{
// InternalCompleteOCL.g:1392:1: (lv_ownedDefaultExpressions_7_0= ruleSpecificationCS )
// InternalCompleteOCL.g:1393:3: lv_ownedDefaultExpressions_7_0= ruleSpecificationCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_4_0_3_0());
}
pushFollow(FollowSets000.FOLLOW_29);
lv_ownedDefaultExpressions_7_0=ruleSpecificationCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getPropertyContextDeclCSRule());
}
add(
current,
"ownedDefaultExpressions",
lv_ownedDefaultExpressions_7_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.SpecificationCS");
afterParserOrEnumRuleCall();
}
}
}
}
}
break;
case 2 :
// InternalCompleteOCL.g:1410:6: (otherlv_8= 'init' ( ruleUnrestrictedName )? otherlv_10= ':' ( (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS ) ) )
{
// InternalCompleteOCL.g:1410:6: (otherlv_8= 'init' ( ruleUnrestrictedName )? otherlv_10= ':' ( (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS ) ) )
// InternalCompleteOCL.g:1410:8: otherlv_8= 'init' ( ruleUnrestrictedName )? otherlv_10= ':' ( (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS ) )
{
otherlv_8=(Token)match(input,38,FollowSets000.FOLLOW_7); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_8, grammarAccess.getPropertyContextDeclCSAccess().getInitKeyword_4_1_0());
}
// InternalCompleteOCL.g:1414:1: ( ruleUnrestrictedName )?
int alt32=2;
int LA32_0 = input.LA(1);
if ( ((LA32_0>=RULE_SIMPLE_ID && LA32_0<=RULE_ESCAPED_ID)||(LA32_0>=28 && LA32_0<=30)) ) {
alt32=1;
}
switch (alt32) {
case 1 :
// InternalCompleteOCL.g:1415:2: ruleUnrestrictedName
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getUnrestrictedNameParserRuleCall_4_1_1());
}
pushFollow(FollowSets000.FOLLOW_12);
ruleUnrestrictedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
break;
}
otherlv_10=(Token)match(input,23,FollowSets000.FOLLOW_10); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_10, grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_4_1_2());
}
// InternalCompleteOCL.g:1429:1: ( (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS ) )
// InternalCompleteOCL.g:1430:1: (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS )
{
// InternalCompleteOCL.g:1430:1: (lv_ownedDefaultExpressions_11_0= ruleSpecificationCS )
// InternalCompleteOCL.g:1431:3: lv_ownedDefaultExpressions_11_0= ruleSpecificationCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_4_1_3_0());
}
pushFollow(FollowSets000.FOLLOW_29);
lv_ownedDefaultExpressions_11_0=ruleSpecificationCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getPropertyContextDeclCSRule());
}
add(
current,
"ownedDefaultExpressions",
lv_ownedDefaultExpressions_11_0,
"org.eclipse.ocl.xtext.completeocl.CompleteOCL.SpecificationCS");
afterParserOrEnumRuleCall();
}
}
}
}
}
break;
default :
break loop33;
}
} while (true);
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "rulePropertyContextDeclCS"
// $ANTLR start "entryRuleSpecificationCS"
// InternalCompleteOCL.g:1455:1: entryRuleSpecificationCS returns [EObject current=null] : iv_ruleSpecificationCS= ruleSpecificationCS EOF ;
public final EObject entryRuleSpecificationCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleSpecificationCS = null;
try {
// InternalCompleteOCL.g:1456:2: (iv_ruleSpecificationCS= ruleSpecificationCS EOF )
// InternalCompleteOCL.g:1457: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"
// InternalCompleteOCL.g:1464: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 {
// InternalCompleteOCL.g:1467:28: ( ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) | ( (lv_exprString_1_0= RULE_UNQUOTED_STRING ) ) ) )
// InternalCompleteOCL.g:1468:1: ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) | ( (lv_exprString_1_0= RULE_UNQUOTED_STRING ) ) )
{
// InternalCompleteOCL.g:1468:1: ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) | ( (lv_exprString_1_0= RULE_UNQUOTED_STRING ) ) )
int alt34=2;
int LA34_0 = input.LA(1);
if ( ((LA34_0>=RULE_SIMPLE_ID && LA34_0<=RULE_SINGLE_QUOTED_STRING)||LA34_0==21||(LA34_0>=28 && LA34_0<=30)||(LA34_0>=42 && LA34_0<=55)||(LA34_0>=73 && LA34_0<=74)||(LA34_0>=76 && LA34_0<=80)||LA34_0==85||(LA34_0>=88 && LA34_0<=91)||LA34_0==98||(LA34_0>=103 && LA34_0<=104)) ) {
alt34=1;
}
else if ( (LA34_0==RULE_UNQUOTED_STRING) ) {
alt34=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 34, 0, input);
throw nvae;
}
switch (alt34) {
case 1 :
// InternalCompleteOCL.g:1468:2: ( (lv_ownedExpression_0_0= ruleExpCS ) )
{
// InternalCompleteOCL.g:1468:2: ( (lv_ownedExpression_0_0= ruleExpCS ) )
// InternalCompleteOCL.g:1469:1: (lv_ownedExpression_0_0= ruleExpCS )
{
// InternalCompleteOCL.g:1469:1: (lv_ownedExpression_0_0= ruleExpCS )
// InternalCompleteOCL.g:1470: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 :
// InternalCompleteOCL.g:1487:6: ( (lv_exprString_1_0= RULE_UNQUOTED_STRING ) )
{
// InternalCompleteOCL.g:1487:6: ( (lv_exprString_1_0= RULE_UNQUOTED_STRING ) )
// InternalCompleteOCL.g:1488:1: (lv_exprString_1_0= RULE_UNQUOTED_STRING )
{
// InternalCompleteOCL.g:1488:1: (lv_exprString_1_0= RULE_UNQUOTED_STRING )
// InternalCompleteOCL.g:1489: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.completeocl.CompleteOCL.UNQUOTED_STRING");
}
}
}
}
break;
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleSpecificationCS"
// $ANTLR start "entryRuleTemplateSignatureCS"
// InternalCompleteOCL.g:1513:1: entryRuleTemplateSignatureCS returns [EObject current=null] : iv_ruleTemplateSignatureCS= ruleTemplateSignatureCS EOF ;
public final EObject entryRuleTemplateSignatureCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleTemplateSignatureCS = null;
try {
// InternalCompleteOCL.g:1514:2: (iv_ruleTemplateSignatureCS= ruleTemplateSignatureCS EOF )
// InternalCompleteOCL.g:1515: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"
// InternalCompleteOCL.g:1522: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 {
// InternalCompleteOCL.g:1525: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= '>' ) ) )
// InternalCompleteOCL.g:1526: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= '>' ) )
{
// InternalCompleteOCL.g:1526: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 alt37=2;
int LA37_0 = input.LA(1);
if ( (LA37_0==21) ) {
alt37=1;
}
else if ( (LA37_0==39) ) {
alt37=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 37, 0, input);
throw nvae;
}
switch (alt37) {
case 1 :
// InternalCompleteOCL.g:1526:2: (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' )
{
// InternalCompleteOCL.g:1526:2: (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' )
// InternalCompleteOCL.g:1526:4: otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')'
{
otherlv_0=(Token)match(input,21,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0_0());
}
// InternalCompleteOCL.g:1530:1: ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) )
// InternalCompleteOCL.g:1531:1: (lv_ownedParameters_1_0= ruleTypeParameterCS )
{
// InternalCompleteOCL.g:1531:1: (lv_ownedParameters_1_0= ruleTypeParameterCS )
// InternalCompleteOCL.g:1532:3: lv_ownedParameters_1_0= ruleTypeParameterCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_1_0());
}
pushFollow(FollowSets000.FOLLOW_18);
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();
}
}
}
// InternalCompleteOCL.g:1548:2: (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )*
loop35:
do {
int alt35=2;
int LA35_0 = input.LA(1);
if ( (LA35_0==26) ) {
alt35=1;
}
switch (alt35) {
case 1 :
// InternalCompleteOCL.g:1548:4: otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) )
{
otherlv_2=(Token)match(input,26,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_0_2_0());
}
// InternalCompleteOCL.g:1552:1: ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) )
// InternalCompleteOCL.g:1553:1: (lv_ownedParameters_3_0= ruleTypeParameterCS )
{
// InternalCompleteOCL.g:1553:1: (lv_ownedParameters_3_0= ruleTypeParameterCS )
// InternalCompleteOCL.g:1554:3: lv_ownedParameters_3_0= ruleTypeParameterCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_2_1_0());
}
pushFollow(FollowSets000.FOLLOW_18);
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 loop35;
}
} while (true);
otherlv_4=(Token)match(input,22,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_0_3());
}
}
}
break;
case 2 :
// InternalCompleteOCL.g:1575:6: (otherlv_5= '<' ( (lv_ownedParameters_6_0= ruleTypeParameterCS ) ) (otherlv_7= ',' ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) ) )* otherlv_9= '>' )
{
// InternalCompleteOCL.g:1575:6: (otherlv_5= '<' ( (lv_ownedParameters_6_0= ruleTypeParameterCS ) ) (otherlv_7= ',' ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) ) )* otherlv_9= '>' )
// InternalCompleteOCL.g:1575:8: otherlv_5= '<' ( (lv_ownedParameters_6_0= ruleTypeParameterCS ) ) (otherlv_7= ',' ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) ) )* otherlv_9= '>'
{
otherlv_5=(Token)match(input,39,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_5, grammarAccess.getTemplateSignatureCSAccess().getLessThanSignKeyword_1_0());
}
// InternalCompleteOCL.g:1579:1: ( (lv_ownedParameters_6_0= ruleTypeParameterCS ) )
// InternalCompleteOCL.g:1580:1: (lv_ownedParameters_6_0= ruleTypeParameterCS )
{
// InternalCompleteOCL.g:1580:1: (lv_ownedParameters_6_0= ruleTypeParameterCS )
// InternalCompleteOCL.g:1581:3: lv_ownedParameters_6_0= ruleTypeParameterCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_30);
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();
}
}
}
// InternalCompleteOCL.g:1597:2: (otherlv_7= ',' ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) ) )*
loop36:
do {
int alt36=2;
int LA36_0 = input.LA(1);
if ( (LA36_0==26) ) {
alt36=1;
}
switch (alt36) {
case 1 :
// InternalCompleteOCL.g:1597:4: otherlv_7= ',' ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) )
{
otherlv_7=(Token)match(input,26,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_7, grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_1_2_0());
}
// InternalCompleteOCL.g:1601:1: ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) )
// InternalCompleteOCL.g:1602:1: (lv_ownedParameters_8_0= ruleTypeParameterCS )
{
// InternalCompleteOCL.g:1602:1: (lv_ownedParameters_8_0= ruleTypeParameterCS )
// InternalCompleteOCL.g:1603:3: lv_ownedParameters_8_0= ruleTypeParameterCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0());
}
pushFollow(FollowSets000.FOLLOW_30);
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 loop36;
}
} while (true);
otherlv_9=(Token)match(input,40,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"
// InternalCompleteOCL.g:1631:1: entryRuleTypedRefCS returns [EObject current=null] : iv_ruleTypedRefCS= ruleTypedRefCS EOF ;
public final EObject entryRuleTypedRefCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleTypedRefCS = null;
try {
// InternalCompleteOCL.g:1632:2: (iv_ruleTypedRefCS= ruleTypedRefCS EOF )
// InternalCompleteOCL.g:1633: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"
// InternalCompleteOCL.g:1640: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 {
// InternalCompleteOCL.g:1643:28: ( (this_TypeLiteralCS_0= ruleTypeLiteralCS | this_TypedTypeRefCS_1= ruleTypedTypeRefCS ) )
// InternalCompleteOCL.g:1644:1: (this_TypeLiteralCS_0= ruleTypeLiteralCS | this_TypedTypeRefCS_1= ruleTypedTypeRefCS )
{
// InternalCompleteOCL.g:1644:1: (this_TypeLiteralCS_0= ruleTypeLiteralCS | this_TypedTypeRefCS_1= ruleTypedTypeRefCS )
int alt38=2;
int LA38_0 = input.LA(1);
if ( ((LA38_0>=42 && LA38_0<=51)||(LA38_0>=73 && LA38_0<=74)||(LA38_0>=76 && LA38_0<=80)) ) {
alt38=1;
}
else if ( ((LA38_0>=RULE_SIMPLE_ID && LA38_0<=RULE_ESCAPED_ID)||(LA38_0>=28 && LA38_0<=30)) ) {
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 :
// InternalCompleteOCL.g:1645: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 :
// InternalCompleteOCL.g:1658: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 "entryRuleUnrestrictedName"
// InternalCompleteOCL.g:1677:1: entryRuleUnrestrictedName returns [String current=null] : iv_ruleUnrestrictedName= ruleUnrestrictedName EOF ;
public final String entryRuleUnrestrictedName() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleUnrestrictedName = null;
try {
// InternalCompleteOCL.g:1678:2: (iv_ruleUnrestrictedName= ruleUnrestrictedName EOF )
// InternalCompleteOCL.g:1679: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"
// InternalCompleteOCL.g:1686:1: ruleUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_EssentialOCLUnrestrictedName_0= ruleEssentialOCLUnrestrictedName | kw= 'import' | kw= 'include' | kw= 'library' ) ;
public final AntlrDatatypeRuleToken ruleUnrestrictedName() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
Token kw=null;
AntlrDatatypeRuleToken this_EssentialOCLUnrestrictedName_0 = null;
enterRule();
try {
// InternalCompleteOCL.g:1689:28: ( (this_EssentialOCLUnrestrictedName_0= ruleEssentialOCLUnrestrictedName | kw= 'import' | kw= 'include' | kw= 'library' ) )
// InternalCompleteOCL.g:1690:1: (this_EssentialOCLUnrestrictedName_0= ruleEssentialOCLUnrestrictedName | kw= 'import' | kw= 'include' | kw= 'library' )
{
// InternalCompleteOCL.g:1690:1: (this_EssentialOCLUnrestrictedName_0= ruleEssentialOCLUnrestrictedName | kw= 'import' | kw= 'include' | kw= 'library' )
int alt39=4;
switch ( input.LA(1) ) {
case RULE_SIMPLE_ID:
case RULE_ESCAPED_ID:
{
alt39=1;
}
break;
case 28:
{
alt39=2;
}
break;
case 29:
{
alt39=3;
}
break;
case 30:
{
alt39=4;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 39, 0, input);
throw nvae;
}
switch (alt39) {
case 1 :
// InternalCompleteOCL.g:1691:5: this_EssentialOCLUnrestrictedName_0= ruleEssentialOCLUnrestrictedName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getUnrestrictedNameAccess().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 :
// InternalCompleteOCL.g:1703:2: kw= 'import'
{
kw=(Token)match(input,28,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getImportKeyword_1());
}
}
break;
case 3 :
// InternalCompleteOCL.g:1710:2: kw= 'include'
{
kw=(Token)match(input,29,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getIncludeKeyword_2());
}
}
break;
case 4 :
// InternalCompleteOCL.g:1717:2: kw= 'library'
{
kw=(Token)match(input,30,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getLibraryKeyword_3());
}
}
break;
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleUnrestrictedName"
// $ANTLR start "entryRuleNavigatingArgExpCS"
// InternalCompleteOCL.g:1730:1: entryRuleNavigatingArgExpCS returns [EObject current=null] : iv_ruleNavigatingArgExpCS= ruleNavigatingArgExpCS EOF ;
public final EObject entryRuleNavigatingArgExpCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleNavigatingArgExpCS = null;
try {
// InternalCompleteOCL.g:1731:2: (iv_ruleNavigatingArgExpCS= ruleNavigatingArgExpCS EOF )
// InternalCompleteOCL.g:1732: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"
// InternalCompleteOCL.g:1739:1: ruleNavigatingArgExpCS returns [EObject current=null] : ( ( () otherlv_1= '?' ) | this_ExpCS_2= ruleExpCS ) ;
public final EObject ruleNavigatingArgExpCS() throws RecognitionException {
EObject current = null;
Token otherlv_1=null;
EObject this_ExpCS_2 = null;
enterRule();
try {
// InternalCompleteOCL.g:1742:28: ( ( ( () otherlv_1= '?' ) | this_ExpCS_2= ruleExpCS ) )
// InternalCompleteOCL.g:1743:1: ( ( () otherlv_1= '?' ) | this_ExpCS_2= ruleExpCS )
{
// InternalCompleteOCL.g:1743:1: ( ( () otherlv_1= '?' ) | this_ExpCS_2= ruleExpCS )
int alt40=2;
int LA40_0 = input.LA(1);
if ( (LA40_0==41) ) {
alt40=1;
}
else if ( ((LA40_0>=RULE_SIMPLE_ID && LA40_0<=RULE_SINGLE_QUOTED_STRING)||LA40_0==21||(LA40_0>=28 && LA40_0<=30)||(LA40_0>=42 && LA40_0<=55)||(LA40_0>=73 && LA40_0<=74)||(LA40_0>=76 && LA40_0<=80)||LA40_0==85||(LA40_0>=88 && LA40_0<=91)||LA40_0==98||(LA40_0>=103 && LA40_0<=104)) ) {
alt40=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 40, 0, input);
throw nvae;
}
switch (alt40) {
case 1 :
// InternalCompleteOCL.g:1743:2: ( () otherlv_1= '?' )
{
// InternalCompleteOCL.g:1743:2: ( () otherlv_1= '?' )
// InternalCompleteOCL.g:1743:3: () otherlv_1= '?'
{
// InternalCompleteOCL.g:1743:3: ()
// InternalCompleteOCL.g:1744:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElement(
grammarAccess.getNavigatingArgExpCSAccess().getOCLMessageArgCSAction_0_0(),
current);
}
}
otherlv_1=(Token)match(input,41,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getNavigatingArgExpCSAccess().getQuestionMarkKeyword_0_1());
}
}
}
break;
case 2 :
// InternalCompleteOCL.g:1758:2: this_ExpCS_2= ruleExpCS
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall_1());
}
pushFollow(FollowSets000.FOLLOW_2);
this_ExpCS_2=ruleExpCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_ExpCS_2;
afterParserOrEnumRuleCall();
}
}
break;
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleNavigatingArgExpCS"
// $ANTLR start "entryRuleNavigationOperatorName"
// InternalCompleteOCL.g:1777:1: entryRuleNavigationOperatorName returns [String current=null] : iv_ruleNavigationOperatorName= ruleNavigationOperatorName EOF ;
public final String entryRuleNavigationOperatorName() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleNavigationOperatorName = null;
try {
// InternalCompleteOCL.g:1778:2: (iv_ruleNavigationOperatorName= ruleNavigationOperatorName EOF )
// InternalCompleteOCL.g:1779: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"
// InternalCompleteOCL.g:1786:1: ruleNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_EssentialOCLNavigationOperatorName_0= ruleEssentialOCLNavigationOperatorName | this_CompleteOCLNavigationOperatorName_1= ruleCompleteOCLNavigationOperatorName ) ;
public final AntlrDatatypeRuleToken ruleNavigationOperatorName() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
AntlrDatatypeRuleToken this_EssentialOCLNavigationOperatorName_0 = null;
AntlrDatatypeRuleToken this_CompleteOCLNavigationOperatorName_1 = null;
enterRule();
try {
// InternalCompleteOCL.g:1789:28: ( (this_EssentialOCLNavigationOperatorName_0= ruleEssentialOCLNavigationOperatorName | this_CompleteOCLNavigationOperatorName_1= ruleCompleteOCLNavigationOperatorName ) )
// InternalCompleteOCL.g:1790:1: (this_EssentialOCLNavigationOperatorName_0= ruleEssentialOCLNavigationOperatorName | this_CompleteOCLNavigationOperatorName_1= ruleCompleteOCLNavigationOperatorName )
{
// InternalCompleteOCL.g:1790:1: (this_EssentialOCLNavigationOperatorName_0= ruleEssentialOCLNavigationOperatorName | this_CompleteOCLNavigationOperatorName_1= ruleCompleteOCLNavigationOperatorName )
int alt41=2;
int LA41_0 = input.LA(1);
if ( ((LA41_0>=69 && LA41_0<=72)) ) {
alt41=1;
}
else if ( ((LA41_0>=17 && LA41_0<=18)) ) {
alt41=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 41, 0, input);
throw nvae;
}
switch (alt41) {
case 1 :
// InternalCompleteOCL.g:1791:5: this_EssentialOCLNavigationOperatorName_0= ruleEssentialOCLNavigationOperatorName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall_0());
}
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();
}
}
break;
case 2 :
// InternalCompleteOCL.g:1803:5: this_CompleteOCLNavigationOperatorName_1= ruleCompleteOCLNavigationOperatorName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getCompleteOCLNavigationOperatorNameParserRuleCall_1());
}
pushFollow(FollowSets000.FOLLOW_2);
this_CompleteOCLNavigationOperatorName_1=ruleCompleteOCLNavigationOperatorName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_CompleteOCLNavigationOperatorName_1);
}
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
break;
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleNavigationOperatorName"
// $ANTLR start "entryRulePrimitiveTypeIdentifier"
// InternalCompleteOCL.g:1821:1: entryRulePrimitiveTypeIdentifier returns [String current=null] : iv_rulePrimitiveTypeIdentifier= rulePrimitiveTypeIdentifier EOF ;
public final String entryRulePrimitiveTypeIdentifier() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_rulePrimitiveTypeIdentifier = null;
try {
// InternalCompleteOCL.g:1822:2: (iv_rulePrimitiveTypeIdentifier= rulePrimitiveTypeIdentifier EOF )
// InternalCompleteOCL.g:1823: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"
// InternalCompleteOCL.g:1830:1: rulePrimitiveTypeIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (kw= 'Boolean' | kw= 'Integer' | kw= 'Real' | kw= 'String' | kw= 'UnlimitedNatural' | kw= 'OclAny' | kw= 'OclInvalid' | kw= 'OclMessage' | kw= 'OclState' | kw= 'OclVoid' ) ;
public final AntlrDatatypeRuleToken rulePrimitiveTypeIdentifier() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
Token kw=null;
enterRule();
try {
// InternalCompleteOCL.g:1833:28: ( (kw= 'Boolean' | kw= 'Integer' | kw= 'Real' | kw= 'String' | kw= 'UnlimitedNatural' | kw= 'OclAny' | kw= 'OclInvalid' | kw= 'OclMessage' | kw= 'OclState' | kw= 'OclVoid' ) )
// InternalCompleteOCL.g:1834:1: (kw= 'Boolean' | kw= 'Integer' | kw= 'Real' | kw= 'String' | kw= 'UnlimitedNatural' | kw= 'OclAny' | kw= 'OclInvalid' | kw= 'OclMessage' | kw= 'OclState' | kw= 'OclVoid' )
{
// InternalCompleteOCL.g:1834:1: (kw= 'Boolean' | kw= 'Integer' | kw= 'Real' | kw= 'String' | kw= 'UnlimitedNatural' | kw= 'OclAny' | kw= 'OclInvalid' | kw= 'OclMessage' | kw= 'OclState' | kw= 'OclVoid' )
int alt42=10;
switch ( input.LA(1) ) {
case 42:
{
alt42=1;
}
break;
case 43:
{
alt42=2;
}
break;
case 44:
{
alt42=3;
}
break;
case 45:
{
alt42=4;
}
break;
case 46:
{
alt42=5;
}
break;
case 47:
{
alt42=6;
}
break;
case 48:
{
alt42=7;
}
break;
case 49:
{
alt42=8;
}
break;
case 50:
{
alt42=9;
}
break;
case 51:
{
alt42=10;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 42, 0, input);
throw nvae;
}
switch (alt42) {
case 1 :
// InternalCompleteOCL.g:1835:2: kw= 'Boolean'
{
kw=(Token)match(input,42,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0());
}
}
break;
case 2 :
// InternalCompleteOCL.g:1842:2: kw= 'Integer'
{
kw=(Token)match(input,43,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1());
}
}
break;
case 3 :
// InternalCompleteOCL.g:1849:2: kw= 'Real'
{
kw=(Token)match(input,44,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2());
}
}
break;
case 4 :
// InternalCompleteOCL.g:1856:2: kw= 'String'
{
kw=(Token)match(input,45,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3());
}
}
break;
case 5 :
// InternalCompleteOCL.g:1863:2: kw= 'UnlimitedNatural'
{
kw=(Token)match(input,46,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4());
}
}
break;
case 6 :
// InternalCompleteOCL.g:1870:2: kw= 'OclAny'
{
kw=(Token)match(input,47,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5());
}
}
break;
case 7 :
// InternalCompleteOCL.g:1877:2: kw= 'OclInvalid'
{
kw=(Token)match(input,48,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6());
}
}
break;
case 8 :
// InternalCompleteOCL.g:1884:2: kw= 'OclMessage'
{
kw=(Token)match(input,49,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclMessageKeyword_7());
}
}
break;
case 9 :
// InternalCompleteOCL.g:1891:2: kw= 'OclState'
{
kw=(Token)match(input,50,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclStateKeyword_8());
}
}
break;
case 10 :
// InternalCompleteOCL.g:1898:2: kw= 'OclVoid'
{
kw=(Token)match(input,51,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_9());
}
}
break;
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "rulePrimitiveTypeIdentifier"
// $ANTLR start "entryRuleEssentialOCLUnaryOperatorName"
// InternalCompleteOCL.g:1915:1: entryRuleEssentialOCLUnaryOperatorName returns [String current=null] : iv_ruleEssentialOCLUnaryOperatorName= ruleEssentialOCLUnaryOperatorName EOF ;
public final String entryRuleEssentialOCLUnaryOperatorName() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleEssentialOCLUnaryOperatorName = null;
try {
// InternalCompleteOCL.g:1916:2: (iv_ruleEssentialOCLUnaryOperatorName= ruleEssentialOCLUnaryOperatorName EOF )
// InternalCompleteOCL.g:1917: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"
// InternalCompleteOCL.g:1924:1: ruleEssentialOCLUnaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (kw= '-' | kw= 'not' | kw= 'not2' ) ;
public final AntlrDatatypeRuleToken ruleEssentialOCLUnaryOperatorName() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
Token kw=null;
enterRule();
try {
// InternalCompleteOCL.g:1927:28: ( (kw= '-' | kw= 'not' | kw= 'not2' ) )
// InternalCompleteOCL.g:1928:1: (kw= '-' | kw= 'not' | kw= 'not2' )
{
// InternalCompleteOCL.g:1928:1: (kw= '-' | kw= 'not' | kw= 'not2' )
int alt43=3;
switch ( input.LA(1) ) {
case 52:
{
alt43=1;
}
break;
case 53:
{
alt43=2;
}
break;
case 54:
{
alt43=3;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 43, 0, input);
throw nvae;
}
switch (alt43) {
case 1 :
// InternalCompleteOCL.g:1929:2: kw= '-'
{
kw=(Token)match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0());
}
}
break;
case 2 :
// InternalCompleteOCL.g:1936:2: kw= 'not'
{
kw=(Token)match(input,53,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1());
}
}
break;
case 3 :
// InternalCompleteOCL.g:1943:2: kw= 'not2'
{
kw=(Token)match(input,54,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNot2Keyword_2());
}
}
break;
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEssentialOCLUnaryOperatorName"
// $ANTLR start "entryRuleEssentialOCLInfixOperatorName"
// InternalCompleteOCL.g:1956:1: entryRuleEssentialOCLInfixOperatorName returns [String current=null] : iv_ruleEssentialOCLInfixOperatorName= ruleEssentialOCLInfixOperatorName EOF ;
public final String entryRuleEssentialOCLInfixOperatorName() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleEssentialOCLInfixOperatorName = null;
try {
// InternalCompleteOCL.g:1957:2: (iv_ruleEssentialOCLInfixOperatorName= ruleEssentialOCLInfixOperatorName EOF )
// InternalCompleteOCL.g:1958: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"
// InternalCompleteOCL.g:1965:1: ruleEssentialOCLInfixOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (kw= '*' | kw= '/' | kw= '+' | kw= '-' | kw= '>' | kw= '<' | kw= '>=' | kw= '<=' | kw= '=' | kw= '<>' | kw= 'and' | kw= 'and2' | kw= 'implies' | kw= 'implies2' | kw= 'or' | kw= 'or2' | kw= 'xor' | kw= 'xor2' ) ;
public final AntlrDatatypeRuleToken ruleEssentialOCLInfixOperatorName() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
Token kw=null;
enterRule();
try {
// InternalCompleteOCL.g:1968:28: ( (kw= '*' | kw= '/' | kw= '+' | kw= '-' | kw= '>' | kw= '<' | kw= '>=' | kw= '<=' | kw= '=' | kw= '<>' | kw= 'and' | kw= 'and2' | kw= 'implies' | kw= 'implies2' | kw= 'or' | kw= 'or2' | kw= 'xor' | kw= 'xor2' ) )
// InternalCompleteOCL.g:1969:1: (kw= '*' | kw= '/' | kw= '+' | kw= '-' | kw= '>' | kw= '<' | kw= '>=' | kw= '<=' | kw= '=' | kw= '<>' | kw= 'and' | kw= 'and2' | kw= 'implies' | kw= 'implies2' | kw= 'or' | kw= 'or2' | kw= 'xor' | kw= 'xor2' )
{
// InternalCompleteOCL.g:1969:1: (kw= '*' | kw= '/' | kw= '+' | kw= '-' | kw= '>' | kw= '<' | kw= '>=' | kw= '<=' | kw= '=' | kw= '<>' | kw= 'and' | kw= 'and2' | kw= 'implies' | kw= 'implies2' | kw= 'or' | kw= 'or2' | kw= 'xor' | kw= 'xor2' )
int alt44=18;
switch ( input.LA(1) ) {
case 55:
{
alt44=1;
}
break;
case 56:
{
alt44=2;
}
break;
case 57:
{
alt44=3;
}
break;
case 52:
{
alt44=4;
}
break;
case 40:
{
alt44=5;
}
break;
case 39:
{
alt44=6;
}
break;
case 58:
{
alt44=7;
}
break;
case 59:
{
alt44=8;
}
break;
case 27:
{
alt44=9;
}
break;
case 60:
{
alt44=10;
}
break;
case 61:
{
alt44=11;
}
break;
case 62:
{
alt44=12;
}
break;
case 63:
{
alt44=13;
}
break;
case 64:
{
alt44=14;
}
break;
case 65:
{
alt44=15;
}
break;
case 66:
{
alt44=16;
}
break;
case 67:
{
alt44=17;
}
break;
case 68:
{
alt44=18;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 44, 0, input);
throw nvae;
}
switch (alt44) {
case 1 :
// InternalCompleteOCL.g:1970:2: kw= '*'
{
kw=(Token)match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0());
}
}
break;
case 2 :
// InternalCompleteOCL.g:1977:2: kw= '/'
{
kw=(Token)match(input,56,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1());
}
}
break;
case 3 :
// InternalCompleteOCL.g:1984:2: kw= '+'
{
kw=(Token)match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2());
}
}
break;
case 4 :
// InternalCompleteOCL.g:1991:2: kw= '-'
{
kw=(Token)match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3());
}
}
break;
case 5 :
// InternalCompleteOCL.g:1998:2: kw= '>'
{
kw=(Token)match(input,40,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4());
}
}
break;
case 6 :
// InternalCompleteOCL.g:2005:2: kw= '<'
{
kw=(Token)match(input,39,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5());
}
}
break;
case 7 :
// InternalCompleteOCL.g:2012:2: kw= '>='
{
kw=(Token)match(input,58,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6());
}
}
break;
case 8 :
// InternalCompleteOCL.g:2019:2: kw= '<='
{
kw=(Token)match(input,59,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7());
}
}
break;
case 9 :
// InternalCompleteOCL.g:2026:2: kw= '='
{
kw=(Token)match(input,27,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8());
}
}
break;
case 10 :
// InternalCompleteOCL.g:2033:2: kw= '<>'
{
kw=(Token)match(input,60,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9());
}
}
break;
case 11 :
// InternalCompleteOCL.g:2040:2: kw= 'and'
{
kw=(Token)match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10());
}
}
break;
case 12 :
// InternalCompleteOCL.g:2047:2: kw= 'and2'
{
kw=(Token)match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAnd2Keyword_11());
}
}
break;
case 13 :
// InternalCompleteOCL.g:2054:2: kw= 'implies'
{
kw=(Token)match(input,63,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_12());
}
}
break;
case 14 :
// InternalCompleteOCL.g:2061:2: kw= 'implies2'
{
kw=(Token)match(input,64,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImplies2Keyword_13());
}
}
break;
case 15 :
// InternalCompleteOCL.g:2068:2: kw= 'or'
{
kw=(Token)match(input,65,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_14());
}
}
break;
case 16 :
// InternalCompleteOCL.g:2075:2: kw= 'or2'
{
kw=(Token)match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOr2Keyword_15());
}
}
break;
case 17 :
// InternalCompleteOCL.g:2082:2: kw= 'xor'
{
kw=(Token)match(input,67,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_16());
}
}
break;
case 18 :
// InternalCompleteOCL.g:2089:2: kw= 'xor2'
{
kw=(Token)match(input,68,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXor2Keyword_17());
}
}
break;
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEssentialOCLInfixOperatorName"
// $ANTLR start "entryRuleEssentialOCLNavigationOperatorName"
// InternalCompleteOCL.g:2102:1: entryRuleEssentialOCLNavigationOperatorName returns [String current=null] : iv_ruleEssentialOCLNavigationOperatorName= ruleEssentialOCLNavigationOperatorName EOF ;
public final String entryRuleEssentialOCLNavigationOperatorName() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleEssentialOCLNavigationOperatorName = null;
try {
// InternalCompleteOCL.g:2103:2: (iv_ruleEssentialOCLNavigationOperatorName= ruleEssentialOCLNavigationOperatorName EOF )
// InternalCompleteOCL.g:2104: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"
// InternalCompleteOCL.g:2111: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 {
// InternalCompleteOCL.g:2114:28: ( (kw= '.' | kw= '->' | kw= '?.' | kw= '?->' ) )
// InternalCompleteOCL.g:2115:1: (kw= '.' | kw= '->' | kw= '?.' | kw= '?->' )
{
// InternalCompleteOCL.g:2115:1: (kw= '.' | kw= '->' | kw= '?.' | kw= '?->' )
int alt45=4;
switch ( input.LA(1) ) {
case 69:
{
alt45=1;
}
break;
case 70:
{
alt45=2;
}
break;
case 71:
{
alt45=3;
}
break;
case 72:
{
alt45=4;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 45, 0, input);
throw nvae;
}
switch (alt45) {
case 1 :
// InternalCompleteOCL.g:2116:2: kw= '.'
{
kw=(Token)match(input,69,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0());
}
}
break;
case 2 :
// InternalCompleteOCL.g:2123:2: kw= '->'
{
kw=(Token)match(input,70,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1());
}
}
break;
case 3 :
// InternalCompleteOCL.g:2130:2: kw= '?.'
{
kw=(Token)match(input,71,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2());
}
}
break;
case 4 :
// InternalCompleteOCL.g:2137:2: kw= '?->'
{
kw=(Token)match(input,72,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"
// InternalCompleteOCL.g:2150:1: entryRuleBinaryOperatorName returns [String current=null] : iv_ruleBinaryOperatorName= ruleBinaryOperatorName EOF ;
public final String entryRuleBinaryOperatorName() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleBinaryOperatorName = null;
try {
// InternalCompleteOCL.g:2151:2: (iv_ruleBinaryOperatorName= ruleBinaryOperatorName EOF )
// InternalCompleteOCL.g:2152: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"
// InternalCompleteOCL.g:2159: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 {
// InternalCompleteOCL.g:2162:28: ( (this_InfixOperatorName_0= ruleInfixOperatorName | this_NavigationOperatorName_1= ruleNavigationOperatorName ) )
// InternalCompleteOCL.g:2163:1: (this_InfixOperatorName_0= ruleInfixOperatorName | this_NavigationOperatorName_1= ruleNavigationOperatorName )
{
// InternalCompleteOCL.g:2163:1: (this_InfixOperatorName_0= ruleInfixOperatorName | this_NavigationOperatorName_1= ruleNavigationOperatorName )
int alt46=2;
int LA46_0 = input.LA(1);
if ( (LA46_0==27||(LA46_0>=39 && LA46_0<=40)||LA46_0==52||(LA46_0>=55 && LA46_0<=68)) ) {
alt46=1;
}
else if ( ((LA46_0>=17 && LA46_0<=18)||(LA46_0>=69 && LA46_0<=72)) ) {
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 :
// InternalCompleteOCL.g:2164: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 :
// InternalCompleteOCL.g:2176: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"
// InternalCompleteOCL.g:2194:1: entryRuleInfixOperatorName returns [String current=null] : iv_ruleInfixOperatorName= ruleInfixOperatorName EOF ;
public final String entryRuleInfixOperatorName() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleInfixOperatorName = null;
try {
// InternalCompleteOCL.g:2195:2: (iv_ruleInfixOperatorName= ruleInfixOperatorName EOF )
// InternalCompleteOCL.g:2196: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"
// InternalCompleteOCL.g:2203: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 {
// InternalCompleteOCL.g:2206:28: (this_EssentialOCLInfixOperatorName_0= ruleEssentialOCLInfixOperatorName )
// InternalCompleteOCL.g:2208: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 "entryRuleUnaryOperatorName"
// InternalCompleteOCL.g:2226:1: entryRuleUnaryOperatorName returns [String current=null] : iv_ruleUnaryOperatorName= ruleUnaryOperatorName EOF ;
public final String entryRuleUnaryOperatorName() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleUnaryOperatorName = null;
try {
// InternalCompleteOCL.g:2227:2: (iv_ruleUnaryOperatorName= ruleUnaryOperatorName EOF )
// InternalCompleteOCL.g:2228: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"
// InternalCompleteOCL.g:2235: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 {
// InternalCompleteOCL.g:2238:28: (this_EssentialOCLUnaryOperatorName_0= ruleEssentialOCLUnaryOperatorName )
// InternalCompleteOCL.g:2240: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"
// InternalCompleteOCL.g:2258:1: entryRuleEssentialOCLUnrestrictedName returns [String current=null] : iv_ruleEssentialOCLUnrestrictedName= ruleEssentialOCLUnrestrictedName EOF ;
public final String entryRuleEssentialOCLUnrestrictedName() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleEssentialOCLUnrestrictedName = null;
try {
// InternalCompleteOCL.g:2259:2: (iv_ruleEssentialOCLUnrestrictedName= ruleEssentialOCLUnrestrictedName EOF )
// InternalCompleteOCL.g:2260: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"
// InternalCompleteOCL.g:2267: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 {
// InternalCompleteOCL.g:2270:28: (this_Identifier_0= ruleIdentifier )
// InternalCompleteOCL.g:2272: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"
// InternalCompleteOCL.g:2290:1: entryRuleEssentialOCLUnreservedName returns [String current=null] : iv_ruleEssentialOCLUnreservedName= ruleEssentialOCLUnreservedName EOF ;
public final String entryRuleEssentialOCLUnreservedName() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleEssentialOCLUnreservedName = null;
try {
// InternalCompleteOCL.g:2291:2: (iv_ruleEssentialOCLUnreservedName= ruleEssentialOCLUnreservedName EOF )
// InternalCompleteOCL.g:2292: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"
// InternalCompleteOCL.g:2299: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 {
// InternalCompleteOCL.g:2302:28: ( (this_UnrestrictedName_0= ruleUnrestrictedName | this_CollectionTypeIdentifier_1= ruleCollectionTypeIdentifier | this_PrimitiveTypeIdentifier_2= rulePrimitiveTypeIdentifier | kw= 'Map' | kw= 'Tuple' ) )
// InternalCompleteOCL.g:2303:1: (this_UnrestrictedName_0= ruleUnrestrictedName | this_CollectionTypeIdentifier_1= ruleCollectionTypeIdentifier | this_PrimitiveTypeIdentifier_2= rulePrimitiveTypeIdentifier | kw= 'Map' | kw= 'Tuple' )
{
// InternalCompleteOCL.g:2303:1: (this_UnrestrictedName_0= ruleUnrestrictedName | this_CollectionTypeIdentifier_1= ruleCollectionTypeIdentifier | this_PrimitiveTypeIdentifier_2= rulePrimitiveTypeIdentifier | kw= 'Map' | kw= 'Tuple' )
int alt47=5;
switch ( input.LA(1) ) {
case RULE_SIMPLE_ID:
case RULE_ESCAPED_ID:
case 28:
case 29:
case 30:
{
alt47=1;
}
break;
case 76:
case 77:
case 78:
case 79:
case 80:
{
alt47=2;
}
break;
case 42:
case 43:
case 44:
case 45:
case 46:
case 47:
case 48:
case 49:
case 50:
case 51:
{
alt47=3;
}
break;
case 73:
{
alt47=4;
}
break;
case 74:
{
alt47=5;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 47, 0, input);
throw nvae;
}
switch (alt47) {
case 1 :
// InternalCompleteOCL.g:2304: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 :
// InternalCompleteOCL.g:2316: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 :
// InternalCompleteOCL.g:2328: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 :
// InternalCompleteOCL.g:2340:2: kw= 'Map'
{
kw=(Token)match(input,73,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3());
}
}
break;
case 5 :
// InternalCompleteOCL.g:2347:2: kw= 'Tuple'
{
kw=(Token)match(input,74,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"
// InternalCompleteOCL.g:2360:1: entryRuleUnreservedName returns [String current=null] : iv_ruleUnreservedName= ruleUnreservedName EOF ;
public final String entryRuleUnreservedName() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleUnreservedName = null;
try {
// InternalCompleteOCL.g:2361:2: (iv_ruleUnreservedName= ruleUnreservedName EOF )
// InternalCompleteOCL.g:2362: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"
// InternalCompleteOCL.g:2369: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 {
// InternalCompleteOCL.g:2372:28: (this_EssentialOCLUnreservedName_0= ruleEssentialOCLUnreservedName )
// InternalCompleteOCL.g:2374: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"
// InternalCompleteOCL.g:2392:1: entryRuleURIPathNameCS returns [EObject current=null] : iv_ruleURIPathNameCS= ruleURIPathNameCS EOF ;
public final EObject entryRuleURIPathNameCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleURIPathNameCS = null;
try {
// InternalCompleteOCL.g:2393:2: (iv_ruleURIPathNameCS= ruleURIPathNameCS EOF )
// InternalCompleteOCL.g:2394: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"
// InternalCompleteOCL.g:2401: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 {
// InternalCompleteOCL.g:2404:28: ( ( ( (lv_ownedPathElements_0_0= ruleURIFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) )
// InternalCompleteOCL.g:2405:1: ( ( (lv_ownedPathElements_0_0= ruleURIFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* )
{
// InternalCompleteOCL.g:2405:1: ( ( (lv_ownedPathElements_0_0= ruleURIFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* )
// InternalCompleteOCL.g:2405:2: ( (lv_ownedPathElements_0_0= ruleURIFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )*
{
// InternalCompleteOCL.g:2405:2: ( (lv_ownedPathElements_0_0= ruleURIFirstPathElementCS ) )
// InternalCompleteOCL.g:2406:1: (lv_ownedPathElements_0_0= ruleURIFirstPathElementCS )
{
// InternalCompleteOCL.g:2406:1: (lv_ownedPathElements_0_0= ruleURIFirstPathElementCS )
// InternalCompleteOCL.g:2407:3: lv_ownedPathElements_0_0= ruleURIFirstPathElementCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0());
}
pushFollow(FollowSets000.FOLLOW_31);
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();
}
}
}
// InternalCompleteOCL.g:2423:2: (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )*
loop48:
do {
int alt48=2;
int LA48_0 = input.LA(1);
if ( (LA48_0==75) ) {
alt48=1;
}
switch (alt48) {
case 1 :
// InternalCompleteOCL.g:2423:4: otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) )
{
otherlv_1=(Token)match(input,75,FollowSets000.FOLLOW_5); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0());
}
// InternalCompleteOCL.g:2427:1: ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) )
// InternalCompleteOCL.g:2428:1: (lv_ownedPathElements_2_0= ruleNextPathElementCS )
{
// InternalCompleteOCL.g:2428:1: (lv_ownedPathElements_2_0= ruleNextPathElementCS )
// InternalCompleteOCL.g:2429:3: lv_ownedPathElements_2_0= ruleNextPathElementCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_31);
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 loop48;
}
} while (true);
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleURIPathNameCS"
// $ANTLR start "entryRuleURIFirstPathElementCS"
// InternalCompleteOCL.g:2453:1: entryRuleURIFirstPathElementCS returns [EObject current=null] : iv_ruleURIFirstPathElementCS= ruleURIFirstPathElementCS EOF ;
public final EObject entryRuleURIFirstPathElementCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleURIFirstPathElementCS = null;
try {
// InternalCompleteOCL.g:2454:2: (iv_ruleURIFirstPathElementCS= ruleURIFirstPathElementCS EOF )
// InternalCompleteOCL.g:2455: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"
// InternalCompleteOCL.g:2462:1: ruleURIFirstPathElementCS returns [EObject current=null] : ( ( ( ruleUnrestrictedName ) ) | ( () ( ( ruleURI ) ) ) ) ;
public final EObject ruleURIFirstPathElementCS() throws RecognitionException {
EObject current = null;
enterRule();
try {
// InternalCompleteOCL.g:2465:28: ( ( ( ( ruleUnrestrictedName ) ) | ( () ( ( ruleURI ) ) ) ) )
// InternalCompleteOCL.g:2466:1: ( ( ( ruleUnrestrictedName ) ) | ( () ( ( ruleURI ) ) ) )
{
// InternalCompleteOCL.g:2466:1: ( ( ( ruleUnrestrictedName ) ) | ( () ( ( ruleURI ) ) ) )
int alt49=2;
int LA49_0 = input.LA(1);
if ( ((LA49_0>=RULE_SIMPLE_ID && LA49_0<=RULE_ESCAPED_ID)||(LA49_0>=28 && LA49_0<=30)) ) {
alt49=1;
}
else if ( (LA49_0==RULE_SINGLE_QUOTED_STRING) ) {
alt49=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 49, 0, input);
throw nvae;
}
switch (alt49) {
case 1 :
// InternalCompleteOCL.g:2466:2: ( ( ruleUnrestrictedName ) )
{
// InternalCompleteOCL.g:2466:2: ( ( ruleUnrestrictedName ) )
// InternalCompleteOCL.g:2467:1: ( ruleUnrestrictedName )
{
// InternalCompleteOCL.g:2467:1: ( ruleUnrestrictedName )
// InternalCompleteOCL.g:2468: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 :
// InternalCompleteOCL.g:2485:6: ( () ( ( ruleURI ) ) )
{
// InternalCompleteOCL.g:2485:6: ( () ( ( ruleURI ) ) )
// InternalCompleteOCL.g:2485:7: () ( ( ruleURI ) )
{
// InternalCompleteOCL.g:2485:7: ()
// InternalCompleteOCL.g:2486:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElement(
grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0(),
current);
}
}
// InternalCompleteOCL.g:2494:2: ( ( ruleURI ) )
// InternalCompleteOCL.g:2495:1: ( ruleURI )
{
// InternalCompleteOCL.g:2495:1: ( ruleURI )
// InternalCompleteOCL.g:2496: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 "entryRulePrimitiveTypeCS"
// InternalCompleteOCL.g:2522:1: entryRulePrimitiveTypeCS returns [EObject current=null] : iv_rulePrimitiveTypeCS= rulePrimitiveTypeCS EOF ;
public final EObject entryRulePrimitiveTypeCS() throws RecognitionException {
EObject current = null;
EObject iv_rulePrimitiveTypeCS = null;
try {
// InternalCompleteOCL.g:2523:2: (iv_rulePrimitiveTypeCS= rulePrimitiveTypeCS EOF )
// InternalCompleteOCL.g:2524: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"
// InternalCompleteOCL.g:2531: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 {
// InternalCompleteOCL.g:2534:28: ( ( (lv_name_0_0= rulePrimitiveTypeIdentifier ) ) )
// InternalCompleteOCL.g:2535:1: ( (lv_name_0_0= rulePrimitiveTypeIdentifier ) )
{
// InternalCompleteOCL.g:2535:1: ( (lv_name_0_0= rulePrimitiveTypeIdentifier ) )
// InternalCompleteOCL.g:2536:1: (lv_name_0_0= rulePrimitiveTypeIdentifier )
{
// InternalCompleteOCL.g:2536:1: (lv_name_0_0= rulePrimitiveTypeIdentifier )
// InternalCompleteOCL.g:2537: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.completeocl.CompleteOCL.PrimitiveTypeIdentifier");
afterParserOrEnumRuleCall();
}
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "rulePrimitiveTypeCS"
// $ANTLR start "entryRuleCollectionTypeIdentifier"
// InternalCompleteOCL.g:2561:1: entryRuleCollectionTypeIdentifier returns [String current=null] : iv_ruleCollectionTypeIdentifier= ruleCollectionTypeIdentifier EOF ;
public final String entryRuleCollectionTypeIdentifier() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleCollectionTypeIdentifier = null;
try {
// InternalCompleteOCL.g:2562:2: (iv_ruleCollectionTypeIdentifier= ruleCollectionTypeIdentifier EOF )
// InternalCompleteOCL.g:2563: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"
// InternalCompleteOCL.g:2570: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 {
// InternalCompleteOCL.g:2573:28: ( (kw= 'Set' | kw= 'Bag' | kw= 'Sequence' | kw= 'Collection' | kw= 'OrderedSet' ) )
// InternalCompleteOCL.g:2574:1: (kw= 'Set' | kw= 'Bag' | kw= 'Sequence' | kw= 'Collection' | kw= 'OrderedSet' )
{
// InternalCompleteOCL.g:2574:1: (kw= 'Set' | kw= 'Bag' | kw= 'Sequence' | kw= 'Collection' | kw= 'OrderedSet' )
int alt50=5;
switch ( input.LA(1) ) {
case 76:
{
alt50=1;
}
break;
case 77:
{
alt50=2;
}
break;
case 78:
{
alt50=3;
}
break;
case 79:
{
alt50=4;
}
break;
case 80:
{
alt50=5;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 50, 0, input);
throw nvae;
}
switch (alt50) {
case 1 :
// InternalCompleteOCL.g:2575:2: kw= 'Set'
{
kw=(Token)match(input,76,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0());
}
}
break;
case 2 :
// InternalCompleteOCL.g:2582:2: kw= 'Bag'
{
kw=(Token)match(input,77,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1());
}
}
break;
case 3 :
// InternalCompleteOCL.g:2589:2: kw= 'Sequence'
{
kw=(Token)match(input,78,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2());
}
}
break;
case 4 :
// InternalCompleteOCL.g:2596:2: kw= 'Collection'
{
kw=(Token)match(input,79,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3());
}
}
break;
case 5 :
// InternalCompleteOCL.g:2603:2: kw= 'OrderedSet'
{
kw=(Token)match(input,80,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"
// InternalCompleteOCL.g:2616:1: entryRuleCollectionTypeCS returns [EObject current=null] : iv_ruleCollectionTypeCS= ruleCollectionTypeCS EOF ;
public final EObject entryRuleCollectionTypeCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleCollectionTypeCS = null;
try {
// InternalCompleteOCL.g:2617:2: (iv_ruleCollectionTypeCS= ruleCollectionTypeCS EOF )
// InternalCompleteOCL.g:2618: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"
// InternalCompleteOCL.g:2625: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 {
// InternalCompleteOCL.g:2628:28: ( ( ( (lv_name_0_0= ruleCollectionTypeIdentifier ) ) (otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS ) ) ( (lv_ownedCollectionMultiplicity_3_0= ruleMultiplicityCS ) )? otherlv_4= ')' )? ) )
// InternalCompleteOCL.g:2629:1: ( ( (lv_name_0_0= ruleCollectionTypeIdentifier ) ) (otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS ) ) ( (lv_ownedCollectionMultiplicity_3_0= ruleMultiplicityCS ) )? otherlv_4= ')' )? )
{
// InternalCompleteOCL.g:2629:1: ( ( (lv_name_0_0= ruleCollectionTypeIdentifier ) ) (otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS ) ) ( (lv_ownedCollectionMultiplicity_3_0= ruleMultiplicityCS ) )? otherlv_4= ')' )? )
// InternalCompleteOCL.g:2629:2: ( (lv_name_0_0= ruleCollectionTypeIdentifier ) ) (otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS ) ) ( (lv_ownedCollectionMultiplicity_3_0= ruleMultiplicityCS ) )? otherlv_4= ')' )?
{
// InternalCompleteOCL.g:2629:2: ( (lv_name_0_0= ruleCollectionTypeIdentifier ) )
// InternalCompleteOCL.g:2630:1: (lv_name_0_0= ruleCollectionTypeIdentifier )
{
// InternalCompleteOCL.g:2630:1: (lv_name_0_0= ruleCollectionTypeIdentifier )
// InternalCompleteOCL.g:2631:3: lv_name_0_0= ruleCollectionTypeIdentifier
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0());
}
pushFollow(FollowSets000.FOLLOW_32);
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();
}
}
}
// InternalCompleteOCL.g:2647:2: (otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS ) ) ( (lv_ownedCollectionMultiplicity_3_0= ruleMultiplicityCS ) )? otherlv_4= ')' )?
int alt52=2;
int LA52_0 = input.LA(1);
if ( (LA52_0==21) ) {
alt52=1;
}
switch (alt52) {
case 1 :
// InternalCompleteOCL.g:2647:4: otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS ) ) ( (lv_ownedCollectionMultiplicity_3_0= ruleMultiplicityCS ) )? otherlv_4= ')'
{
otherlv_1=(Token)match(input,21,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
}
// InternalCompleteOCL.g:2651:1: ( (lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS ) )
// InternalCompleteOCL.g:2652:1: (lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS )
{
// InternalCompleteOCL.g:2652:1: (lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS )
// InternalCompleteOCL.g:2653:3: lv_ownedType_2_0= ruleTypeExpWithoutMultiplicityCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpWithoutMultiplicityCSParserRuleCall_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_33);
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();
}
}
}
// InternalCompleteOCL.g:2669:2: ( (lv_ownedCollectionMultiplicity_3_0= ruleMultiplicityCS ) )?
int alt51=2;
int LA51_0 = input.LA(1);
if ( (LA51_0==93) ) {
alt51=1;
}
switch (alt51) {
case 1 :
// InternalCompleteOCL.g:2670:1: (lv_ownedCollectionMultiplicity_3_0= ruleMultiplicityCS )
{
// InternalCompleteOCL.g:2670:1: (lv_ownedCollectionMultiplicity_3_0= ruleMultiplicityCS )
// InternalCompleteOCL.g:2671: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,22,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"
// InternalCompleteOCL.g:2699:1: entryRuleMapTypeCS returns [EObject current=null] : iv_ruleMapTypeCS= ruleMapTypeCS EOF ;
public final EObject entryRuleMapTypeCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleMapTypeCS = null;
try {
// InternalCompleteOCL.g:2700:2: (iv_ruleMapTypeCS= ruleMapTypeCS EOF )
// InternalCompleteOCL.g:2701: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"
// InternalCompleteOCL.g:2708: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 {
// InternalCompleteOCL.g:2711:28: ( ( ( (lv_name_0_0= 'Map' ) ) (otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')' )? ) )
// InternalCompleteOCL.g:2712:1: ( ( (lv_name_0_0= 'Map' ) ) (otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')' )? )
{
// InternalCompleteOCL.g:2712:1: ( ( (lv_name_0_0= 'Map' ) ) (otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')' )? )
// InternalCompleteOCL.g:2712:2: ( (lv_name_0_0= 'Map' ) ) (otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')' )?
{
// InternalCompleteOCL.g:2712:2: ( (lv_name_0_0= 'Map' ) )
// InternalCompleteOCL.g:2713:1: (lv_name_0_0= 'Map' )
{
// InternalCompleteOCL.g:2713:1: (lv_name_0_0= 'Map' )
// InternalCompleteOCL.g:2714:3: lv_name_0_0= 'Map'
{
lv_name_0_0=(Token)match(input,73,FollowSets000.FOLLOW_32); 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");
}
}
}
// InternalCompleteOCL.g:2727:2: (otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')' )?
int alt53=2;
int LA53_0 = input.LA(1);
if ( (LA53_0==21) ) {
alt53=1;
}
switch (alt53) {
case 1 :
// InternalCompleteOCL.g:2727:4: otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')'
{
otherlv_1=(Token)match(input,21,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
}
// InternalCompleteOCL.g:2731:1: ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:2732:1: (lv_ownedKeyType_2_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:2732:1: (lv_ownedKeyType_2_0= ruleTypeExpCS )
// InternalCompleteOCL.g:2733:3: lv_ownedKeyType_2_0= ruleTypeExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_34);
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,26,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
}
// InternalCompleteOCL.g:2753:1: ( (lv_ownedValueType_4_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:2754:1: (lv_ownedValueType_4_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:2754:1: (lv_ownedValueType_4_0= ruleTypeExpCS )
// InternalCompleteOCL.g:2755: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,22,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"
// InternalCompleteOCL.g:2783:1: entryRuleTupleTypeCS returns [EObject current=null] : iv_ruleTupleTypeCS= ruleTupleTypeCS EOF ;
public final EObject entryRuleTupleTypeCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleTupleTypeCS = null;
try {
// InternalCompleteOCL.g:2784:2: (iv_ruleTupleTypeCS= ruleTupleTypeCS EOF )
// InternalCompleteOCL.g:2785: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"
// InternalCompleteOCL.g:2792: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 {
// InternalCompleteOCL.g:2795:28: ( ( ( (lv_name_0_0= 'Tuple' ) ) (otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')' )? ) )
// InternalCompleteOCL.g:2796:1: ( ( (lv_name_0_0= 'Tuple' ) ) (otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')' )? )
{
// InternalCompleteOCL.g:2796:1: ( ( (lv_name_0_0= 'Tuple' ) ) (otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')' )? )
// InternalCompleteOCL.g:2796:2: ( (lv_name_0_0= 'Tuple' ) ) (otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')' )?
{
// InternalCompleteOCL.g:2796:2: ( (lv_name_0_0= 'Tuple' ) )
// InternalCompleteOCL.g:2797:1: (lv_name_0_0= 'Tuple' )
{
// InternalCompleteOCL.g:2797:1: (lv_name_0_0= 'Tuple' )
// InternalCompleteOCL.g:2798:3: lv_name_0_0= 'Tuple'
{
lv_name_0_0=(Token)match(input,74,FollowSets000.FOLLOW_32); 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");
}
}
}
// InternalCompleteOCL.g:2811:2: (otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')' )?
int alt56=2;
int LA56_0 = input.LA(1);
if ( (LA56_0==21) ) {
alt56=1;
}
switch (alt56) {
case 1 :
// InternalCompleteOCL.g:2811:4: otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')'
{
otherlv_1=(Token)match(input,21,FollowSets000.FOLLOW_17); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
}
// InternalCompleteOCL.g:2815:1: ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )?
int alt55=2;
int LA55_0 = input.LA(1);
if ( ((LA55_0>=RULE_SIMPLE_ID && LA55_0<=RULE_ESCAPED_ID)||(LA55_0>=28 && LA55_0<=30)) ) {
alt55=1;
}
switch (alt55) {
case 1 :
// InternalCompleteOCL.g:2815:2: ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )*
{
// InternalCompleteOCL.g:2815:2: ( (lv_ownedParts_2_0= ruleTuplePartCS ) )
// InternalCompleteOCL.g:2816:1: (lv_ownedParts_2_0= ruleTuplePartCS )
{
// InternalCompleteOCL.g:2816:1: (lv_ownedParts_2_0= ruleTuplePartCS )
// InternalCompleteOCL.g:2817:3: lv_ownedParts_2_0= ruleTuplePartCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
}
pushFollow(FollowSets000.FOLLOW_18);
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();
}
}
}
// InternalCompleteOCL.g:2833:2: (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )*
loop54:
do {
int alt54=2;
int LA54_0 = input.LA(1);
if ( (LA54_0==26) ) {
alt54=1;
}
switch (alt54) {
case 1 :
// InternalCompleteOCL.g:2833:4: otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) )
{
otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
}
// InternalCompleteOCL.g:2837:1: ( (lv_ownedParts_4_0= ruleTuplePartCS ) )
// InternalCompleteOCL.g:2838:1: (lv_ownedParts_4_0= ruleTuplePartCS )
{
// InternalCompleteOCL.g:2838:1: (lv_ownedParts_4_0= ruleTuplePartCS )
// InternalCompleteOCL.g:2839:3: lv_ownedParts_4_0= ruleTuplePartCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_18);
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 loop54;
}
} while (true);
}
break;
}
otherlv_5=(Token)match(input,22,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"
// InternalCompleteOCL.g:2867:1: entryRuleTuplePartCS returns [EObject current=null] : iv_ruleTuplePartCS= ruleTuplePartCS EOF ;
public final EObject entryRuleTuplePartCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleTuplePartCS = null;
try {
// InternalCompleteOCL.g:2868:2: (iv_ruleTuplePartCS= ruleTuplePartCS EOF )
// InternalCompleteOCL.g:2869: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"
// InternalCompleteOCL.g:2876: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 {
// InternalCompleteOCL.g:2879:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) ) )
// InternalCompleteOCL.g:2880:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )
{
// InternalCompleteOCL.g:2880:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )
// InternalCompleteOCL.g:2880:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) )
{
// InternalCompleteOCL.g:2880:2: ( (lv_name_0_0= ruleUnrestrictedName ) )
// InternalCompleteOCL.g:2881:1: (lv_name_0_0= ruleUnrestrictedName )
{
// InternalCompleteOCL.g:2881:1: (lv_name_0_0= ruleUnrestrictedName )
// InternalCompleteOCL.g:2882:3: lv_name_0_0= ruleUnrestrictedName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
}
pushFollow(FollowSets000.FOLLOW_12);
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.completeocl.CompleteOCL.UnrestrictedName");
afterParserOrEnumRuleCall();
}
}
}
otherlv_1=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
}
// InternalCompleteOCL.g:2902:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:2903:1: (lv_ownedType_2_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:2903:1: (lv_ownedType_2_0= ruleTypeExpCS )
// InternalCompleteOCL.g:2904: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"
// InternalCompleteOCL.g:2928:1: entryRuleCollectionLiteralExpCS returns [EObject current=null] : iv_ruleCollectionLiteralExpCS= ruleCollectionLiteralExpCS EOF ;
public final EObject entryRuleCollectionLiteralExpCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleCollectionLiteralExpCS = null;
try {
// InternalCompleteOCL.g:2929:2: (iv_ruleCollectionLiteralExpCS= ruleCollectionLiteralExpCS EOF )
// InternalCompleteOCL.g:2930: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"
// InternalCompleteOCL.g:2937: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 {
// InternalCompleteOCL.g:2940:28: ( ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )? otherlv_5= '}' ) )
// InternalCompleteOCL.g:2941:1: ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )? otherlv_5= '}' )
{
// InternalCompleteOCL.g:2941:1: ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )? otherlv_5= '}' )
// InternalCompleteOCL.g:2941:2: ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )? otherlv_5= '}'
{
// InternalCompleteOCL.g:2941:2: ( (lv_ownedType_0_0= ruleCollectionTypeCS ) )
// InternalCompleteOCL.g:2942:1: (lv_ownedType_0_0= ruleCollectionTypeCS )
{
// InternalCompleteOCL.g:2942:1: (lv_ownedType_0_0= ruleCollectionTypeCS )
// InternalCompleteOCL.g:2943:3: lv_ownedType_0_0= ruleCollectionTypeCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
}
pushFollow(FollowSets000.FOLLOW_35);
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,81,FollowSets000.FOLLOW_36); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
}
// InternalCompleteOCL.g:2963:1: ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )?
int alt58=2;
int LA58_0 = input.LA(1);
if ( ((LA58_0>=RULE_SIMPLE_ID && LA58_0<=RULE_SINGLE_QUOTED_STRING)||LA58_0==21||LA58_0==23||(LA58_0>=28 && LA58_0<=30)||(LA58_0>=42 && LA58_0<=55)||(LA58_0>=73 && LA58_0<=74)||(LA58_0>=76 && LA58_0<=80)||LA58_0==85||(LA58_0>=88 && LA58_0<=91)||LA58_0==98||(LA58_0>=103 && LA58_0<=104)) ) {
alt58=1;
}
switch (alt58) {
case 1 :
// InternalCompleteOCL.g:2963:2: ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )*
{
// InternalCompleteOCL.g:2963:2: ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) )
// InternalCompleteOCL.g:2964:1: (lv_ownedParts_2_0= ruleCollectionLiteralPartCS )
{
// InternalCompleteOCL.g:2964:1: (lv_ownedParts_2_0= ruleCollectionLiteralPartCS )
// InternalCompleteOCL.g:2965:3: lv_ownedParts_2_0= ruleCollectionLiteralPartCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0());
}
pushFollow(FollowSets000.FOLLOW_37);
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();
}
}
}
// InternalCompleteOCL.g:2981:2: (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )*
loop57:
do {
int alt57=2;
int LA57_0 = input.LA(1);
if ( (LA57_0==26) ) {
alt57=1;
}
switch (alt57) {
case 1 :
// InternalCompleteOCL.g:2981:4: otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) )
{
otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_38); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0());
}
// InternalCompleteOCL.g:2985:1: ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) )
// InternalCompleteOCL.g:2986:1: (lv_ownedParts_4_0= ruleCollectionLiteralPartCS )
{
// InternalCompleteOCL.g:2986:1: (lv_ownedParts_4_0= ruleCollectionLiteralPartCS )
// InternalCompleteOCL.g:2987:3: lv_ownedParts_4_0= ruleCollectionLiteralPartCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_37);
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 loop57;
}
} while (true);
}
break;
}
otherlv_5=(Token)match(input,82,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"
// InternalCompleteOCL.g:3015:1: entryRuleCollectionLiteralPartCS returns [EObject current=null] : iv_ruleCollectionLiteralPartCS= ruleCollectionLiteralPartCS EOF ;
public final EObject entryRuleCollectionLiteralPartCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleCollectionLiteralPartCS = null;
try {
// InternalCompleteOCL.g:3016:2: (iv_ruleCollectionLiteralPartCS= ruleCollectionLiteralPartCS EOF )
// InternalCompleteOCL.g:3017: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"
// InternalCompleteOCL.g:3024: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 {
// InternalCompleteOCL.g:3027:28: ( ( ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? ) | ( (lv_ownedExpression_3_0= rulePatternExpCS ) ) ) )
// InternalCompleteOCL.g:3028:1: ( ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? ) | ( (lv_ownedExpression_3_0= rulePatternExpCS ) ) )
{
// InternalCompleteOCL.g:3028:1: ( ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? ) | ( (lv_ownedExpression_3_0= rulePatternExpCS ) ) )
int alt60=2;
switch ( input.LA(1) ) {
case RULE_INT:
case RULE_SINGLE_QUOTED_STRING:
case 21:
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 54:
case 55:
case 73:
case 74:
case 76:
case 77:
case 78:
case 79:
case 80:
case 85:
case 88:
case 89:
case 90:
case 91:
case 98:
case 103:
case 104:
{
alt60=1;
}
break;
case RULE_SIMPLE_ID:
{
int LA60_2 = input.LA(2);
if ( (LA60_2==23) ) {
alt60=2;
}
else if ( (LA60_2==EOF||(LA60_2>=17 && LA60_2<=18)||LA60_2==21||(LA60_2>=26 && LA60_2<=27)||(LA60_2>=39 && LA60_2<=40)||LA60_2==52||(LA60_2>=55 && LA60_2<=72)||LA60_2==75||(LA60_2>=81 && LA60_2<=83)||(LA60_2>=92 && LA60_2<=93)) ) {
alt60=1;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 60, 2, input);
throw nvae;
}
}
break;
case RULE_ESCAPED_ID:
{
int LA60_3 = input.LA(2);
if ( (LA60_3==EOF||(LA60_3>=17 && LA60_3<=18)||LA60_3==21||(LA60_3>=26 && LA60_3<=27)||(LA60_3>=39 && LA60_3<=40)||LA60_3==52||(LA60_3>=55 && LA60_3<=72)||LA60_3==75||(LA60_3>=81 && LA60_3<=83)||(LA60_3>=92 && LA60_3<=93)) ) {
alt60=1;
}
else if ( (LA60_3==23) ) {
alt60=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 60, 3, input);
throw nvae;
}
}
break;
case 28:
{
int LA60_4 = input.LA(2);
if ( (LA60_4==EOF||(LA60_4>=17 && LA60_4<=18)||LA60_4==21||(LA60_4>=26 && LA60_4<=27)||(LA60_4>=39 && LA60_4<=40)||LA60_4==52||(LA60_4>=55 && LA60_4<=72)||LA60_4==75||(LA60_4>=81 && LA60_4<=83)||(LA60_4>=92 && LA60_4<=93)) ) {
alt60=1;
}
else if ( (LA60_4==23) ) {
alt60=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 60, 4, input);
throw nvae;
}
}
break;
case 29:
{
int LA60_5 = input.LA(2);
if ( (LA60_5==23) ) {
alt60=2;
}
else if ( (LA60_5==EOF||(LA60_5>=17 && LA60_5<=18)||LA60_5==21||(LA60_5>=26 && LA60_5<=27)||(LA60_5>=39 && LA60_5<=40)||LA60_5==52||(LA60_5>=55 && LA60_5<=72)||LA60_5==75||(LA60_5>=81 && LA60_5<=83)||(LA60_5>=92 && LA60_5<=93)) ) {
alt60=1;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 60, 5, input);
throw nvae;
}
}
break;
case 30:
{
int LA60_6 = input.LA(2);
if ( (LA60_6==23) ) {
alt60=2;
}
else if ( (LA60_6==EOF||(LA60_6>=17 && LA60_6<=18)||LA60_6==21||(LA60_6>=26 && LA60_6<=27)||(LA60_6>=39 && LA60_6<=40)||LA60_6==52||(LA60_6>=55 && LA60_6<=72)||LA60_6==75||(LA60_6>=81 && LA60_6<=83)||(LA60_6>=92 && LA60_6<=93)) ) {
alt60=1;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 60, 6, input);
throw nvae;
}
}
break;
case 23:
{
alt60=2;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 60, 0, input);
throw nvae;
}
switch (alt60) {
case 1 :
// InternalCompleteOCL.g:3028:2: ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? )
{
// InternalCompleteOCL.g:3028:2: ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? )
// InternalCompleteOCL.g:3028:3: ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )?
{
// InternalCompleteOCL.g:3028:3: ( (lv_ownedExpression_0_0= ruleExpCS ) )
// InternalCompleteOCL.g:3029:1: (lv_ownedExpression_0_0= ruleExpCS )
{
// InternalCompleteOCL.g:3029:1: (lv_ownedExpression_0_0= ruleExpCS )
// InternalCompleteOCL.g:3030:3: lv_ownedExpression_0_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0());
}
pushFollow(FollowSets000.FOLLOW_39);
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();
}
}
}
// InternalCompleteOCL.g:3046:2: (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )?
int alt59=2;
int LA59_0 = input.LA(1);
if ( (LA59_0==83) ) {
alt59=1;
}
switch (alt59) {
case 1 :
// InternalCompleteOCL.g:3046:4: otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) )
{
otherlv_1=(Token)match(input,83,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0());
}
// InternalCompleteOCL.g:3050:1: ( (lv_ownedLastExpression_2_0= ruleExpCS ) )
// InternalCompleteOCL.g:3051:1: (lv_ownedLastExpression_2_0= ruleExpCS )
{
// InternalCompleteOCL.g:3051:1: (lv_ownedLastExpression_2_0= ruleExpCS )
// InternalCompleteOCL.g:3052: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 :
// InternalCompleteOCL.g:3069:6: ( (lv_ownedExpression_3_0= rulePatternExpCS ) )
{
// InternalCompleteOCL.g:3069:6: ( (lv_ownedExpression_3_0= rulePatternExpCS ) )
// InternalCompleteOCL.g:3070:1: (lv_ownedExpression_3_0= rulePatternExpCS )
{
// InternalCompleteOCL.g:3070:1: (lv_ownedExpression_3_0= rulePatternExpCS )
// InternalCompleteOCL.g:3071: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"
// InternalCompleteOCL.g:3095:1: entryRuleCollectionPatternCS returns [EObject current=null] : iv_ruleCollectionPatternCS= ruleCollectionPatternCS EOF ;
public final EObject entryRuleCollectionPatternCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleCollectionPatternCS = null;
try {
// InternalCompleteOCL.g:3096:2: (iv_ruleCollectionPatternCS= ruleCollectionPatternCS EOF )
// InternalCompleteOCL.g:3097: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"
// InternalCompleteOCL.g:3104: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 {
// InternalCompleteOCL.g:3107: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= '}' ) )
// InternalCompleteOCL.g:3108: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= '}' )
{
// InternalCompleteOCL.g:3108: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= '}' )
// InternalCompleteOCL.g:3108: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= '}'
{
// InternalCompleteOCL.g:3108:2: ( (lv_ownedType_0_0= ruleCollectionTypeCS ) )
// InternalCompleteOCL.g:3109:1: (lv_ownedType_0_0= ruleCollectionTypeCS )
{
// InternalCompleteOCL.g:3109:1: (lv_ownedType_0_0= ruleCollectionTypeCS )
// InternalCompleteOCL.g:3110:3: lv_ownedType_0_0= ruleCollectionTypeCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
}
pushFollow(FollowSets000.FOLLOW_35);
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,81,FollowSets000.FOLLOW_36); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1());
}
// InternalCompleteOCL.g:3130:1: ( ( (lv_ownedParts_2_0= rulePatternExpCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) ) )?
int alt62=2;
int LA62_0 = input.LA(1);
if ( ((LA62_0>=RULE_SIMPLE_ID && LA62_0<=RULE_ESCAPED_ID)||LA62_0==23||(LA62_0>=28 && LA62_0<=30)) ) {
alt62=1;
}
switch (alt62) {
case 1 :
// InternalCompleteOCL.g:3130:2: ( (lv_ownedParts_2_0= rulePatternExpCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) )
{
// InternalCompleteOCL.g:3130:2: ( (lv_ownedParts_2_0= rulePatternExpCS ) )
// InternalCompleteOCL.g:3131:1: (lv_ownedParts_2_0= rulePatternExpCS )
{
// InternalCompleteOCL.g:3131:1: (lv_ownedParts_2_0= rulePatternExpCS )
// InternalCompleteOCL.g:3132:3: lv_ownedParts_2_0= rulePatternExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0());
}
pushFollow(FollowSets000.FOLLOW_41);
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();
}
}
}
// InternalCompleteOCL.g:3148:2: (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )*
loop61:
do {
int alt61=2;
int LA61_0 = input.LA(1);
if ( (LA61_0==26) ) {
alt61=1;
}
switch (alt61) {
case 1 :
// InternalCompleteOCL.g:3148:4: otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) )
{
otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_38); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0());
}
// InternalCompleteOCL.g:3152:1: ( (lv_ownedParts_4_0= rulePatternExpCS ) )
// InternalCompleteOCL.g:3153:1: (lv_ownedParts_4_0= rulePatternExpCS )
{
// InternalCompleteOCL.g:3153:1: (lv_ownedParts_4_0= rulePatternExpCS )
// InternalCompleteOCL.g:3154:3: lv_ownedParts_4_0= rulePatternExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_41);
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 loop61;
}
} while (true);
// InternalCompleteOCL.g:3170:4: (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) )
// InternalCompleteOCL.g:3170:6: otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) )
{
otherlv_5=(Token)match(input,84,FollowSets000.FOLLOW_42); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_5, grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0());
}
// InternalCompleteOCL.g:3174:1: ( (lv_restVariableName_6_0= ruleIdentifier ) )
// InternalCompleteOCL.g:3175:1: (lv_restVariableName_6_0= ruleIdentifier )
{
// InternalCompleteOCL.g:3175:1: (lv_restVariableName_6_0= ruleIdentifier )
// InternalCompleteOCL.g:3176:3: lv_restVariableName_6_0= ruleIdentifier
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0());
}
pushFollow(FollowSets000.FOLLOW_43);
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,82,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"
// InternalCompleteOCL.g:3204:1: entryRuleShadowPartCS returns [EObject current=null] : iv_ruleShadowPartCS= ruleShadowPartCS EOF ;
public final EObject entryRuleShadowPartCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleShadowPartCS = null;
try {
// InternalCompleteOCL.g:3205:2: (iv_ruleShadowPartCS= ruleShadowPartCS EOF )
// InternalCompleteOCL.g:3206: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"
// InternalCompleteOCL.g:3213: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 {
// InternalCompleteOCL.g:3216:28: ( ( ( ( ( ruleUnrestrictedName ) ) otherlv_1= '=' ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) ) ) | ( (lv_ownedInitExpression_3_0= ruleStringLiteralExpCS ) ) ) )
// InternalCompleteOCL.g:3217:1: ( ( ( ( ruleUnrestrictedName ) ) otherlv_1= '=' ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) ) ) | ( (lv_ownedInitExpression_3_0= ruleStringLiteralExpCS ) ) )
{
// InternalCompleteOCL.g:3217:1: ( ( ( ( ruleUnrestrictedName ) ) otherlv_1= '=' ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) ) ) | ( (lv_ownedInitExpression_3_0= ruleStringLiteralExpCS ) ) )
int alt64=2;
int LA64_0 = input.LA(1);
if ( ((LA64_0>=RULE_SIMPLE_ID && LA64_0<=RULE_ESCAPED_ID)||(LA64_0>=28 && LA64_0<=30)) ) {
alt64=1;
}
else if ( (LA64_0==RULE_SINGLE_QUOTED_STRING) ) {
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 :
// InternalCompleteOCL.g:3217:2: ( ( ( ruleUnrestrictedName ) ) otherlv_1= '=' ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) ) )
{
// InternalCompleteOCL.g:3217:2: ( ( ( ruleUnrestrictedName ) ) otherlv_1= '=' ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) ) )
// InternalCompleteOCL.g:3217:3: ( ( ruleUnrestrictedName ) ) otherlv_1= '=' ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) )
{
// InternalCompleteOCL.g:3217:3: ( ( ruleUnrestrictedName ) )
// InternalCompleteOCL.g:3218:1: ( ruleUnrestrictedName )
{
// InternalCompleteOCL.g:3218:1: ( ruleUnrestrictedName )
// InternalCompleteOCL.g:3219: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_20);
ruleUnrestrictedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
}
otherlv_1=(Token)match(input,27,FollowSets000.FOLLOW_38); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_0_1());
}
// InternalCompleteOCL.g:3239:1: ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) )
// InternalCompleteOCL.g:3240:1: ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) )
{
// InternalCompleteOCL.g:3240:1: ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) )
// InternalCompleteOCL.g:3241:1: (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS )
{
// InternalCompleteOCL.g:3241:1: (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS )
int alt63=2;
switch ( input.LA(1) ) {
case RULE_INT:
case RULE_SINGLE_QUOTED_STRING:
case 21:
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 54:
case 55:
case 73:
case 74:
case 76:
case 77:
case 78:
case 79:
case 80:
case 85:
case 88:
case 89:
case 90:
case 91:
case 98:
case 103:
case 104:
{
alt63=1;
}
break;
case RULE_SIMPLE_ID:
{
int LA63_2 = input.LA(2);
if ( (LA63_2==23) ) {
alt63=2;
}
else if ( (LA63_2==EOF||(LA63_2>=17 && LA63_2<=18)||LA63_2==21||(LA63_2>=26 && LA63_2<=27)||(LA63_2>=39 && LA63_2<=40)||LA63_2==52||(LA63_2>=55 && LA63_2<=72)||LA63_2==75||(LA63_2>=81 && LA63_2<=82)||(LA63_2>=92 && LA63_2<=93)) ) {
alt63=1;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 63, 2, input);
throw nvae;
}
}
break;
case RULE_ESCAPED_ID:
{
int LA63_3 = input.LA(2);
if ( (LA63_3==EOF||(LA63_3>=17 && LA63_3<=18)||LA63_3==21||(LA63_3>=26 && LA63_3<=27)||(LA63_3>=39 && LA63_3<=40)||LA63_3==52||(LA63_3>=55 && LA63_3<=72)||LA63_3==75||(LA63_3>=81 && LA63_3<=82)||(LA63_3>=92 && LA63_3<=93)) ) {
alt63=1;
}
else if ( (LA63_3==23) ) {
alt63=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 63, 3, input);
throw nvae;
}
}
break;
case 28:
{
int LA63_4 = input.LA(2);
if ( (LA63_4==EOF||(LA63_4>=17 && LA63_4<=18)||LA63_4==21||(LA63_4>=26 && LA63_4<=27)||(LA63_4>=39 && LA63_4<=40)||LA63_4==52||(LA63_4>=55 && LA63_4<=72)||LA63_4==75||(LA63_4>=81 && LA63_4<=82)||(LA63_4>=92 && LA63_4<=93)) ) {
alt63=1;
}
else if ( (LA63_4==23) ) {
alt63=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 63, 4, input);
throw nvae;
}
}
break;
case 29:
{
int LA63_5 = input.LA(2);
if ( (LA63_5==EOF||(LA63_5>=17 && LA63_5<=18)||LA63_5==21||(LA63_5>=26 && LA63_5<=27)||(LA63_5>=39 && LA63_5<=40)||LA63_5==52||(LA63_5>=55 && LA63_5<=72)||LA63_5==75||(LA63_5>=81 && LA63_5<=82)||(LA63_5>=92 && LA63_5<=93)) ) {
alt63=1;
}
else if ( (LA63_5==23) ) {
alt63=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 63, 5, input);
throw nvae;
}
}
break;
case 30:
{
int LA63_6 = input.LA(2);
if ( (LA63_6==23) ) {
alt63=2;
}
else if ( (LA63_6==EOF||(LA63_6>=17 && LA63_6<=18)||LA63_6==21||(LA63_6>=26 && LA63_6<=27)||(LA63_6>=39 && LA63_6<=40)||LA63_6==52||(LA63_6>=55 && LA63_6<=72)||LA63_6==75||(LA63_6>=81 && LA63_6<=82)||(LA63_6>=92 && LA63_6<=93)) ) {
alt63=1;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 63, 6, input);
throw nvae;
}
}
break;
case 23:
{
alt63=2;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 63, 0, input);
throw nvae;
}
switch (alt63) {
case 1 :
// InternalCompleteOCL.g:3242: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 :
// InternalCompleteOCL.g:3257: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 :
// InternalCompleteOCL.g:3276:6: ( (lv_ownedInitExpression_3_0= ruleStringLiteralExpCS ) )
{
// InternalCompleteOCL.g:3276:6: ( (lv_ownedInitExpression_3_0= ruleStringLiteralExpCS ) )
// InternalCompleteOCL.g:3277:1: (lv_ownedInitExpression_3_0= ruleStringLiteralExpCS )
{
// InternalCompleteOCL.g:3277:1: (lv_ownedInitExpression_3_0= ruleStringLiteralExpCS )
// InternalCompleteOCL.g:3278: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"
// InternalCompleteOCL.g:3302:1: entryRulePatternExpCS returns [EObject current=null] : iv_rulePatternExpCS= rulePatternExpCS EOF ;
public final EObject entryRulePatternExpCS() throws RecognitionException {
EObject current = null;
EObject iv_rulePatternExpCS = null;
try {
// InternalCompleteOCL.g:3303:2: (iv_rulePatternExpCS= rulePatternExpCS EOF )
// InternalCompleteOCL.g:3304: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"
// InternalCompleteOCL.g:3311: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 {
// InternalCompleteOCL.g:3314:28: ( ( ( (lv_patternVariableName_0_0= ruleUnrestrictedName ) )? otherlv_1= ':' ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) ) ) )
// InternalCompleteOCL.g:3315:1: ( ( (lv_patternVariableName_0_0= ruleUnrestrictedName ) )? otherlv_1= ':' ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) ) )
{
// InternalCompleteOCL.g:3315:1: ( ( (lv_patternVariableName_0_0= ruleUnrestrictedName ) )? otherlv_1= ':' ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) ) )
// InternalCompleteOCL.g:3315:2: ( (lv_patternVariableName_0_0= ruleUnrestrictedName ) )? otherlv_1= ':' ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) )
{
// InternalCompleteOCL.g:3315:2: ( (lv_patternVariableName_0_0= ruleUnrestrictedName ) )?
int alt65=2;
int LA65_0 = input.LA(1);
if ( ((LA65_0>=RULE_SIMPLE_ID && LA65_0<=RULE_ESCAPED_ID)||(LA65_0>=28 && LA65_0<=30)) ) {
alt65=1;
}
switch (alt65) {
case 1 :
// InternalCompleteOCL.g:3316:1: (lv_patternVariableName_0_0= ruleUnrestrictedName )
{
// InternalCompleteOCL.g:3316:1: (lv_patternVariableName_0_0= ruleUnrestrictedName )
// InternalCompleteOCL.g:3317:3: lv_patternVariableName_0_0= ruleUnrestrictedName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0());
}
pushFollow(FollowSets000.FOLLOW_12);
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.completeocl.CompleteOCL.UnrestrictedName");
afterParserOrEnumRuleCall();
}
}
}
break;
}
otherlv_1=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
}
// InternalCompleteOCL.g:3337:1: ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:3338:1: (lv_ownedPatternType_2_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:3338:1: (lv_ownedPatternType_2_0= ruleTypeExpCS )
// InternalCompleteOCL.g:3339: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"
// InternalCompleteOCL.g:3363:1: entryRuleLambdaLiteralExpCS returns [EObject current=null] : iv_ruleLambdaLiteralExpCS= ruleLambdaLiteralExpCS EOF ;
public final EObject entryRuleLambdaLiteralExpCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleLambdaLiteralExpCS = null;
try {
// InternalCompleteOCL.g:3364:2: (iv_ruleLambdaLiteralExpCS= ruleLambdaLiteralExpCS EOF )
// InternalCompleteOCL.g:3365: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"
// InternalCompleteOCL.g:3372: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 {
// InternalCompleteOCL.g:3375:28: ( (otherlv_0= 'Lambda' otherlv_1= '{' ( (lv_ownedExpressionCS_2_0= ruleExpCS ) ) otherlv_3= '}' ) )
// InternalCompleteOCL.g:3376:1: (otherlv_0= 'Lambda' otherlv_1= '{' ( (lv_ownedExpressionCS_2_0= ruleExpCS ) ) otherlv_3= '}' )
{
// InternalCompleteOCL.g:3376:1: (otherlv_0= 'Lambda' otherlv_1= '{' ( (lv_ownedExpressionCS_2_0= ruleExpCS ) ) otherlv_3= '}' )
// InternalCompleteOCL.g:3376:3: otherlv_0= 'Lambda' otherlv_1= '{' ( (lv_ownedExpressionCS_2_0= ruleExpCS ) ) otherlv_3= '}'
{
otherlv_0=(Token)match(input,85,FollowSets000.FOLLOW_35); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0());
}
otherlv_1=(Token)match(input,81,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
}
// InternalCompleteOCL.g:3384:1: ( (lv_ownedExpressionCS_2_0= ruleExpCS ) )
// InternalCompleteOCL.g:3385:1: (lv_ownedExpressionCS_2_0= ruleExpCS )
{
// InternalCompleteOCL.g:3385:1: (lv_ownedExpressionCS_2_0= ruleExpCS )
// InternalCompleteOCL.g:3386:3: lv_ownedExpressionCS_2_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0());
}
pushFollow(FollowSets000.FOLLOW_43);
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,82,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"
// InternalCompleteOCL.g:3414:1: entryRuleMapLiteralExpCS returns [EObject current=null] : iv_ruleMapLiteralExpCS= ruleMapLiteralExpCS EOF ;
public final EObject entryRuleMapLiteralExpCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleMapLiteralExpCS = null;
try {
// InternalCompleteOCL.g:3415:2: (iv_ruleMapLiteralExpCS= ruleMapLiteralExpCS EOF )
// InternalCompleteOCL.g:3416: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"
// InternalCompleteOCL.g:3423: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 {
// InternalCompleteOCL.g:3426:28: ( ( ( (lv_ownedType_0_0= ruleMapTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )? otherlv_5= '}' ) )
// InternalCompleteOCL.g:3427:1: ( ( (lv_ownedType_0_0= ruleMapTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )? otherlv_5= '}' )
{
// InternalCompleteOCL.g:3427:1: ( ( (lv_ownedType_0_0= ruleMapTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )? otherlv_5= '}' )
// InternalCompleteOCL.g:3427:2: ( (lv_ownedType_0_0= ruleMapTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )? otherlv_5= '}'
{
// InternalCompleteOCL.g:3427:2: ( (lv_ownedType_0_0= ruleMapTypeCS ) )
// InternalCompleteOCL.g:3428:1: (lv_ownedType_0_0= ruleMapTypeCS )
{
// InternalCompleteOCL.g:3428:1: (lv_ownedType_0_0= ruleMapTypeCS )
// InternalCompleteOCL.g:3429:3: lv_ownedType_0_0= ruleMapTypeCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0());
}
pushFollow(FollowSets000.FOLLOW_35);
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,81,FollowSets000.FOLLOW_44); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
}
// InternalCompleteOCL.g:3449:1: ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )?
int alt67=2;
int LA67_0 = input.LA(1);
if ( ((LA67_0>=RULE_SIMPLE_ID && LA67_0<=RULE_SINGLE_QUOTED_STRING)||LA67_0==21||(LA67_0>=28 && LA67_0<=30)||(LA67_0>=42 && LA67_0<=55)||(LA67_0>=73 && LA67_0<=74)||(LA67_0>=76 && LA67_0<=80)||LA67_0==85||(LA67_0>=88 && LA67_0<=91)||LA67_0==98||(LA67_0>=103 && LA67_0<=104)) ) {
alt67=1;
}
switch (alt67) {
case 1 :
// InternalCompleteOCL.g:3449:2: ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )*
{
// InternalCompleteOCL.g:3449:2: ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) )
// InternalCompleteOCL.g:3450:1: (lv_ownedParts_2_0= ruleMapLiteralPartCS )
{
// InternalCompleteOCL.g:3450:1: (lv_ownedParts_2_0= ruleMapLiteralPartCS )
// InternalCompleteOCL.g:3451:3: lv_ownedParts_2_0= ruleMapLiteralPartCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0());
}
pushFollow(FollowSets000.FOLLOW_37);
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();
}
}
}
// InternalCompleteOCL.g:3467:2: (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )*
loop66:
do {
int alt66=2;
int LA66_0 = input.LA(1);
if ( (LA66_0==26) ) {
alt66=1;
}
switch (alt66) {
case 1 :
// InternalCompleteOCL.g:3467:4: otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) )
{
otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0());
}
// InternalCompleteOCL.g:3471:1: ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) )
// InternalCompleteOCL.g:3472:1: (lv_ownedParts_4_0= ruleMapLiteralPartCS )
{
// InternalCompleteOCL.g:3472:1: (lv_ownedParts_4_0= ruleMapLiteralPartCS )
// InternalCompleteOCL.g:3473:3: lv_ownedParts_4_0= ruleMapLiteralPartCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_37);
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 loop66;
}
} while (true);
}
break;
}
otherlv_5=(Token)match(input,82,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"
// InternalCompleteOCL.g:3501:1: entryRuleMapLiteralPartCS returns [EObject current=null] : iv_ruleMapLiteralPartCS= ruleMapLiteralPartCS EOF ;
public final EObject entryRuleMapLiteralPartCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleMapLiteralPartCS = null;
try {
// InternalCompleteOCL.g:3502:2: (iv_ruleMapLiteralPartCS= ruleMapLiteralPartCS EOF )
// InternalCompleteOCL.g:3503: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"
// InternalCompleteOCL.g:3510:1: ruleMapLiteralPartCS returns [EObject current=null] : ( ( (lv_ownedKey_0_0= ruleExpCS ) ) (otherlv_1= 'with' | otherlv_2= '<-' ) ( (lv_ownedValue_3_0= ruleExpCS ) ) ) ;
public final EObject ruleMapLiteralPartCS() throws RecognitionException {
EObject current = null;
Token otherlv_1=null;
Token otherlv_2=null;
EObject lv_ownedKey_0_0 = null;
EObject lv_ownedValue_3_0 = null;
enterRule();
try {
// InternalCompleteOCL.g:3513:28: ( ( ( (lv_ownedKey_0_0= ruleExpCS ) ) (otherlv_1= 'with' | otherlv_2= '<-' ) ( (lv_ownedValue_3_0= ruleExpCS ) ) ) )
// InternalCompleteOCL.g:3514:1: ( ( (lv_ownedKey_0_0= ruleExpCS ) ) (otherlv_1= 'with' | otherlv_2= '<-' ) ( (lv_ownedValue_3_0= ruleExpCS ) ) )
{
// InternalCompleteOCL.g:3514:1: ( ( (lv_ownedKey_0_0= ruleExpCS ) ) (otherlv_1= 'with' | otherlv_2= '<-' ) ( (lv_ownedValue_3_0= ruleExpCS ) ) )
// InternalCompleteOCL.g:3514:2: ( (lv_ownedKey_0_0= ruleExpCS ) ) (otherlv_1= 'with' | otherlv_2= '<-' ) ( (lv_ownedValue_3_0= ruleExpCS ) )
{
// InternalCompleteOCL.g:3514:2: ( (lv_ownedKey_0_0= ruleExpCS ) )
// InternalCompleteOCL.g:3515:1: (lv_ownedKey_0_0= ruleExpCS )
{
// InternalCompleteOCL.g:3515:1: (lv_ownedKey_0_0= ruleExpCS )
// InternalCompleteOCL.g:3516:3: lv_ownedKey_0_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0());
}
pushFollow(FollowSets000.FOLLOW_45);
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();
}
}
}
// InternalCompleteOCL.g:3532:2: (otherlv_1= 'with' | otherlv_2= '<-' )
int alt68=2;
int LA68_0 = input.LA(1);
if ( (LA68_0==86) ) {
alt68=1;
}
else if ( (LA68_0==87) ) {
alt68=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 68, 0, input);
throw nvae;
}
switch (alt68) {
case 1 :
// InternalCompleteOCL.g:3532:4: otherlv_1= 'with'
{
otherlv_1=(Token)match(input,86,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getMapLiteralPartCSAccess().getWithKeyword_1_0());
}
}
break;
case 2 :
// InternalCompleteOCL.g:3537:7: otherlv_2= '<-'
{
otherlv_2=(Token)match(input,87,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1_1());
}
}
break;
}
// InternalCompleteOCL.g:3541:2: ( (lv_ownedValue_3_0= ruleExpCS ) )
// InternalCompleteOCL.g:3542:1: (lv_ownedValue_3_0= ruleExpCS )
{
// InternalCompleteOCL.g:3542:1: (lv_ownedValue_3_0= ruleExpCS )
// InternalCompleteOCL.g:3543:3: lv_ownedValue_3_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0());
}
pushFollow(FollowSets000.FOLLOW_2);
lv_ownedValue_3_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_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 "ruleMapLiteralPartCS"
// $ANTLR start "entryRulePrimitiveLiteralExpCS"
// InternalCompleteOCL.g:3567:1: entryRulePrimitiveLiteralExpCS returns [EObject current=null] : iv_rulePrimitiveLiteralExpCS= rulePrimitiveLiteralExpCS EOF ;
public final EObject entryRulePrimitiveLiteralExpCS() throws RecognitionException {
EObject current = null;
EObject iv_rulePrimitiveLiteralExpCS = null;
try {
// InternalCompleteOCL.g:3568:2: (iv_rulePrimitiveLiteralExpCS= rulePrimitiveLiteralExpCS EOF )
// InternalCompleteOCL.g:3569: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"
// InternalCompleteOCL.g:3576: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 {
// InternalCompleteOCL.g:3579: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 ) )
// InternalCompleteOCL.g:3580: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 )
{
// InternalCompleteOCL.g:3580: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 alt69=6;
switch ( input.LA(1) ) {
case RULE_INT:
{
alt69=1;
}
break;
case RULE_SINGLE_QUOTED_STRING:
{
alt69=2;
}
break;
case 88:
case 89:
{
alt69=3;
}
break;
case 55:
{
alt69=4;
}
break;
case 90:
{
alt69=5;
}
break;
case 91:
{
alt69=6;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 69, 0, input);
throw nvae;
}
switch (alt69) {
case 1 :
// InternalCompleteOCL.g:3581: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 :
// InternalCompleteOCL.g:3594: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 :
// InternalCompleteOCL.g:3607: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 :
// InternalCompleteOCL.g:3620: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 :
// InternalCompleteOCL.g:3633: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 :
// InternalCompleteOCL.g:3646: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"
// InternalCompleteOCL.g:3665:1: entryRuleTupleLiteralExpCS returns [EObject current=null] : iv_ruleTupleLiteralExpCS= ruleTupleLiteralExpCS EOF ;
public final EObject entryRuleTupleLiteralExpCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleTupleLiteralExpCS = null;
try {
// InternalCompleteOCL.g:3666:2: (iv_ruleTupleLiteralExpCS= ruleTupleLiteralExpCS EOF )
// InternalCompleteOCL.g:3667: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"
// InternalCompleteOCL.g:3674: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 {
// InternalCompleteOCL.g:3677:28: ( (otherlv_0= 'Tuple' otherlv_1= '{' ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) ) )* otherlv_5= '}' ) )
// InternalCompleteOCL.g:3678:1: (otherlv_0= 'Tuple' otherlv_1= '{' ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) ) )* otherlv_5= '}' )
{
// InternalCompleteOCL.g:3678:1: (otherlv_0= 'Tuple' otherlv_1= '{' ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) ) )* otherlv_5= '}' )
// InternalCompleteOCL.g:3678: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,74,FollowSets000.FOLLOW_35); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
}
otherlv_1=(Token)match(input,81,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
}
// InternalCompleteOCL.g:3686:1: ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) )
// InternalCompleteOCL.g:3687:1: (lv_ownedParts_2_0= ruleTupleLiteralPartCS )
{
// InternalCompleteOCL.g:3687:1: (lv_ownedParts_2_0= ruleTupleLiteralPartCS )
// InternalCompleteOCL.g:3688:3: lv_ownedParts_2_0= ruleTupleLiteralPartCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0());
}
pushFollow(FollowSets000.FOLLOW_37);
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();
}
}
}
// InternalCompleteOCL.g:3704:2: (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) ) )*
loop70:
do {
int alt70=2;
int LA70_0 = input.LA(1);
if ( (LA70_0==26) ) {
alt70=1;
}
switch (alt70) {
case 1 :
// InternalCompleteOCL.g:3704:4: otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) )
{
otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
}
// InternalCompleteOCL.g:3708:1: ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) )
// InternalCompleteOCL.g:3709:1: (lv_ownedParts_4_0= ruleTupleLiteralPartCS )
{
// InternalCompleteOCL.g:3709:1: (lv_ownedParts_4_0= ruleTupleLiteralPartCS )
// InternalCompleteOCL.g:3710:3: lv_ownedParts_4_0= ruleTupleLiteralPartCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0());
}
pushFollow(FollowSets000.FOLLOW_37);
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 loop70;
}
} while (true);
otherlv_5=(Token)match(input,82,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"
// InternalCompleteOCL.g:3738:1: entryRuleTupleLiteralPartCS returns [EObject current=null] : iv_ruleTupleLiteralPartCS= ruleTupleLiteralPartCS EOF ;
public final EObject entryRuleTupleLiteralPartCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleTupleLiteralPartCS = null;
try {
// InternalCompleteOCL.g:3739:2: (iv_ruleTupleLiteralPartCS= ruleTupleLiteralPartCS EOF )
// InternalCompleteOCL.g:3740: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"
// InternalCompleteOCL.g:3747: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 {
// InternalCompleteOCL.g:3750:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) ) )
// InternalCompleteOCL.g:3751:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )
{
// InternalCompleteOCL.g:3751:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )
// InternalCompleteOCL.g:3751:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) )
{
// InternalCompleteOCL.g:3751:2: ( (lv_name_0_0= ruleUnrestrictedName ) )
// InternalCompleteOCL.g:3752:1: (lv_name_0_0= ruleUnrestrictedName )
{
// InternalCompleteOCL.g:3752:1: (lv_name_0_0= ruleUnrestrictedName )
// InternalCompleteOCL.g:3753:3: lv_name_0_0= ruleUnrestrictedName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
}
pushFollow(FollowSets000.FOLLOW_46);
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.completeocl.CompleteOCL.UnrestrictedName");
afterParserOrEnumRuleCall();
}
}
}
// InternalCompleteOCL.g:3769:2: (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )?
int alt71=2;
int LA71_0 = input.LA(1);
if ( (LA71_0==23) ) {
alt71=1;
}
switch (alt71) {
case 1 :
// InternalCompleteOCL.g:3769:4: otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) )
{
otherlv_1=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
}
// InternalCompleteOCL.g:3773:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:3774:1: (lv_ownedType_2_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:3774:1: (lv_ownedType_2_0= ruleTypeExpCS )
// InternalCompleteOCL.g:3775:3: lv_ownedType_2_0= ruleTypeExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_20);
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,27,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2());
}
// InternalCompleteOCL.g:3795:1: ( (lv_ownedInitExpression_4_0= ruleExpCS ) )
// InternalCompleteOCL.g:3796:1: (lv_ownedInitExpression_4_0= ruleExpCS )
{
// InternalCompleteOCL.g:3796:1: (lv_ownedInitExpression_4_0= ruleExpCS )
// InternalCompleteOCL.g:3797: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"
// InternalCompleteOCL.g:3821:1: entryRuleNumberLiteralExpCS returns [EObject current=null] : iv_ruleNumberLiteralExpCS= ruleNumberLiteralExpCS EOF ;
public final EObject entryRuleNumberLiteralExpCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleNumberLiteralExpCS = null;
try {
// InternalCompleteOCL.g:3822:2: (iv_ruleNumberLiteralExpCS= ruleNumberLiteralExpCS EOF )
// InternalCompleteOCL.g:3823: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"
// InternalCompleteOCL.g:3830: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 {
// InternalCompleteOCL.g:3833:28: ( ( (lv_symbol_0_0= ruleNUMBER_LITERAL ) ) )
// InternalCompleteOCL.g:3834:1: ( (lv_symbol_0_0= ruleNUMBER_LITERAL ) )
{
// InternalCompleteOCL.g:3834:1: ( (lv_symbol_0_0= ruleNUMBER_LITERAL ) )
// InternalCompleteOCL.g:3835:1: (lv_symbol_0_0= ruleNUMBER_LITERAL )
{
// InternalCompleteOCL.g:3835:1: (lv_symbol_0_0= ruleNUMBER_LITERAL )
// InternalCompleteOCL.g:3836: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"
// InternalCompleteOCL.g:3860:1: entryRuleStringLiteralExpCS returns [EObject current=null] : iv_ruleStringLiteralExpCS= ruleStringLiteralExpCS EOF ;
public final EObject entryRuleStringLiteralExpCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleStringLiteralExpCS = null;
try {
// InternalCompleteOCL.g:3861:2: (iv_ruleStringLiteralExpCS= ruleStringLiteralExpCS EOF )
// InternalCompleteOCL.g:3862: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"
// InternalCompleteOCL.g:3869: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 {
// InternalCompleteOCL.g:3872:28: ( ( (lv_segments_0_0= ruleStringLiteral ) )+ )
// InternalCompleteOCL.g:3873:1: ( (lv_segments_0_0= ruleStringLiteral ) )+
{
// InternalCompleteOCL.g:3873:1: ( (lv_segments_0_0= ruleStringLiteral ) )+
int cnt72=0;
loop72:
do {
int alt72=2;
int LA72_0 = input.LA(1);
if ( (LA72_0==RULE_SINGLE_QUOTED_STRING) ) {
alt72=1;
}
switch (alt72) {
case 1 :
// InternalCompleteOCL.g:3874:1: (lv_segments_0_0= ruleStringLiteral )
{
// InternalCompleteOCL.g:3874:1: (lv_segments_0_0= ruleStringLiteral )
// InternalCompleteOCL.g:3875:3: lv_segments_0_0= ruleStringLiteral
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0());
}
pushFollow(FollowSets000.FOLLOW_47);
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 ( cnt72 >= 1 ) break loop72;
if (state.backtracking>0) {state.failed=true; return current;}
EarlyExitException eee =
new EarlyExitException(72, input);
throw eee;
}
cnt72++;
} while (true);
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleStringLiteralExpCS"
// $ANTLR start "entryRuleBooleanLiteralExpCS"
// InternalCompleteOCL.g:3899:1: entryRuleBooleanLiteralExpCS returns [EObject current=null] : iv_ruleBooleanLiteralExpCS= ruleBooleanLiteralExpCS EOF ;
public final EObject entryRuleBooleanLiteralExpCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleBooleanLiteralExpCS = null;
try {
// InternalCompleteOCL.g:3900:2: (iv_ruleBooleanLiteralExpCS= ruleBooleanLiteralExpCS EOF )
// InternalCompleteOCL.g:3901: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"
// InternalCompleteOCL.g:3908: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 {
// InternalCompleteOCL.g:3911:28: ( ( ( (lv_symbol_0_0= 'true' ) ) | ( (lv_symbol_1_0= 'false' ) ) ) )
// InternalCompleteOCL.g:3912:1: ( ( (lv_symbol_0_0= 'true' ) ) | ( (lv_symbol_1_0= 'false' ) ) )
{
// InternalCompleteOCL.g:3912:1: ( ( (lv_symbol_0_0= 'true' ) ) | ( (lv_symbol_1_0= 'false' ) ) )
int alt73=2;
int LA73_0 = input.LA(1);
if ( (LA73_0==88) ) {
alt73=1;
}
else if ( (LA73_0==89) ) {
alt73=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 73, 0, input);
throw nvae;
}
switch (alt73) {
case 1 :
// InternalCompleteOCL.g:3912:2: ( (lv_symbol_0_0= 'true' ) )
{
// InternalCompleteOCL.g:3912:2: ( (lv_symbol_0_0= 'true' ) )
// InternalCompleteOCL.g:3913:1: (lv_symbol_0_0= 'true' )
{
// InternalCompleteOCL.g:3913:1: (lv_symbol_0_0= 'true' )
// InternalCompleteOCL.g:3914:3: lv_symbol_0_0= 'true'
{
lv_symbol_0_0=(Token)match(input,88,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 :
// InternalCompleteOCL.g:3928:6: ( (lv_symbol_1_0= 'false' ) )
{
// InternalCompleteOCL.g:3928:6: ( (lv_symbol_1_0= 'false' ) )
// InternalCompleteOCL.g:3929:1: (lv_symbol_1_0= 'false' )
{
// InternalCompleteOCL.g:3929:1: (lv_symbol_1_0= 'false' )
// InternalCompleteOCL.g:3930:3: lv_symbol_1_0= 'false'
{
lv_symbol_1_0=(Token)match(input,89,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"
// InternalCompleteOCL.g:3951:1: entryRuleUnlimitedNaturalLiteralExpCS returns [EObject current=null] : iv_ruleUnlimitedNaturalLiteralExpCS= ruleUnlimitedNaturalLiteralExpCS EOF ;
public final EObject entryRuleUnlimitedNaturalLiteralExpCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleUnlimitedNaturalLiteralExpCS = null;
try {
// InternalCompleteOCL.g:3952:2: (iv_ruleUnlimitedNaturalLiteralExpCS= ruleUnlimitedNaturalLiteralExpCS EOF )
// InternalCompleteOCL.g:3953: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"
// InternalCompleteOCL.g:3960:1: ruleUnlimitedNaturalLiteralExpCS returns [EObject current=null] : ( () otherlv_1= '*' ) ;
public final EObject ruleUnlimitedNaturalLiteralExpCS() throws RecognitionException {
EObject current = null;
Token otherlv_1=null;
enterRule();
try {
// InternalCompleteOCL.g:3963:28: ( ( () otherlv_1= '*' ) )
// InternalCompleteOCL.g:3964:1: ( () otherlv_1= '*' )
{
// InternalCompleteOCL.g:3964:1: ( () otherlv_1= '*' )
// InternalCompleteOCL.g:3964:2: () otherlv_1= '*'
{
// InternalCompleteOCL.g:3964:2: ()
// InternalCompleteOCL.g:3965:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElement(
grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0(),
current);
}
}
otherlv_1=(Token)match(input,55,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"
// InternalCompleteOCL.g:3985:1: entryRuleInvalidLiteralExpCS returns [EObject current=null] : iv_ruleInvalidLiteralExpCS= ruleInvalidLiteralExpCS EOF ;
public final EObject entryRuleInvalidLiteralExpCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleInvalidLiteralExpCS = null;
try {
// InternalCompleteOCL.g:3986:2: (iv_ruleInvalidLiteralExpCS= ruleInvalidLiteralExpCS EOF )
// InternalCompleteOCL.g:3987: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"
// InternalCompleteOCL.g:3994:1: ruleInvalidLiteralExpCS returns [EObject current=null] : ( () otherlv_1= 'invalid' ) ;
public final EObject ruleInvalidLiteralExpCS() throws RecognitionException {
EObject current = null;
Token otherlv_1=null;
enterRule();
try {
// InternalCompleteOCL.g:3997:28: ( ( () otherlv_1= 'invalid' ) )
// InternalCompleteOCL.g:3998:1: ( () otherlv_1= 'invalid' )
{
// InternalCompleteOCL.g:3998:1: ( () otherlv_1= 'invalid' )
// InternalCompleteOCL.g:3998:2: () otherlv_1= 'invalid'
{
// InternalCompleteOCL.g:3998:2: ()
// InternalCompleteOCL.g:3999:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElement(
grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0(),
current);
}
}
otherlv_1=(Token)match(input,90,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"
// InternalCompleteOCL.g:4019:1: entryRuleNullLiteralExpCS returns [EObject current=null] : iv_ruleNullLiteralExpCS= ruleNullLiteralExpCS EOF ;
public final EObject entryRuleNullLiteralExpCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleNullLiteralExpCS = null;
try {
// InternalCompleteOCL.g:4020:2: (iv_ruleNullLiteralExpCS= ruleNullLiteralExpCS EOF )
// InternalCompleteOCL.g:4021: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"
// InternalCompleteOCL.g:4028:1: ruleNullLiteralExpCS returns [EObject current=null] : ( () otherlv_1= 'null' ) ;
public final EObject ruleNullLiteralExpCS() throws RecognitionException {
EObject current = null;
Token otherlv_1=null;
enterRule();
try {
// InternalCompleteOCL.g:4031:28: ( ( () otherlv_1= 'null' ) )
// InternalCompleteOCL.g:4032:1: ( () otherlv_1= 'null' )
{
// InternalCompleteOCL.g:4032:1: ( () otherlv_1= 'null' )
// InternalCompleteOCL.g:4032:2: () otherlv_1= 'null'
{
// InternalCompleteOCL.g:4032:2: ()
// InternalCompleteOCL.g:4033:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElement(
grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0(),
current);
}
}
otherlv_1=(Token)match(input,91,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"
// InternalCompleteOCL.g:4053:1: entryRuleTypeLiteralCS returns [EObject current=null] : iv_ruleTypeLiteralCS= ruleTypeLiteralCS EOF ;
public final EObject entryRuleTypeLiteralCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleTypeLiteralCS = null;
try {
// InternalCompleteOCL.g:4054:2: (iv_ruleTypeLiteralCS= ruleTypeLiteralCS EOF )
// InternalCompleteOCL.g:4055: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"
// InternalCompleteOCL.g:4062: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 {
// InternalCompleteOCL.g:4065:28: ( (this_PrimitiveTypeCS_0= rulePrimitiveTypeCS | this_CollectionTypeCS_1= ruleCollectionTypeCS | this_MapTypeCS_2= ruleMapTypeCS | this_TupleTypeCS_3= ruleTupleTypeCS ) )
// InternalCompleteOCL.g:4066:1: (this_PrimitiveTypeCS_0= rulePrimitiveTypeCS | this_CollectionTypeCS_1= ruleCollectionTypeCS | this_MapTypeCS_2= ruleMapTypeCS | this_TupleTypeCS_3= ruleTupleTypeCS )
{
// InternalCompleteOCL.g:4066:1: (this_PrimitiveTypeCS_0= rulePrimitiveTypeCS | this_CollectionTypeCS_1= ruleCollectionTypeCS | this_MapTypeCS_2= ruleMapTypeCS | this_TupleTypeCS_3= ruleTupleTypeCS )
int alt74=4;
switch ( input.LA(1) ) {
case 42:
case 43:
case 44:
case 45:
case 46:
case 47:
case 48:
case 49:
case 50:
case 51:
{
alt74=1;
}
break;
case 76:
case 77:
case 78:
case 79:
case 80:
{
alt74=2;
}
break;
case 73:
{
alt74=3;
}
break;
case 74:
{
alt74=4;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 74, 0, input);
throw nvae;
}
switch (alt74) {
case 1 :
// InternalCompleteOCL.g:4067: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 :
// InternalCompleteOCL.g:4080: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 :
// InternalCompleteOCL.g:4093: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 :
// InternalCompleteOCL.g:4106: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"
// InternalCompleteOCL.g:4125:1: entryRuleTypeLiteralWithMultiplicityCS returns [EObject current=null] : iv_ruleTypeLiteralWithMultiplicityCS= ruleTypeLiteralWithMultiplicityCS EOF ;
public final EObject entryRuleTypeLiteralWithMultiplicityCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleTypeLiteralWithMultiplicityCS = null;
try {
// InternalCompleteOCL.g:4126:2: (iv_ruleTypeLiteralWithMultiplicityCS= ruleTypeLiteralWithMultiplicityCS EOF )
// InternalCompleteOCL.g:4127: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"
// InternalCompleteOCL.g:4134: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 {
// InternalCompleteOCL.g:4137:28: ( (this_TypeLiteralCS_0= ruleTypeLiteralCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? ) )
// InternalCompleteOCL.g:4138:1: (this_TypeLiteralCS_0= ruleTypeLiteralCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? )
{
// InternalCompleteOCL.g:4138:1: (this_TypeLiteralCS_0= ruleTypeLiteralCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? )
// InternalCompleteOCL.g:4139: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_48);
this_TypeLiteralCS_0=ruleTypeLiteralCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_TypeLiteralCS_0;
afterParserOrEnumRuleCall();
}
// InternalCompleteOCL.g:4150:1: ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )?
int alt75=2;
int LA75_0 = input.LA(1);
if ( (LA75_0==93) ) {
alt75=1;
}
switch (alt75) {
case 1 :
// InternalCompleteOCL.g:4151:1: (lv_ownedMultiplicity_1_0= ruleMultiplicityCS )
{
// InternalCompleteOCL.g:4151:1: (lv_ownedMultiplicity_1_0= ruleMultiplicityCS )
// InternalCompleteOCL.g:4152: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"
// InternalCompleteOCL.g:4176:1: entryRuleTypeLiteralExpCS returns [EObject current=null] : iv_ruleTypeLiteralExpCS= ruleTypeLiteralExpCS EOF ;
public final EObject entryRuleTypeLiteralExpCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleTypeLiteralExpCS = null;
try {
// InternalCompleteOCL.g:4177:2: (iv_ruleTypeLiteralExpCS= ruleTypeLiteralExpCS EOF )
// InternalCompleteOCL.g:4178: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"
// InternalCompleteOCL.g:4185: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 {
// InternalCompleteOCL.g:4188:28: ( ( (lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS ) ) )
// InternalCompleteOCL.g:4189:1: ( (lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS ) )
{
// InternalCompleteOCL.g:4189:1: ( (lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS ) )
// InternalCompleteOCL.g:4190:1: (lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS )
{
// InternalCompleteOCL.g:4190:1: (lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS )
// InternalCompleteOCL.g:4191: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"
// InternalCompleteOCL.g:4215:1: entryRuleTypeNameExpCS returns [EObject current=null] : iv_ruleTypeNameExpCS= ruleTypeNameExpCS EOF ;
public final EObject entryRuleTypeNameExpCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleTypeNameExpCS = null;
try {
// InternalCompleteOCL.g:4216:2: (iv_ruleTypeNameExpCS= ruleTypeNameExpCS EOF )
// InternalCompleteOCL.g:4217: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"
// InternalCompleteOCL.g:4224: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 {
// InternalCompleteOCL.g:4227:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )? )? ) )
// InternalCompleteOCL.g:4228:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )? )? )
{
// InternalCompleteOCL.g:4228:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )? )? )
// InternalCompleteOCL.g:4228:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )? )?
{
// InternalCompleteOCL.g:4228:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) )
// InternalCompleteOCL.g:4229:1: (lv_ownedPathName_0_0= rulePathNameCS )
{
// InternalCompleteOCL.g:4229:1: (lv_ownedPathName_0_0= rulePathNameCS )
// InternalCompleteOCL.g:4230:3: lv_ownedPathName_0_0= rulePathNameCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
}
pushFollow(FollowSets000.FOLLOW_49);
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();
}
}
}
// InternalCompleteOCL.g:4246:2: ( ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )? )?
int alt77=2;
int LA77_0 = input.LA(1);
if ( (LA77_0==81) ) {
alt77=1;
}
switch (alt77) {
case 1 :
// InternalCompleteOCL.g:4246:3: ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )?
{
// InternalCompleteOCL.g:4246:3: ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) )
// InternalCompleteOCL.g:4247:1: (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS )
{
// InternalCompleteOCL.g:4247:1: (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS )
// InternalCompleteOCL.g:4248:3: lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0());
}
pushFollow(FollowSets000.FOLLOW_49);
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();
}
}
}
// InternalCompleteOCL.g:4264:2: (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )?
int alt76=2;
int LA76_0 = input.LA(1);
if ( (LA76_0==81) ) {
alt76=1;
}
switch (alt76) {
case 1 :
// InternalCompleteOCL.g:4264:4: otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}'
{
otherlv_2=(Token)match(input,81,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0());
}
// InternalCompleteOCL.g:4268:1: ( (lv_ownedPatternGuard_3_0= ruleExpCS ) )
// InternalCompleteOCL.g:4269:1: (lv_ownedPatternGuard_3_0= ruleExpCS )
{
// InternalCompleteOCL.g:4269:1: (lv_ownedPatternGuard_3_0= ruleExpCS )
// InternalCompleteOCL.g:4270:3: lv_ownedPatternGuard_3_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_43);
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,82,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"
// InternalCompleteOCL.g:4298:1: entryRuleTypeExpWithoutMultiplicityCS returns [EObject current=null] : iv_ruleTypeExpWithoutMultiplicityCS= ruleTypeExpWithoutMultiplicityCS EOF ;
public final EObject entryRuleTypeExpWithoutMultiplicityCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleTypeExpWithoutMultiplicityCS = null;
try {
// InternalCompleteOCL.g:4299:2: (iv_ruleTypeExpWithoutMultiplicityCS= ruleTypeExpWithoutMultiplicityCS EOF )
// InternalCompleteOCL.g:4300: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"
// InternalCompleteOCL.g:4307: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 {
// InternalCompleteOCL.g:4310:28: ( (this_TypeNameExpCS_0= ruleTypeNameExpCS | this_TypeLiteralCS_1= ruleTypeLiteralCS | this_CollectionPatternCS_2= ruleCollectionPatternCS ) )
// InternalCompleteOCL.g:4311:1: (this_TypeNameExpCS_0= ruleTypeNameExpCS | this_TypeLiteralCS_1= ruleTypeLiteralCS | this_CollectionPatternCS_2= ruleCollectionPatternCS )
{
// InternalCompleteOCL.g:4311:1: (this_TypeNameExpCS_0= ruleTypeNameExpCS | this_TypeLiteralCS_1= ruleTypeLiteralCS | this_CollectionPatternCS_2= ruleCollectionPatternCS )
int alt78=3;
alt78 = dfa78.predict(input);
switch (alt78) {
case 1 :
// InternalCompleteOCL.g:4312: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 :
// InternalCompleteOCL.g:4325: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 :
// InternalCompleteOCL.g:4338: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"
// InternalCompleteOCL.g:4357:1: entryRuleTypeExpCS returns [EObject current=null] : iv_ruleTypeExpCS= ruleTypeExpCS EOF ;
public final EObject entryRuleTypeExpCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleTypeExpCS = null;
try {
// InternalCompleteOCL.g:4358:2: (iv_ruleTypeExpCS= ruleTypeExpCS EOF )
// InternalCompleteOCL.g:4359: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"
// InternalCompleteOCL.g:4366: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 {
// InternalCompleteOCL.g:4369:28: ( (this_TypeExpWithoutMultiplicityCS_0= ruleTypeExpWithoutMultiplicityCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? ) )
// InternalCompleteOCL.g:4370:1: (this_TypeExpWithoutMultiplicityCS_0= ruleTypeExpWithoutMultiplicityCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? )
{
// InternalCompleteOCL.g:4370:1: (this_TypeExpWithoutMultiplicityCS_0= ruleTypeExpWithoutMultiplicityCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? )
// InternalCompleteOCL.g:4371: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_48);
this_TypeExpWithoutMultiplicityCS_0=ruleTypeExpWithoutMultiplicityCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_TypeExpWithoutMultiplicityCS_0;
afterParserOrEnumRuleCall();
}
// InternalCompleteOCL.g:4382:1: ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )?
int alt79=2;
int LA79_0 = input.LA(1);
if ( (LA79_0==93) ) {
alt79=1;
}
switch (alt79) {
case 1 :
// InternalCompleteOCL.g:4383:1: (lv_ownedMultiplicity_1_0= ruleMultiplicityCS )
{
// InternalCompleteOCL.g:4383:1: (lv_ownedMultiplicity_1_0= ruleMultiplicityCS )
// InternalCompleteOCL.g:4384: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"
// InternalCompleteOCL.g:4408:1: entryRuleExpCS returns [EObject current=null] : iv_ruleExpCS= ruleExpCS EOF ;
public final EObject entryRuleExpCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleExpCS = null;
try {
// InternalCompleteOCL.g:4409:2: (iv_ruleExpCS= ruleExpCS EOF )
// InternalCompleteOCL.g:4410: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"
// InternalCompleteOCL.g:4417: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 {
// InternalCompleteOCL.g:4420:28: ( ( (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) | this_PrefixedLetExpCS_4= rulePrefixedLetExpCS ) )
// InternalCompleteOCL.g:4421:1: ( (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) | this_PrefixedLetExpCS_4= rulePrefixedLetExpCS )
{
// InternalCompleteOCL.g:4421:1: ( (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) | this_PrefixedLetExpCS_4= rulePrefixedLetExpCS )
int alt81=2;
alt81 = dfa81.predict(input);
switch (alt81) {
case 1 :
// InternalCompleteOCL.g:4421:2: (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? )
{
// InternalCompleteOCL.g:4421:2: (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? )
// InternalCompleteOCL.g:4422: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_50);
this_PrefixedPrimaryExpCS_0=rulePrefixedPrimaryExpCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_PrefixedPrimaryExpCS_0;
afterParserOrEnumRuleCall();
}
// InternalCompleteOCL.g:4433:1: ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )?
int alt80=2;
int LA80_0 = input.LA(1);
if ( ((LA80_0>=17 && LA80_0<=18)||LA80_0==27||(LA80_0>=39 && LA80_0<=40)||LA80_0==52||(LA80_0>=55 && LA80_0<=72)) ) {
alt80=1;
}
switch (alt80) {
case 1 :
// InternalCompleteOCL.g:4433:2: () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) )
{
// InternalCompleteOCL.g:4433:2: ()
// InternalCompleteOCL.g:4434:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElementAndSet(
grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0(),
current);
}
}
// InternalCompleteOCL.g:4442:2: ( (lv_name_2_0= ruleBinaryOperatorName ) )
// InternalCompleteOCL.g:4443:1: (lv_name_2_0= ruleBinaryOperatorName )
{
// InternalCompleteOCL.g:4443:1: (lv_name_2_0= ruleBinaryOperatorName )
// InternalCompleteOCL.g:4444:3: lv_name_2_0= ruleBinaryOperatorName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_40);
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();
}
}
}
// InternalCompleteOCL.g:4460:2: ( (lv_ownedRight_3_0= ruleExpCS ) )
// InternalCompleteOCL.g:4461:1: (lv_ownedRight_3_0= ruleExpCS )
{
// InternalCompleteOCL.g:4461:1: (lv_ownedRight_3_0= ruleExpCS )
// InternalCompleteOCL.g:4462: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 :
// InternalCompleteOCL.g:4480: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"
// InternalCompleteOCL.g:4499:1: entryRulePrefixedLetExpCS returns [EObject current=null] : iv_rulePrefixedLetExpCS= rulePrefixedLetExpCS EOF ;
public final EObject entryRulePrefixedLetExpCS() throws RecognitionException {
EObject current = null;
EObject iv_rulePrefixedLetExpCS = null;
try {
// InternalCompleteOCL.g:4500:2: (iv_rulePrefixedLetExpCS= rulePrefixedLetExpCS EOF )
// InternalCompleteOCL.g:4501: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"
// InternalCompleteOCL.g:4508: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 {
// InternalCompleteOCL.g:4511:28: ( ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) ) ) | this_LetExpCS_3= ruleLetExpCS ) )
// InternalCompleteOCL.g:4512:1: ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) ) ) | this_LetExpCS_3= ruleLetExpCS )
{
// InternalCompleteOCL.g:4512:1: ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) ) ) | this_LetExpCS_3= ruleLetExpCS )
int alt82=2;
int LA82_0 = input.LA(1);
if ( ((LA82_0>=52 && LA82_0<=54)) ) {
alt82=1;
}
else if ( (LA82_0==103) ) {
alt82=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 82, 0, input);
throw nvae;
}
switch (alt82) {
case 1 :
// InternalCompleteOCL.g:4512:2: ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) ) )
{
// InternalCompleteOCL.g:4512:2: ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) ) )
// InternalCompleteOCL.g:4512:3: () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) )
{
// InternalCompleteOCL.g:4512:3: ()
// InternalCompleteOCL.g:4513:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElement(
grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0(),
current);
}
}
// InternalCompleteOCL.g:4521:2: ( (lv_name_1_0= ruleUnaryOperatorName ) )
// InternalCompleteOCL.g:4522:1: (lv_name_1_0= ruleUnaryOperatorName )
{
// InternalCompleteOCL.g:4522:1: (lv_name_1_0= ruleUnaryOperatorName )
// InternalCompleteOCL.g:4523:3: lv_name_1_0= ruleUnaryOperatorName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
}
pushFollow(FollowSets000.FOLLOW_40);
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();
}
}
}
// InternalCompleteOCL.g:4539:2: ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) )
// InternalCompleteOCL.g:4540:1: (lv_ownedRight_2_0= rulePrefixedLetExpCS )
{
// InternalCompleteOCL.g:4540:1: (lv_ownedRight_2_0= rulePrefixedLetExpCS )
// InternalCompleteOCL.g:4541: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 :
// InternalCompleteOCL.g:4559: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"
// InternalCompleteOCL.g:4578:1: entryRulePrefixedPrimaryExpCS returns [EObject current=null] : iv_rulePrefixedPrimaryExpCS= rulePrefixedPrimaryExpCS EOF ;
public final EObject entryRulePrefixedPrimaryExpCS() throws RecognitionException {
EObject current = null;
EObject iv_rulePrefixedPrimaryExpCS = null;
try {
// InternalCompleteOCL.g:4579:2: (iv_rulePrefixedPrimaryExpCS= rulePrefixedPrimaryExpCS EOF )
// InternalCompleteOCL.g:4580: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"
// InternalCompleteOCL.g:4587: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 {
// InternalCompleteOCL.g:4590:28: ( ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) ) ) | this_PrimaryExpCS_3= rulePrimaryExpCS ) )
// InternalCompleteOCL.g:4591:1: ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) ) ) | this_PrimaryExpCS_3= rulePrimaryExpCS )
{
// InternalCompleteOCL.g:4591:1: ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) ) ) | this_PrimaryExpCS_3= rulePrimaryExpCS )
int alt83=2;
int LA83_0 = input.LA(1);
if ( ((LA83_0>=52 && LA83_0<=54)) ) {
alt83=1;
}
else if ( ((LA83_0>=RULE_SIMPLE_ID && LA83_0<=RULE_SINGLE_QUOTED_STRING)||LA83_0==21||(LA83_0>=28 && LA83_0<=30)||(LA83_0>=42 && LA83_0<=51)||LA83_0==55||(LA83_0>=73 && LA83_0<=74)||(LA83_0>=76 && LA83_0<=80)||LA83_0==85||(LA83_0>=88 && LA83_0<=91)||LA83_0==98||LA83_0==104) ) {
alt83=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 83, 0, input);
throw nvae;
}
switch (alt83) {
case 1 :
// InternalCompleteOCL.g:4591:2: ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) ) )
{
// InternalCompleteOCL.g:4591:2: ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) ) )
// InternalCompleteOCL.g:4591:3: () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) )
{
// InternalCompleteOCL.g:4591:3: ()
// InternalCompleteOCL.g:4592:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElement(
grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0(),
current);
}
}
// InternalCompleteOCL.g:4600:2: ( (lv_name_1_0= ruleUnaryOperatorName ) )
// InternalCompleteOCL.g:4601:1: (lv_name_1_0= ruleUnaryOperatorName )
{
// InternalCompleteOCL.g:4601:1: (lv_name_1_0= ruleUnaryOperatorName )
// InternalCompleteOCL.g:4602:3: lv_name_1_0= ruleUnaryOperatorName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
}
pushFollow(FollowSets000.FOLLOW_21);
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();
}
}
}
// InternalCompleteOCL.g:4618:2: ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) )
// InternalCompleteOCL.g:4619:1: (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS )
{
// InternalCompleteOCL.g:4619:1: (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS )
// InternalCompleteOCL.g:4620: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 :
// InternalCompleteOCL.g:4638: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"
// InternalCompleteOCL.g:4657:1: entryRulePrimaryExpCS returns [EObject current=null] : iv_rulePrimaryExpCS= rulePrimaryExpCS EOF ;
public final EObject entryRulePrimaryExpCS() throws RecognitionException {
EObject current = null;
EObject iv_rulePrimaryExpCS = null;
try {
// InternalCompleteOCL.g:4658:2: (iv_rulePrimaryExpCS= rulePrimaryExpCS EOF )
// InternalCompleteOCL.g:4659: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"
// InternalCompleteOCL.g:4666: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 {
// InternalCompleteOCL.g:4669: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 ) )
// InternalCompleteOCL.g:4670: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 )
{
// InternalCompleteOCL.g:4670: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 alt84=10;
alt84 = dfa84.predict(input);
switch (alt84) {
case 1 :
// InternalCompleteOCL.g:4671: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 :
// InternalCompleteOCL.g:4684: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 :
// InternalCompleteOCL.g:4697: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 :
// InternalCompleteOCL.g:4710: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 :
// InternalCompleteOCL.g:4723: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 :
// InternalCompleteOCL.g:4736: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 :
// InternalCompleteOCL.g:4749: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 :
// InternalCompleteOCL.g:4762: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 :
// InternalCompleteOCL.g:4775: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 :
// InternalCompleteOCL.g:4788: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"
// InternalCompleteOCL.g:4807:1: entryRuleNameExpCS returns [EObject current=null] : iv_ruleNameExpCS= ruleNameExpCS EOF ;
public final EObject entryRuleNameExpCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleNameExpCS = null;
try {
// InternalCompleteOCL.g:4808:2: (iv_ruleNameExpCS= ruleNameExpCS EOF )
// InternalCompleteOCL.g:4809: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"
// InternalCompleteOCL.g:4816: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 {
// InternalCompleteOCL.g:4819: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' )? ) )
// InternalCompleteOCL.g:4820: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' )? )
{
// InternalCompleteOCL.g:4820: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' )? )
// InternalCompleteOCL.g:4820: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' )?
{
// InternalCompleteOCL.g:4820:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) )
// InternalCompleteOCL.g:4821:1: (lv_ownedPathName_0_0= rulePathNameCS )
{
// InternalCompleteOCL.g:4821:1: (lv_ownedPathName_0_0= rulePathNameCS )
// InternalCompleteOCL.g:4822:3: lv_ownedPathName_0_0= rulePathNameCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
}
pushFollow(FollowSets000.FOLLOW_51);
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();
}
}
}
// InternalCompleteOCL.g:4838:2: ( (lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS ) )*
loop85:
do {
int alt85=2;
int LA85_0 = input.LA(1);
if ( (LA85_0==93) ) {
alt85=1;
}
switch (alt85) {
case 1 :
// InternalCompleteOCL.g:4839:1: (lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS )
{
// InternalCompleteOCL.g:4839:1: (lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS )
// InternalCompleteOCL.g:4840:3: lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
}
pushFollow(FollowSets000.FOLLOW_51);
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 loop85;
}
} while (true);
// InternalCompleteOCL.g:4856:3: ( (lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS ) )?
int alt86=2;
int LA86_0 = input.LA(1);
if ( (LA86_0==21) ) {
alt86=1;
}
switch (alt86) {
case 1 :
// InternalCompleteOCL.g:4857:1: (lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS )
{
// InternalCompleteOCL.g:4857:1: (lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS )
// InternalCompleteOCL.g:4858:3: lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
}
pushFollow(FollowSets000.FOLLOW_52);
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;
}
// InternalCompleteOCL.g:4874:3: ( (lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS ) )?
int alt87=2;
int LA87_0 = input.LA(1);
if ( (LA87_0==81) ) {
alt87=1;
}
switch (alt87) {
case 1 :
// InternalCompleteOCL.g:4875:1: (lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS )
{
// InternalCompleteOCL.g:4875:1: (lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS )
// InternalCompleteOCL.g:4876:3: lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
}
pushFollow(FollowSets000.FOLLOW_53);
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;
}
// InternalCompleteOCL.g:4892:3: ( ( (lv_isPre_4_0= '@' ) ) otherlv_5= 'pre' )?
int alt88=2;
int LA88_0 = input.LA(1);
if ( (LA88_0==92) ) {
alt88=1;
}
switch (alt88) {
case 1 :
// InternalCompleteOCL.g:4892:4: ( (lv_isPre_4_0= '@' ) ) otherlv_5= 'pre'
{
// InternalCompleteOCL.g:4892:4: ( (lv_isPre_4_0= '@' ) )
// InternalCompleteOCL.g:4893:1: (lv_isPre_4_0= '@' )
{
// InternalCompleteOCL.g:4893:1: (lv_isPre_4_0= '@' )
// InternalCompleteOCL.g:4894:3: lv_isPre_4_0= '@'
{
lv_isPre_4_0=(Token)match(input,92,FollowSets000.FOLLOW_54); 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,32,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"
// InternalCompleteOCL.g:4919:1: entryRuleCurlyBracketedClauseCS returns [EObject current=null] : iv_ruleCurlyBracketedClauseCS= ruleCurlyBracketedClauseCS EOF ;
public final EObject entryRuleCurlyBracketedClauseCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleCurlyBracketedClauseCS = null;
try {
// InternalCompleteOCL.g:4920:2: (iv_ruleCurlyBracketedClauseCS= ruleCurlyBracketedClauseCS EOF )
// InternalCompleteOCL.g:4921: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"
// InternalCompleteOCL.g:4928: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 {
// InternalCompleteOCL.g:4931:28: ( ( () otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? otherlv_5= '}' ) )
// InternalCompleteOCL.g:4932:1: ( () otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? otherlv_5= '}' )
{
// InternalCompleteOCL.g:4932:1: ( () otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? otherlv_5= '}' )
// InternalCompleteOCL.g:4932:2: () otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? otherlv_5= '}'
{
// InternalCompleteOCL.g:4932:2: ()
// InternalCompleteOCL.g:4933:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElement(
grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0(),
current);
}
}
otherlv_1=(Token)match(input,81,FollowSets000.FOLLOW_55); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
}
// InternalCompleteOCL.g:4945:1: ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )?
int alt90=2;
int LA90_0 = input.LA(1);
if ( ((LA90_0>=RULE_SIMPLE_ID && LA90_0<=RULE_ESCAPED_ID)||LA90_0==RULE_SINGLE_QUOTED_STRING||(LA90_0>=28 && LA90_0<=30)) ) {
alt90=1;
}
switch (alt90) {
case 1 :
// InternalCompleteOCL.g:4945:2: ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )*
{
// InternalCompleteOCL.g:4945:2: ( (lv_ownedParts_2_0= ruleShadowPartCS ) )
// InternalCompleteOCL.g:4946:1: (lv_ownedParts_2_0= ruleShadowPartCS )
{
// InternalCompleteOCL.g:4946:1: (lv_ownedParts_2_0= ruleShadowPartCS )
// InternalCompleteOCL.g:4947:3: lv_ownedParts_2_0= ruleShadowPartCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0());
}
pushFollow(FollowSets000.FOLLOW_37);
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();
}
}
}
// InternalCompleteOCL.g:4963:2: (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )*
loop89:
do {
int alt89=2;
int LA89_0 = input.LA(1);
if ( (LA89_0==26) ) {
alt89=1;
}
switch (alt89) {
case 1 :
// InternalCompleteOCL.g:4963:4: otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) )
{
otherlv_3=(Token)match(input,26,FollowSets000.FOLLOW_22); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_1_0());
}
// InternalCompleteOCL.g:4967:1: ( (lv_ownedParts_4_0= ruleShadowPartCS ) )
// InternalCompleteOCL.g:4968:1: (lv_ownedParts_4_0= ruleShadowPartCS )
{
// InternalCompleteOCL.g:4968:1: (lv_ownedParts_4_0= ruleShadowPartCS )
// InternalCompleteOCL.g:4969:3: lv_ownedParts_4_0= ruleShadowPartCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_37);
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 loop89;
}
} while (true);
}
break;
}
otherlv_5=(Token)match(input,82,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"
// InternalCompleteOCL.g:4997:1: entryRuleRoundBracketedClauseCS returns [EObject current=null] : iv_ruleRoundBracketedClauseCS= ruleRoundBracketedClauseCS EOF ;
public final EObject entryRuleRoundBracketedClauseCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleRoundBracketedClauseCS = null;
try {
// InternalCompleteOCL.g:4998:2: (iv_ruleRoundBracketedClauseCS= ruleRoundBracketedClauseCS EOF )
// InternalCompleteOCL.g:4999: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"
// InternalCompleteOCL.g:5006: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 {
// InternalCompleteOCL.g:5009: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= ')' ) )
// InternalCompleteOCL.g:5010: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= ')' )
{
// InternalCompleteOCL.g:5010: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= ')' )
// InternalCompleteOCL.g:5010: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= ')'
{
// InternalCompleteOCL.g:5010:2: ()
// InternalCompleteOCL.g:5011:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElement(
grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0(),
current);
}
}
otherlv_1=(Token)match(input,21,FollowSets000.FOLLOW_56); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
}
// InternalCompleteOCL.g:5023:1: ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( ( (lv_ownedArguments_3_1= ruleNavigatingCommaArgCS | lv_ownedArguments_3_2= ruleNavigatingSemiArgCS | lv_ownedArguments_3_3= ruleNavigatingBarArgCS ) ) )* )?
int alt93=2;
int LA93_0 = input.LA(1);
if ( ((LA93_0>=RULE_SIMPLE_ID && LA93_0<=RULE_SINGLE_QUOTED_STRING)||LA93_0==21||LA93_0==23||(LA93_0>=28 && LA93_0<=30)||(LA93_0>=41 && LA93_0<=55)||(LA93_0>=73 && LA93_0<=74)||(LA93_0>=76 && LA93_0<=80)||LA93_0==85||(LA93_0>=88 && LA93_0<=91)||LA93_0==98||(LA93_0>=103 && LA93_0<=104)) ) {
alt93=1;
}
switch (alt93) {
case 1 :
// InternalCompleteOCL.g:5023:2: ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( ( (lv_ownedArguments_3_1= ruleNavigatingCommaArgCS | lv_ownedArguments_3_2= ruleNavigatingSemiArgCS | lv_ownedArguments_3_3= ruleNavigatingBarArgCS ) ) )*
{
// InternalCompleteOCL.g:5023:2: ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) )
// InternalCompleteOCL.g:5024:1: (lv_ownedArguments_2_0= ruleNavigatingArgCS )
{
// InternalCompleteOCL.g:5024:1: (lv_ownedArguments_2_0= ruleNavigatingArgCS )
// InternalCompleteOCL.g:5025:3: lv_ownedArguments_2_0= ruleNavigatingArgCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
}
pushFollow(FollowSets000.FOLLOW_57);
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();
}
}
}
// InternalCompleteOCL.g:5041:2: ( ( (lv_ownedArguments_3_1= ruleNavigatingCommaArgCS | lv_ownedArguments_3_2= ruleNavigatingSemiArgCS | lv_ownedArguments_3_3= ruleNavigatingBarArgCS ) ) )*
loop92:
do {
int alt92=2;
int LA92_0 = input.LA(1);
if ( (LA92_0==26||(LA92_0>=96 && LA92_0<=97)) ) {
alt92=1;
}
switch (alt92) {
case 1 :
// InternalCompleteOCL.g:5042:1: ( (lv_ownedArguments_3_1= ruleNavigatingCommaArgCS | lv_ownedArguments_3_2= ruleNavigatingSemiArgCS | lv_ownedArguments_3_3= ruleNavigatingBarArgCS ) )
{
// InternalCompleteOCL.g:5042:1: ( (lv_ownedArguments_3_1= ruleNavigatingCommaArgCS | lv_ownedArguments_3_2= ruleNavigatingSemiArgCS | lv_ownedArguments_3_3= ruleNavigatingBarArgCS ) )
// InternalCompleteOCL.g:5043:1: (lv_ownedArguments_3_1= ruleNavigatingCommaArgCS | lv_ownedArguments_3_2= ruleNavigatingSemiArgCS | lv_ownedArguments_3_3= ruleNavigatingBarArgCS )
{
// InternalCompleteOCL.g:5043:1: (lv_ownedArguments_3_1= ruleNavigatingCommaArgCS | lv_ownedArguments_3_2= ruleNavigatingSemiArgCS | lv_ownedArguments_3_3= ruleNavigatingBarArgCS )
int alt91=3;
switch ( input.LA(1) ) {
case 26:
{
alt91=1;
}
break;
case 97:
{
alt91=2;
}
break;
case 96:
{
alt91=3;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 91, 0, input);
throw nvae;
}
switch (alt91) {
case 1 :
// InternalCompleteOCL.g:5044:3: lv_ownedArguments_3_1= ruleNavigatingCommaArgCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0_0());
}
pushFollow(FollowSets000.FOLLOW_57);
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 :
// InternalCompleteOCL.g:5059:8: lv_ownedArguments_3_2= ruleNavigatingSemiArgCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_1_0_1());
}
pushFollow(FollowSets000.FOLLOW_57);
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 :
// InternalCompleteOCL.g:5074:8: lv_ownedArguments_3_3= ruleNavigatingBarArgCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_1_0_2());
}
pushFollow(FollowSets000.FOLLOW_57);
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 loop92;
}
} while (true);
}
break;
}
otherlv_4=(Token)match(input,22,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"
// InternalCompleteOCL.g:5104:1: entryRuleSquareBracketedClauseCS returns [EObject current=null] : iv_ruleSquareBracketedClauseCS= ruleSquareBracketedClauseCS EOF ;
public final EObject entryRuleSquareBracketedClauseCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleSquareBracketedClauseCS = null;
try {
// InternalCompleteOCL.g:5105:2: (iv_ruleSquareBracketedClauseCS= ruleSquareBracketedClauseCS EOF )
// InternalCompleteOCL.g:5106: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"
// InternalCompleteOCL.g:5113: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 {
// InternalCompleteOCL.g:5116:28: ( (otherlv_0= '[' ( (lv_ownedTerms_1_0= ruleExpCS ) ) (otherlv_2= ',' ( (lv_ownedTerms_3_0= ruleExpCS ) ) )* otherlv_4= ']' ) )
// InternalCompleteOCL.g:5117:1: (otherlv_0= '[' ( (lv_ownedTerms_1_0= ruleExpCS ) ) (otherlv_2= ',' ( (lv_ownedTerms_3_0= ruleExpCS ) ) )* otherlv_4= ']' )
{
// InternalCompleteOCL.g:5117:1: (otherlv_0= '[' ( (lv_ownedTerms_1_0= ruleExpCS ) ) (otherlv_2= ',' ( (lv_ownedTerms_3_0= ruleExpCS ) ) )* otherlv_4= ']' )
// InternalCompleteOCL.g:5117:3: otherlv_0= '[' ( (lv_ownedTerms_1_0= ruleExpCS ) ) (otherlv_2= ',' ( (lv_ownedTerms_3_0= ruleExpCS ) ) )* otherlv_4= ']'
{
otherlv_0=(Token)match(input,93,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0());
}
// InternalCompleteOCL.g:5121:1: ( (lv_ownedTerms_1_0= ruleExpCS ) )
// InternalCompleteOCL.g:5122:1: (lv_ownedTerms_1_0= ruleExpCS )
{
// InternalCompleteOCL.g:5122:1: (lv_ownedTerms_1_0= ruleExpCS )
// InternalCompleteOCL.g:5123:3: lv_ownedTerms_1_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
}
pushFollow(FollowSets000.FOLLOW_58);
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();
}
}
}
// InternalCompleteOCL.g:5139:2: (otherlv_2= ',' ( (lv_ownedTerms_3_0= ruleExpCS ) ) )*
loop94:
do {
int alt94=2;
int LA94_0 = input.LA(1);
if ( (LA94_0==26) ) {
alt94=1;
}
switch (alt94) {
case 1 :
// InternalCompleteOCL.g:5139:4: otherlv_2= ',' ( (lv_ownedTerms_3_0= ruleExpCS ) )
{
otherlv_2=(Token)match(input,26,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0());
}
// InternalCompleteOCL.g:5143:1: ( (lv_ownedTerms_3_0= ruleExpCS ) )
// InternalCompleteOCL.g:5144:1: (lv_ownedTerms_3_0= ruleExpCS )
{
// InternalCompleteOCL.g:5144:1: (lv_ownedTerms_3_0= ruleExpCS )
// InternalCompleteOCL.g:5145:3: lv_ownedTerms_3_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
}
pushFollow(FollowSets000.FOLLOW_58);
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 loop94;
}
} while (true);
otherlv_4=(Token)match(input,94,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"
// InternalCompleteOCL.g:5173:1: entryRuleNavigatingArgCS returns [EObject current=null] : iv_ruleNavigatingArgCS= ruleNavigatingArgCS EOF ;
public final EObject entryRuleNavigatingArgCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleNavigatingArgCS = null;
try {
// InternalCompleteOCL.g:5174:2: (iv_ruleNavigatingArgCS= ruleNavigatingArgCS EOF )
// InternalCompleteOCL.g:5175: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"
// InternalCompleteOCL.g:5182:1: ruleNavigatingArgCS returns [EObject current=null] : ( ( ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( ( (otherlv_1= 'with' | otherlv_2= '<-' ) ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) ( (otherlv_8= 'with' | otherlv_9= '<-' ) ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) ) )? (otherlv_11= '=' ( (lv_ownedInitExpression_12_0= ruleExpCS ) ) )? ) | ( (otherlv_13= ':' ( (lv_ownedType_14_0= ruleTypeExpCS ) ) )? ( (otherlv_15= 'with' | otherlv_16= '<-' ) ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) ) )? otherlv_18= 'in' ( (lv_ownedInitExpression_19_0= ruleExpCS ) ) ) )? ) | (otherlv_20= ':' ( (lv_ownedType_21_0= ruleTypeExpCS ) ) ) ) ;
public final EObject ruleNavigatingArgCS() throws RecognitionException {
EObject current = null;
Token otherlv_1=null;
Token otherlv_2=null;
Token otherlv_4=null;
Token otherlv_6=null;
Token otherlv_8=null;
Token otherlv_9=null;
Token otherlv_11=null;
Token otherlv_13=null;
Token otherlv_15=null;
Token otherlv_16=null;
Token otherlv_18=null;
Token otherlv_20=null;
EObject lv_ownedNameExpression_0_0 = null;
EObject lv_ownedCoIterator_3_0 = null;
EObject lv_ownedInitExpression_5_0 = null;
EObject lv_ownedType_7_0 = null;
EObject lv_ownedCoIterator_10_0 = null;
EObject lv_ownedInitExpression_12_0 = null;
EObject lv_ownedType_14_0 = null;
EObject lv_ownedCoIterator_17_0 = null;
EObject lv_ownedInitExpression_19_0 = null;
EObject lv_ownedType_21_0 = null;
enterRule();
try {
// InternalCompleteOCL.g:5185:28: ( ( ( ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( ( (otherlv_1= 'with' | otherlv_2= '<-' ) ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) ( (otherlv_8= 'with' | otherlv_9= '<-' ) ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) ) )? (otherlv_11= '=' ( (lv_ownedInitExpression_12_0= ruleExpCS ) ) )? ) | ( (otherlv_13= ':' ( (lv_ownedType_14_0= ruleTypeExpCS ) ) )? ( (otherlv_15= 'with' | otherlv_16= '<-' ) ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) ) )? otherlv_18= 'in' ( (lv_ownedInitExpression_19_0= ruleExpCS ) ) ) )? ) | (otherlv_20= ':' ( (lv_ownedType_21_0= ruleTypeExpCS ) ) ) ) )
// InternalCompleteOCL.g:5186:1: ( ( ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( ( (otherlv_1= 'with' | otherlv_2= '<-' ) ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) ( (otherlv_8= 'with' | otherlv_9= '<-' ) ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) ) )? (otherlv_11= '=' ( (lv_ownedInitExpression_12_0= ruleExpCS ) ) )? ) | ( (otherlv_13= ':' ( (lv_ownedType_14_0= ruleTypeExpCS ) ) )? ( (otherlv_15= 'with' | otherlv_16= '<-' ) ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) ) )? otherlv_18= 'in' ( (lv_ownedInitExpression_19_0= ruleExpCS ) ) ) )? ) | (otherlv_20= ':' ( (lv_ownedType_21_0= ruleTypeExpCS ) ) ) )
{
// InternalCompleteOCL.g:5186:1: ( ( ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( ( (otherlv_1= 'with' | otherlv_2= '<-' ) ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) ( (otherlv_8= 'with' | otherlv_9= '<-' ) ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) ) )? (otherlv_11= '=' ( (lv_ownedInitExpression_12_0= ruleExpCS ) ) )? ) | ( (otherlv_13= ':' ( (lv_ownedType_14_0= ruleTypeExpCS ) ) )? ( (otherlv_15= 'with' | otherlv_16= '<-' ) ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) ) )? otherlv_18= 'in' ( (lv_ownedInitExpression_19_0= ruleExpCS ) ) ) )? ) | (otherlv_20= ':' ( (lv_ownedType_21_0= ruleTypeExpCS ) ) ) )
int alt104=2;
int LA104_0 = input.LA(1);
if ( ((LA104_0>=RULE_SIMPLE_ID && LA104_0<=RULE_SINGLE_QUOTED_STRING)||LA104_0==21||(LA104_0>=28 && LA104_0<=30)||(LA104_0>=41 && LA104_0<=55)||(LA104_0>=73 && LA104_0<=74)||(LA104_0>=76 && LA104_0<=80)||LA104_0==85||(LA104_0>=88 && LA104_0<=91)||LA104_0==98||(LA104_0>=103 && LA104_0<=104)) ) {
alt104=1;
}
else if ( (LA104_0==23) ) {
alt104=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 104, 0, input);
throw nvae;
}
switch (alt104) {
case 1 :
// InternalCompleteOCL.g:5186:2: ( ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( ( (otherlv_1= 'with' | otherlv_2= '<-' ) ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) ( (otherlv_8= 'with' | otherlv_9= '<-' ) ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) ) )? (otherlv_11= '=' ( (lv_ownedInitExpression_12_0= ruleExpCS ) ) )? ) | ( (otherlv_13= ':' ( (lv_ownedType_14_0= ruleTypeExpCS ) ) )? ( (otherlv_15= 'with' | otherlv_16= '<-' ) ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) ) )? otherlv_18= 'in' ( (lv_ownedInitExpression_19_0= ruleExpCS ) ) ) )? )
{
// InternalCompleteOCL.g:5186:2: ( ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( ( (otherlv_1= 'with' | otherlv_2= '<-' ) ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) ( (otherlv_8= 'with' | otherlv_9= '<-' ) ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) ) )? (otherlv_11= '=' ( (lv_ownedInitExpression_12_0= ruleExpCS ) ) )? ) | ( (otherlv_13= ':' ( (lv_ownedType_14_0= ruleTypeExpCS ) ) )? ( (otherlv_15= 'with' | otherlv_16= '<-' ) ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) ) )? otherlv_18= 'in' ( (lv_ownedInitExpression_19_0= ruleExpCS ) ) ) )? )
// InternalCompleteOCL.g:5186:3: ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( ( (otherlv_1= 'with' | otherlv_2= '<-' ) ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) ( (otherlv_8= 'with' | otherlv_9= '<-' ) ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) ) )? (otherlv_11= '=' ( (lv_ownedInitExpression_12_0= ruleExpCS ) ) )? ) | ( (otherlv_13= ':' ( (lv_ownedType_14_0= ruleTypeExpCS ) ) )? ( (otherlv_15= 'with' | otherlv_16= '<-' ) ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) ) )? otherlv_18= 'in' ( (lv_ownedInitExpression_19_0= ruleExpCS ) ) ) )?
{
// InternalCompleteOCL.g:5186:3: ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) )
// InternalCompleteOCL.g:5187:1: (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS )
{
// InternalCompleteOCL.g:5187:1: (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS )
// InternalCompleteOCL.g:5188:3: lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
}
pushFollow(FollowSets000.FOLLOW_59);
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.completeocl.CompleteOCL.NavigatingArgExpCS");
afterParserOrEnumRuleCall();
}
}
}
// InternalCompleteOCL.g:5204:2: ( ( (otherlv_1= 'with' | otherlv_2= '<-' ) ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) ( (otherlv_8= 'with' | otherlv_9= '<-' ) ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) ) )? (otherlv_11= '=' ( (lv_ownedInitExpression_12_0= ruleExpCS ) ) )? ) | ( (otherlv_13= ':' ( (lv_ownedType_14_0= ruleTypeExpCS ) ) )? ( (otherlv_15= 'with' | otherlv_16= '<-' ) ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) ) )? otherlv_18= 'in' ( (lv_ownedInitExpression_19_0= ruleExpCS ) ) ) )?
int alt103=4;
alt103 = dfa103.predict(input);
switch (alt103) {
case 1 :
// InternalCompleteOCL.g:5204:3: ( (otherlv_1= 'with' | otherlv_2= '<-' ) ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )
{
// InternalCompleteOCL.g:5204:3: ( (otherlv_1= 'with' | otherlv_2= '<-' ) ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )
// InternalCompleteOCL.g:5204:4: (otherlv_1= 'with' | otherlv_2= '<-' ) ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )?
{
// InternalCompleteOCL.g:5204:4: (otherlv_1= 'with' | otherlv_2= '<-' )
int alt95=2;
int LA95_0 = input.LA(1);
if ( (LA95_0==86) ) {
alt95=1;
}
else if ( (LA95_0==87) ) {
alt95=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 95, 0, input);
throw nvae;
}
switch (alt95) {
case 1 :
// InternalCompleteOCL.g:5204:6: otherlv_1= 'with'
{
otherlv_1=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getNavigatingArgCSAccess().getWithKeyword_0_1_0_0_0());
}
}
break;
case 2 :
// InternalCompleteOCL.g:5209:7: otherlv_2= '<-'
{
otherlv_2=(Token)match(input,87,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getNavigatingArgCSAccess().getLessThanSignHyphenMinusKeyword_0_1_0_0_1());
}
}
break;
}
// InternalCompleteOCL.g:5213:2: ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) )
// InternalCompleteOCL.g:5214:1: (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS )
{
// InternalCompleteOCL.g:5214:1: (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS )
// InternalCompleteOCL.g:5215:3: lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_0_1_0());
}
pushFollow(FollowSets000.FOLLOW_60);
lv_ownedCoIterator_3_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_3_0,
"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CoIteratorVariableCS");
afterParserOrEnumRuleCall();
}
}
}
// InternalCompleteOCL.g:5231:2: (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )?
int alt96=2;
int LA96_0 = input.LA(1);
if ( (LA96_0==27) ) {
alt96=1;
}
switch (alt96) {
case 1 :
// InternalCompleteOCL.g:5231:4: otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
{
otherlv_4=(Token)match(input,27,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0());
}
// InternalCompleteOCL.g:5235:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
// InternalCompleteOCL.g:5236:1: (lv_ownedInitExpression_5_0= ruleExpCS )
{
// InternalCompleteOCL.g:5236:1: (lv_ownedInitExpression_5_0= ruleExpCS )
// InternalCompleteOCL.g:5237:3: lv_ownedInitExpression_5_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_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.getNavigatingArgCSRule());
}
set(
current,
"ownedInitExpression",
lv_ownedInitExpression_5_0,
"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
}
}
break;
case 2 :
// InternalCompleteOCL.g:5254:6: (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) ( (otherlv_8= 'with' | otherlv_9= '<-' ) ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) ) )? (otherlv_11= '=' ( (lv_ownedInitExpression_12_0= ruleExpCS ) ) )? )
{
// InternalCompleteOCL.g:5254:6: (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) ( (otherlv_8= 'with' | otherlv_9= '<-' ) ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) ) )? (otherlv_11= '=' ( (lv_ownedInitExpression_12_0= ruleExpCS ) ) )? )
// InternalCompleteOCL.g:5254:8: otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) ( (otherlv_8= 'with' | otherlv_9= '<-' ) ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) ) )? (otherlv_11= '=' ( (lv_ownedInitExpression_12_0= ruleExpCS ) ) )?
{
otherlv_6=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_6, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_1_0());
}
// InternalCompleteOCL.g:5258:1: ( (lv_ownedType_7_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:5259:1: (lv_ownedType_7_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:5259:1: (lv_ownedType_7_0= ruleTypeExpCS )
// InternalCompleteOCL.g:5260:3: lv_ownedType_7_0= ruleTypeExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_61);
lv_ownedType_7_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_7_0,
"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
afterParserOrEnumRuleCall();
}
}
}
// InternalCompleteOCL.g:5276:2: ( (otherlv_8= 'with' | otherlv_9= '<-' ) ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) ) )?
int alt98=2;
int LA98_0 = input.LA(1);
if ( ((LA98_0>=86 && LA98_0<=87)) ) {
alt98=1;
}
switch (alt98) {
case 1 :
// InternalCompleteOCL.g:5276:3: (otherlv_8= 'with' | otherlv_9= '<-' ) ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) )
{
// InternalCompleteOCL.g:5276:3: (otherlv_8= 'with' | otherlv_9= '<-' )
int alt97=2;
int LA97_0 = input.LA(1);
if ( (LA97_0==86) ) {
alt97=1;
}
else if ( (LA97_0==87) ) {
alt97=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 97, 0, input);
throw nvae;
}
switch (alt97) {
case 1 :
// InternalCompleteOCL.g:5276:5: otherlv_8= 'with'
{
otherlv_8=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_8, grammarAccess.getNavigatingArgCSAccess().getWithKeyword_0_1_1_2_0_0());
}
}
break;
case 2 :
// InternalCompleteOCL.g:5281:7: otherlv_9= '<-'
{
otherlv_9=(Token)match(input,87,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_9, grammarAccess.getNavigatingArgCSAccess().getLessThanSignHyphenMinusKeyword_0_1_1_2_0_1());
}
}
break;
}
// InternalCompleteOCL.g:5285:2: ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) )
// InternalCompleteOCL.g:5286:1: (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS )
{
// InternalCompleteOCL.g:5286:1: (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS )
// InternalCompleteOCL.g:5287:3: lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_1_2_1_0());
}
pushFollow(FollowSets000.FOLLOW_60);
lv_ownedCoIterator_10_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_10_0,
"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CoIteratorVariableCS");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
// InternalCompleteOCL.g:5303:4: (otherlv_11= '=' ( (lv_ownedInitExpression_12_0= ruleExpCS ) ) )?
int alt99=2;
int LA99_0 = input.LA(1);
if ( (LA99_0==27) ) {
alt99=1;
}
switch (alt99) {
case 1 :
// InternalCompleteOCL.g:5303:6: otherlv_11= '=' ( (lv_ownedInitExpression_12_0= ruleExpCS ) )
{
otherlv_11=(Token)match(input,27,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_11, grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_1_3_0());
}
// InternalCompleteOCL.g:5307:1: ( (lv_ownedInitExpression_12_0= ruleExpCS ) )
// InternalCompleteOCL.g:5308:1: (lv_ownedInitExpression_12_0= ruleExpCS )
{
// InternalCompleteOCL.g:5308:1: (lv_ownedInitExpression_12_0= ruleExpCS )
// InternalCompleteOCL.g:5309:3: lv_ownedInitExpression_12_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_3_1_0());
}
pushFollow(FollowSets000.FOLLOW_2);
lv_ownedInitExpression_12_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_12_0,
"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
}
}
break;
case 3 :
// InternalCompleteOCL.g:5326:6: ( (otherlv_13= ':' ( (lv_ownedType_14_0= ruleTypeExpCS ) ) )? ( (otherlv_15= 'with' | otherlv_16= '<-' ) ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) ) )? otherlv_18= 'in' ( (lv_ownedInitExpression_19_0= ruleExpCS ) ) )
{
// InternalCompleteOCL.g:5326:6: ( (otherlv_13= ':' ( (lv_ownedType_14_0= ruleTypeExpCS ) ) )? ( (otherlv_15= 'with' | otherlv_16= '<-' ) ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) ) )? otherlv_18= 'in' ( (lv_ownedInitExpression_19_0= ruleExpCS ) ) )
// InternalCompleteOCL.g:5326:7: (otherlv_13= ':' ( (lv_ownedType_14_0= ruleTypeExpCS ) ) )? ( (otherlv_15= 'with' | otherlv_16= '<-' ) ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) ) )? otherlv_18= 'in' ( (lv_ownedInitExpression_19_0= ruleExpCS ) )
{
// InternalCompleteOCL.g:5326:7: (otherlv_13= ':' ( (lv_ownedType_14_0= ruleTypeExpCS ) ) )?
int alt100=2;
int LA100_0 = input.LA(1);
if ( (LA100_0==23) ) {
alt100=1;
}
switch (alt100) {
case 1 :
// InternalCompleteOCL.g:5326:9: otherlv_13= ':' ( (lv_ownedType_14_0= ruleTypeExpCS ) )
{
otherlv_13=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_13, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_2_0_0());
}
// InternalCompleteOCL.g:5330:1: ( (lv_ownedType_14_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:5331:1: (lv_ownedType_14_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:5331:1: (lv_ownedType_14_0= ruleTypeExpCS )
// InternalCompleteOCL.g:5332:3: lv_ownedType_14_0= ruleTypeExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_2_0_1_0());
}
pushFollow(FollowSets000.FOLLOW_62);
lv_ownedType_14_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_14_0,
"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
// InternalCompleteOCL.g:5348:4: ( (otherlv_15= 'with' | otherlv_16= '<-' ) ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) ) )?
int alt102=2;
int LA102_0 = input.LA(1);
if ( ((LA102_0>=86 && LA102_0<=87)) ) {
alt102=1;
}
switch (alt102) {
case 1 :
// InternalCompleteOCL.g:5348:5: (otherlv_15= 'with' | otherlv_16= '<-' ) ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) )
{
// InternalCompleteOCL.g:5348:5: (otherlv_15= 'with' | otherlv_16= '<-' )
int alt101=2;
int LA101_0 = input.LA(1);
if ( (LA101_0==86) ) {
alt101=1;
}
else if ( (LA101_0==87) ) {
alt101=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 101, 0, input);
throw nvae;
}
switch (alt101) {
case 1 :
// InternalCompleteOCL.g:5348:7: otherlv_15= 'with'
{
otherlv_15=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_15, grammarAccess.getNavigatingArgCSAccess().getWithKeyword_0_1_2_1_0_0());
}
}
break;
case 2 :
// InternalCompleteOCL.g:5353:7: otherlv_16= '<-'
{
otherlv_16=(Token)match(input,87,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_16, grammarAccess.getNavigatingArgCSAccess().getLessThanSignHyphenMinusKeyword_0_1_2_1_0_1());
}
}
break;
}
// InternalCompleteOCL.g:5357:2: ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) )
// InternalCompleteOCL.g:5358:1: (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS )
{
// InternalCompleteOCL.g:5358:1: (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS )
// InternalCompleteOCL.g:5359:3: lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_2_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_63);
lv_ownedCoIterator_17_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_17_0,
"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CoIteratorVariableCS");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
otherlv_18=(Token)match(input,95,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_18, grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_2_2());
}
// InternalCompleteOCL.g:5379:1: ( (lv_ownedInitExpression_19_0= ruleExpCS ) )
// InternalCompleteOCL.g:5380:1: (lv_ownedInitExpression_19_0= ruleExpCS )
{
// InternalCompleteOCL.g:5380:1: (lv_ownedInitExpression_19_0= ruleExpCS )
// InternalCompleteOCL.g:5381:3: lv_ownedInitExpression_19_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_2_3_0());
}
pushFollow(FollowSets000.FOLLOW_2);
lv_ownedInitExpression_19_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_19_0,
"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
afterParserOrEnumRuleCall();
}
}
}
}
}
break;
}
}
}
break;
case 2 :
// InternalCompleteOCL.g:5398:6: (otherlv_20= ':' ( (lv_ownedType_21_0= ruleTypeExpCS ) ) )
{
// InternalCompleteOCL.g:5398:6: (otherlv_20= ':' ( (lv_ownedType_21_0= ruleTypeExpCS ) ) )
// InternalCompleteOCL.g:5398:8: otherlv_20= ':' ( (lv_ownedType_21_0= ruleTypeExpCS ) )
{
otherlv_20=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_20, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
}
// InternalCompleteOCL.g:5402:1: ( (lv_ownedType_21_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:5403:1: (lv_ownedType_21_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:5403:1: (lv_ownedType_21_0= ruleTypeExpCS )
// InternalCompleteOCL.g:5404:3: lv_ownedType_21_0= ruleTypeExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_2);
lv_ownedType_21_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_21_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"
// InternalCompleteOCL.g:5428:1: entryRuleNavigatingBarArgCS returns [EObject current=null] : iv_ruleNavigatingBarArgCS= ruleNavigatingBarArgCS EOF ;
public final EObject entryRuleNavigatingBarArgCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleNavigatingBarArgCS = null;
try {
// InternalCompleteOCL.g:5429:2: (iv_ruleNavigatingBarArgCS= ruleNavigatingBarArgCS EOF )
// InternalCompleteOCL.g:5430: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"
// InternalCompleteOCL.g:5437: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 {
// InternalCompleteOCL.g:5440:28: ( ( ( (lv_prefix_0_0= '|' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? ) )
// InternalCompleteOCL.g:5441:1: ( ( (lv_prefix_0_0= '|' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? )
{
// InternalCompleteOCL.g:5441:1: ( ( (lv_prefix_0_0= '|' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? )
// InternalCompleteOCL.g:5441:2: ( (lv_prefix_0_0= '|' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )?
{
// InternalCompleteOCL.g:5441:2: ( (lv_prefix_0_0= '|' ) )
// InternalCompleteOCL.g:5442:1: (lv_prefix_0_0= '|' )
{
// InternalCompleteOCL.g:5442:1: (lv_prefix_0_0= '|' )
// InternalCompleteOCL.g:5443:3: lv_prefix_0_0= '|'
{
lv_prefix_0_0=(Token)match(input,96,FollowSets000.FOLLOW_64); 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, "|");
}
}
}
// InternalCompleteOCL.g:5456:2: ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) )
// InternalCompleteOCL.g:5457:1: (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS )
{
// InternalCompleteOCL.g:5457:1: (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS )
// InternalCompleteOCL.g:5458:3: lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
}
pushFollow(FollowSets000.FOLLOW_65);
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.completeocl.CompleteOCL.NavigatingArgExpCS");
afterParserOrEnumRuleCall();
}
}
}
// InternalCompleteOCL.g:5474:2: (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )?
int alt106=2;
int LA106_0 = input.LA(1);
if ( (LA106_0==23) ) {
alt106=1;
}
switch (alt106) {
case 1 :
// InternalCompleteOCL.g:5474:4: otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )?
{
otherlv_2=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
}
// InternalCompleteOCL.g:5478:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:5479:1: (lv_ownedType_3_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:5479:1: (lv_ownedType_3_0= ruleTypeExpCS )
// InternalCompleteOCL.g:5480:3: lv_ownedType_3_0= ruleTypeExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
}
pushFollow(FollowSets000.FOLLOW_60);
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();
}
}
}
// InternalCompleteOCL.g:5496:2: (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )?
int alt105=2;
int LA105_0 = input.LA(1);
if ( (LA105_0==27) ) {
alt105=1;
}
switch (alt105) {
case 1 :
// InternalCompleteOCL.g:5496:4: otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
{
otherlv_4=(Token)match(input,27,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0());
}
// InternalCompleteOCL.g:5500:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
// InternalCompleteOCL.g:5501:1: (lv_ownedInitExpression_5_0= ruleExpCS )
{
// InternalCompleteOCL.g:5501:1: (lv_ownedInitExpression_5_0= ruleExpCS )
// InternalCompleteOCL.g:5502: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"
// InternalCompleteOCL.g:5526:1: entryRuleNavigatingCommaArgCS returns [EObject current=null] : iv_ruleNavigatingCommaArgCS= ruleNavigatingCommaArgCS EOF ;
public final EObject entryRuleNavigatingCommaArgCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleNavigatingCommaArgCS = null;
try {
// InternalCompleteOCL.g:5527:2: (iv_ruleNavigatingCommaArgCS= ruleNavigatingCommaArgCS EOF )
// InternalCompleteOCL.g:5528: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"
// InternalCompleteOCL.g:5535:1: ruleNavigatingCommaArgCS returns [EObject current=null] : ( ( (lv_prefix_0_0= ',' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) ( ( (otherlv_2= 'with' | otherlv_3= '<-' ) ( (lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS ) ) (otherlv_5= '=' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) )? ) | (otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ( (otherlv_9= 'with' | otherlv_10= '<-' ) ( (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS ) ) )? (otherlv_12= '=' ( (lv_ownedInitExpression_13_0= ruleExpCS ) ) )? ) | ( (otherlv_14= ':' ( (lv_ownedType_15_0= ruleTypeExpCS ) ) )? ( (otherlv_16= 'with' | otherlv_17= '<-' ) ( (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS ) ) )? otherlv_19= 'in' ( (lv_ownedInitExpression_20_0= ruleExpCS ) ) ) )? ) ;
public final EObject ruleNavigatingCommaArgCS() throws RecognitionException {
EObject current = null;
Token lv_prefix_0_0=null;
Token otherlv_2=null;
Token otherlv_3=null;
Token otherlv_5=null;
Token otherlv_7=null;
Token otherlv_9=null;
Token otherlv_10=null;
Token otherlv_12=null;
Token otherlv_14=null;
Token otherlv_16=null;
Token otherlv_17=null;
Token otherlv_19=null;
EObject lv_ownedNameExpression_1_0 = null;
EObject lv_ownedCoIterator_4_0 = null;
EObject lv_ownedInitExpression_6_0 = null;
EObject lv_ownedType_8_0 = null;
EObject lv_ownedCoIterator_11_0 = null;
EObject lv_ownedInitExpression_13_0 = null;
EObject lv_ownedType_15_0 = null;
EObject lv_ownedCoIterator_18_0 = null;
EObject lv_ownedInitExpression_20_0 = null;
enterRule();
try {
// InternalCompleteOCL.g:5538:28: ( ( ( (lv_prefix_0_0= ',' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) ( ( (otherlv_2= 'with' | otherlv_3= '<-' ) ( (lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS ) ) (otherlv_5= '=' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) )? ) | (otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ( (otherlv_9= 'with' | otherlv_10= '<-' ) ( (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS ) ) )? (otherlv_12= '=' ( (lv_ownedInitExpression_13_0= ruleExpCS ) ) )? ) | ( (otherlv_14= ':' ( (lv_ownedType_15_0= ruleTypeExpCS ) ) )? ( (otherlv_16= 'with' | otherlv_17= '<-' ) ( (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS ) ) )? otherlv_19= 'in' ( (lv_ownedInitExpression_20_0= ruleExpCS ) ) ) )? ) )
// InternalCompleteOCL.g:5539:1: ( ( (lv_prefix_0_0= ',' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) ( ( (otherlv_2= 'with' | otherlv_3= '<-' ) ( (lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS ) ) (otherlv_5= '=' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) )? ) | (otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ( (otherlv_9= 'with' | otherlv_10= '<-' ) ( (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS ) ) )? (otherlv_12= '=' ( (lv_ownedInitExpression_13_0= ruleExpCS ) ) )? ) | ( (otherlv_14= ':' ( (lv_ownedType_15_0= ruleTypeExpCS ) ) )? ( (otherlv_16= 'with' | otherlv_17= '<-' ) ( (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS ) ) )? otherlv_19= 'in' ( (lv_ownedInitExpression_20_0= ruleExpCS ) ) ) )? )
{
// InternalCompleteOCL.g:5539:1: ( ( (lv_prefix_0_0= ',' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) ( ( (otherlv_2= 'with' | otherlv_3= '<-' ) ( (lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS ) ) (otherlv_5= '=' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) )? ) | (otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ( (otherlv_9= 'with' | otherlv_10= '<-' ) ( (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS ) ) )? (otherlv_12= '=' ( (lv_ownedInitExpression_13_0= ruleExpCS ) ) )? ) | ( (otherlv_14= ':' ( (lv_ownedType_15_0= ruleTypeExpCS ) ) )? ( (otherlv_16= 'with' | otherlv_17= '<-' ) ( (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS ) ) )? otherlv_19= 'in' ( (lv_ownedInitExpression_20_0= ruleExpCS ) ) ) )? )
// InternalCompleteOCL.g:5539:2: ( (lv_prefix_0_0= ',' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) ( ( (otherlv_2= 'with' | otherlv_3= '<-' ) ( (lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS ) ) (otherlv_5= '=' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) )? ) | (otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ( (otherlv_9= 'with' | otherlv_10= '<-' ) ( (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS ) ) )? (otherlv_12= '=' ( (lv_ownedInitExpression_13_0= ruleExpCS ) ) )? ) | ( (otherlv_14= ':' ( (lv_ownedType_15_0= ruleTypeExpCS ) ) )? ( (otherlv_16= 'with' | otherlv_17= '<-' ) ( (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS ) ) )? otherlv_19= 'in' ( (lv_ownedInitExpression_20_0= ruleExpCS ) ) ) )?
{
// InternalCompleteOCL.g:5539:2: ( (lv_prefix_0_0= ',' ) )
// InternalCompleteOCL.g:5540:1: (lv_prefix_0_0= ',' )
{
// InternalCompleteOCL.g:5540:1: (lv_prefix_0_0= ',' )
// InternalCompleteOCL.g:5541:3: lv_prefix_0_0= ','
{
lv_prefix_0_0=(Token)match(input,26,FollowSets000.FOLLOW_64); 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, ",");
}
}
}
// InternalCompleteOCL.g:5554:2: ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) )
// InternalCompleteOCL.g:5555:1: (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS )
{
// InternalCompleteOCL.g:5555:1: (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS )
// InternalCompleteOCL.g:5556:3: lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
}
pushFollow(FollowSets000.FOLLOW_59);
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.completeocl.CompleteOCL.NavigatingArgExpCS");
afterParserOrEnumRuleCall();
}
}
}
// InternalCompleteOCL.g:5572:2: ( ( (otherlv_2= 'with' | otherlv_3= '<-' ) ( (lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS ) ) (otherlv_5= '=' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) )? ) | (otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ( (otherlv_9= 'with' | otherlv_10= '<-' ) ( (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS ) ) )? (otherlv_12= '=' ( (lv_ownedInitExpression_13_0= ruleExpCS ) ) )? ) | ( (otherlv_14= ':' ( (lv_ownedType_15_0= ruleTypeExpCS ) ) )? ( (otherlv_16= 'with' | otherlv_17= '<-' ) ( (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS ) ) )? otherlv_19= 'in' ( (lv_ownedInitExpression_20_0= ruleExpCS ) ) ) )?
int alt115=4;
alt115 = dfa115.predict(input);
switch (alt115) {
case 1 :
// InternalCompleteOCL.g:5572:3: ( (otherlv_2= 'with' | otherlv_3= '<-' ) ( (lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS ) ) (otherlv_5= '=' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) )? )
{
// InternalCompleteOCL.g:5572:3: ( (otherlv_2= 'with' | otherlv_3= '<-' ) ( (lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS ) ) (otherlv_5= '=' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) )? )
// InternalCompleteOCL.g:5572:4: (otherlv_2= 'with' | otherlv_3= '<-' ) ( (lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS ) ) (otherlv_5= '=' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) )?
{
// InternalCompleteOCL.g:5572:4: (otherlv_2= 'with' | otherlv_3= '<-' )
int alt107=2;
int LA107_0 = input.LA(1);
if ( (LA107_0==86) ) {
alt107=1;
}
else if ( (LA107_0==87) ) {
alt107=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 107, 0, input);
throw nvae;
}
switch (alt107) {
case 1 :
// InternalCompleteOCL.g:5572:6: otherlv_2= 'with'
{
otherlv_2=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getNavigatingCommaArgCSAccess().getWithKeyword_2_0_0_0());
}
}
break;
case 2 :
// InternalCompleteOCL.g:5577:7: otherlv_3= '<-'
{
otherlv_3=(Token)match(input,87,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getNavigatingCommaArgCSAccess().getLessThanSignHyphenMinusKeyword_2_0_0_1());
}
}
break;
}
// InternalCompleteOCL.g:5581:2: ( (lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS ) )
// InternalCompleteOCL.g:5582:1: (lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS )
{
// InternalCompleteOCL.g:5582:1: (lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS )
// InternalCompleteOCL.g:5583:3: lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_0_1_0());
}
pushFollow(FollowSets000.FOLLOW_60);
lv_ownedCoIterator_4_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_4_0,
"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CoIteratorVariableCS");
afterParserOrEnumRuleCall();
}
}
}
// InternalCompleteOCL.g:5599:2: (otherlv_5= '=' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) )?
int alt108=2;
int LA108_0 = input.LA(1);
if ( (LA108_0==27) ) {
alt108=1;
}
switch (alt108) {
case 1 :
// InternalCompleteOCL.g:5599:4: otherlv_5= '=' ( (lv_ownedInitExpression_6_0= ruleExpCS ) )
{
otherlv_5=(Token)match(input,27,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_5, grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0());
}
// InternalCompleteOCL.g:5603:1: ( (lv_ownedInitExpression_6_0= ruleExpCS ) )
// InternalCompleteOCL.g:5604:1: (lv_ownedInitExpression_6_0= ruleExpCS )
{
// InternalCompleteOCL.g:5604:1: (lv_ownedInitExpression_6_0= ruleExpCS )
// InternalCompleteOCL.g:5605:3: lv_ownedInitExpression_6_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
}
pushFollow(FollowSets000.FOLLOW_2);
lv_ownedInitExpression_6_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_6_0,
"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
}
}
break;
case 2 :
// InternalCompleteOCL.g:5622:6: (otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ( (otherlv_9= 'with' | otherlv_10= '<-' ) ( (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS ) ) )? (otherlv_12= '=' ( (lv_ownedInitExpression_13_0= ruleExpCS ) ) )? )
{
// InternalCompleteOCL.g:5622:6: (otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ( (otherlv_9= 'with' | otherlv_10= '<-' ) ( (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS ) ) )? (otherlv_12= '=' ( (lv_ownedInitExpression_13_0= ruleExpCS ) ) )? )
// InternalCompleteOCL.g:5622:8: otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ( (otherlv_9= 'with' | otherlv_10= '<-' ) ( (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS ) ) )? (otherlv_12= '=' ( (lv_ownedInitExpression_13_0= ruleExpCS ) ) )?
{
otherlv_7=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_7, grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_1_0());
}
// InternalCompleteOCL.g:5626:1: ( (lv_ownedType_8_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:5627:1: (lv_ownedType_8_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:5627:1: (lv_ownedType_8_0= ruleTypeExpCS )
// InternalCompleteOCL.g:5628:3: lv_ownedType_8_0= ruleTypeExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_61);
lv_ownedType_8_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_8_0,
"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
afterParserOrEnumRuleCall();
}
}
}
// InternalCompleteOCL.g:5644:2: ( (otherlv_9= 'with' | otherlv_10= '<-' ) ( (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS ) ) )?
int alt110=2;
int LA110_0 = input.LA(1);
if ( ((LA110_0>=86 && LA110_0<=87)) ) {
alt110=1;
}
switch (alt110) {
case 1 :
// InternalCompleteOCL.g:5644:3: (otherlv_9= 'with' | otherlv_10= '<-' ) ( (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS ) )
{
// InternalCompleteOCL.g:5644:3: (otherlv_9= 'with' | otherlv_10= '<-' )
int alt109=2;
int LA109_0 = input.LA(1);
if ( (LA109_0==86) ) {
alt109=1;
}
else if ( (LA109_0==87) ) {
alt109=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 109, 0, input);
throw nvae;
}
switch (alt109) {
case 1 :
// InternalCompleteOCL.g:5644:5: otherlv_9= 'with'
{
otherlv_9=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_9, grammarAccess.getNavigatingCommaArgCSAccess().getWithKeyword_2_1_2_0_0());
}
}
break;
case 2 :
// InternalCompleteOCL.g:5649:7: otherlv_10= '<-'
{
otherlv_10=(Token)match(input,87,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_10, grammarAccess.getNavigatingCommaArgCSAccess().getLessThanSignHyphenMinusKeyword_2_1_2_0_1());
}
}
break;
}
// InternalCompleteOCL.g:5653:2: ( (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS ) )
// InternalCompleteOCL.g:5654:1: (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS )
{
// InternalCompleteOCL.g:5654:1: (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS )
// InternalCompleteOCL.g:5655:3: lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_1_2_1_0());
}
pushFollow(FollowSets000.FOLLOW_60);
lv_ownedCoIterator_11_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_11_0,
"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CoIteratorVariableCS");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
// InternalCompleteOCL.g:5671:4: (otherlv_12= '=' ( (lv_ownedInitExpression_13_0= ruleExpCS ) ) )?
int alt111=2;
int LA111_0 = input.LA(1);
if ( (LA111_0==27) ) {
alt111=1;
}
switch (alt111) {
case 1 :
// InternalCompleteOCL.g:5671:6: otherlv_12= '=' ( (lv_ownedInitExpression_13_0= ruleExpCS ) )
{
otherlv_12=(Token)match(input,27,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_12, grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_1_3_0());
}
// InternalCompleteOCL.g:5675:1: ( (lv_ownedInitExpression_13_0= ruleExpCS ) )
// InternalCompleteOCL.g:5676:1: (lv_ownedInitExpression_13_0= ruleExpCS )
{
// InternalCompleteOCL.g:5676:1: (lv_ownedInitExpression_13_0= ruleExpCS )
// InternalCompleteOCL.g:5677:3: lv_ownedInitExpression_13_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_3_1_0());
}
pushFollow(FollowSets000.FOLLOW_2);
lv_ownedInitExpression_13_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_13_0,
"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
}
}
break;
case 3 :
// InternalCompleteOCL.g:5694:6: ( (otherlv_14= ':' ( (lv_ownedType_15_0= ruleTypeExpCS ) ) )? ( (otherlv_16= 'with' | otherlv_17= '<-' ) ( (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS ) ) )? otherlv_19= 'in' ( (lv_ownedInitExpression_20_0= ruleExpCS ) ) )
{
// InternalCompleteOCL.g:5694:6: ( (otherlv_14= ':' ( (lv_ownedType_15_0= ruleTypeExpCS ) ) )? ( (otherlv_16= 'with' | otherlv_17= '<-' ) ( (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS ) ) )? otherlv_19= 'in' ( (lv_ownedInitExpression_20_0= ruleExpCS ) ) )
// InternalCompleteOCL.g:5694:7: (otherlv_14= ':' ( (lv_ownedType_15_0= ruleTypeExpCS ) ) )? ( (otherlv_16= 'with' | otherlv_17= '<-' ) ( (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS ) ) )? otherlv_19= 'in' ( (lv_ownedInitExpression_20_0= ruleExpCS ) )
{
// InternalCompleteOCL.g:5694:7: (otherlv_14= ':' ( (lv_ownedType_15_0= ruleTypeExpCS ) ) )?
int alt112=2;
int LA112_0 = input.LA(1);
if ( (LA112_0==23) ) {
alt112=1;
}
switch (alt112) {
case 1 :
// InternalCompleteOCL.g:5694:9: otherlv_14= ':' ( (lv_ownedType_15_0= ruleTypeExpCS ) )
{
otherlv_14=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_14, grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_2_0_0());
}
// InternalCompleteOCL.g:5698:1: ( (lv_ownedType_15_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:5699:1: (lv_ownedType_15_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:5699:1: (lv_ownedType_15_0= ruleTypeExpCS )
// InternalCompleteOCL.g:5700:3: lv_ownedType_15_0= ruleTypeExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_2_0_1_0());
}
pushFollow(FollowSets000.FOLLOW_62);
lv_ownedType_15_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_15_0,
"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
// InternalCompleteOCL.g:5716:4: ( (otherlv_16= 'with' | otherlv_17= '<-' ) ( (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS ) ) )?
int alt114=2;
int LA114_0 = input.LA(1);
if ( ((LA114_0>=86 && LA114_0<=87)) ) {
alt114=1;
}
switch (alt114) {
case 1 :
// InternalCompleteOCL.g:5716:5: (otherlv_16= 'with' | otherlv_17= '<-' ) ( (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS ) )
{
// InternalCompleteOCL.g:5716:5: (otherlv_16= 'with' | otherlv_17= '<-' )
int alt113=2;
int LA113_0 = input.LA(1);
if ( (LA113_0==86) ) {
alt113=1;
}
else if ( (LA113_0==87) ) {
alt113=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 113, 0, input);
throw nvae;
}
switch (alt113) {
case 1 :
// InternalCompleteOCL.g:5716:7: otherlv_16= 'with'
{
otherlv_16=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_16, grammarAccess.getNavigatingCommaArgCSAccess().getWithKeyword_2_2_1_0_0());
}
}
break;
case 2 :
// InternalCompleteOCL.g:5721:7: otherlv_17= '<-'
{
otherlv_17=(Token)match(input,87,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_17, grammarAccess.getNavigatingCommaArgCSAccess().getLessThanSignHyphenMinusKeyword_2_2_1_0_1());
}
}
break;
}
// InternalCompleteOCL.g:5725:2: ( (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS ) )
// InternalCompleteOCL.g:5726:1: (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS )
{
// InternalCompleteOCL.g:5726:1: (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS )
// InternalCompleteOCL.g:5727:3: lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_2_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_63);
lv_ownedCoIterator_18_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_18_0,
"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CoIteratorVariableCS");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
otherlv_19=(Token)match(input,95,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_19, grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_2_2());
}
// InternalCompleteOCL.g:5747:1: ( (lv_ownedInitExpression_20_0= ruleExpCS ) )
// InternalCompleteOCL.g:5748:1: (lv_ownedInitExpression_20_0= ruleExpCS )
{
// InternalCompleteOCL.g:5748:1: (lv_ownedInitExpression_20_0= ruleExpCS )
// InternalCompleteOCL.g:5749:3: lv_ownedInitExpression_20_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_3_0());
}
pushFollow(FollowSets000.FOLLOW_2);
lv_ownedInitExpression_20_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_20_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"
// InternalCompleteOCL.g:5773:1: entryRuleNavigatingSemiArgCS returns [EObject current=null] : iv_ruleNavigatingSemiArgCS= ruleNavigatingSemiArgCS EOF ;
public final EObject entryRuleNavigatingSemiArgCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleNavigatingSemiArgCS = null;
try {
// InternalCompleteOCL.g:5774:2: (iv_ruleNavigatingSemiArgCS= ruleNavigatingSemiArgCS EOF )
// InternalCompleteOCL.g:5775: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"
// InternalCompleteOCL.g:5782: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 {
// InternalCompleteOCL.g:5785:28: ( ( ( (lv_prefix_0_0= ';' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? ) )
// InternalCompleteOCL.g:5786:1: ( ( (lv_prefix_0_0= ';' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? )
{
// InternalCompleteOCL.g:5786:1: ( ( (lv_prefix_0_0= ';' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? )
// InternalCompleteOCL.g:5786:2: ( (lv_prefix_0_0= ';' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )?
{
// InternalCompleteOCL.g:5786:2: ( (lv_prefix_0_0= ';' ) )
// InternalCompleteOCL.g:5787:1: (lv_prefix_0_0= ';' )
{
// InternalCompleteOCL.g:5787:1: (lv_prefix_0_0= ';' )
// InternalCompleteOCL.g:5788:3: lv_prefix_0_0= ';'
{
lv_prefix_0_0=(Token)match(input,97,FollowSets000.FOLLOW_64); 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, ";");
}
}
}
// InternalCompleteOCL.g:5801:2: ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) )
// InternalCompleteOCL.g:5802:1: (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS )
{
// InternalCompleteOCL.g:5802:1: (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS )
// InternalCompleteOCL.g:5803:3: lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
}
pushFollow(FollowSets000.FOLLOW_65);
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.completeocl.CompleteOCL.NavigatingArgExpCS");
afterParserOrEnumRuleCall();
}
}
}
// InternalCompleteOCL.g:5819:2: (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )?
int alt117=2;
int LA117_0 = input.LA(1);
if ( (LA117_0==23) ) {
alt117=1;
}
switch (alt117) {
case 1 :
// InternalCompleteOCL.g:5819:4: otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )?
{
otherlv_2=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
}
// InternalCompleteOCL.g:5823:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:5824:1: (lv_ownedType_3_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:5824:1: (lv_ownedType_3_0= ruleTypeExpCS )
// InternalCompleteOCL.g:5825:3: lv_ownedType_3_0= ruleTypeExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
}
pushFollow(FollowSets000.FOLLOW_60);
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();
}
}
}
// InternalCompleteOCL.g:5841:2: (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )?
int alt116=2;
int LA116_0 = input.LA(1);
if ( (LA116_0==27) ) {
alt116=1;
}
switch (alt116) {
case 1 :
// InternalCompleteOCL.g:5841:4: otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
{
otherlv_4=(Token)match(input,27,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0());
}
// InternalCompleteOCL.g:5845:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
// InternalCompleteOCL.g:5846:1: (lv_ownedInitExpression_5_0= ruleExpCS )
{
// InternalCompleteOCL.g:5846:1: (lv_ownedInitExpression_5_0= ruleExpCS )
// InternalCompleteOCL.g:5847: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 "entryRuleCoIteratorVariableCS"
// InternalCompleteOCL.g:5871:1: entryRuleCoIteratorVariableCS returns [EObject current=null] : iv_ruleCoIteratorVariableCS= ruleCoIteratorVariableCS EOF ;
public final EObject entryRuleCoIteratorVariableCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleCoIteratorVariableCS = null;
try {
// InternalCompleteOCL.g:5872:2: (iv_ruleCoIteratorVariableCS= ruleCoIteratorVariableCS EOF )
// InternalCompleteOCL.g:5873: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"
// InternalCompleteOCL.g:5880: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 {
// InternalCompleteOCL.g:5883:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? ) )
// InternalCompleteOCL.g:5884:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? )
{
// InternalCompleteOCL.g:5884:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? )
// InternalCompleteOCL.g:5884:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )?
{
// InternalCompleteOCL.g:5884:2: ( (lv_name_0_0= ruleUnrestrictedName ) )
// InternalCompleteOCL.g:5885:1: (lv_name_0_0= ruleUnrestrictedName )
{
// InternalCompleteOCL.g:5885:1: (lv_name_0_0= ruleUnrestrictedName )
// InternalCompleteOCL.g:5886:3: lv_name_0_0= ruleUnrestrictedName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getCoIteratorVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
}
pushFollow(FollowSets000.FOLLOW_65);
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.completeocl.CompleteOCL.UnrestrictedName");
afterParserOrEnumRuleCall();
}
}
}
// InternalCompleteOCL.g:5902:2: (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )?
int alt118=2;
int LA118_0 = input.LA(1);
if ( (LA118_0==23) ) {
alt118=1;
}
switch (alt118) {
case 1 :
// InternalCompleteOCL.g:5902:4: otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) )
{
otherlv_1=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getCoIteratorVariableCSAccess().getColonKeyword_1_0());
}
// InternalCompleteOCL.g:5906:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:5907:1: (lv_ownedType_2_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:5907:1: (lv_ownedType_2_0= ruleTypeExpCS )
// InternalCompleteOCL.g:5908: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"
// InternalCompleteOCL.g:5932:1: entryRuleIfExpCS returns [EObject current=null] : iv_ruleIfExpCS= ruleIfExpCS EOF ;
public final EObject entryRuleIfExpCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleIfExpCS = null;
try {
// InternalCompleteOCL.g:5933:2: (iv_ruleIfExpCS= ruleIfExpCS EOF )
// InternalCompleteOCL.g:5934: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"
// InternalCompleteOCL.g:5941: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 {
// InternalCompleteOCL.g:5944: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' ) )
// InternalCompleteOCL.g:5945: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' )
{
// InternalCompleteOCL.g:5945: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' )
// InternalCompleteOCL.g:5945: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,98,FollowSets000.FOLLOW_38); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getIfExpCSAccess().getIfKeyword_0());
}
// InternalCompleteOCL.g:5949:1: ( ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) ) )
// InternalCompleteOCL.g:5950:1: ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) )
{
// InternalCompleteOCL.g:5950:1: ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) )
// InternalCompleteOCL.g:5951:1: (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS )
{
// InternalCompleteOCL.g:5951:1: (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS )
int alt119=2;
switch ( input.LA(1) ) {
case RULE_INT:
case RULE_SINGLE_QUOTED_STRING:
case 21:
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 54:
case 55:
case 73:
case 74:
case 76:
case 77:
case 78:
case 79:
case 80:
case 85:
case 88:
case 89:
case 90:
case 91:
case 98:
case 103:
case 104:
{
alt119=1;
}
break;
case RULE_SIMPLE_ID:
{
int LA119_2 = input.LA(2);
if ( ((LA119_2>=17 && LA119_2<=18)||LA119_2==21||LA119_2==27||(LA119_2>=39 && LA119_2<=40)||LA119_2==52||(LA119_2>=55 && LA119_2<=72)||LA119_2==75||LA119_2==81||(LA119_2>=92 && LA119_2<=93)||LA119_2==99) ) {
alt119=1;
}
else if ( (LA119_2==23) ) {
alt119=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 119, 2, input);
throw nvae;
}
}
break;
case RULE_ESCAPED_ID:
{
int LA119_3 = input.LA(2);
if ( ((LA119_3>=17 && LA119_3<=18)||LA119_3==21||LA119_3==27||(LA119_3>=39 && LA119_3<=40)||LA119_3==52||(LA119_3>=55 && LA119_3<=72)||LA119_3==75||LA119_3==81||(LA119_3>=92 && LA119_3<=93)||LA119_3==99) ) {
alt119=1;
}
else if ( (LA119_3==23) ) {
alt119=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 119, 3, input);
throw nvae;
}
}
break;
case 28:
{
int LA119_4 = input.LA(2);
if ( ((LA119_4>=17 && LA119_4<=18)||LA119_4==21||LA119_4==27||(LA119_4>=39 && LA119_4<=40)||LA119_4==52||(LA119_4>=55 && LA119_4<=72)||LA119_4==75||LA119_4==81||(LA119_4>=92 && LA119_4<=93)||LA119_4==99) ) {
alt119=1;
}
else if ( (LA119_4==23) ) {
alt119=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 119, 4, input);
throw nvae;
}
}
break;
case 29:
{
int LA119_5 = input.LA(2);
if ( (LA119_5==23) ) {
alt119=2;
}
else if ( ((LA119_5>=17 && LA119_5<=18)||LA119_5==21||LA119_5==27||(LA119_5>=39 && LA119_5<=40)||LA119_5==52||(LA119_5>=55 && LA119_5<=72)||LA119_5==75||LA119_5==81||(LA119_5>=92 && LA119_5<=93)||LA119_5==99) ) {
alt119=1;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 119, 5, input);
throw nvae;
}
}
break;
case 30:
{
int LA119_6 = input.LA(2);
if ( ((LA119_6>=17 && LA119_6<=18)||LA119_6==21||LA119_6==27||(LA119_6>=39 && LA119_6<=40)||LA119_6==52||(LA119_6>=55 && LA119_6<=72)||LA119_6==75||LA119_6==81||(LA119_6>=92 && LA119_6<=93)||LA119_6==99) ) {
alt119=1;
}
else if ( (LA119_6==23) ) {
alt119=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 119, 6, input);
throw nvae;
}
}
break;
case 23:
{
alt119=2;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 119, 0, input);
throw nvae;
}
switch (alt119) {
case 1 :
// InternalCompleteOCL.g:5952:3: lv_ownedCondition_1_1= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
}
pushFollow(FollowSets000.FOLLOW_66);
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 :
// InternalCompleteOCL.g:5967:8: lv_ownedCondition_1_2= rulePatternExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
}
pushFollow(FollowSets000.FOLLOW_66);
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,99,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getIfExpCSAccess().getThenKeyword_2());
}
// InternalCompleteOCL.g:5989:1: ( (lv_ownedThenExpression_3_0= ruleExpCS ) )
// InternalCompleteOCL.g:5990:1: (lv_ownedThenExpression_3_0= ruleExpCS )
{
// InternalCompleteOCL.g:5990:1: (lv_ownedThenExpression_3_0= ruleExpCS )
// InternalCompleteOCL.g:5991:3: lv_ownedThenExpression_3_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
}
pushFollow(FollowSets000.FOLLOW_67);
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();
}
}
}
// InternalCompleteOCL.g:6007:2: ( (lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS ) )*
loop120:
do {
int alt120=2;
int LA120_0 = input.LA(1);
if ( (LA120_0==102) ) {
alt120=1;
}
switch (alt120) {
case 1 :
// InternalCompleteOCL.g:6008:1: (lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS )
{
// InternalCompleteOCL.g:6008:1: (lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS )
// InternalCompleteOCL.g:6009:3: lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
}
pushFollow(FollowSets000.FOLLOW_67);
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 loop120;
}
} while (true);
otherlv_5=(Token)match(input,100,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_5, grammarAccess.getIfExpCSAccess().getElseKeyword_5());
}
// InternalCompleteOCL.g:6029:1: ( (lv_ownedElseExpression_6_0= ruleExpCS ) )
// InternalCompleteOCL.g:6030:1: (lv_ownedElseExpression_6_0= ruleExpCS )
{
// InternalCompleteOCL.g:6030:1: (lv_ownedElseExpression_6_0= ruleExpCS )
// InternalCompleteOCL.g:6031:3: lv_ownedElseExpression_6_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
}
pushFollow(FollowSets000.FOLLOW_68);
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,101,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"
// InternalCompleteOCL.g:6059:1: entryRuleElseIfThenExpCS returns [EObject current=null] : iv_ruleElseIfThenExpCS= ruleElseIfThenExpCS EOF ;
public final EObject entryRuleElseIfThenExpCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleElseIfThenExpCS = null;
try {
// InternalCompleteOCL.g:6060:2: (iv_ruleElseIfThenExpCS= ruleElseIfThenExpCS EOF )
// InternalCompleteOCL.g:6061: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"
// InternalCompleteOCL.g:6068: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 {
// InternalCompleteOCL.g:6071:28: ( (otherlv_0= 'elseif' ( (lv_ownedCondition_1_0= ruleExpCS ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ) )
// InternalCompleteOCL.g:6072:1: (otherlv_0= 'elseif' ( (lv_ownedCondition_1_0= ruleExpCS ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) )
{
// InternalCompleteOCL.g:6072:1: (otherlv_0= 'elseif' ( (lv_ownedCondition_1_0= ruleExpCS ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) )
// InternalCompleteOCL.g:6072:3: otherlv_0= 'elseif' ( (lv_ownedCondition_1_0= ruleExpCS ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) )
{
otherlv_0=(Token)match(input,102,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0());
}
// InternalCompleteOCL.g:6076:1: ( (lv_ownedCondition_1_0= ruleExpCS ) )
// InternalCompleteOCL.g:6077:1: (lv_ownedCondition_1_0= ruleExpCS )
{
// InternalCompleteOCL.g:6077:1: (lv_ownedCondition_1_0= ruleExpCS )
// InternalCompleteOCL.g:6078:3: lv_ownedCondition_1_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
}
pushFollow(FollowSets000.FOLLOW_66);
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,99,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2());
}
// InternalCompleteOCL.g:6098:1: ( (lv_ownedThenExpression_3_0= ruleExpCS ) )
// InternalCompleteOCL.g:6099:1: (lv_ownedThenExpression_3_0= ruleExpCS )
{
// InternalCompleteOCL.g:6099:1: (lv_ownedThenExpression_3_0= ruleExpCS )
// InternalCompleteOCL.g:6100: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"
// InternalCompleteOCL.g:6124:1: entryRuleLetExpCS returns [EObject current=null] : iv_ruleLetExpCS= ruleLetExpCS EOF ;
public final EObject entryRuleLetExpCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleLetExpCS = null;
try {
// InternalCompleteOCL.g:6125:2: (iv_ruleLetExpCS= ruleLetExpCS EOF )
// InternalCompleteOCL.g:6126: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"
// InternalCompleteOCL.g:6133: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 {
// InternalCompleteOCL.g:6136:28: ( (otherlv_0= 'let' ( (lv_ownedVariables_1_0= ruleLetVariableCS ) ) (otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) ) )* otherlv_4= 'in' ( (lv_ownedInExpression_5_0= ruleExpCS ) ) ) )
// InternalCompleteOCL.g:6137:1: (otherlv_0= 'let' ( (lv_ownedVariables_1_0= ruleLetVariableCS ) ) (otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) ) )* otherlv_4= 'in' ( (lv_ownedInExpression_5_0= ruleExpCS ) ) )
{
// InternalCompleteOCL.g:6137:1: (otherlv_0= 'let' ( (lv_ownedVariables_1_0= ruleLetVariableCS ) ) (otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) ) )* otherlv_4= 'in' ( (lv_ownedInExpression_5_0= ruleExpCS ) ) )
// InternalCompleteOCL.g:6137: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,103,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getLetExpCSAccess().getLetKeyword_0());
}
// InternalCompleteOCL.g:6141:1: ( (lv_ownedVariables_1_0= ruleLetVariableCS ) )
// InternalCompleteOCL.g:6142:1: (lv_ownedVariables_1_0= ruleLetVariableCS )
{
// InternalCompleteOCL.g:6142:1: (lv_ownedVariables_1_0= ruleLetVariableCS )
// InternalCompleteOCL.g:6143:3: lv_ownedVariables_1_0= ruleLetVariableCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
}
pushFollow(FollowSets000.FOLLOW_69);
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();
}
}
}
// InternalCompleteOCL.g:6159:2: (otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) ) )*
loop121:
do {
int alt121=2;
int LA121_0 = input.LA(1);
if ( (LA121_0==26) ) {
alt121=1;
}
switch (alt121) {
case 1 :
// InternalCompleteOCL.g:6159:4: otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) )
{
otherlv_2=(Token)match(input,26,FollowSets000.FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
}
// InternalCompleteOCL.g:6163:1: ( (lv_ownedVariables_3_0= ruleLetVariableCS ) )
// InternalCompleteOCL.g:6164:1: (lv_ownedVariables_3_0= ruleLetVariableCS )
{
// InternalCompleteOCL.g:6164:1: (lv_ownedVariables_3_0= ruleLetVariableCS )
// InternalCompleteOCL.g:6165:3: lv_ownedVariables_3_0= ruleLetVariableCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
}
pushFollow(FollowSets000.FOLLOW_69);
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 loop121;
}
} while (true);
otherlv_4=(Token)match(input,95,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getLetExpCSAccess().getInKeyword_3());
}
// InternalCompleteOCL.g:6185:1: ( (lv_ownedInExpression_5_0= ruleExpCS ) )
// InternalCompleteOCL.g:6186:1: (lv_ownedInExpression_5_0= ruleExpCS )
{
// InternalCompleteOCL.g:6186:1: (lv_ownedInExpression_5_0= ruleExpCS )
// InternalCompleteOCL.g:6187: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"
// InternalCompleteOCL.g:6211:1: entryRuleLetVariableCS returns [EObject current=null] : iv_ruleLetVariableCS= ruleLetVariableCS EOF ;
public final EObject entryRuleLetVariableCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleLetVariableCS = null;
try {
// InternalCompleteOCL.g:6212:2: (iv_ruleLetVariableCS= ruleLetVariableCS EOF )
// InternalCompleteOCL.g:6213: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"
// InternalCompleteOCL.g:6220: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 {
// InternalCompleteOCL.g:6223: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 ) ) ) )
// InternalCompleteOCL.g:6224: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 ) ) )
{
// InternalCompleteOCL.g:6224: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 ) ) )
// InternalCompleteOCL.g:6224: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 ) )
{
// InternalCompleteOCL.g:6224:2: ( (lv_name_0_0= ruleUnrestrictedName ) )
// InternalCompleteOCL.g:6225:1: (lv_name_0_0= ruleUnrestrictedName )
{
// InternalCompleteOCL.g:6225:1: (lv_name_0_0= ruleUnrestrictedName )
// InternalCompleteOCL.g:6226:3: lv_name_0_0= ruleUnrestrictedName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
}
pushFollow(FollowSets000.FOLLOW_70);
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.completeocl.CompleteOCL.UnrestrictedName");
afterParserOrEnumRuleCall();
}
}
}
// InternalCompleteOCL.g:6242:2: ( (lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS ) )?
int alt122=2;
int LA122_0 = input.LA(1);
if ( (LA122_0==21) ) {
alt122=1;
}
switch (alt122) {
case 1 :
// InternalCompleteOCL.g:6243:1: (lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS )
{
// InternalCompleteOCL.g:6243:1: (lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS )
// InternalCompleteOCL.g:6244:3: lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0());
}
pushFollow(FollowSets000.FOLLOW_46);
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;
}
// InternalCompleteOCL.g:6260:3: (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) )?
int alt123=2;
int LA123_0 = input.LA(1);
if ( (LA123_0==23) ) {
alt123=1;
}
switch (alt123) {
case 1 :
// InternalCompleteOCL.g:6260:5: otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) )
{
otherlv_2=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
}
// InternalCompleteOCL.g:6264:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:6265:1: (lv_ownedType_3_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:6265:1: (lv_ownedType_3_0= ruleTypeExpCS )
// InternalCompleteOCL.g:6266:3: lv_ownedType_3_0= ruleTypeExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
}
pushFollow(FollowSets000.FOLLOW_20);
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,27,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3());
}
// InternalCompleteOCL.g:6286:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
// InternalCompleteOCL.g:6287:1: (lv_ownedInitExpression_5_0= ruleExpCS )
{
// InternalCompleteOCL.g:6287:1: (lv_ownedInitExpression_5_0= ruleExpCS )
// InternalCompleteOCL.g:6288: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"
// InternalCompleteOCL.g:6312:1: entryRuleNestedExpCS returns [EObject current=null] : iv_ruleNestedExpCS= ruleNestedExpCS EOF ;
public final EObject entryRuleNestedExpCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleNestedExpCS = null;
try {
// InternalCompleteOCL.g:6313:2: (iv_ruleNestedExpCS= ruleNestedExpCS EOF )
// InternalCompleteOCL.g:6314: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"
// InternalCompleteOCL.g:6321: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 {
// InternalCompleteOCL.g:6324:28: ( (otherlv_0= '(' ( (lv_ownedExpression_1_0= ruleExpCS ) ) otherlv_2= ')' ) )
// InternalCompleteOCL.g:6325:1: (otherlv_0= '(' ( (lv_ownedExpression_1_0= ruleExpCS ) ) otherlv_2= ')' )
{
// InternalCompleteOCL.g:6325:1: (otherlv_0= '(' ( (lv_ownedExpression_1_0= ruleExpCS ) ) otherlv_2= ')' )
// InternalCompleteOCL.g:6325:3: otherlv_0= '(' ( (lv_ownedExpression_1_0= ruleExpCS ) ) otherlv_2= ')'
{
otherlv_0=(Token)match(input,21,FollowSets000.FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0());
}
// InternalCompleteOCL.g:6329:1: ( (lv_ownedExpression_1_0= ruleExpCS ) )
// InternalCompleteOCL.g:6330:1: (lv_ownedExpression_1_0= ruleExpCS )
{
// InternalCompleteOCL.g:6330:1: (lv_ownedExpression_1_0= ruleExpCS )
// InternalCompleteOCL.g:6331: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,22,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"
// InternalCompleteOCL.g:6359:1: entryRuleSelfExpCS returns [EObject current=null] : iv_ruleSelfExpCS= ruleSelfExpCS EOF ;
public final EObject entryRuleSelfExpCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleSelfExpCS = null;
try {
// InternalCompleteOCL.g:6360:2: (iv_ruleSelfExpCS= ruleSelfExpCS EOF )
// InternalCompleteOCL.g:6361: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"
// InternalCompleteOCL.g:6368:1: ruleSelfExpCS returns [EObject current=null] : ( () otherlv_1= 'self' ) ;
public final EObject ruleSelfExpCS() throws RecognitionException {
EObject current = null;
Token otherlv_1=null;
enterRule();
try {
// InternalCompleteOCL.g:6371:28: ( ( () otherlv_1= 'self' ) )
// InternalCompleteOCL.g:6372:1: ( () otherlv_1= 'self' )
{
// InternalCompleteOCL.g:6372:1: ( () otherlv_1= 'self' )
// InternalCompleteOCL.g:6372:2: () otherlv_1= 'self'
{
// InternalCompleteOCL.g:6372:2: ()
// InternalCompleteOCL.g:6373:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElement(
grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0(),
current);
}
}
otherlv_1=(Token)match(input,104,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"
// InternalCompleteOCL.g:6393:1: entryRuleMultiplicityBoundsCS returns [EObject current=null] : iv_ruleMultiplicityBoundsCS= ruleMultiplicityBoundsCS EOF ;
public final EObject entryRuleMultiplicityBoundsCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleMultiplicityBoundsCS = null;
try {
// InternalCompleteOCL.g:6394:2: (iv_ruleMultiplicityBoundsCS= ruleMultiplicityBoundsCS EOF )
// InternalCompleteOCL.g:6395: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"
// InternalCompleteOCL.g:6402: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 {
// InternalCompleteOCL.g:6405:28: ( ( ( (lv_lowerBound_0_0= ruleLOWER ) ) (otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) )? ) )
// InternalCompleteOCL.g:6406:1: ( ( (lv_lowerBound_0_0= ruleLOWER ) ) (otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) )? )
{
// InternalCompleteOCL.g:6406:1: ( ( (lv_lowerBound_0_0= ruleLOWER ) ) (otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) )? )
// InternalCompleteOCL.g:6406:2: ( (lv_lowerBound_0_0= ruleLOWER ) ) (otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) )?
{
// InternalCompleteOCL.g:6406:2: ( (lv_lowerBound_0_0= ruleLOWER ) )
// InternalCompleteOCL.g:6407:1: (lv_lowerBound_0_0= ruleLOWER )
{
// InternalCompleteOCL.g:6407:1: (lv_lowerBound_0_0= ruleLOWER )
// InternalCompleteOCL.g:6408:3: lv_lowerBound_0_0= ruleLOWER
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
}
pushFollow(FollowSets000.FOLLOW_39);
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();
}
}
}
// InternalCompleteOCL.g:6424:2: (otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) )?
int alt124=2;
int LA124_0 = input.LA(1);
if ( (LA124_0==83) ) {
alt124=1;
}
switch (alt124) {
case 1 :
// InternalCompleteOCL.g:6424:4: otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) )
{
otherlv_1=(Token)match(input,83,FollowSets000.FOLLOW_71); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
}
// InternalCompleteOCL.g:6428:1: ( (lv_upperBound_2_0= ruleUPPER ) )
// InternalCompleteOCL.g:6429:1: (lv_upperBound_2_0= ruleUPPER )
{
// InternalCompleteOCL.g:6429:1: (lv_upperBound_2_0= ruleUPPER )
// InternalCompleteOCL.g:6430: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"
// InternalCompleteOCL.g:6454:1: entryRuleMultiplicityCS returns [EObject current=null] : iv_ruleMultiplicityCS= ruleMultiplicityCS EOF ;
public final EObject entryRuleMultiplicityCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleMultiplicityCS = null;
try {
// InternalCompleteOCL.g:6455:2: (iv_ruleMultiplicityCS= ruleMultiplicityCS EOF )
// InternalCompleteOCL.g:6456: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"
// InternalCompleteOCL.g:6463: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 {
// InternalCompleteOCL.g:6466:28: ( (otherlv_0= '[' (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS ) (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )? otherlv_5= ']' ) )
// InternalCompleteOCL.g:6467:1: (otherlv_0= '[' (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS ) (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )? otherlv_5= ']' )
{
// InternalCompleteOCL.g:6467:1: (otherlv_0= '[' (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS ) (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )? otherlv_5= ']' )
// InternalCompleteOCL.g:6467: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,93,FollowSets000.FOLLOW_72); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
}
// InternalCompleteOCL.g:6471:1: (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS )
int alt125=2;
int LA125_0 = input.LA(1);
if ( (LA125_0==RULE_INT) ) {
alt125=1;
}
else if ( (LA125_0==41||LA125_0==55||LA125_0==57) ) {
alt125=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 125, 0, input);
throw nvae;
}
switch (alt125) {
case 1 :
// InternalCompleteOCL.g:6472:2: this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
}
pushFollow(FollowSets000.FOLLOW_73);
this_MultiplicityBoundsCS_1=ruleMultiplicityBoundsCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_MultiplicityBoundsCS_1;
afterParserOrEnumRuleCall();
}
}
break;
case 2 :
// InternalCompleteOCL.g:6485:2: this_MultiplicityStringCS_2= ruleMultiplicityStringCS
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
}
pushFollow(FollowSets000.FOLLOW_73);
this_MultiplicityStringCS_2=ruleMultiplicityStringCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_MultiplicityStringCS_2;
afterParserOrEnumRuleCall();
}
}
break;
}
// InternalCompleteOCL.g:6496:2: (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )?
int alt126=3;
int LA126_0 = input.LA(1);
if ( (LA126_0==105) ) {
alt126=1;
}
else if ( (LA126_0==106) ) {
alt126=2;
}
switch (alt126) {
case 1 :
// InternalCompleteOCL.g:6496:4: otherlv_3= '|?'
{
otherlv_3=(Token)match(input,105,FollowSets000.FOLLOW_74); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
}
}
break;
case 2 :
// InternalCompleteOCL.g:6501:6: ( (lv_isNullFree_4_0= '|1' ) )
{
// InternalCompleteOCL.g:6501:6: ( (lv_isNullFree_4_0= '|1' ) )
// InternalCompleteOCL.g:6502:1: (lv_isNullFree_4_0= '|1' )
{
// InternalCompleteOCL.g:6502:1: (lv_isNullFree_4_0= '|1' )
// InternalCompleteOCL.g:6503:3: lv_isNullFree_4_0= '|1'
{
lv_isNullFree_4_0=(Token)match(input,106,FollowSets000.FOLLOW_74); 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,94,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"
// InternalCompleteOCL.g:6528:1: entryRuleMultiplicityStringCS returns [EObject current=null] : iv_ruleMultiplicityStringCS= ruleMultiplicityStringCS EOF ;
public final EObject entryRuleMultiplicityStringCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleMultiplicityStringCS = null;
try {
// InternalCompleteOCL.g:6529:2: (iv_ruleMultiplicityStringCS= ruleMultiplicityStringCS EOF )
// InternalCompleteOCL.g:6530: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"
// InternalCompleteOCL.g:6537: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 {
// InternalCompleteOCL.g:6540:28: ( ( ( (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) ) ) )
// InternalCompleteOCL.g:6541:1: ( ( (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) ) )
{
// InternalCompleteOCL.g:6541:1: ( ( (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) ) )
// InternalCompleteOCL.g:6542:1: ( (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) )
{
// InternalCompleteOCL.g:6542:1: ( (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) )
// InternalCompleteOCL.g:6543:1: (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' )
{
// InternalCompleteOCL.g:6543:1: (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' )
int alt127=3;
switch ( input.LA(1) ) {
case 55:
{
alt127=1;
}
break;
case 57:
{
alt127=2;
}
break;
case 41:
{
alt127=3;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 127, 0, input);
throw nvae;
}
switch (alt127) {
case 1 :
// InternalCompleteOCL.g:6544:3: lv_stringBounds_0_1= '*'
{
lv_stringBounds_0_1=(Token)match(input,55,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 :
// InternalCompleteOCL.g:6556:8: lv_stringBounds_0_2= '+'
{
lv_stringBounds_0_2=(Token)match(input,57,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 :
// InternalCompleteOCL.g:6568:8: lv_stringBounds_0_3= '?'
{
lv_stringBounds_0_3=(Token)match(input,41,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"
// InternalCompleteOCL.g:6591:1: entryRulePathNameCS returns [EObject current=null] : iv_rulePathNameCS= rulePathNameCS EOF ;
public final EObject entryRulePathNameCS() throws RecognitionException {
EObject current = null;
EObject iv_rulePathNameCS = null;
try {
// InternalCompleteOCL.g:6592:2: (iv_rulePathNameCS= rulePathNameCS EOF )
// InternalCompleteOCL.g:6593: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"
// InternalCompleteOCL.g:6600: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 {
// InternalCompleteOCL.g:6603:28: ( ( ( (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) )
// InternalCompleteOCL.g:6604:1: ( ( (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* )
{
// InternalCompleteOCL.g:6604:1: ( ( (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* )
// InternalCompleteOCL.g:6604:2: ( (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )*
{
// InternalCompleteOCL.g:6604:2: ( (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) )
// InternalCompleteOCL.g:6605:1: (lv_ownedPathElements_0_0= ruleFirstPathElementCS )
{
// InternalCompleteOCL.g:6605:1: (lv_ownedPathElements_0_0= ruleFirstPathElementCS )
// InternalCompleteOCL.g:6606:3: lv_ownedPathElements_0_0= ruleFirstPathElementCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
}
pushFollow(FollowSets000.FOLLOW_31);
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();
}
}
}
// InternalCompleteOCL.g:6622:2: (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )*
loop128:
do {
int alt128=2;
int LA128_0 = input.LA(1);
if ( (LA128_0==75) ) {
alt128=1;
}
switch (alt128) {
case 1 :
// InternalCompleteOCL.g:6622:4: otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) )
{
otherlv_1=(Token)match(input,75,FollowSets000.FOLLOW_5); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
}
// InternalCompleteOCL.g:6626:1: ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) )
// InternalCompleteOCL.g:6627:1: (lv_ownedPathElements_2_0= ruleNextPathElementCS )
{
// InternalCompleteOCL.g:6627:1: (lv_ownedPathElements_2_0= ruleNextPathElementCS )
// InternalCompleteOCL.g:6628:3: lv_ownedPathElements_2_0= ruleNextPathElementCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_31);
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 loop128;
}
} while (true);
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "rulePathNameCS"
// $ANTLR start "entryRuleUnreservedPathNameCS"
// InternalCompleteOCL.g:6652:1: entryRuleUnreservedPathNameCS returns [EObject current=null] : iv_ruleUnreservedPathNameCS= ruleUnreservedPathNameCS EOF ;
public final EObject entryRuleUnreservedPathNameCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleUnreservedPathNameCS = null;
try {
// InternalCompleteOCL.g:6653:2: (iv_ruleUnreservedPathNameCS= ruleUnreservedPathNameCS EOF )
// InternalCompleteOCL.g:6654:2: iv_ruleUnreservedPathNameCS= ruleUnreservedPathNameCS EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getUnreservedPathNameCSRule());
}
pushFollow(FollowSets000.FOLLOW_1);
iv_ruleUnreservedPathNameCS=ruleUnreservedPathNameCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleUnreservedPathNameCS;
}
match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleUnreservedPathNameCS"
// $ANTLR start "ruleUnreservedPathNameCS"
// InternalCompleteOCL.g:6661:1: ruleUnreservedPathNameCS returns [EObject current=null] : ( ( (lv_ownedPathElements_0_0= ruleNextPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) ;
public final EObject ruleUnreservedPathNameCS() throws RecognitionException {
EObject current = null;
Token otherlv_1=null;
EObject lv_ownedPathElements_0_0 = null;
EObject lv_ownedPathElements_2_0 = null;
enterRule();
try {
// InternalCompleteOCL.g:6664:28: ( ( ( (lv_ownedPathElements_0_0= ruleNextPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) )
// InternalCompleteOCL.g:6665:1: ( ( (lv_ownedPathElements_0_0= ruleNextPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* )
{
// InternalCompleteOCL.g:6665:1: ( ( (lv_ownedPathElements_0_0= ruleNextPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* )
// InternalCompleteOCL.g:6665:2: ( (lv_ownedPathElements_0_0= ruleNextPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )*
{
// InternalCompleteOCL.g:6665:2: ( (lv_ownedPathElements_0_0= ruleNextPathElementCS ) )
// InternalCompleteOCL.g:6666:1: (lv_ownedPathElements_0_0= ruleNextPathElementCS )
{
// InternalCompleteOCL.g:6666:1: (lv_ownedPathElements_0_0= ruleNextPathElementCS )
// InternalCompleteOCL.g:6667:3: lv_ownedPathElements_0_0= ruleNextPathElementCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_0_0());
}
pushFollow(FollowSets000.FOLLOW_31);
lv_ownedPathElements_0_0=ruleNextPathElementCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getUnreservedPathNameCSRule());
}
add(
current,
"ownedPathElements",
lv_ownedPathElements_0_0,
"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
afterParserOrEnumRuleCall();
}
}
}
// InternalCompleteOCL.g:6683:2: (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )*
loop129:
do {
int alt129=2;
int LA129_0 = input.LA(1);
if ( (LA129_0==75) ) {
alt129=1;
}
switch (alt129) {
case 1 :
// InternalCompleteOCL.g:6683:4: otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) )
{
otherlv_1=(Token)match(input,75,FollowSets000.FOLLOW_5); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getUnreservedPathNameCSAccess().getColonColonKeyword_1_0());
}
// InternalCompleteOCL.g:6687:1: ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) )
// InternalCompleteOCL.g:6688:1: (lv_ownedPathElements_2_0= ruleNextPathElementCS )
{
// InternalCompleteOCL.g:6688:1: (lv_ownedPathElements_2_0= ruleNextPathElementCS )
// InternalCompleteOCL.g:6689:3: lv_ownedPathElements_2_0= ruleNextPathElementCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getUnreservedPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_31);
lv_ownedPathElements_2_0=ruleNextPathElementCS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getUnreservedPathNameCSRule());
}
add(
current,
"ownedPathElements",
lv_ownedPathElements_2_0,
"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop129;
}
} while (true);
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleUnreservedPathNameCS"
// $ANTLR start "entryRuleFirstPathElementCS"
// InternalCompleteOCL.g:6713:1: entryRuleFirstPathElementCS returns [EObject current=null] : iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF ;
public final EObject entryRuleFirstPathElementCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleFirstPathElementCS = null;
try {
// InternalCompleteOCL.g:6714:2: (iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF )
// InternalCompleteOCL.g:6715: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"
// InternalCompleteOCL.g:6722:1: ruleFirstPathElementCS returns [EObject current=null] : ( ( ruleUnrestrictedName ) ) ;
public final EObject ruleFirstPathElementCS() throws RecognitionException {
EObject current = null;
enterRule();
try {
// InternalCompleteOCL.g:6725:28: ( ( ( ruleUnrestrictedName ) ) )
// InternalCompleteOCL.g:6726:1: ( ( ruleUnrestrictedName ) )
{
// InternalCompleteOCL.g:6726:1: ( ( ruleUnrestrictedName ) )
// InternalCompleteOCL.g:6727:1: ( ruleUnrestrictedName )
{
// InternalCompleteOCL.g:6727:1: ( ruleUnrestrictedName )
// InternalCompleteOCL.g:6728: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"
// InternalCompleteOCL.g:6752:1: entryRuleNextPathElementCS returns [EObject current=null] : iv_ruleNextPathElementCS= ruleNextPathElementCS EOF ;
public final EObject entryRuleNextPathElementCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleNextPathElementCS = null;
try {
// InternalCompleteOCL.g:6753:2: (iv_ruleNextPathElementCS= ruleNextPathElementCS EOF )
// InternalCompleteOCL.g:6754: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"
// InternalCompleteOCL.g:6761:1: ruleNextPathElementCS returns [EObject current=null] : ( ( ruleUnreservedName ) ) ;
public final EObject ruleNextPathElementCS() throws RecognitionException {
EObject current = null;
enterRule();
try {
// InternalCompleteOCL.g:6764:28: ( ( ( ruleUnreservedName ) ) )
// InternalCompleteOCL.g:6765:1: ( ( ruleUnreservedName ) )
{
// InternalCompleteOCL.g:6765:1: ( ( ruleUnreservedName ) )
// InternalCompleteOCL.g:6766:1: ( ruleUnreservedName )
{
// InternalCompleteOCL.g:6766:1: ( ruleUnreservedName )
// InternalCompleteOCL.g:6767: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"
// InternalCompleteOCL.g:6791:1: entryRuleTemplateBindingCS returns [EObject current=null] : iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF ;
public final EObject entryRuleTemplateBindingCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleTemplateBindingCS = null;
try {
// InternalCompleteOCL.g:6792:2: (iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF )
// InternalCompleteOCL.g:6793: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"
// InternalCompleteOCL.g:6800: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 {
// InternalCompleteOCL.g:6803:28: ( ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) )
// InternalCompleteOCL.g:6804:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
{
// InternalCompleteOCL.g:6804:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
// InternalCompleteOCL.g:6804:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
{
// InternalCompleteOCL.g:6804:2: ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) )
// InternalCompleteOCL.g:6805:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
{
// InternalCompleteOCL.g:6805:1: (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS )
// InternalCompleteOCL.g:6806:3: lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
}
pushFollow(FollowSets000.FOLLOW_75);
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();
}
}
}
// InternalCompleteOCL.g:6822:2: (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )*
loop130:
do {
int alt130=2;
int LA130_0 = input.LA(1);
if ( (LA130_0==26) ) {
alt130=1;
}
switch (alt130) {
case 1 :
// InternalCompleteOCL.g:6822:4: otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
{
otherlv_1=(Token)match(input,26,FollowSets000.FOLLOW_76); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
}
// InternalCompleteOCL.g:6826:1: ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
// InternalCompleteOCL.g:6827:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
{
// InternalCompleteOCL.g:6827:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
// InternalCompleteOCL.g:6828:3: lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_75);
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 loop130;
}
} while (true);
// InternalCompleteOCL.g:6844:4: ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )?
int alt131=2;
int LA131_0 = input.LA(1);
if ( (LA131_0==93) ) {
alt131=1;
}
switch (alt131) {
case 1 :
// InternalCompleteOCL.g:6845:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
{
// InternalCompleteOCL.g:6845:1: (lv_ownedMultiplicity_3_0= ruleMultiplicityCS )
// InternalCompleteOCL.g:6846: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"
// InternalCompleteOCL.g:6870:1: entryRuleTemplateParameterSubstitutionCS returns [EObject current=null] : iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF ;
public final EObject entryRuleTemplateParameterSubstitutionCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleTemplateParameterSubstitutionCS = null;
try {
// InternalCompleteOCL.g:6871:2: (iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF )
// InternalCompleteOCL.g:6872: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"
// InternalCompleteOCL.g:6879: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 {
// InternalCompleteOCL.g:6882:28: ( ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) )
// InternalCompleteOCL.g:6883:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
{
// InternalCompleteOCL.g:6883:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
// InternalCompleteOCL.g:6884:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
{
// InternalCompleteOCL.g:6884:1: (lv_ownedActualParameter_0_0= ruleTypeRefCS )
// InternalCompleteOCL.g:6885: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"
// InternalCompleteOCL.g:6909:1: entryRuleTypeParameterCS returns [EObject current=null] : iv_ruleTypeParameterCS= ruleTypeParameterCS EOF ;
public final EObject entryRuleTypeParameterCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleTypeParameterCS = null;
try {
// InternalCompleteOCL.g:6910:2: (iv_ruleTypeParameterCS= ruleTypeParameterCS EOF )
// InternalCompleteOCL.g:6911: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"
// InternalCompleteOCL.g:6918: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 {
// InternalCompleteOCL.g:6921:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) )
// InternalCompleteOCL.g:6922:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
{
// InternalCompleteOCL.g:6922:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
// InternalCompleteOCL.g:6922:2: ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
{
// InternalCompleteOCL.g:6922:2: ( (lv_name_0_0= ruleUnrestrictedName ) )
// InternalCompleteOCL.g:6923:1: (lv_name_0_0= ruleUnrestrictedName )
{
// InternalCompleteOCL.g:6923:1: (lv_name_0_0= ruleUnrestrictedName )
// InternalCompleteOCL.g:6924:3: lv_name_0_0= ruleUnrestrictedName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
}
pushFollow(FollowSets000.FOLLOW_77);
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.completeocl.CompleteOCL.UnrestrictedName");
afterParserOrEnumRuleCall();
}
}
}
// InternalCompleteOCL.g:6940:2: (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )?
int alt133=2;
int LA133_0 = input.LA(1);
if ( (LA133_0==107) ) {
alt133=1;
}
switch (alt133) {
case 1 :
// InternalCompleteOCL.g:6940:4: otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
{
otherlv_1=(Token)match(input,107,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
}
// InternalCompleteOCL.g:6944:1: ( (lv_ownedExtends_2_0= ruleTypedRefCS ) )
// InternalCompleteOCL.g:6945:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
{
// InternalCompleteOCL.g:6945:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
// InternalCompleteOCL.g:6946:3: lv_ownedExtends_2_0= ruleTypedRefCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_78);
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.completeocl.CompleteOCL.TypedRefCS");
afterParserOrEnumRuleCall();
}
}
}
// InternalCompleteOCL.g:6962:2: (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )*
loop132:
do {
int alt132=2;
int LA132_0 = input.LA(1);
if ( (LA132_0==108) ) {
alt132=1;
}
switch (alt132) {
case 1 :
// InternalCompleteOCL.g:6962:4: otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
{
otherlv_3=(Token)match(input,108,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
}
// InternalCompleteOCL.g:6966:1: ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
// InternalCompleteOCL.g:6967:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
{
// InternalCompleteOCL.g:6967:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
// InternalCompleteOCL.g:6968:3: lv_ownedExtends_4_0= ruleTypedRefCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
}
pushFollow(FollowSets000.FOLLOW_78);
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.completeocl.CompleteOCL.TypedRefCS");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop132;
}
} while (true);
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleTypeParameterCS"
// $ANTLR start "entryRuleTypeRefCS"
// InternalCompleteOCL.g:6992:1: entryRuleTypeRefCS returns [EObject current=null] : iv_ruleTypeRefCS= ruleTypeRefCS EOF ;
public final EObject entryRuleTypeRefCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleTypeRefCS = null;
try {
// InternalCompleteOCL.g:6993:2: (iv_ruleTypeRefCS= ruleTypeRefCS EOF )
// InternalCompleteOCL.g:6994: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"
// InternalCompleteOCL.g:7001: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 {
// InternalCompleteOCL.g:7004:28: ( (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) )
// InternalCompleteOCL.g:7005:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
{
// InternalCompleteOCL.g:7005:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
int alt134=2;
int LA134_0 = input.LA(1);
if ( ((LA134_0>=RULE_SIMPLE_ID && LA134_0<=RULE_ESCAPED_ID)||(LA134_0>=28 && LA134_0<=30)||(LA134_0>=42 && LA134_0<=51)||(LA134_0>=73 && LA134_0<=74)||(LA134_0>=76 && LA134_0<=80)) ) {
alt134=1;
}
else if ( (LA134_0==41) ) {
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 :
// InternalCompleteOCL.g:7006: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 :
// InternalCompleteOCL.g:7019: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 "entryRuleTypedTypeRefCS"
// InternalCompleteOCL.g:7038:1: entryRuleTypedTypeRefCS returns [EObject current=null] : iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF ;
public final EObject entryRuleTypedTypeRefCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleTypedTypeRefCS = null;
try {
// InternalCompleteOCL.g:7039:2: (iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF )
// InternalCompleteOCL.g:7040: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"
// InternalCompleteOCL.g:7047:1: ruleTypedTypeRefCS returns [EObject current=null] : ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? ) ;
public final EObject ruleTypedTypeRefCS() throws RecognitionException {
EObject current = null;
Token otherlv_1=null;
Token otherlv_3=null;
EObject lv_ownedPathName_0_0 = null;
EObject lv_ownedBinding_2_0 = null;
enterRule();
try {
// InternalCompleteOCL.g:7050:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? ) )
// InternalCompleteOCL.g:7051:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? )
{
// InternalCompleteOCL.g:7051:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? )
// InternalCompleteOCL.g:7051:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )?
{
// InternalCompleteOCL.g:7051:2: ( (lv_ownedPathName_0_0= rulePathNameCS ) )
// InternalCompleteOCL.g:7052:1: (lv_ownedPathName_0_0= rulePathNameCS )
{
// InternalCompleteOCL.g:7052:1: (lv_ownedPathName_0_0= rulePathNameCS )
// InternalCompleteOCL.g:7053:3: lv_ownedPathName_0_0= rulePathNameCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
}
pushFollow(FollowSets000.FOLLOW_32);
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();
}
}
}
// InternalCompleteOCL.g:7069:2: (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )?
int alt135=2;
int LA135_0 = input.LA(1);
if ( (LA135_0==21) ) {
alt135=1;
}
switch (alt135) {
case 1 :
// InternalCompleteOCL.g:7069:4: otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')'
{
otherlv_1=(Token)match(input,21,FollowSets000.FOLLOW_76); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0());
}
// InternalCompleteOCL.g:7073:1: ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) )
// InternalCompleteOCL.g:7074:1: (lv_ownedBinding_2_0= ruleTemplateBindingCS )
{
// InternalCompleteOCL.g:7074:1: (lv_ownedBinding_2_0= ruleTemplateBindingCS )
// InternalCompleteOCL.g:7075:3: lv_ownedBinding_2_0= ruleTemplateBindingCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_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,22,FollowSets000.FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2());
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleTypedTypeRefCS"
// $ANTLR start "entryRuleWildcardTypeRefCS"
// InternalCompleteOCL.g:7103:1: entryRuleWildcardTypeRefCS returns [EObject current=null] : iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF ;
public final EObject entryRuleWildcardTypeRefCS() throws RecognitionException {
EObject current = null;
EObject iv_ruleWildcardTypeRefCS = null;
try {
// InternalCompleteOCL.g:7104:2: (iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF )
// InternalCompleteOCL.g:7105: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"
// InternalCompleteOCL.g:7112: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 {
// InternalCompleteOCL.g:7115:28: ( ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) )
// InternalCompleteOCL.g:7116:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
{
// InternalCompleteOCL.g:7116:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
// InternalCompleteOCL.g:7116:2: () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
{
// InternalCompleteOCL.g:7116:2: ()
// InternalCompleteOCL.g:7117:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElement(
grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0(),
current);
}
}
otherlv_1=(Token)match(input,41,FollowSets000.FOLLOW_77); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
}
// InternalCompleteOCL.g:7129:1: (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
int alt136=2;
int LA136_0 = input.LA(1);
if ( (LA136_0==107) ) {
alt136=1;
}
switch (alt136) {
case 1 :
// InternalCompleteOCL.g:7129:3: otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
{
otherlv_2=(Token)match(input,107,FollowSets000.FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
}
// InternalCompleteOCL.g:7133:1: ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
// InternalCompleteOCL.g:7134:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
{
// InternalCompleteOCL.g:7134:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
// InternalCompleteOCL.g:7135: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.completeocl.CompleteOCL.TypedRefCS");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleWildcardTypeRefCS"
// $ANTLR start "entryRuleID"
// InternalCompleteOCL.g:7159:1: entryRuleID returns [String current=null] : iv_ruleID= ruleID EOF ;
public final String entryRuleID() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleID = null;
try {
// InternalCompleteOCL.g:7160:2: (iv_ruleID= ruleID EOF )
// InternalCompleteOCL.g:7161: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"
// InternalCompleteOCL.g:7168: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 {
// InternalCompleteOCL.g:7171:28: ( (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) )
// InternalCompleteOCL.g:7172:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
{
// InternalCompleteOCL.g:7172:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
int alt137=2;
int LA137_0 = input.LA(1);
if ( (LA137_0==RULE_SIMPLE_ID) ) {
alt137=1;
}
else if ( (LA137_0==RULE_ESCAPED_ID) ) {
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 :
// InternalCompleteOCL.g:7172: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 :
// InternalCompleteOCL.g:7180: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"
// InternalCompleteOCL.g:7195:1: entryRuleIdentifier returns [String current=null] : iv_ruleIdentifier= ruleIdentifier EOF ;
public final String entryRuleIdentifier() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleIdentifier = null;
try {
// InternalCompleteOCL.g:7196:2: (iv_ruleIdentifier= ruleIdentifier EOF )
// InternalCompleteOCL.g:7197: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"
// InternalCompleteOCL.g:7204: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 {
// InternalCompleteOCL.g:7207:28: (this_ID_0= ruleID )
// InternalCompleteOCL.g:7209: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"
// InternalCompleteOCL.g:7227:1: entryRuleLOWER returns [String current=null] : iv_ruleLOWER= ruleLOWER EOF ;
public final String entryRuleLOWER() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleLOWER = null;
try {
// InternalCompleteOCL.g:7228:2: (iv_ruleLOWER= ruleLOWER EOF )
// InternalCompleteOCL.g:7229: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"
// InternalCompleteOCL.g:7236: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 {
// InternalCompleteOCL.g:7239:28: (this_INT_0= RULE_INT )
// InternalCompleteOCL.g:7240: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"
// InternalCompleteOCL.g:7255: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 {
// InternalCompleteOCL.g:7256:2: (iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF )
// InternalCompleteOCL.g:7257: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"
// InternalCompleteOCL.g:7264: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 {
// InternalCompleteOCL.g:7267:28: (this_INT_0= RULE_INT )
// InternalCompleteOCL.g:7268: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"
// InternalCompleteOCL.g:7283:1: entryRuleStringLiteral returns [String current=null] : iv_ruleStringLiteral= ruleStringLiteral EOF ;
public final String entryRuleStringLiteral() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleStringLiteral = null;
try {
// InternalCompleteOCL.g:7284:2: (iv_ruleStringLiteral= ruleStringLiteral EOF )
// InternalCompleteOCL.g:7285: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"
// InternalCompleteOCL.g:7292: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 {
// InternalCompleteOCL.g:7295:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
// InternalCompleteOCL.g:7296: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"
// InternalCompleteOCL.g:7311:1: entryRuleUPPER returns [String current=null] : iv_ruleUPPER= ruleUPPER EOF ;
public final String entryRuleUPPER() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleUPPER = null;
try {
// InternalCompleteOCL.g:7312:2: (iv_ruleUPPER= ruleUPPER EOF )
// InternalCompleteOCL.g:7313: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"
// InternalCompleteOCL.g:7320: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 {
// InternalCompleteOCL.g:7323:28: ( (this_INT_0= RULE_INT | kw= '*' ) )
// InternalCompleteOCL.g:7324:1: (this_INT_0= RULE_INT | kw= '*' )
{
// InternalCompleteOCL.g:7324:1: (this_INT_0= RULE_INT | kw= '*' )
int alt138=2;
int LA138_0 = input.LA(1);
if ( (LA138_0==RULE_INT) ) {
alt138=1;
}
else if ( (LA138_0==55) ) {
alt138=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 138, 0, input);
throw nvae;
}
switch (alt138) {
case 1 :
// InternalCompleteOCL.g:7324: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 :
// InternalCompleteOCL.g:7333:2: kw= '*'
{
kw=(Token)match(input,55,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"
// InternalCompleteOCL.g:7346:1: entryRuleURI returns [String current=null] : iv_ruleURI= ruleURI EOF ;
public final String entryRuleURI() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleURI = null;
try {
// InternalCompleteOCL.g:7347:2: (iv_ruleURI= ruleURI EOF )
// InternalCompleteOCL.g:7348: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"
// InternalCompleteOCL.g:7355: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 {
// InternalCompleteOCL.g:7358:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
// InternalCompleteOCL.g:7359: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 synpred11_InternalCompleteOCL
public final void synpred11_InternalCompleteOCL_fragment() throws RecognitionException {
EObject this_PropertyContextDeclCS_0 = null;
// InternalCompleteOCL.g:411:2: (this_PropertyContextDeclCS_0= rulePropertyContextDeclCS )
// InternalCompleteOCL.g:411:2: this_PropertyContextDeclCS_0= rulePropertyContextDeclCS
{
if ( state.backtracking==0 ) {
/* */
}
pushFollow(FollowSets000.FOLLOW_2);
this_PropertyContextDeclCS_0=rulePropertyContextDeclCS();
state._fsp--;
if (state.failed) return ;
}
}
// $ANTLR end synpred11_InternalCompleteOCL
// $ANTLR start synpred12_InternalCompleteOCL
public final void synpred12_InternalCompleteOCL_fragment() throws RecognitionException {
EObject this_ClassifierContextDeclCS_1 = null;
// InternalCompleteOCL.g:424:2: (this_ClassifierContextDeclCS_1= ruleClassifierContextDeclCS )
// InternalCompleteOCL.g:424:2: this_ClassifierContextDeclCS_1= ruleClassifierContextDeclCS
{
if ( state.backtracking==0 ) {
/* */
}
pushFollow(FollowSets000.FOLLOW_2);
this_ClassifierContextDeclCS_1=ruleClassifierContextDeclCS();
state._fsp--;
if (state.failed) return ;
}
}
// $ANTLR end synpred12_InternalCompleteOCL
// $ANTLR start synpred127_InternalCompleteOCL
public final void synpred127_InternalCompleteOCL_fragment() throws RecognitionException {
EObject this_TypeLiteralCS_1 = null;
// InternalCompleteOCL.g:4325:2: (this_TypeLiteralCS_1= ruleTypeLiteralCS )
// InternalCompleteOCL.g:4325: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 synpred127_InternalCompleteOCL
// $ANTLR start synpred130_InternalCompleteOCL
public final void synpred130_InternalCompleteOCL_fragment() throws RecognitionException {
EObject this_PrefixedPrimaryExpCS_0 = null;
AntlrDatatypeRuleToken lv_name_2_0 = null;
EObject lv_ownedRight_3_0 = null;
// InternalCompleteOCL.g:4421:2: ( (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) )
// InternalCompleteOCL.g:4421:2: (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? )
{
// InternalCompleteOCL.g:4421:2: (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? )
// InternalCompleteOCL.g:4422:2: this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )?
{
if ( state.backtracking==0 ) {
/* */
}
pushFollow(FollowSets000.FOLLOW_50);
this_PrefixedPrimaryExpCS_0=rulePrefixedPrimaryExpCS();
state._fsp--;
if (state.failed) return ;
// InternalCompleteOCL.g:4433:1: ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )?
int alt156=2;
int LA156_0 = input.LA(1);
if ( ((LA156_0>=17 && LA156_0<=18)||LA156_0==27||(LA156_0>=39 && LA156_0<=40)||LA156_0==52||(LA156_0>=55 && LA156_0<=72)) ) {
alt156=1;
}
switch (alt156) {
case 1 :
// InternalCompleteOCL.g:4433:2: () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) )
{
// InternalCompleteOCL.g:4433:2: ()
// InternalCompleteOCL.g:4434:2:
{
if ( state.backtracking==0 ) {
/* */
}
}
// InternalCompleteOCL.g:4442:2: ( (lv_name_2_0= ruleBinaryOperatorName ) )
// InternalCompleteOCL.g:4443:1: (lv_name_2_0= ruleBinaryOperatorName )
{
// InternalCompleteOCL.g:4443:1: (lv_name_2_0= ruleBinaryOperatorName )
// InternalCompleteOCL.g:4444:3: lv_name_2_0= ruleBinaryOperatorName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_40);
lv_name_2_0=ruleBinaryOperatorName();
state._fsp--;
if (state.failed) return ;
}
}
// InternalCompleteOCL.g:4460:2: ( (lv_ownedRight_3_0= ruleExpCS ) )
// InternalCompleteOCL.g:4461:1: (lv_ownedRight_3_0= ruleExpCS )
{
// InternalCompleteOCL.g:4461:1: (lv_ownedRight_3_0= ruleExpCS )
// InternalCompleteOCL.g:4462: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 synpred130_InternalCompleteOCL
// $ANTLR start synpred137_InternalCompleteOCL
public final void synpred137_InternalCompleteOCL_fragment() throws RecognitionException {
EObject this_TupleLiteralExpCS_4 = null;
// InternalCompleteOCL.g:4723:2: (this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS )
// InternalCompleteOCL.g:4723: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 synpred137_InternalCompleteOCL
// $ANTLR start synpred138_InternalCompleteOCL
public final void synpred138_InternalCompleteOCL_fragment() throws RecognitionException {
EObject this_MapLiteralExpCS_5 = null;
// InternalCompleteOCL.g:4736:2: (this_MapLiteralExpCS_5= ruleMapLiteralExpCS )
// InternalCompleteOCL.g:4736: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 synpred138_InternalCompleteOCL
// $ANTLR start synpred139_InternalCompleteOCL
public final void synpred139_InternalCompleteOCL_fragment() throws RecognitionException {
EObject this_CollectionLiteralExpCS_6 = null;
// InternalCompleteOCL.g:4749:2: (this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS )
// InternalCompleteOCL.g:4749: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 synpred139_InternalCompleteOCL
// $ANTLR start synpred141_InternalCompleteOCL
public final void synpred141_InternalCompleteOCL_fragment() throws RecognitionException {
EObject this_TypeLiteralExpCS_8 = null;
// InternalCompleteOCL.g:4775:2: (this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS )
// InternalCompleteOCL.g:4775: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 synpred141_InternalCompleteOCL
// $ANTLR start synpred155_InternalCompleteOCL
public final void synpred155_InternalCompleteOCL_fragment() throws RecognitionException {
Token otherlv_1=null;
Token otherlv_2=null;
Token otherlv_4=null;
EObject lv_ownedCoIterator_3_0 = null;
EObject lv_ownedInitExpression_5_0 = null;
// InternalCompleteOCL.g:5204:3: ( ( (otherlv_1= 'with' | otherlv_2= '<-' ) ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) )
// InternalCompleteOCL.g:5204:3: ( (otherlv_1= 'with' | otherlv_2= '<-' ) ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )
{
// InternalCompleteOCL.g:5204:3: ( (otherlv_1= 'with' | otherlv_2= '<-' ) ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )
// InternalCompleteOCL.g:5204:4: (otherlv_1= 'with' | otherlv_2= '<-' ) ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )?
{
// InternalCompleteOCL.g:5204:4: (otherlv_1= 'with' | otherlv_2= '<-' )
int alt161=2;
int LA161_0 = input.LA(1);
if ( (LA161_0==86) ) {
alt161=1;
}
else if ( (LA161_0==87) ) {
alt161=2;
}
else {
if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
new NoViableAltException("", 161, 0, input);
throw nvae;
}
switch (alt161) {
case 1 :
// InternalCompleteOCL.g:5204:6: otherlv_1= 'with'
{
otherlv_1=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return ;
}
break;
case 2 :
// InternalCompleteOCL.g:5209:7: otherlv_2= '<-'
{
otherlv_2=(Token)match(input,87,FollowSets000.FOLLOW_15); if (state.failed) return ;
}
break;
}
// InternalCompleteOCL.g:5213:2: ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) )
// InternalCompleteOCL.g:5214:1: (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS )
{
// InternalCompleteOCL.g:5214:1: (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS )
// InternalCompleteOCL.g:5215:3: lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_0_1_0());
}
pushFollow(FollowSets000.FOLLOW_60);
lv_ownedCoIterator_3_0=ruleCoIteratorVariableCS();
state._fsp--;
if (state.failed) return ;
}
}
// InternalCompleteOCL.g:5231:2: (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )?
int alt162=2;
int LA162_0 = input.LA(1);
if ( (LA162_0==27) ) {
alt162=1;
}
switch (alt162) {
case 1 :
// InternalCompleteOCL.g:5231:4: otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
{
otherlv_4=(Token)match(input,27,FollowSets000.FOLLOW_40); if (state.failed) return ;
// InternalCompleteOCL.g:5235:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
// InternalCompleteOCL.g:5236:1: (lv_ownedInitExpression_5_0= ruleExpCS )
{
// InternalCompleteOCL.g:5236:1: (lv_ownedInitExpression_5_0= ruleExpCS )
// InternalCompleteOCL.g:5237:3: lv_ownedInitExpression_5_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0());
}
pushFollow(FollowSets000.FOLLOW_2);
lv_ownedInitExpression_5_0=ruleExpCS();
state._fsp--;
if (state.failed) return ;
}
}
}
break;
}
}
}
}
// $ANTLR end synpred155_InternalCompleteOCL
// $ANTLR start synpred159_InternalCompleteOCL
public final void synpred159_InternalCompleteOCL_fragment() throws RecognitionException {
Token otherlv_6=null;
Token otherlv_8=null;
Token otherlv_9=null;
Token otherlv_11=null;
EObject lv_ownedType_7_0 = null;
EObject lv_ownedCoIterator_10_0 = null;
EObject lv_ownedInitExpression_12_0 = null;
// InternalCompleteOCL.g:5254:6: ( (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) ( (otherlv_8= 'with' | otherlv_9= '<-' ) ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) ) )? (otherlv_11= '=' ( (lv_ownedInitExpression_12_0= ruleExpCS ) ) )? ) )
// InternalCompleteOCL.g:5254:6: (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) ( (otherlv_8= 'with' | otherlv_9= '<-' ) ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) ) )? (otherlv_11= '=' ( (lv_ownedInitExpression_12_0= ruleExpCS ) ) )? )
{
// InternalCompleteOCL.g:5254:6: (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) ( (otherlv_8= 'with' | otherlv_9= '<-' ) ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) ) )? (otherlv_11= '=' ( (lv_ownedInitExpression_12_0= ruleExpCS ) ) )? )
// InternalCompleteOCL.g:5254:8: otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) ( (otherlv_8= 'with' | otherlv_9= '<-' ) ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) ) )? (otherlv_11= '=' ( (lv_ownedInitExpression_12_0= ruleExpCS ) ) )?
{
otherlv_6=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return ;
// InternalCompleteOCL.g:5258:1: ( (lv_ownedType_7_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:5259:1: (lv_ownedType_7_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:5259:1: (lv_ownedType_7_0= ruleTypeExpCS )
// InternalCompleteOCL.g:5260:3: lv_ownedType_7_0= ruleTypeExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_61);
lv_ownedType_7_0=ruleTypeExpCS();
state._fsp--;
if (state.failed) return ;
}
}
// InternalCompleteOCL.g:5276:2: ( (otherlv_8= 'with' | otherlv_9= '<-' ) ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) ) )?
int alt165=2;
int LA165_0 = input.LA(1);
if ( ((LA165_0>=86 && LA165_0<=87)) ) {
alt165=1;
}
switch (alt165) {
case 1 :
// InternalCompleteOCL.g:5276:3: (otherlv_8= 'with' | otherlv_9= '<-' ) ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) )
{
// InternalCompleteOCL.g:5276:3: (otherlv_8= 'with' | otherlv_9= '<-' )
int alt164=2;
int LA164_0 = input.LA(1);
if ( (LA164_0==86) ) {
alt164=1;
}
else if ( (LA164_0==87) ) {
alt164=2;
}
else {
if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
new NoViableAltException("", 164, 0, input);
throw nvae;
}
switch (alt164) {
case 1 :
// InternalCompleteOCL.g:5276:5: otherlv_8= 'with'
{
otherlv_8=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return ;
}
break;
case 2 :
// InternalCompleteOCL.g:5281:7: otherlv_9= '<-'
{
otherlv_9=(Token)match(input,87,FollowSets000.FOLLOW_15); if (state.failed) return ;
}
break;
}
// InternalCompleteOCL.g:5285:2: ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) )
// InternalCompleteOCL.g:5286:1: (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS )
{
// InternalCompleteOCL.g:5286:1: (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS )
// InternalCompleteOCL.g:5287:3: lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_1_2_1_0());
}
pushFollow(FollowSets000.FOLLOW_60);
lv_ownedCoIterator_10_0=ruleCoIteratorVariableCS();
state._fsp--;
if (state.failed) return ;
}
}
}
break;
}
// InternalCompleteOCL.g:5303:4: (otherlv_11= '=' ( (lv_ownedInitExpression_12_0= ruleExpCS ) ) )?
int alt166=2;
int LA166_0 = input.LA(1);
if ( (LA166_0==27) ) {
alt166=1;
}
switch (alt166) {
case 1 :
// InternalCompleteOCL.g:5303:6: otherlv_11= '=' ( (lv_ownedInitExpression_12_0= ruleExpCS ) )
{
otherlv_11=(Token)match(input,27,FollowSets000.FOLLOW_40); if (state.failed) return ;
// InternalCompleteOCL.g:5307:1: ( (lv_ownedInitExpression_12_0= ruleExpCS ) )
// InternalCompleteOCL.g:5308:1: (lv_ownedInitExpression_12_0= ruleExpCS )
{
// InternalCompleteOCL.g:5308:1: (lv_ownedInitExpression_12_0= ruleExpCS )
// InternalCompleteOCL.g:5309:3: lv_ownedInitExpression_12_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_3_1_0());
}
pushFollow(FollowSets000.FOLLOW_2);
lv_ownedInitExpression_12_0=ruleExpCS();
state._fsp--;
if (state.failed) return ;
}
}
}
break;
}
}
}
}
// $ANTLR end synpred159_InternalCompleteOCL
// $ANTLR start synpred163_InternalCompleteOCL
public final void synpred163_InternalCompleteOCL_fragment() throws RecognitionException {
Token otherlv_13=null;
Token otherlv_15=null;
Token otherlv_16=null;
Token otherlv_18=null;
EObject lv_ownedType_14_0 = null;
EObject lv_ownedCoIterator_17_0 = null;
EObject lv_ownedInitExpression_19_0 = null;
// InternalCompleteOCL.g:5326:6: ( ( (otherlv_13= ':' ( (lv_ownedType_14_0= ruleTypeExpCS ) ) )? ( (otherlv_15= 'with' | otherlv_16= '<-' ) ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) ) )? otherlv_18= 'in' ( (lv_ownedInitExpression_19_0= ruleExpCS ) ) ) )
// InternalCompleteOCL.g:5326:6: ( (otherlv_13= ':' ( (lv_ownedType_14_0= ruleTypeExpCS ) ) )? ( (otherlv_15= 'with' | otherlv_16= '<-' ) ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) ) )? otherlv_18= 'in' ( (lv_ownedInitExpression_19_0= ruleExpCS ) ) )
{
// InternalCompleteOCL.g:5326:6: ( (otherlv_13= ':' ( (lv_ownedType_14_0= ruleTypeExpCS ) ) )? ( (otherlv_15= 'with' | otherlv_16= '<-' ) ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) ) )? otherlv_18= 'in' ( (lv_ownedInitExpression_19_0= ruleExpCS ) ) )
// InternalCompleteOCL.g:5326:7: (otherlv_13= ':' ( (lv_ownedType_14_0= ruleTypeExpCS ) ) )? ( (otherlv_15= 'with' | otherlv_16= '<-' ) ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) ) )? otherlv_18= 'in' ( (lv_ownedInitExpression_19_0= ruleExpCS ) )
{
// InternalCompleteOCL.g:5326:7: (otherlv_13= ':' ( (lv_ownedType_14_0= ruleTypeExpCS ) ) )?
int alt168=2;
int LA168_0 = input.LA(1);
if ( (LA168_0==23) ) {
alt168=1;
}
switch (alt168) {
case 1 :
// InternalCompleteOCL.g:5326:9: otherlv_13= ':' ( (lv_ownedType_14_0= ruleTypeExpCS ) )
{
otherlv_13=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return ;
// InternalCompleteOCL.g:5330:1: ( (lv_ownedType_14_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:5331:1: (lv_ownedType_14_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:5331:1: (lv_ownedType_14_0= ruleTypeExpCS )
// InternalCompleteOCL.g:5332:3: lv_ownedType_14_0= ruleTypeExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_2_0_1_0());
}
pushFollow(FollowSets000.FOLLOW_62);
lv_ownedType_14_0=ruleTypeExpCS();
state._fsp--;
if (state.failed) return ;
}
}
}
break;
}
// InternalCompleteOCL.g:5348:4: ( (otherlv_15= 'with' | otherlv_16= '<-' ) ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) ) )?
int alt170=2;
int LA170_0 = input.LA(1);
if ( ((LA170_0>=86 && LA170_0<=87)) ) {
alt170=1;
}
switch (alt170) {
case 1 :
// InternalCompleteOCL.g:5348:5: (otherlv_15= 'with' | otherlv_16= '<-' ) ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) )
{
// InternalCompleteOCL.g:5348:5: (otherlv_15= 'with' | otherlv_16= '<-' )
int alt169=2;
int LA169_0 = input.LA(1);
if ( (LA169_0==86) ) {
alt169=1;
}
else if ( (LA169_0==87) ) {
alt169=2;
}
else {
if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
new NoViableAltException("", 169, 0, input);
throw nvae;
}
switch (alt169) {
case 1 :
// InternalCompleteOCL.g:5348:7: otherlv_15= 'with'
{
otherlv_15=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return ;
}
break;
case 2 :
// InternalCompleteOCL.g:5353:7: otherlv_16= '<-'
{
otherlv_16=(Token)match(input,87,FollowSets000.FOLLOW_15); if (state.failed) return ;
}
break;
}
// InternalCompleteOCL.g:5357:2: ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) )
// InternalCompleteOCL.g:5358:1: (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS )
{
// InternalCompleteOCL.g:5358:1: (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS )
// InternalCompleteOCL.g:5359:3: lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_0_1_2_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_63);
lv_ownedCoIterator_17_0=ruleCoIteratorVariableCS();
state._fsp--;
if (state.failed) return ;
}
}
}
break;
}
otherlv_18=(Token)match(input,95,FollowSets000.FOLLOW_40); if (state.failed) return ;
// InternalCompleteOCL.g:5379:1: ( (lv_ownedInitExpression_19_0= ruleExpCS ) )
// InternalCompleteOCL.g:5380:1: (lv_ownedInitExpression_19_0= ruleExpCS )
{
// InternalCompleteOCL.g:5380:1: (lv_ownedInitExpression_19_0= ruleExpCS )
// InternalCompleteOCL.g:5381:3: lv_ownedInitExpression_19_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_2_3_0());
}
pushFollow(FollowSets000.FOLLOW_2);
lv_ownedInitExpression_19_0=ruleExpCS();
state._fsp--;
if (state.failed) return ;
}
}
}
}
}
// $ANTLR end synpred163_InternalCompleteOCL
// $ANTLR start synpred169_InternalCompleteOCL
public final void synpred169_InternalCompleteOCL_fragment() throws RecognitionException {
Token otherlv_2=null;
Token otherlv_3=null;
Token otherlv_5=null;
EObject lv_ownedCoIterator_4_0 = null;
EObject lv_ownedInitExpression_6_0 = null;
// InternalCompleteOCL.g:5572:3: ( ( (otherlv_2= 'with' | otherlv_3= '<-' ) ( (lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS ) ) (otherlv_5= '=' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) )? ) )
// InternalCompleteOCL.g:5572:3: ( (otherlv_2= 'with' | otherlv_3= '<-' ) ( (lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS ) ) (otherlv_5= '=' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) )? )
{
// InternalCompleteOCL.g:5572:3: ( (otherlv_2= 'with' | otherlv_3= '<-' ) ( (lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS ) ) (otherlv_5= '=' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) )? )
// InternalCompleteOCL.g:5572:4: (otherlv_2= 'with' | otherlv_3= '<-' ) ( (lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS ) ) (otherlv_5= '=' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) )?
{
// InternalCompleteOCL.g:5572:4: (otherlv_2= 'with' | otherlv_3= '<-' )
int alt181=2;
int LA181_0 = input.LA(1);
if ( (LA181_0==86) ) {
alt181=1;
}
else if ( (LA181_0==87) ) {
alt181=2;
}
else {
if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
new NoViableAltException("", 181, 0, input);
throw nvae;
}
switch (alt181) {
case 1 :
// InternalCompleteOCL.g:5572:6: otherlv_2= 'with'
{
otherlv_2=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return ;
}
break;
case 2 :
// InternalCompleteOCL.g:5577:7: otherlv_3= '<-'
{
otherlv_3=(Token)match(input,87,FollowSets000.FOLLOW_15); if (state.failed) return ;
}
break;
}
// InternalCompleteOCL.g:5581:2: ( (lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS ) )
// InternalCompleteOCL.g:5582:1: (lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS )
{
// InternalCompleteOCL.g:5582:1: (lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS )
// InternalCompleteOCL.g:5583:3: lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_0_1_0());
}
pushFollow(FollowSets000.FOLLOW_60);
lv_ownedCoIterator_4_0=ruleCoIteratorVariableCS();
state._fsp--;
if (state.failed) return ;
}
}
// InternalCompleteOCL.g:5599:2: (otherlv_5= '=' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) )?
int alt182=2;
int LA182_0 = input.LA(1);
if ( (LA182_0==27) ) {
alt182=1;
}
switch (alt182) {
case 1 :
// InternalCompleteOCL.g:5599:4: otherlv_5= '=' ( (lv_ownedInitExpression_6_0= ruleExpCS ) )
{
otherlv_5=(Token)match(input,27,FollowSets000.FOLLOW_40); if (state.failed) return ;
// InternalCompleteOCL.g:5603:1: ( (lv_ownedInitExpression_6_0= ruleExpCS ) )
// InternalCompleteOCL.g:5604:1: (lv_ownedInitExpression_6_0= ruleExpCS )
{
// InternalCompleteOCL.g:5604:1: (lv_ownedInitExpression_6_0= ruleExpCS )
// InternalCompleteOCL.g:5605:3: lv_ownedInitExpression_6_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
}
pushFollow(FollowSets000.FOLLOW_2);
lv_ownedInitExpression_6_0=ruleExpCS();
state._fsp--;
if (state.failed) return ;
}
}
}
break;
}
}
}
}
// $ANTLR end synpred169_InternalCompleteOCL
// $ANTLR start synpred173_InternalCompleteOCL
public final void synpred173_InternalCompleteOCL_fragment() throws RecognitionException {
Token otherlv_7=null;
Token otherlv_9=null;
Token otherlv_10=null;
Token otherlv_12=null;
EObject lv_ownedType_8_0 = null;
EObject lv_ownedCoIterator_11_0 = null;
EObject lv_ownedInitExpression_13_0 = null;
// InternalCompleteOCL.g:5622:6: ( (otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ( (otherlv_9= 'with' | otherlv_10= '<-' ) ( (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS ) ) )? (otherlv_12= '=' ( (lv_ownedInitExpression_13_0= ruleExpCS ) ) )? ) )
// InternalCompleteOCL.g:5622:6: (otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ( (otherlv_9= 'with' | otherlv_10= '<-' ) ( (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS ) ) )? (otherlv_12= '=' ( (lv_ownedInitExpression_13_0= ruleExpCS ) ) )? )
{
// InternalCompleteOCL.g:5622:6: (otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ( (otherlv_9= 'with' | otherlv_10= '<-' ) ( (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS ) ) )? (otherlv_12= '=' ( (lv_ownedInitExpression_13_0= ruleExpCS ) ) )? )
// InternalCompleteOCL.g:5622:8: otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ( (otherlv_9= 'with' | otherlv_10= '<-' ) ( (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS ) ) )? (otherlv_12= '=' ( (lv_ownedInitExpression_13_0= ruleExpCS ) ) )?
{
otherlv_7=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return ;
// InternalCompleteOCL.g:5626:1: ( (lv_ownedType_8_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:5627:1: (lv_ownedType_8_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:5627:1: (lv_ownedType_8_0= ruleTypeExpCS )
// InternalCompleteOCL.g:5628:3: lv_ownedType_8_0= ruleTypeExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_61);
lv_ownedType_8_0=ruleTypeExpCS();
state._fsp--;
if (state.failed) return ;
}
}
// InternalCompleteOCL.g:5644:2: ( (otherlv_9= 'with' | otherlv_10= '<-' ) ( (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS ) ) )?
int alt185=2;
int LA185_0 = input.LA(1);
if ( ((LA185_0>=86 && LA185_0<=87)) ) {
alt185=1;
}
switch (alt185) {
case 1 :
// InternalCompleteOCL.g:5644:3: (otherlv_9= 'with' | otherlv_10= '<-' ) ( (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS ) )
{
// InternalCompleteOCL.g:5644:3: (otherlv_9= 'with' | otherlv_10= '<-' )
int alt184=2;
int LA184_0 = input.LA(1);
if ( (LA184_0==86) ) {
alt184=1;
}
else if ( (LA184_0==87) ) {
alt184=2;
}
else {
if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
new NoViableAltException("", 184, 0, input);
throw nvae;
}
switch (alt184) {
case 1 :
// InternalCompleteOCL.g:5644:5: otherlv_9= 'with'
{
otherlv_9=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return ;
}
break;
case 2 :
// InternalCompleteOCL.g:5649:7: otherlv_10= '<-'
{
otherlv_10=(Token)match(input,87,FollowSets000.FOLLOW_15); if (state.failed) return ;
}
break;
}
// InternalCompleteOCL.g:5653:2: ( (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS ) )
// InternalCompleteOCL.g:5654:1: (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS )
{
// InternalCompleteOCL.g:5654:1: (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS )
// InternalCompleteOCL.g:5655:3: lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_1_2_1_0());
}
pushFollow(FollowSets000.FOLLOW_60);
lv_ownedCoIterator_11_0=ruleCoIteratorVariableCS();
state._fsp--;
if (state.failed) return ;
}
}
}
break;
}
// InternalCompleteOCL.g:5671:4: (otherlv_12= '=' ( (lv_ownedInitExpression_13_0= ruleExpCS ) ) )?
int alt186=2;
int LA186_0 = input.LA(1);
if ( (LA186_0==27) ) {
alt186=1;
}
switch (alt186) {
case 1 :
// InternalCompleteOCL.g:5671:6: otherlv_12= '=' ( (lv_ownedInitExpression_13_0= ruleExpCS ) )
{
otherlv_12=(Token)match(input,27,FollowSets000.FOLLOW_40); if (state.failed) return ;
// InternalCompleteOCL.g:5675:1: ( (lv_ownedInitExpression_13_0= ruleExpCS ) )
// InternalCompleteOCL.g:5676:1: (lv_ownedInitExpression_13_0= ruleExpCS )
{
// InternalCompleteOCL.g:5676:1: (lv_ownedInitExpression_13_0= ruleExpCS )
// InternalCompleteOCL.g:5677:3: lv_ownedInitExpression_13_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_3_1_0());
}
pushFollow(FollowSets000.FOLLOW_2);
lv_ownedInitExpression_13_0=ruleExpCS();
state._fsp--;
if (state.failed) return ;
}
}
}
break;
}
}
}
}
// $ANTLR end synpred173_InternalCompleteOCL
// $ANTLR start synpred177_InternalCompleteOCL
public final void synpred177_InternalCompleteOCL_fragment() throws RecognitionException {
Token otherlv_14=null;
Token otherlv_16=null;
Token otherlv_17=null;
Token otherlv_19=null;
EObject lv_ownedType_15_0 = null;
EObject lv_ownedCoIterator_18_0 = null;
EObject lv_ownedInitExpression_20_0 = null;
// InternalCompleteOCL.g:5694:6: ( ( (otherlv_14= ':' ( (lv_ownedType_15_0= ruleTypeExpCS ) ) )? ( (otherlv_16= 'with' | otherlv_17= '<-' ) ( (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS ) ) )? otherlv_19= 'in' ( (lv_ownedInitExpression_20_0= ruleExpCS ) ) ) )
// InternalCompleteOCL.g:5694:6: ( (otherlv_14= ':' ( (lv_ownedType_15_0= ruleTypeExpCS ) ) )? ( (otherlv_16= 'with' | otherlv_17= '<-' ) ( (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS ) ) )? otherlv_19= 'in' ( (lv_ownedInitExpression_20_0= ruleExpCS ) ) )
{
// InternalCompleteOCL.g:5694:6: ( (otherlv_14= ':' ( (lv_ownedType_15_0= ruleTypeExpCS ) ) )? ( (otherlv_16= 'with' | otherlv_17= '<-' ) ( (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS ) ) )? otherlv_19= 'in' ( (lv_ownedInitExpression_20_0= ruleExpCS ) ) )
// InternalCompleteOCL.g:5694:7: (otherlv_14= ':' ( (lv_ownedType_15_0= ruleTypeExpCS ) ) )? ( (otherlv_16= 'with' | otherlv_17= '<-' ) ( (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS ) ) )? otherlv_19= 'in' ( (lv_ownedInitExpression_20_0= ruleExpCS ) )
{
// InternalCompleteOCL.g:5694:7: (otherlv_14= ':' ( (lv_ownedType_15_0= ruleTypeExpCS ) ) )?
int alt188=2;
int LA188_0 = input.LA(1);
if ( (LA188_0==23) ) {
alt188=1;
}
switch (alt188) {
case 1 :
// InternalCompleteOCL.g:5694:9: otherlv_14= ':' ( (lv_ownedType_15_0= ruleTypeExpCS ) )
{
otherlv_14=(Token)match(input,23,FollowSets000.FOLLOW_21); if (state.failed) return ;
// InternalCompleteOCL.g:5698:1: ( (lv_ownedType_15_0= ruleTypeExpCS ) )
// InternalCompleteOCL.g:5699:1: (lv_ownedType_15_0= ruleTypeExpCS )
{
// InternalCompleteOCL.g:5699:1: (lv_ownedType_15_0= ruleTypeExpCS )
// InternalCompleteOCL.g:5700:3: lv_ownedType_15_0= ruleTypeExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_2_0_1_0());
}
pushFollow(FollowSets000.FOLLOW_62);
lv_ownedType_15_0=ruleTypeExpCS();
state._fsp--;
if (state.failed) return ;
}
}
}
break;
}
// InternalCompleteOCL.g:5716:4: ( (otherlv_16= 'with' | otherlv_17= '<-' ) ( (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS ) ) )?
int alt190=2;
int LA190_0 = input.LA(1);
if ( ((LA190_0>=86 && LA190_0<=87)) ) {
alt190=1;
}
switch (alt190) {
case 1 :
// InternalCompleteOCL.g:5716:5: (otherlv_16= 'with' | otherlv_17= '<-' ) ( (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS ) )
{
// InternalCompleteOCL.g:5716:5: (otherlv_16= 'with' | otherlv_17= '<-' )
int alt189=2;
int LA189_0 = input.LA(1);
if ( (LA189_0==86) ) {
alt189=1;
}
else if ( (LA189_0==87) ) {
alt189=2;
}
else {
if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
new NoViableAltException("", 189, 0, input);
throw nvae;
}
switch (alt189) {
case 1 :
// InternalCompleteOCL.g:5716:7: otherlv_16= 'with'
{
otherlv_16=(Token)match(input,86,FollowSets000.FOLLOW_15); if (state.failed) return ;
}
break;
case 2 :
// InternalCompleteOCL.g:5721:7: otherlv_17= '<-'
{
otherlv_17=(Token)match(input,87,FollowSets000.FOLLOW_15); if (state.failed) return ;
}
break;
}
// InternalCompleteOCL.g:5725:2: ( (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS ) )
// InternalCompleteOCL.g:5726:1: (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS )
{
// InternalCompleteOCL.g:5726:1: (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS )
// InternalCompleteOCL.g:5727:3: lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedCoIteratorCoIteratorVariableCSParserRuleCall_2_2_1_1_0());
}
pushFollow(FollowSets000.FOLLOW_63);
lv_ownedCoIterator_18_0=ruleCoIteratorVariableCS();
state._fsp--;
if (state.failed) return ;
}
}
}
break;
}
otherlv_19=(Token)match(input,95,FollowSets000.FOLLOW_40); if (state.failed) return ;
// InternalCompleteOCL.g:5747:1: ( (lv_ownedInitExpression_20_0= ruleExpCS ) )
// InternalCompleteOCL.g:5748:1: (lv_ownedInitExpression_20_0= ruleExpCS )
{
// InternalCompleteOCL.g:5748:1: (lv_ownedInitExpression_20_0= ruleExpCS )
// InternalCompleteOCL.g:5749:3: lv_ownedInitExpression_20_0= ruleExpCS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_3_0());
}
pushFollow(FollowSets000.FOLLOW_2);
lv_ownedInitExpression_20_0=ruleExpCS();
state._fsp--;
if (state.failed) return ;
}
}
}
}
}
// $ANTLR end synpred177_InternalCompleteOCL
// Delegated rules
public final boolean synpred12_InternalCompleteOCL() {
state.backtracking++;
int start = input.mark();
try {
synpred12_InternalCompleteOCL_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 synpred169_InternalCompleteOCL() {
state.backtracking++;
int start = input.mark();
try {
synpred169_InternalCompleteOCL_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 synpred139_InternalCompleteOCL() {
state.backtracking++;
int start = input.mark();
try {
synpred139_InternalCompleteOCL_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 synpred137_InternalCompleteOCL() {
state.backtracking++;
int start = input.mark();
try {
synpred137_InternalCompleteOCL_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 synpred138_InternalCompleteOCL() {
state.backtracking++;
int start = input.mark();
try {
synpred138_InternalCompleteOCL_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 synpred159_InternalCompleteOCL() {
state.backtracking++;
int start = input.mark();
try {
synpred159_InternalCompleteOCL_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 synpred127_InternalCompleteOCL() {
state.backtracking++;
int start = input.mark();
try {
synpred127_InternalCompleteOCL_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 synpred177_InternalCompleteOCL() {
state.backtracking++;
int start = input.mark();
try {
synpred177_InternalCompleteOCL_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 synpred173_InternalCompleteOCL() {
state.backtracking++;
int start = input.mark();
try {
synpred173_InternalCompleteOCL_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 synpred155_InternalCompleteOCL() {
state.backtracking++;
int start = input.mark();
try {
synpred155_InternalCompleteOCL_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 synpred163_InternalCompleteOCL() {
state.backtracking++;
int start = input.mark();
try {
synpred163_InternalCompleteOCL_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 synpred11_InternalCompleteOCL() {
state.backtracking++;
int start = input.mark();
try {
synpred11_InternalCompleteOCL_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 synpred141_InternalCompleteOCL() {
state.backtracking++;
int start = input.mark();
try {
synpred141_InternalCompleteOCL_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 synpred130_InternalCompleteOCL() {
state.backtracking++;
int start = input.mark();
try {
synpred130_InternalCompleteOCL_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 DFA10 dfa10 = new DFA10(this);
protected DFA78 dfa78 = new DFA78(this);
protected DFA81 dfa81 = new DFA81(this);
protected DFA84 dfa84 = new DFA84(this);
protected DFA103 dfa103 = new DFA103(this);
protected DFA115 dfa115 = new DFA115(this);
static final String dfa_1s = "\20\uffff";
static final String dfa_2s = "\1\30\1\31\1\5\5\27\1\5\5\25\2\uffff";
static final String dfa_3s = "\2\31\1\36\5\27\1\47\5\27\2\uffff";
static final String dfa_4s = "\16\uffff\1\1\1\2";
static final String dfa_5s = "\20\uffff}>";
static final String[] dfa_6s = {
"\1\1\1\2",
"\1\2",
"\1\3\1\4\20\uffff\1\10\4\uffff\1\5\1\6\1\7",
"\1\10",
"\1\10",
"\1\10",
"\1\10",
"\1\10",
"\1\11\1\12\16\uffff\1\16\6\uffff\1\13\1\14\1\15\10\uffff\1\16",
"\1\16\1\uffff\1\17",
"\1\16\1\uffff\1\17",
"\1\16\1\uffff\1\17",
"\1\16\1\uffff\1\17",
"\1\16\1\uffff\1\17",
"",
""
};
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 DFA10 extends DFA {
public DFA10(BaseRecognizer recognizer) {
this.recognizer = recognizer;
this.decisionNumber = 10;
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 "469:1: (this_DefOperationCS_0= ruleDefOperationCS | this_DefPropertyCS_1= ruleDefPropertyCS )";
}
}
static final String dfa_7s = "\30\uffff";
static final String dfa_8s = "\1\5\17\uffff\5\0\3\uffff";
static final String dfa_9s = "\1\120\17\uffff\5\0\3\uffff";
static final String dfa_10s = "\1\uffff\1\1\4\uffff\1\2\20\uffff\1\3";
static final String dfa_11s = "\20\uffff\1\0\1\1\1\2\1\3\1\4\3\uffff}>";
static final String[] dfa_12s = {
"\2\1\25\uffff\3\1\13\uffff\12\6\25\uffff\2\6\1\uffff\1\20\1\21\1\22\1\23\1\24",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"\1\uffff",
"\1\uffff",
"\1\uffff",
"\1\uffff",
"\1\uffff",
"",
"",
""
};
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 DFA78 extends DFA {
public DFA78(BaseRecognizer recognizer) {
this.recognizer = recognizer;
this.decisionNumber = 78;
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 "4311: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 LA78_16 = input.LA(1);
int index78_16 = input.index();
input.rewind();
s = -1;
if ( (synpred127_InternalCompleteOCL()) ) {s = 6;}
else if ( (true) ) {s = 23;}
input.seek(index78_16);
if ( s>=0 ) return s;
break;
case 1 :
int LA78_17 = input.LA(1);
int index78_17 = input.index();
input.rewind();
s = -1;
if ( (synpred127_InternalCompleteOCL()) ) {s = 6;}
else if ( (true) ) {s = 23;}
input.seek(index78_17);
if ( s>=0 ) return s;
break;
case 2 :
int LA78_18 = input.LA(1);
int index78_18 = input.index();
input.rewind();
s = -1;
if ( (synpred127_InternalCompleteOCL()) ) {s = 6;}
else if ( (true) ) {s = 23;}
input.seek(index78_18);
if ( s>=0 ) return s;
break;
case 3 :
int LA78_19 = input.LA(1);
int index78_19 = input.index();
input.rewind();
s = -1;
if ( (synpred127_InternalCompleteOCL()) ) {s = 6;}
else if ( (true) ) {s = 23;}
input.seek(index78_19);
if ( s>=0 ) return s;
break;
case 4 :
int LA78_20 = input.LA(1);
int index78_20 = input.index();
input.rewind();
s = -1;
if ( (synpred127_InternalCompleteOCL()) ) {s = 6;}
else if ( (true) ) {s = 23;}
input.seek(index78_20);
if ( s>=0 ) return s;
break;
}
if (state.backtracking>0) {state.failed=true; return -1;}
NoViableAltException nvae =
new NoViableAltException(getDescription(), 78, _s, input);
error(nvae);
throw nvae;
}
}
static final String dfa_13s = "\46\uffff";
static final String dfa_14s = "\1\5\3\0\42\uffff";
static final String dfa_15s = "\1\150\3\0\42\uffff";
static final String dfa_16s = "\4\uffff\1\1\40\uffff\1\2";
static final String dfa_17s = "\1\uffff\1\0\1\1\1\2\42\uffff}>";
static final String[] dfa_18s = {
"\4\4\14\uffff\1\4\6\uffff\3\4\13\uffff\12\4\1\1\1\2\1\3\1\4\21\uffff\2\4\1\uffff\5\4\4\uffff\1\4\2\uffff\4\4\6\uffff\1\4\4\uffff\1\45\1\4",
"\1\uffff",
"\1\uffff",
"\1\uffff",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
""
};
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 DFA81 extends DFA {
public DFA81(BaseRecognizer recognizer) {
this.recognizer = recognizer;
this.decisionNumber = 81;
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 "4421: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 LA81_1 = input.LA(1);
int index81_1 = input.index();
input.rewind();
s = -1;
if ( (synpred130_InternalCompleteOCL()) ) {s = 4;}
else if ( (true) ) {s = 37;}
input.seek(index81_1);
if ( s>=0 ) return s;
break;
case 1 :
int LA81_2 = input.LA(1);
int index81_2 = input.index();
input.rewind();
s = -1;
if ( (synpred130_InternalCompleteOCL()) ) {s = 4;}
else if ( (true) ) {s = 37;}
input.seek(index81_2);
if ( s>=0 ) return s;
break;
case 2 :
int LA81_3 = input.LA(1);
int index81_3 = input.index();
input.rewind();
s = -1;
if ( (synpred130_InternalCompleteOCL()) ) {s = 4;}
else if ( (true) ) {s = 37;}
input.seek(index81_3);
if ( s>=0 ) return s;
break;
}
if (state.backtracking>0) {state.failed=true; return -1;}
NoViableAltException nvae =
new NoViableAltException(getDescription(), 81, _s, input);
error(nvae);
throw nvae;
}
}
static final String dfa_19s = "\45\uffff";
static final String dfa_20s = "\1\5\12\uffff\7\0\23\uffff";
static final String dfa_21s = "\1\150\12\uffff\7\0\23\uffff";
static final String dfa_22s = "\1\uffff\1\1\1\2\1\3\1\4\15\uffff\1\10\1\11\11\uffff\1\12\4\uffff\1\5\1\6\1\7";
static final String dfa_23s = "\13\uffff\1\0\1\1\1\2\1\3\1\4\1\5\1\6\23\uffff}>";
static final String[] dfa_24s = {
"\2\35\2\4\14\uffff\1\1\6\uffff\3\35\13\uffff\12\23\3\uffff\1\4\21\uffff\1\14\1\13\1\uffff\1\15\1\16\1\17\1\20\1\21\4\uffff\1\22\2\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 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 = DFA.unpackEncodedString(dfa_23s);
static final short[][] dfa_24 = unpackEncodedStringArray(dfa_24s);
class DFA84 extends DFA {
public DFA84(BaseRecognizer recognizer) {
this.recognizer = recognizer;
this.decisionNumber = 84;
this.eot = dfa_19;
this.eof = dfa_19;
this.min = dfa_20;
this.max = dfa_21;
this.accept = dfa_22;
this.special = dfa_23;
this.transition = dfa_24;
}
public String getDescription() {
return "4670: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 LA84_11 = input.LA(1);
int index84_11 = input.index();
input.rewind();
s = -1;
if ( (synpred137_InternalCompleteOCL()) ) {s = 34;}
else if ( (synpred141_InternalCompleteOCL()) ) {s = 19;}
input.seek(index84_11);
if ( s>=0 ) return s;
break;
case 1 :
int LA84_12 = input.LA(1);
int index84_12 = input.index();
input.rewind();
s = -1;
if ( (synpred138_InternalCompleteOCL()) ) {s = 35;}
else if ( (synpred141_InternalCompleteOCL()) ) {s = 19;}
input.seek(index84_12);
if ( s>=0 ) return s;
break;
case 2 :
int LA84_13 = input.LA(1);
int index84_13 = input.index();
input.rewind();
s = -1;
if ( (synpred139_InternalCompleteOCL()) ) {s = 36;}
else if ( (synpred141_InternalCompleteOCL()) ) {s = 19;}
input.seek(index84_13);
if ( s>=0 ) return s;
break;
case 3 :
int LA84_14 = input.LA(1);
int index84_14 = input.index();
input.rewind();
s = -1;
if ( (synpred139_InternalCompleteOCL()) ) {s = 36;}
else if ( (synpred141_InternalCompleteOCL()) ) {s = 19;}
input.seek(index84_14);
if ( s>=0 ) return s;
break;
case 4 :
int LA84_15 = input.LA(1);
int index84_15 = input.index();
input.rewind();
s = -1;
if ( (synpred139_InternalCompleteOCL()) ) {s = 36;}
else if ( (synpred141_InternalCompleteOCL()) ) {s = 19;}
input.seek(index84_15);
if ( s>=0 ) return s;
break;
case 5 :
int LA84_16 = input.LA(1);
int index84_16 = input.index();
input.rewind();
s = -1;
if ( (synpred139_InternalCompleteOCL()) ) {s = 36;}
else if ( (synpred141_InternalCompleteOCL()) ) {s = 19;}
input.seek(index84_16);
if ( s>=0 ) return s;
break;
case 6 :
int LA84_17 = input.LA(1);
int index84_17 = input.index();
input.rewind();
s = -1;
if ( (synpred139_InternalCompleteOCL()) ) {s = 36;}
else if ( (synpred141_InternalCompleteOCL()) ) {s = 19;}
input.seek(index84_17);
if ( s>=0 ) return s;
break;
}
if (state.backtracking>0) {state.failed=true; return -1;}
NoViableAltException nvae =
new NoViableAltException(getDescription(), 84, _s, input);
error(nvae);
throw nvae;
}
}
static final String dfa_25s = "\14\uffff";
static final String dfa_26s = "\1\5\13\uffff";
static final String dfa_27s = "\1\26\3\0\10\uffff";
static final String dfa_28s = "\1\141\3\0\10\uffff";
static final String dfa_29s = "\4\uffff\1\3\1\4\4\uffff\1\1\1\2";
static final String dfa_30s = "\1\uffff\1\0\1\1\1\2\10\uffff}>";
static final String[] dfa_31s = {
"\1\5\1\3\2\uffff\1\5\73\uffff\1\1\1\2\7\uffff\1\4\2\5",
"\1\uffff",
"\1\uffff",
"\1\uffff",
"",
"",
"",
"",
"",
"",
"",
""
};
static final short[] dfa_25 = DFA.unpackEncodedString(dfa_25s);
static final short[] dfa_26 = DFA.unpackEncodedString(dfa_26s);
static final char[] dfa_27 = DFA.unpackEncodedStringToUnsignedChars(dfa_27s);
static final char[] dfa_28 = DFA.unpackEncodedStringToUnsignedChars(dfa_28s);
static final short[] dfa_29 = DFA.unpackEncodedString(dfa_29s);
static final short[] dfa_30 = DFA.unpackEncodedString(dfa_30s);
static final short[][] dfa_31 = unpackEncodedStringArray(dfa_31s);
class DFA103 extends DFA {
public DFA103(BaseRecognizer recognizer) {
this.recognizer = recognizer;
this.decisionNumber = 103;
this.eot = dfa_25;
this.eof = dfa_26;
this.min = dfa_27;
this.max = dfa_28;
this.accept = dfa_29;
this.special = dfa_30;
this.transition = dfa_31;
}
public String getDescription() {
return "5204:2: ( ( (otherlv_1= 'with' | otherlv_2= '<-' ) ( (lv_ownedCoIterator_3_0= ruleCoIteratorVariableCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypeExpCS ) ) ( (otherlv_8= 'with' | otherlv_9= '<-' ) ( (lv_ownedCoIterator_10_0= ruleCoIteratorVariableCS ) ) )? (otherlv_11= '=' ( (lv_ownedInitExpression_12_0= ruleExpCS ) ) )? ) | ( (otherlv_13= ':' ( (lv_ownedType_14_0= ruleTypeExpCS ) ) )? ( (otherlv_15= 'with' | otherlv_16= '<-' ) ( (lv_ownedCoIterator_17_0= ruleCoIteratorVariableCS ) ) )? otherlv_18= 'in' ( (lv_ownedInitExpression_19_0= ruleExpCS ) ) ) )?";
}
public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
TokenStream input = (TokenStream)_input;
int _s = s;
switch ( s ) {
case 0 :
int LA103_1 = input.LA(1);
int index103_1 = input.index();
input.rewind();
s = -1;
if ( (synpred155_InternalCompleteOCL()) ) {s = 10;}
else if ( (synpred163_InternalCompleteOCL()) ) {s = 4;}
input.seek(index103_1);
if ( s>=0 ) return s;
break;
case 1 :
int LA103_2 = input.LA(1);
int index103_2 = input.index();
input.rewind();
s = -1;
if ( (synpred155_InternalCompleteOCL()) ) {s = 10;}
else if ( (synpred163_InternalCompleteOCL()) ) {s = 4;}
input.seek(index103_2);
if ( s>=0 ) return s;
break;
case 2 :
int LA103_3 = input.LA(1);
int index103_3 = input.index();
input.rewind();
s = -1;
if ( (synpred159_InternalCompleteOCL()) ) {s = 11;}
else if ( (synpred163_InternalCompleteOCL()) ) {s = 4;}
input.seek(index103_3);
if ( s>=0 ) return s;
break;
}
if (state.backtracking>0) {state.failed=true; return -1;}
NoViableAltException nvae =
new NoViableAltException(getDescription(), 103, _s, input);
error(nvae);
throw nvae;
}
}
class DFA115 extends DFA {
public DFA115(BaseRecognizer recognizer) {
this.recognizer = recognizer;
this.decisionNumber = 115;
this.eot = dfa_25;
this.eof = dfa_26;
this.min = dfa_27;
this.max = dfa_28;
this.accept = dfa_29;
this.special = dfa_30;
this.transition = dfa_31;
}
public String getDescription() {
return "5572:2: ( ( (otherlv_2= 'with' | otherlv_3= '<-' ) ( (lv_ownedCoIterator_4_0= ruleCoIteratorVariableCS ) ) (otherlv_5= '=' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) )? ) | (otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ( (otherlv_9= 'with' | otherlv_10= '<-' ) ( (lv_ownedCoIterator_11_0= ruleCoIteratorVariableCS ) ) )? (otherlv_12= '=' ( (lv_ownedInitExpression_13_0= ruleExpCS ) ) )? ) | ( (otherlv_14= ':' ( (lv_ownedType_15_0= ruleTypeExpCS ) ) )? ( (otherlv_16= 'with' | otherlv_17= '<-' ) ( (lv_ownedCoIterator_18_0= ruleCoIteratorVariableCS ) ) )? otherlv_19= 'in' ( (lv_ownedInitExpression_20_0= ruleExpCS ) ) ) )?";
}
public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
TokenStream input = (TokenStream)_input;
int _s = s;
switch ( s ) {
case 0 :
int LA115_1 = input.LA(1);
int index115_1 = input.index();
input.rewind();
s = -1;
if ( (synpred169_InternalCompleteOCL()) ) {s = 10;}
else if ( (synpred177_InternalCompleteOCL()) ) {s = 4;}
input.seek(index115_1);
if ( s>=0 ) return s;
break;
case 1 :
int LA115_2 = input.LA(1);
int index115_2 = input.index();
input.rewind();
s = -1;
if ( (synpred169_InternalCompleteOCL()) ) {s = 10;}
else if ( (synpred177_InternalCompleteOCL()) ) {s = 4;}
input.seek(index115_2);
if ( s>=0 ) return s;
break;
case 2 :
int LA115_3 = input.LA(1);
int index115_3 = input.index();
input.rewind();
s = -1;
if ( (synpred173_InternalCompleteOCL()) ) {s = 11;}
else if ( (synpred177_InternalCompleteOCL()) ) {s = 4;}
input.seek(index115_3);
if ( s>=0 ) return s;
break;
}
if (state.backtracking>0) {state.failed=true; return -1;}
NoViableAltException nvae =
new NoViableAltException(getDescription(), 115, _s, input);
error(nvae);
throw nvae;
}
}
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[]{0x0000000870080002L});
public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000800080002L});
public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x000FFC8070200060L,0x000000000001F600L});
public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0000000003100000L});
public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x0000000070800060L});
public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000003100002L});
public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000000000A00000L});
public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x00FFFC00702001F0L,0x000001840F21F600L});
public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0000000000400000L});
public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0000000000800000L});
public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0000000002000000L});
public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000008070200060L});
public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000070000060L});
public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x0000000000200000L});
public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000070400060L});
public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000004400000L});
public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x00FFFC00782001E0L,0x000001040F21F600L});
public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x0000000008000000L});
public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x00FFFC00702001E0L,0x000001040F21F600L});
public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x0000000070000160L});
public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x0000000080000002L});
public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x00FFFC00706001E0L,0x000001040F21F600L});
public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x00FFFC07702001E2L,0x000001040F21F600L});
public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0000000700000002L});
public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0000001800180000L});
public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x0000001800080000L});
public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x0000006000000002L});
public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x0000010004000000L});
public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000800L});
public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x0000000000200002L});
public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x0000000000400000L,0x0000000020000000L});
public static final BitSet FOLLOW_34 = new BitSet(new long[]{0x0000000004000000L});
public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x0000000000000000L,0x0000000000020000L});
public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x00FFFC0070A001E0L,0x000001840F25F600L});
public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x0000000004000000L,0x0000000000040000L});
public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x00FFFC0070A001E0L,0x000001840F21F600L});
public static final BitSet FOLLOW_39 = new BitSet(new long[]{0x0000000000000002L,0x0000000000080000L});
public static final BitSet FOLLOW_40 = new BitSet(new long[]{0x00FFFC00702001E0L,0x000001840F21F600L});
public static final BitSet FOLLOW_41 = new BitSet(new long[]{0x0000000004000000L,0x0000000000100000L});
public static final BitSet FOLLOW_42 = new BitSet(new long[]{0x0000000000000060L});
public static final BitSet FOLLOW_43 = new BitSet(new long[]{0x0000000000000000L,0x0000000000040000L});
public static final BitSet FOLLOW_44 = new BitSet(new long[]{0x00FFFC00702001E0L,0x000001840F25F600L});
public static final BitSet FOLLOW_45 = new BitSet(new long[]{0x0000000000000000L,0x0000000000C00000L});
public static final BitSet FOLLOW_46 = new BitSet(new long[]{0x0000000008800000L});
public static final BitSet FOLLOW_47 = new BitSet(new long[]{0x0000000000000102L});
public static final BitSet FOLLOW_48 = new BitSet(new long[]{0x0000000000000002L,0x0000000020000000L});
public static final BitSet FOLLOW_49 = new BitSet(new long[]{0x0000000000000002L,0x0000000000020000L});
public static final BitSet FOLLOW_50 = new BitSet(new long[]{0xFF90018008060002L,0x00000000000001FFL});
public static final BitSet FOLLOW_51 = new BitSet(new long[]{0x0000000000200002L,0x0000000030020000L});
public static final BitSet FOLLOW_52 = new BitSet(new long[]{0x0000000000000002L,0x0000000010020000L});
public static final BitSet FOLLOW_53 = new BitSet(new long[]{0x0000000000000002L,0x0000000010000000L});
public static final BitSet FOLLOW_54 = new BitSet(new long[]{0x0000000100000000L});
public static final BitSet FOLLOW_55 = new BitSet(new long[]{0x0000000070000160L,0x0000000000040000L});
public static final BitSet FOLLOW_56 = new BitSet(new long[]{0x00FFFE0070E001E0L,0x000001840F21F600L});
public static final BitSet FOLLOW_57 = new BitSet(new long[]{0x0000000004400000L,0x0000000300000000L});
public static final BitSet FOLLOW_58 = new BitSet(new long[]{0x0000000004000000L,0x0000000040000000L});
public static final BitSet FOLLOW_59 = new BitSet(new long[]{0x0000000000800002L,0x0000000080C00000L});
public static final BitSet FOLLOW_60 = new BitSet(new long[]{0x0000000008000002L});
public static final BitSet FOLLOW_61 = new BitSet(new long[]{0x0000000008000002L,0x0000000000C00000L});
public static final BitSet FOLLOW_62 = new BitSet(new long[]{0x0000000000000000L,0x0000000080C00000L});
public static final BitSet FOLLOW_63 = new BitSet(new long[]{0x0000000000000000L,0x0000000080000000L});
public static final BitSet FOLLOW_64 = new BitSet(new long[]{0x00FFFE00702001E0L,0x000001840F21F600L});
public static final BitSet FOLLOW_65 = new BitSet(new long[]{0x0000000000800002L});
public static final BitSet FOLLOW_66 = new BitSet(new long[]{0x0000000000000000L,0x0000000800000000L});
public static final BitSet FOLLOW_67 = new BitSet(new long[]{0x0000000000000000L,0x0000005000000000L});
public static final BitSet FOLLOW_68 = new BitSet(new long[]{0x0000000000000000L,0x0000002000000000L});
public static final BitSet FOLLOW_69 = new BitSet(new long[]{0x0000000004000000L,0x0000000080000000L});
public static final BitSet FOLLOW_70 = new BitSet(new long[]{0x0000000008A00000L});
public static final BitSet FOLLOW_71 = new BitSet(new long[]{0x0080000000000080L});
public static final BitSet FOLLOW_72 = new BitSet(new long[]{0x0280020000000080L});
public static final BitSet FOLLOW_73 = new BitSet(new long[]{0x0000000000000000L,0x0000060040000000L});
public static final BitSet FOLLOW_74 = new BitSet(new long[]{0x0000000000000000L,0x0000000040000000L});
public static final BitSet FOLLOW_75 = new BitSet(new long[]{0x0000000004000002L,0x0000000020000000L});
public static final BitSet FOLLOW_76 = new BitSet(new long[]{0x00FFFE00702001E0L,0x000001040F21F600L});
public static final BitSet FOLLOW_77 = new BitSet(new long[]{0x0000000000000002L,0x0000080000000000L});
public static final BitSet FOLLOW_78 = new BitSet(new long[]{0x0000000000000002L,0x0000100000000000L});
}
}