InternalOrganizationParser.java
package org.osate.organization.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.osate.organization.services.OrganizationGrammarAccess;
import org.antlr.runtime.*;
import java.util.Stack;
import java.util.List;
import java.util.ArrayList;
/**
* Copyright (c) 2004-2025 Carnegie Mellon University and others. (see Contributors file).
* All Rights Reserved.
*
* NO WARRANTY. ALL MATERIAL IS FURNISHED ON AN "AS-IS" BASIS. CARNEGIE MELLON UNIVERSITY MAKES NO WARRANTIES OF ANY
* KIND, EITHER EXPRESSED OR IMPLIED, AS TO ANY MATTER INCLUDING, BUT NOT LIMITED TO, WARRANTY OF FITNESS FOR PURPOSE
* OR MERCHANTABILITY, EXCLUSIVITY, OR RESULTS OBTAINED FROM USE OF THE MATERIAL. CARNEGIE MELLON UNIVERSITY DOES NOT
* MAKE ANY WARRANTY OF ANY KIND WITH RESPECT TO FREEDOM FROM PATENT, TRADEMARK, OR COPYRIGHT INFRINGEMENT.
*
* This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0
* which is available at https://www.eclipse.org/legal/epl-2.0/
* SPDX-License-Identifier: EPL-2.0
*
* Created, in part, with funding and support from the United States Government. (see Acknowledgments file).
*
* This program includes and/or can make use of certain third party source code, object code, documentation and other
* files ("Third Party Software"). The Third Party Software that is used by this program is dependent upon your system
* configuration. By using this program, You agree to comply with any and all relevant Third Party Software terms and
* conditions contained in any such Third Party Software or separate license file distributed with such Third Party
* Software. The parties who own the Third Party Software ("Third Party Licensors") are intended third party benefici-
* aries to this license with respect to the terms applicable to their Third Party Software. Third Party Software li-
* censes only apply to the Third Party Software and not any other portion of this program or this program as a whole.
*/
@SuppressWarnings("all")
public class InternalOrganizationParser extends AbstractInternalAntlrParser {
public static final String[] tokenNames = new String[] {
"<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_ID", "RULE_STRING", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'organization'", "'stakeholder'", "'['", "'full'", "'name'", "'title'", "'description'", "'role'", "'email'", "'phone'", "'supervisor'", "']'", "'.'"
};
public static final int RULE_STRING=5;
public static final int RULE_SL_COMMENT=8;
public static final int T__19=19;
public static final int T__15=15;
public static final int T__16=16;
public static final int T__17=17;
public static final int T__18=18;
public static final int T__11=11;
public static final int T__12=12;
public static final int T__13=13;
public static final int T__14=14;
public static final int EOF=-1;
public static final int RULE_ID=4;
public static final int RULE_WS=9;
public static final int RULE_ANY_OTHER=10;
public static final int RULE_INT=6;
public static final int T__22=22;
public static final int RULE_ML_COMMENT=7;
public static final int T__23=23;
public static final int T__20=20;
public static final int T__21=21;
// delegates
// delegators
public InternalOrganizationParser(TokenStream input) {
this(input, new RecognizerSharedState());
}
public InternalOrganizationParser(TokenStream input, RecognizerSharedState state) {
super(input, state);
}
public String[] getTokenNames() { return InternalOrganizationParser.tokenNames; }
public String getGrammarFileName() { return "InternalOrganization.g"; }
private OrganizationGrammarAccess grammarAccess;
public InternalOrganizationParser(TokenStream input, OrganizationGrammarAccess grammarAccess) {
this(input);
this.grammarAccess = grammarAccess;
registerRules(grammarAccess.getGrammar());
}
@Override
protected String getFirstRuleName() {
return "Organization";
}
@Override
protected OrganizationGrammarAccess getGrammarAccess() {
return grammarAccess;
}
// $ANTLR start "entryRuleOrganization"
// InternalOrganization.g:84:1: entryRuleOrganization returns [EObject current=null] : iv_ruleOrganization= ruleOrganization EOF ;
public final EObject entryRuleOrganization() throws RecognitionException {
EObject current = null;
EObject iv_ruleOrganization = null;
try {
// InternalOrganization.g:84:53: (iv_ruleOrganization= ruleOrganization EOF )
// InternalOrganization.g:85:2: iv_ruleOrganization= ruleOrganization EOF
{
newCompositeNode(grammarAccess.getOrganizationRule());
pushFollow(FOLLOW_1);
iv_ruleOrganization=ruleOrganization();
state._fsp--;
current =iv_ruleOrganization;
match(input,EOF,FOLLOW_2);
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleOrganization"
// $ANTLR start "ruleOrganization"
// InternalOrganization.g:91:1: ruleOrganization returns [EObject current=null] : (otherlv_0= 'organization' ( (lv_name_1_0= RULE_ID ) ) ( (lv_stakeholder_2_0= ruleStakeholder ) )+ ) ;
public final EObject ruleOrganization() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token lv_name_1_0=null;
EObject lv_stakeholder_2_0 = null;
enterRule();
try {
// InternalOrganization.g:97:2: ( (otherlv_0= 'organization' ( (lv_name_1_0= RULE_ID ) ) ( (lv_stakeholder_2_0= ruleStakeholder ) )+ ) )
// InternalOrganization.g:98:2: (otherlv_0= 'organization' ( (lv_name_1_0= RULE_ID ) ) ( (lv_stakeholder_2_0= ruleStakeholder ) )+ )
{
// InternalOrganization.g:98:2: (otherlv_0= 'organization' ( (lv_name_1_0= RULE_ID ) ) ( (lv_stakeholder_2_0= ruleStakeholder ) )+ )
// InternalOrganization.g:99:3: otherlv_0= 'organization' ( (lv_name_1_0= RULE_ID ) ) ( (lv_stakeholder_2_0= ruleStakeholder ) )+
{
otherlv_0=(Token)match(input,11,FOLLOW_3);
newLeafNode(otherlv_0, grammarAccess.getOrganizationAccess().getOrganizationKeyword_0());
// InternalOrganization.g:103:3: ( (lv_name_1_0= RULE_ID ) )
// InternalOrganization.g:104:4: (lv_name_1_0= RULE_ID )
{
// InternalOrganization.g:104:4: (lv_name_1_0= RULE_ID )
// InternalOrganization.g:105:5: lv_name_1_0= RULE_ID
{
lv_name_1_0=(Token)match(input,RULE_ID,FOLLOW_4);
newLeafNode(lv_name_1_0, grammarAccess.getOrganizationAccess().getNameIDTerminalRuleCall_1_0());
if (current==null) {
current = createModelElement(grammarAccess.getOrganizationRule());
}
setWithLastConsumed(
current,
"name",
lv_name_1_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
// InternalOrganization.g:121:3: ( (lv_stakeholder_2_0= ruleStakeholder ) )+
int cnt1=0;
loop1:
do {
int alt1=2;
int LA1_0 = input.LA(1);
if ( (LA1_0==12||(LA1_0>=21 && LA1_0<=22)) ) {
alt1=1;
}
switch (alt1) {
case 1 :
// InternalOrganization.g:122:4: (lv_stakeholder_2_0= ruleStakeholder )
{
// InternalOrganization.g:122:4: (lv_stakeholder_2_0= ruleStakeholder )
// InternalOrganization.g:123:5: lv_stakeholder_2_0= ruleStakeholder
{
newCompositeNode(grammarAccess.getOrganizationAccess().getStakeholderStakeholderParserRuleCall_2_0());
pushFollow(FOLLOW_5);
lv_stakeholder_2_0=ruleStakeholder();
state._fsp--;
if (current==null) {
current = createModelElementForParent(grammarAccess.getOrganizationRule());
}
add(
current,
"stakeholder",
lv_stakeholder_2_0,
"org.osate.organization.Organization.Stakeholder");
afterParserOrEnumRuleCall();
}
}
break;
default :
if ( cnt1 >= 1 ) break loop1;
EarlyExitException eee =
new EarlyExitException(1, input);
throw eee;
}
cnt1++;
} while (true);
}
}
leaveRule();
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleOrganization"
// $ANTLR start "entryRuleStakeholder"
// InternalOrganization.g:144:1: entryRuleStakeholder returns [EObject current=null] : iv_ruleStakeholder= ruleStakeholder EOF ;
public final EObject entryRuleStakeholder() throws RecognitionException {
EObject current = null;
EObject iv_ruleStakeholder = null;
try {
// InternalOrganization.g:144:52: (iv_ruleStakeholder= ruleStakeholder EOF )
// InternalOrganization.g:145:2: iv_ruleStakeholder= ruleStakeholder EOF
{
newCompositeNode(grammarAccess.getStakeholderRule());
pushFollow(FOLLOW_1);
iv_ruleStakeholder=ruleStakeholder();
state._fsp--;
current =iv_ruleStakeholder;
match(input,EOF,FOLLOW_2);
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleStakeholder"
// $ANTLR start "ruleStakeholder"
// InternalOrganization.g:151:1: ruleStakeholder returns [EObject current=null] : ( ( ( ( ({...}? => ( ({...}? => (otherlv_1= 'stakeholder' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '[' ( ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) ) ) ) ) ) ) | ({...}? => ( ({...}? => ( (otherlv_18= 'supervisor' ( ( ruleQID ) ) )? otherlv_20= ']' ) ) ) ) )+ {...}?) ) ) ;
public final EObject ruleStakeholder() throws RecognitionException {
EObject current = null;
Token otherlv_1=null;
Token lv_name_2_0=null;
Token otherlv_3=null;
Token otherlv_5=null;
Token otherlv_6=null;
Token lv_fullname_7_0=null;
Token otherlv_8=null;
Token lv_title_9_0=null;
Token otherlv_10=null;
Token lv_description_11_0=null;
Token otherlv_12=null;
Token lv_role_13_0=null;
Token otherlv_14=null;
Token lv_email_15_0=null;
Token otherlv_16=null;
Token lv_phone_17_0=null;
Token otherlv_18=null;
Token otherlv_20=null;
enterRule();
try {
// InternalOrganization.g:157:2: ( ( ( ( ( ({...}? => ( ({...}? => (otherlv_1= 'stakeholder' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '[' ( ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) ) ) ) ) ) ) | ({...}? => ( ({...}? => ( (otherlv_18= 'supervisor' ( ( ruleQID ) ) )? otherlv_20= ']' ) ) ) ) )+ {...}?) ) ) )
// InternalOrganization.g:158:2: ( ( ( ( ({...}? => ( ({...}? => (otherlv_1= 'stakeholder' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '[' ( ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) ) ) ) ) ) ) | ({...}? => ( ({...}? => ( (otherlv_18= 'supervisor' ( ( ruleQID ) ) )? otherlv_20= ']' ) ) ) ) )+ {...}?) ) )
{
// InternalOrganization.g:158:2: ( ( ( ( ({...}? => ( ({...}? => (otherlv_1= 'stakeholder' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '[' ( ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) ) ) ) ) ) ) | ({...}? => ( ({...}? => ( (otherlv_18= 'supervisor' ( ( ruleQID ) ) )? otherlv_20= ']' ) ) ) ) )+ {...}?) ) )
// InternalOrganization.g:159:3: ( ( ( ({...}? => ( ({...}? => (otherlv_1= 'stakeholder' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '[' ( ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) ) ) ) ) ) ) | ({...}? => ( ({...}? => ( (otherlv_18= 'supervisor' ( ( ruleQID ) ) )? otherlv_20= ']' ) ) ) ) )+ {...}?) )
{
// InternalOrganization.g:159:3: ( ( ( ({...}? => ( ({...}? => (otherlv_1= 'stakeholder' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '[' ( ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) ) ) ) ) ) ) | ({...}? => ( ({...}? => ( (otherlv_18= 'supervisor' ( ( ruleQID ) ) )? otherlv_20= ']' ) ) ) ) )+ {...}?) )
// InternalOrganization.g:160:4: ( ( ({...}? => ( ({...}? => (otherlv_1= 'stakeholder' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '[' ( ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) ) ) ) ) ) ) | ({...}? => ( ({...}? => ( (otherlv_18= 'supervisor' ( ( ruleQID ) ) )? otherlv_20= ']' ) ) ) ) )+ {...}?)
{
getUnorderedGroupHelper().enter(grammarAccess.getStakeholderAccess().getUnorderedGroup());
// InternalOrganization.g:163:4: ( ( ({...}? => ( ({...}? => (otherlv_1= 'stakeholder' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '[' ( ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) ) ) ) ) ) ) | ({...}? => ( ({...}? => ( (otherlv_18= 'supervisor' ( ( ruleQID ) ) )? otherlv_20= ']' ) ) ) ) )+ {...}?)
// InternalOrganization.g:164:5: ( ({...}? => ( ({...}? => (otherlv_1= 'stakeholder' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '[' ( ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) ) ) ) ) ) ) | ({...}? => ( ({...}? => ( (otherlv_18= 'supervisor' ( ( ruleQID ) ) )? otherlv_20= ']' ) ) ) ) )+ {...}?
{
// InternalOrganization.g:164:5: ( ({...}? => ( ({...}? => (otherlv_1= 'stakeholder' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '[' ( ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) ) ) ) ) ) ) | ({...}? => ( ({...}? => ( (otherlv_18= 'supervisor' ( ( ruleQID ) ) )? otherlv_20= ']' ) ) ) ) )+
int cnt4=0;
loop4:
do {
int alt4=3;
switch ( input.LA(1) ) {
case 12:
{
int LA4_2 = input.LA(2);
if ( getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup(), 0) ) {
alt4=1;
}
}
break;
case 21:
{
int LA4_3 = input.LA(2);
if ( getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup(), 1) ) {
alt4=2;
}
}
break;
case 22:
{
int LA4_4 = input.LA(2);
if ( getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup(), 1) ) {
alt4=2;
}
}
break;
}
switch (alt4) {
case 1 :
// InternalOrganization.g:165:3: ({...}? => ( ({...}? => (otherlv_1= 'stakeholder' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '[' ( ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) ) ) ) ) ) )
{
// InternalOrganization.g:165:3: ({...}? => ( ({...}? => (otherlv_1= 'stakeholder' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '[' ( ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) ) ) ) ) ) )
// InternalOrganization.g:166:4: {...}? => ( ({...}? => (otherlv_1= 'stakeholder' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '[' ( ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) ) ) ) ) )
{
if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup(), 0) ) {
throw new FailedPredicateException(input, "ruleStakeholder", "getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup(), 0)");
}
// InternalOrganization.g:166:105: ( ({...}? => (otherlv_1= 'stakeholder' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '[' ( ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) ) ) ) ) )
// InternalOrganization.g:167:5: ({...}? => (otherlv_1= 'stakeholder' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '[' ( ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) ) ) ) )
{
getUnorderedGroupHelper().select(grammarAccess.getStakeholderAccess().getUnorderedGroup(), 0);
// InternalOrganization.g:170:8: ({...}? => (otherlv_1= 'stakeholder' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '[' ( ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) ) ) ) )
// InternalOrganization.g:170:9: {...}? => (otherlv_1= 'stakeholder' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '[' ( ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) ) ) )
{
if ( !((true)) ) {
throw new FailedPredicateException(input, "ruleStakeholder", "true");
}
// InternalOrganization.g:170:18: (otherlv_1= 'stakeholder' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '[' ( ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) ) ) )
// InternalOrganization.g:170:19: otherlv_1= 'stakeholder' ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '[' ( ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) ) )
{
otherlv_1=(Token)match(input,12,FOLLOW_3);
newLeafNode(otherlv_1, grammarAccess.getStakeholderAccess().getStakeholderKeyword_0_0());
// InternalOrganization.g:174:8: ( (lv_name_2_0= RULE_ID ) )
// InternalOrganization.g:175:9: (lv_name_2_0= RULE_ID )
{
// InternalOrganization.g:175:9: (lv_name_2_0= RULE_ID )
// InternalOrganization.g:176:10: lv_name_2_0= RULE_ID
{
lv_name_2_0=(Token)match(input,RULE_ID,FOLLOW_6);
newLeafNode(lv_name_2_0, grammarAccess.getStakeholderAccess().getNameIDTerminalRuleCall_0_1_0());
if (current==null) {
current = createModelElement(grammarAccess.getStakeholderRule());
}
setWithLastConsumed(
current,
"name",
lv_name_2_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
otherlv_3=(Token)match(input,13,FOLLOW_7);
newLeafNode(otherlv_3, grammarAccess.getStakeholderAccess().getLeftSquareBracketKeyword_0_2());
// InternalOrganization.g:196:8: ( ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) ) )
// InternalOrganization.g:197:9: ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) )
{
// InternalOrganization.g:197:9: ( ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* ) )
// InternalOrganization.g:198:10: ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* )
{
getUnorderedGroupHelper().enter(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3());
// InternalOrganization.g:201:10: ( ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )* )
// InternalOrganization.g:202:11: ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )*
{
// InternalOrganization.g:202:11: ( ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) ) | ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) ) )*
loop2:
do {
int alt2=7;
int LA2_0 = input.LA(1);
if ( LA2_0 == 14 && getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 0) ) {
alt2=1;
}
else if ( LA2_0 == 16 && getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 1) ) {
alt2=2;
}
else if ( LA2_0 == 17 && getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 2) ) {
alt2=3;
}
else if ( LA2_0 == 18 && getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 3) ) {
alt2=4;
}
else if ( LA2_0 == 19 && getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 4) ) {
alt2=5;
}
else if ( LA2_0 == 20 && getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 5) ) {
alt2=6;
}
switch (alt2) {
case 1 :
// InternalOrganization.g:203:9: ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) )
{
// InternalOrganization.g:203:9: ({...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) ) )
// InternalOrganization.g:204:10: {...}? => ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) )
{
if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 0) ) {
throw new FailedPredicateException(input, "ruleStakeholder", "getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 0)");
}
// InternalOrganization.g:204:115: ( ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) ) )
// InternalOrganization.g:205:11: ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) )
{
getUnorderedGroupHelper().select(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 0);
// InternalOrganization.g:208:14: ({...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) ) )
// InternalOrganization.g:208:15: {...}? => (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) )
{
if ( !((true)) ) {
throw new FailedPredicateException(input, "ruleStakeholder", "true");
}
// InternalOrganization.g:208:24: (otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) ) )
// InternalOrganization.g:208:25: otherlv_5= 'full' otherlv_6= 'name' ( (lv_fullname_7_0= RULE_STRING ) )
{
otherlv_5=(Token)match(input,14,FOLLOW_8);
newLeafNode(otherlv_5, grammarAccess.getStakeholderAccess().getFullKeyword_0_3_0_0());
otherlv_6=(Token)match(input,15,FOLLOW_9);
newLeafNode(otherlv_6, grammarAccess.getStakeholderAccess().getNameKeyword_0_3_0_1());
// InternalOrganization.g:216:14: ( (lv_fullname_7_0= RULE_STRING ) )
// InternalOrganization.g:217:15: (lv_fullname_7_0= RULE_STRING )
{
// InternalOrganization.g:217:15: (lv_fullname_7_0= RULE_STRING )
// InternalOrganization.g:218:16: lv_fullname_7_0= RULE_STRING
{
lv_fullname_7_0=(Token)match(input,RULE_STRING,FOLLOW_7);
newLeafNode(lv_fullname_7_0, grammarAccess.getStakeholderAccess().getFullnameSTRINGTerminalRuleCall_0_3_0_2_0());
if (current==null) {
current = createModelElement(grammarAccess.getStakeholderRule());
}
setWithLastConsumed(
current,
"fullname",
lv_fullname_7_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
getUnorderedGroupHelper().returnFromSelection(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3());
}
}
}
break;
case 2 :
// InternalOrganization.g:240:9: ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) )
{
// InternalOrganization.g:240:9: ({...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) ) )
// InternalOrganization.g:241:10: {...}? => ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) )
{
if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 1) ) {
throw new FailedPredicateException(input, "ruleStakeholder", "getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 1)");
}
// InternalOrganization.g:241:115: ( ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) ) )
// InternalOrganization.g:242:11: ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) )
{
getUnorderedGroupHelper().select(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 1);
// InternalOrganization.g:245:14: ({...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) ) )
// InternalOrganization.g:245:15: {...}? => (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) )
{
if ( !((true)) ) {
throw new FailedPredicateException(input, "ruleStakeholder", "true");
}
// InternalOrganization.g:245:24: (otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) ) )
// InternalOrganization.g:245:25: otherlv_8= 'title' ( (lv_title_9_0= RULE_STRING ) )
{
otherlv_8=(Token)match(input,16,FOLLOW_9);
newLeafNode(otherlv_8, grammarAccess.getStakeholderAccess().getTitleKeyword_0_3_1_0());
// InternalOrganization.g:249:14: ( (lv_title_9_0= RULE_STRING ) )
// InternalOrganization.g:250:15: (lv_title_9_0= RULE_STRING )
{
// InternalOrganization.g:250:15: (lv_title_9_0= RULE_STRING )
// InternalOrganization.g:251:16: lv_title_9_0= RULE_STRING
{
lv_title_9_0=(Token)match(input,RULE_STRING,FOLLOW_7);
newLeafNode(lv_title_9_0, grammarAccess.getStakeholderAccess().getTitleSTRINGTerminalRuleCall_0_3_1_1_0());
if (current==null) {
current = createModelElement(grammarAccess.getStakeholderRule());
}
setWithLastConsumed(
current,
"title",
lv_title_9_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
getUnorderedGroupHelper().returnFromSelection(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3());
}
}
}
break;
case 3 :
// InternalOrganization.g:273:9: ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) )
{
// InternalOrganization.g:273:9: ({...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) ) )
// InternalOrganization.g:274:10: {...}? => ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) )
{
if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 2) ) {
throw new FailedPredicateException(input, "ruleStakeholder", "getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 2)");
}
// InternalOrganization.g:274:115: ( ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) ) )
// InternalOrganization.g:275:11: ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) )
{
getUnorderedGroupHelper().select(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 2);
// InternalOrganization.g:278:14: ({...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) ) )
// InternalOrganization.g:278:15: {...}? => (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) )
{
if ( !((true)) ) {
throw new FailedPredicateException(input, "ruleStakeholder", "true");
}
// InternalOrganization.g:278:24: (otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) ) )
// InternalOrganization.g:278:25: otherlv_10= 'description' ( (lv_description_11_0= RULE_STRING ) )
{
otherlv_10=(Token)match(input,17,FOLLOW_9);
newLeafNode(otherlv_10, grammarAccess.getStakeholderAccess().getDescriptionKeyword_0_3_2_0());
// InternalOrganization.g:282:14: ( (lv_description_11_0= RULE_STRING ) )
// InternalOrganization.g:283:15: (lv_description_11_0= RULE_STRING )
{
// InternalOrganization.g:283:15: (lv_description_11_0= RULE_STRING )
// InternalOrganization.g:284:16: lv_description_11_0= RULE_STRING
{
lv_description_11_0=(Token)match(input,RULE_STRING,FOLLOW_7);
newLeafNode(lv_description_11_0, grammarAccess.getStakeholderAccess().getDescriptionSTRINGTerminalRuleCall_0_3_2_1_0());
if (current==null) {
current = createModelElement(grammarAccess.getStakeholderRule());
}
setWithLastConsumed(
current,
"description",
lv_description_11_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
getUnorderedGroupHelper().returnFromSelection(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3());
}
}
}
break;
case 4 :
// InternalOrganization.g:306:9: ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) )
{
// InternalOrganization.g:306:9: ({...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) ) )
// InternalOrganization.g:307:10: {...}? => ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) )
{
if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 3) ) {
throw new FailedPredicateException(input, "ruleStakeholder", "getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 3)");
}
// InternalOrganization.g:307:115: ( ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) ) )
// InternalOrganization.g:308:11: ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) )
{
getUnorderedGroupHelper().select(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 3);
// InternalOrganization.g:311:14: ({...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) ) )
// InternalOrganization.g:311:15: {...}? => (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) )
{
if ( !((true)) ) {
throw new FailedPredicateException(input, "ruleStakeholder", "true");
}
// InternalOrganization.g:311:24: (otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) ) )
// InternalOrganization.g:311:25: otherlv_12= 'role' ( (lv_role_13_0= RULE_STRING ) )
{
otherlv_12=(Token)match(input,18,FOLLOW_9);
newLeafNode(otherlv_12, grammarAccess.getStakeholderAccess().getRoleKeyword_0_3_3_0());
// InternalOrganization.g:315:14: ( (lv_role_13_0= RULE_STRING ) )
// InternalOrganization.g:316:15: (lv_role_13_0= RULE_STRING )
{
// InternalOrganization.g:316:15: (lv_role_13_0= RULE_STRING )
// InternalOrganization.g:317:16: lv_role_13_0= RULE_STRING
{
lv_role_13_0=(Token)match(input,RULE_STRING,FOLLOW_7);
newLeafNode(lv_role_13_0, grammarAccess.getStakeholderAccess().getRoleSTRINGTerminalRuleCall_0_3_3_1_0());
if (current==null) {
current = createModelElement(grammarAccess.getStakeholderRule());
}
setWithLastConsumed(
current,
"role",
lv_role_13_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
getUnorderedGroupHelper().returnFromSelection(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3());
}
}
}
break;
case 5 :
// InternalOrganization.g:339:9: ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) )
{
// InternalOrganization.g:339:9: ({...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) ) )
// InternalOrganization.g:340:10: {...}? => ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) )
{
if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 4) ) {
throw new FailedPredicateException(input, "ruleStakeholder", "getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 4)");
}
// InternalOrganization.g:340:115: ( ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) ) )
// InternalOrganization.g:341:11: ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) )
{
getUnorderedGroupHelper().select(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 4);
// InternalOrganization.g:344:14: ({...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) ) )
// InternalOrganization.g:344:15: {...}? => (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) )
{
if ( !((true)) ) {
throw new FailedPredicateException(input, "ruleStakeholder", "true");
}
// InternalOrganization.g:344:24: (otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) ) )
// InternalOrganization.g:344:25: otherlv_14= 'email' ( (lv_email_15_0= RULE_STRING ) )
{
otherlv_14=(Token)match(input,19,FOLLOW_9);
newLeafNode(otherlv_14, grammarAccess.getStakeholderAccess().getEmailKeyword_0_3_4_0());
// InternalOrganization.g:348:14: ( (lv_email_15_0= RULE_STRING ) )
// InternalOrganization.g:349:15: (lv_email_15_0= RULE_STRING )
{
// InternalOrganization.g:349:15: (lv_email_15_0= RULE_STRING )
// InternalOrganization.g:350:16: lv_email_15_0= RULE_STRING
{
lv_email_15_0=(Token)match(input,RULE_STRING,FOLLOW_7);
newLeafNode(lv_email_15_0, grammarAccess.getStakeholderAccess().getEmailSTRINGTerminalRuleCall_0_3_4_1_0());
if (current==null) {
current = createModelElement(grammarAccess.getStakeholderRule());
}
setWithLastConsumed(
current,
"email",
lv_email_15_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
getUnorderedGroupHelper().returnFromSelection(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3());
}
}
}
break;
case 6 :
// InternalOrganization.g:372:9: ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) )
{
// InternalOrganization.g:372:9: ({...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) ) )
// InternalOrganization.g:373:10: {...}? => ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) )
{
if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 5) ) {
throw new FailedPredicateException(input, "ruleStakeholder", "getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 5)");
}
// InternalOrganization.g:373:115: ( ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) ) )
// InternalOrganization.g:374:11: ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) )
{
getUnorderedGroupHelper().select(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3(), 5);
// InternalOrganization.g:377:14: ({...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) ) )
// InternalOrganization.g:377:15: {...}? => (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) )
{
if ( !((true)) ) {
throw new FailedPredicateException(input, "ruleStakeholder", "true");
}
// InternalOrganization.g:377:24: (otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) ) )
// InternalOrganization.g:377:25: otherlv_16= 'phone' ( (lv_phone_17_0= RULE_STRING ) )
{
otherlv_16=(Token)match(input,20,FOLLOW_9);
newLeafNode(otherlv_16, grammarAccess.getStakeholderAccess().getPhoneKeyword_0_3_5_0());
// InternalOrganization.g:381:14: ( (lv_phone_17_0= RULE_STRING ) )
// InternalOrganization.g:382:15: (lv_phone_17_0= RULE_STRING )
{
// InternalOrganization.g:382:15: (lv_phone_17_0= RULE_STRING )
// InternalOrganization.g:383:16: lv_phone_17_0= RULE_STRING
{
lv_phone_17_0=(Token)match(input,RULE_STRING,FOLLOW_7);
newLeafNode(lv_phone_17_0, grammarAccess.getStakeholderAccess().getPhoneSTRINGTerminalRuleCall_0_3_5_1_0());
if (current==null) {
current = createModelElement(grammarAccess.getStakeholderRule());
}
setWithLastConsumed(
current,
"phone",
lv_phone_17_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
getUnorderedGroupHelper().returnFromSelection(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3());
}
}
}
break;
default :
break loop2;
}
} while (true);
}
}
getUnorderedGroupHelper().leave(grammarAccess.getStakeholderAccess().getUnorderedGroup_0_3());
}
}
}
getUnorderedGroupHelper().returnFromSelection(grammarAccess.getStakeholderAccess().getUnorderedGroup());
}
}
}
break;
case 2 :
// InternalOrganization.g:418:3: ({...}? => ( ({...}? => ( (otherlv_18= 'supervisor' ( ( ruleQID ) ) )? otherlv_20= ']' ) ) ) )
{
// InternalOrganization.g:418:3: ({...}? => ( ({...}? => ( (otherlv_18= 'supervisor' ( ( ruleQID ) ) )? otherlv_20= ']' ) ) ) )
// InternalOrganization.g:419:4: {...}? => ( ({...}? => ( (otherlv_18= 'supervisor' ( ( ruleQID ) ) )? otherlv_20= ']' ) ) )
{
if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup(), 1) ) {
throw new FailedPredicateException(input, "ruleStakeholder", "getUnorderedGroupHelper().canSelect(grammarAccess.getStakeholderAccess().getUnorderedGroup(), 1)");
}
// InternalOrganization.g:419:105: ( ({...}? => ( (otherlv_18= 'supervisor' ( ( ruleQID ) ) )? otherlv_20= ']' ) ) )
// InternalOrganization.g:420:5: ({...}? => ( (otherlv_18= 'supervisor' ( ( ruleQID ) ) )? otherlv_20= ']' ) )
{
getUnorderedGroupHelper().select(grammarAccess.getStakeholderAccess().getUnorderedGroup(), 1);
// InternalOrganization.g:423:8: ({...}? => ( (otherlv_18= 'supervisor' ( ( ruleQID ) ) )? otherlv_20= ']' ) )
// InternalOrganization.g:423:9: {...}? => ( (otherlv_18= 'supervisor' ( ( ruleQID ) ) )? otherlv_20= ']' )
{
if ( !((true)) ) {
throw new FailedPredicateException(input, "ruleStakeholder", "true");
}
// InternalOrganization.g:423:18: ( (otherlv_18= 'supervisor' ( ( ruleQID ) ) )? otherlv_20= ']' )
// InternalOrganization.g:423:19: (otherlv_18= 'supervisor' ( ( ruleQID ) ) )? otherlv_20= ']'
{
// InternalOrganization.g:423:19: (otherlv_18= 'supervisor' ( ( ruleQID ) ) )?
int alt3=2;
int LA3_0 = input.LA(1);
if ( (LA3_0==21) ) {
alt3=1;
}
switch (alt3) {
case 1 :
// InternalOrganization.g:424:9: otherlv_18= 'supervisor' ( ( ruleQID ) )
{
otherlv_18=(Token)match(input,21,FOLLOW_3);
newLeafNode(otherlv_18, grammarAccess.getStakeholderAccess().getSupervisorKeyword_1_0_0());
// InternalOrganization.g:428:9: ( ( ruleQID ) )
// InternalOrganization.g:429:10: ( ruleQID )
{
// InternalOrganization.g:429:10: ( ruleQID )
// InternalOrganization.g:430:11: ruleQID
{
if (current==null) {
current = createModelElement(grammarAccess.getStakeholderRule());
}
newCompositeNode(grammarAccess.getStakeholderAccess().getSupervisorStakeholderCrossReference_1_0_1_0());
pushFollow(FOLLOW_10);
ruleQID();
state._fsp--;
afterParserOrEnumRuleCall();
}
}
}
break;
}
otherlv_20=(Token)match(input,22,FOLLOW_5);
newLeafNode(otherlv_20, grammarAccess.getStakeholderAccess().getRightSquareBracketKeyword_1_1());
}
}
getUnorderedGroupHelper().returnFromSelection(grammarAccess.getStakeholderAccess().getUnorderedGroup());
}
}
}
break;
default :
if ( cnt4 >= 1 ) break loop4;
EarlyExitException eee =
new EarlyExitException(4, input);
throw eee;
}
cnt4++;
} while (true);
if ( ! getUnorderedGroupHelper().canLeave(grammarAccess.getStakeholderAccess().getUnorderedGroup()) ) {
throw new FailedPredicateException(input, "ruleStakeholder", "getUnorderedGroupHelper().canLeave(grammarAccess.getStakeholderAccess().getUnorderedGroup())");
}
}
}
getUnorderedGroupHelper().leave(grammarAccess.getStakeholderAccess().getUnorderedGroup());
}
}
leaveRule();
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleStakeholder"
// $ANTLR start "entryRuleQID"
// InternalOrganization.g:466:1: entryRuleQID returns [String current=null] : iv_ruleQID= ruleQID EOF ;
public final String entryRuleQID() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleQID = null;
try {
// InternalOrganization.g:466:43: (iv_ruleQID= ruleQID EOF )
// InternalOrganization.g:467:2: iv_ruleQID= ruleQID EOF
{
newCompositeNode(grammarAccess.getQIDRule());
pushFollow(FOLLOW_1);
iv_ruleQID=ruleQID();
state._fsp--;
current =iv_ruleQID.getText();
match(input,EOF,FOLLOW_2);
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleQID"
// $ANTLR start "ruleQID"
// InternalOrganization.g:473:1: ruleQID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )? ) ;
public final AntlrDatatypeRuleToken ruleQID() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
Token this_ID_0=null;
Token kw=null;
Token this_ID_2=null;
enterRule();
try {
// InternalOrganization.g:479:2: ( (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )? ) )
// InternalOrganization.g:480:2: (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )? )
{
// InternalOrganization.g:480:2: (this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )? )
// InternalOrganization.g:481:3: this_ID_0= RULE_ID (kw= '.' this_ID_2= RULE_ID )?
{
this_ID_0=(Token)match(input,RULE_ID,FOLLOW_11);
current.merge(this_ID_0);
newLeafNode(this_ID_0, grammarAccess.getQIDAccess().getIDTerminalRuleCall_0());
// InternalOrganization.g:488:3: (kw= '.' this_ID_2= RULE_ID )?
int alt5=2;
int LA5_0 = input.LA(1);
if ( (LA5_0==23) ) {
alt5=1;
}
switch (alt5) {
case 1 :
// InternalOrganization.g:489:4: kw= '.' this_ID_2= RULE_ID
{
kw=(Token)match(input,23,FOLLOW_3);
current.merge(kw);
newLeafNode(kw, grammarAccess.getQIDAccess().getFullStopKeyword_1_0());
this_ID_2=(Token)match(input,RULE_ID,FOLLOW_2);
current.merge(this_ID_2);
newLeafNode(this_ID_2, grammarAccess.getQIDAccess().getIDTerminalRuleCall_1_1());
}
break;
}
}
}
leaveRule();
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleQID"
// Delegated rules
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[]{0x0000000000000010L});
public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000000601000L});
public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x0000000000601002L});
public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0000000000002000L});
public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x00000000007F5002L});
public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000000008000L});
public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000000000000020L});
public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x0000000000400000L});
public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0000000000800002L});
}