4251 lines
137 KiB
Java
4251 lines
137 KiB
Java
package xtext.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 xtext.services.GameGrammarAccess;
|
|
|
|
|
|
|
|
import org.antlr.runtime.*;
|
|
import java.util.Stack;
|
|
import java.util.List;
|
|
import java.util.ArrayList;
|
|
|
|
@SuppressWarnings("all")
|
|
public class InternalGameParser extends AbstractInternalAntlrParser {
|
|
public static final String[] tokenNames = new String[] {
|
|
"<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_INT", "RULE_STRING", "RULE_ID", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'Jeu'", "'{'", "'}'", "'Explorateur'", "'taille'", "'='", "'Territoire'", "'lieux'", "':'", "'chemins'", "'Lieu'", "'Chemin'", "'->'", "'Objet'", "'Transformation'", "'Connaissance'", "'Personne'", "'Interraction'", "'Action'", "'Description'", "'Condition'", "'||'", "'!'", "'<'", "'>'", "'<='", "'>='"
|
|
};
|
|
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__37=37;
|
|
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__33=33;
|
|
public static final int T__12=12;
|
|
public static final int T__34=34;
|
|
public static final int T__13=13;
|
|
public static final int T__35=35;
|
|
public static final int T__14=14;
|
|
public static final int T__36=36;
|
|
public static final int EOF=-1;
|
|
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_ID=6;
|
|
public static final int RULE_WS=9;
|
|
public static final int RULE_ANY_OTHER=10;
|
|
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 RULE_INT=4;
|
|
public static final int T__29=29;
|
|
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__24=24;
|
|
public static final int T__25=25;
|
|
public static final int T__20=20;
|
|
public static final int T__21=21;
|
|
|
|
// delegates
|
|
// delegators
|
|
|
|
|
|
public InternalGameParser(TokenStream input) {
|
|
this(input, new RecognizerSharedState());
|
|
}
|
|
public InternalGameParser(TokenStream input, RecognizerSharedState state) {
|
|
super(input, state);
|
|
|
|
}
|
|
|
|
|
|
public String[] getTokenNames() { return InternalGameParser.tokenNames; }
|
|
public String getGrammarFileName() { return "InternalGame.g"; }
|
|
|
|
|
|
|
|
private GameGrammarAccess grammarAccess;
|
|
|
|
public InternalGameParser(TokenStream input, GameGrammarAccess grammarAccess) {
|
|
this(input);
|
|
this.grammarAccess = grammarAccess;
|
|
registerRules(grammarAccess.getGrammar());
|
|
}
|
|
|
|
@Override
|
|
protected String getFirstRuleName() {
|
|
return "Jeu";
|
|
}
|
|
|
|
@Override
|
|
protected GameGrammarAccess getGrammarAccess() {
|
|
return grammarAccess;
|
|
}
|
|
|
|
|
|
|
|
|
|
// $ANTLR start "entryRuleJeu"
|
|
// InternalGame.g:64:1: entryRuleJeu returns [EObject current=null] : iv_ruleJeu= ruleJeu EOF ;
|
|
public final EObject entryRuleJeu() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
EObject iv_ruleJeu = null;
|
|
|
|
|
|
try {
|
|
// InternalGame.g:64:44: (iv_ruleJeu= ruleJeu EOF )
|
|
// InternalGame.g:65:2: iv_ruleJeu= ruleJeu EOF
|
|
{
|
|
newCompositeNode(grammarAccess.getJeuRule());
|
|
pushFollow(FOLLOW_1);
|
|
iv_ruleJeu=ruleJeu();
|
|
|
|
state._fsp--;
|
|
|
|
current =iv_ruleJeu;
|
|
match(input,EOF,FOLLOW_2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "entryRuleJeu"
|
|
|
|
|
|
// $ANTLR start "ruleJeu"
|
|
// InternalGame.g:71:1: ruleJeu returns [EObject current=null] : (otherlv_0= 'Jeu' otherlv_1= '{' ( (lv_explorateur_2_0= ruleExplorateur ) ) ( (lv_territoire_3_0= ruleTerritoire ) ) ( (lv_objets_4_0= ruleObjet ) )* ( (lv_connaissances_5_0= ruleConnaissance ) )* ( (lv_personnes_6_0= rulePersonne ) )* ( (lv_transformations_7_0= ruleTransformation ) )* otherlv_8= '}' ) ;
|
|
public final EObject ruleJeu() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
Token otherlv_0=null;
|
|
Token otherlv_1=null;
|
|
Token otherlv_8=null;
|
|
EObject lv_explorateur_2_0 = null;
|
|
|
|
EObject lv_territoire_3_0 = null;
|
|
|
|
EObject lv_objets_4_0 = null;
|
|
|
|
EObject lv_connaissances_5_0 = null;
|
|
|
|
EObject lv_personnes_6_0 = null;
|
|
|
|
EObject lv_transformations_7_0 = null;
|
|
|
|
|
|
|
|
enterRule();
|
|
|
|
try {
|
|
// InternalGame.g:77:2: ( (otherlv_0= 'Jeu' otherlv_1= '{' ( (lv_explorateur_2_0= ruleExplorateur ) ) ( (lv_territoire_3_0= ruleTerritoire ) ) ( (lv_objets_4_0= ruleObjet ) )* ( (lv_connaissances_5_0= ruleConnaissance ) )* ( (lv_personnes_6_0= rulePersonne ) )* ( (lv_transformations_7_0= ruleTransformation ) )* otherlv_8= '}' ) )
|
|
// InternalGame.g:78:2: (otherlv_0= 'Jeu' otherlv_1= '{' ( (lv_explorateur_2_0= ruleExplorateur ) ) ( (lv_territoire_3_0= ruleTerritoire ) ) ( (lv_objets_4_0= ruleObjet ) )* ( (lv_connaissances_5_0= ruleConnaissance ) )* ( (lv_personnes_6_0= rulePersonne ) )* ( (lv_transformations_7_0= ruleTransformation ) )* otherlv_8= '}' )
|
|
{
|
|
// InternalGame.g:78:2: (otherlv_0= 'Jeu' otherlv_1= '{' ( (lv_explorateur_2_0= ruleExplorateur ) ) ( (lv_territoire_3_0= ruleTerritoire ) ) ( (lv_objets_4_0= ruleObjet ) )* ( (lv_connaissances_5_0= ruleConnaissance ) )* ( (lv_personnes_6_0= rulePersonne ) )* ( (lv_transformations_7_0= ruleTransformation ) )* otherlv_8= '}' )
|
|
// InternalGame.g:79:3: otherlv_0= 'Jeu' otherlv_1= '{' ( (lv_explorateur_2_0= ruleExplorateur ) ) ( (lv_territoire_3_0= ruleTerritoire ) ) ( (lv_objets_4_0= ruleObjet ) )* ( (lv_connaissances_5_0= ruleConnaissance ) )* ( (lv_personnes_6_0= rulePersonne ) )* ( (lv_transformations_7_0= ruleTransformation ) )* otherlv_8= '}'
|
|
{
|
|
otherlv_0=(Token)match(input,11,FOLLOW_3);
|
|
|
|
newLeafNode(otherlv_0, grammarAccess.getJeuAccess().getJeuKeyword_0());
|
|
|
|
otherlv_1=(Token)match(input,12,FOLLOW_4);
|
|
|
|
newLeafNode(otherlv_1, grammarAccess.getJeuAccess().getLeftCurlyBracketKeyword_1());
|
|
|
|
// InternalGame.g:87:3: ( (lv_explorateur_2_0= ruleExplorateur ) )
|
|
// InternalGame.g:88:4: (lv_explorateur_2_0= ruleExplorateur )
|
|
{
|
|
// InternalGame.g:88:4: (lv_explorateur_2_0= ruleExplorateur )
|
|
// InternalGame.g:89:5: lv_explorateur_2_0= ruleExplorateur
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getJeuAccess().getExplorateurExplorateurParserRuleCall_2_0());
|
|
|
|
pushFollow(FOLLOW_5);
|
|
lv_explorateur_2_0=ruleExplorateur();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getJeuRule());
|
|
}
|
|
set(
|
|
current,
|
|
"explorateur",
|
|
lv_explorateur_2_0,
|
|
"xtext.Game.Explorateur");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
// InternalGame.g:106:3: ( (lv_territoire_3_0= ruleTerritoire ) )
|
|
// InternalGame.g:107:4: (lv_territoire_3_0= ruleTerritoire )
|
|
{
|
|
// InternalGame.g:107:4: (lv_territoire_3_0= ruleTerritoire )
|
|
// InternalGame.g:108:5: lv_territoire_3_0= ruleTerritoire
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getJeuAccess().getTerritoireTerritoireParserRuleCall_3_0());
|
|
|
|
pushFollow(FOLLOW_6);
|
|
lv_territoire_3_0=ruleTerritoire();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getJeuRule());
|
|
}
|
|
set(
|
|
current,
|
|
"territoire",
|
|
lv_territoire_3_0,
|
|
"xtext.Game.Territoire");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
// InternalGame.g:125:3: ( (lv_objets_4_0= ruleObjet ) )*
|
|
loop1:
|
|
do {
|
|
int alt1=2;
|
|
int LA1_0 = input.LA(1);
|
|
|
|
if ( (LA1_0==24) ) {
|
|
alt1=1;
|
|
}
|
|
|
|
|
|
switch (alt1) {
|
|
case 1 :
|
|
// InternalGame.g:126:4: (lv_objets_4_0= ruleObjet )
|
|
{
|
|
// InternalGame.g:126:4: (lv_objets_4_0= ruleObjet )
|
|
// InternalGame.g:127:5: lv_objets_4_0= ruleObjet
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getJeuAccess().getObjetsObjetParserRuleCall_4_0());
|
|
|
|
pushFollow(FOLLOW_6);
|
|
lv_objets_4_0=ruleObjet();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getJeuRule());
|
|
}
|
|
add(
|
|
current,
|
|
"objets",
|
|
lv_objets_4_0,
|
|
"xtext.Game.Objet");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
break loop1;
|
|
}
|
|
} while (true);
|
|
|
|
// InternalGame.g:144:3: ( (lv_connaissances_5_0= ruleConnaissance ) )*
|
|
loop2:
|
|
do {
|
|
int alt2=2;
|
|
int LA2_0 = input.LA(1);
|
|
|
|
if ( (LA2_0==26) ) {
|
|
alt2=1;
|
|
}
|
|
|
|
|
|
switch (alt2) {
|
|
case 1 :
|
|
// InternalGame.g:145:4: (lv_connaissances_5_0= ruleConnaissance )
|
|
{
|
|
// InternalGame.g:145:4: (lv_connaissances_5_0= ruleConnaissance )
|
|
// InternalGame.g:146:5: lv_connaissances_5_0= ruleConnaissance
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getJeuAccess().getConnaissancesConnaissanceParserRuleCall_5_0());
|
|
|
|
pushFollow(FOLLOW_7);
|
|
lv_connaissances_5_0=ruleConnaissance();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getJeuRule());
|
|
}
|
|
add(
|
|
current,
|
|
"connaissances",
|
|
lv_connaissances_5_0,
|
|
"xtext.Game.Connaissance");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
break loop2;
|
|
}
|
|
} while (true);
|
|
|
|
// InternalGame.g:163:3: ( (lv_personnes_6_0= rulePersonne ) )*
|
|
loop3:
|
|
do {
|
|
int alt3=2;
|
|
int LA3_0 = input.LA(1);
|
|
|
|
if ( (LA3_0==27) ) {
|
|
alt3=1;
|
|
}
|
|
|
|
|
|
switch (alt3) {
|
|
case 1 :
|
|
// InternalGame.g:164:4: (lv_personnes_6_0= rulePersonne )
|
|
{
|
|
// InternalGame.g:164:4: (lv_personnes_6_0= rulePersonne )
|
|
// InternalGame.g:165:5: lv_personnes_6_0= rulePersonne
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getJeuAccess().getPersonnesPersonneParserRuleCall_6_0());
|
|
|
|
pushFollow(FOLLOW_8);
|
|
lv_personnes_6_0=rulePersonne();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getJeuRule());
|
|
}
|
|
add(
|
|
current,
|
|
"personnes",
|
|
lv_personnes_6_0,
|
|
"xtext.Game.Personne");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
break loop3;
|
|
}
|
|
} while (true);
|
|
|
|
// InternalGame.g:182:3: ( (lv_transformations_7_0= ruleTransformation ) )*
|
|
loop4:
|
|
do {
|
|
int alt4=2;
|
|
int LA4_0 = input.LA(1);
|
|
|
|
if ( (LA4_0==25) ) {
|
|
alt4=1;
|
|
}
|
|
|
|
|
|
switch (alt4) {
|
|
case 1 :
|
|
// InternalGame.g:183:4: (lv_transformations_7_0= ruleTransformation )
|
|
{
|
|
// InternalGame.g:183:4: (lv_transformations_7_0= ruleTransformation )
|
|
// InternalGame.g:184:5: lv_transformations_7_0= ruleTransformation
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getJeuAccess().getTransformationsTransformationParserRuleCall_7_0());
|
|
|
|
pushFollow(FOLLOW_9);
|
|
lv_transformations_7_0=ruleTransformation();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getJeuRule());
|
|
}
|
|
add(
|
|
current,
|
|
"transformations",
|
|
lv_transformations_7_0,
|
|
"xtext.Game.Transformation");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
break loop4;
|
|
}
|
|
} while (true);
|
|
|
|
otherlv_8=(Token)match(input,13,FOLLOW_2);
|
|
|
|
newLeafNode(otherlv_8, grammarAccess.getJeuAccess().getRightCurlyBracketKeyword_8());
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
leaveRule();
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "ruleJeu"
|
|
|
|
|
|
// $ANTLR start "entryRuleExplorateur"
|
|
// InternalGame.g:209:1: entryRuleExplorateur returns [EObject current=null] : iv_ruleExplorateur= ruleExplorateur EOF ;
|
|
public final EObject entryRuleExplorateur() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
EObject iv_ruleExplorateur = null;
|
|
|
|
|
|
try {
|
|
// InternalGame.g:209:52: (iv_ruleExplorateur= ruleExplorateur EOF )
|
|
// InternalGame.g:210:2: iv_ruleExplorateur= ruleExplorateur EOF
|
|
{
|
|
newCompositeNode(grammarAccess.getExplorateurRule());
|
|
pushFollow(FOLLOW_1);
|
|
iv_ruleExplorateur=ruleExplorateur();
|
|
|
|
state._fsp--;
|
|
|
|
current =iv_ruleExplorateur;
|
|
match(input,EOF,FOLLOW_2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "entryRuleExplorateur"
|
|
|
|
|
|
// $ANTLR start "ruleExplorateur"
|
|
// InternalGame.g:216:1: ruleExplorateur returns [EObject current=null] : (otherlv_0= 'Explorateur' otherlv_1= '{' otherlv_2= 'taille' otherlv_3= '=' ( (lv_tailleTotaleMax_4_0= RULE_INT ) ) ( (lv_connaissances_5_0= ruleNom ) )* ( (lv_objets_6_0= ruleNom ) )* otherlv_7= '}' ) ;
|
|
public final EObject ruleExplorateur() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
Token otherlv_0=null;
|
|
Token otherlv_1=null;
|
|
Token otherlv_2=null;
|
|
Token otherlv_3=null;
|
|
Token lv_tailleTotaleMax_4_0=null;
|
|
Token otherlv_7=null;
|
|
AntlrDatatypeRuleToken lv_connaissances_5_0 = null;
|
|
|
|
AntlrDatatypeRuleToken lv_objets_6_0 = null;
|
|
|
|
|
|
|
|
enterRule();
|
|
|
|
try {
|
|
// InternalGame.g:222:2: ( (otherlv_0= 'Explorateur' otherlv_1= '{' otherlv_2= 'taille' otherlv_3= '=' ( (lv_tailleTotaleMax_4_0= RULE_INT ) ) ( (lv_connaissances_5_0= ruleNom ) )* ( (lv_objets_6_0= ruleNom ) )* otherlv_7= '}' ) )
|
|
// InternalGame.g:223:2: (otherlv_0= 'Explorateur' otherlv_1= '{' otherlv_2= 'taille' otherlv_3= '=' ( (lv_tailleTotaleMax_4_0= RULE_INT ) ) ( (lv_connaissances_5_0= ruleNom ) )* ( (lv_objets_6_0= ruleNom ) )* otherlv_7= '}' )
|
|
{
|
|
// InternalGame.g:223:2: (otherlv_0= 'Explorateur' otherlv_1= '{' otherlv_2= 'taille' otherlv_3= '=' ( (lv_tailleTotaleMax_4_0= RULE_INT ) ) ( (lv_connaissances_5_0= ruleNom ) )* ( (lv_objets_6_0= ruleNom ) )* otherlv_7= '}' )
|
|
// InternalGame.g:224:3: otherlv_0= 'Explorateur' otherlv_1= '{' otherlv_2= 'taille' otherlv_3= '=' ( (lv_tailleTotaleMax_4_0= RULE_INT ) ) ( (lv_connaissances_5_0= ruleNom ) )* ( (lv_objets_6_0= ruleNom ) )* otherlv_7= '}'
|
|
{
|
|
otherlv_0=(Token)match(input,14,FOLLOW_3);
|
|
|
|
newLeafNode(otherlv_0, grammarAccess.getExplorateurAccess().getExplorateurKeyword_0());
|
|
|
|
otherlv_1=(Token)match(input,12,FOLLOW_10);
|
|
|
|
newLeafNode(otherlv_1, grammarAccess.getExplorateurAccess().getLeftCurlyBracketKeyword_1());
|
|
|
|
otherlv_2=(Token)match(input,15,FOLLOW_11);
|
|
|
|
newLeafNode(otherlv_2, grammarAccess.getExplorateurAccess().getTailleKeyword_2());
|
|
|
|
otherlv_3=(Token)match(input,16,FOLLOW_12);
|
|
|
|
newLeafNode(otherlv_3, grammarAccess.getExplorateurAccess().getEqualsSignKeyword_3());
|
|
|
|
// InternalGame.g:240:3: ( (lv_tailleTotaleMax_4_0= RULE_INT ) )
|
|
// InternalGame.g:241:4: (lv_tailleTotaleMax_4_0= RULE_INT )
|
|
{
|
|
// InternalGame.g:241:4: (lv_tailleTotaleMax_4_0= RULE_INT )
|
|
// InternalGame.g:242:5: lv_tailleTotaleMax_4_0= RULE_INT
|
|
{
|
|
lv_tailleTotaleMax_4_0=(Token)match(input,RULE_INT,FOLLOW_13);
|
|
|
|
newLeafNode(lv_tailleTotaleMax_4_0, grammarAccess.getExplorateurAccess().getTailleTotaleMaxINTTerminalRuleCall_4_0());
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElement(grammarAccess.getExplorateurRule());
|
|
}
|
|
setWithLastConsumed(
|
|
current,
|
|
"tailleTotaleMax",
|
|
lv_tailleTotaleMax_4_0,
|
|
"org.eclipse.xtext.common.Terminals.INT");
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
// InternalGame.g:258:3: ( (lv_connaissances_5_0= ruleNom ) )*
|
|
loop5:
|
|
do {
|
|
int alt5=2;
|
|
int LA5_0 = input.LA(1);
|
|
|
|
if ( (LA5_0==RULE_STRING) ) {
|
|
alt5=1;
|
|
}
|
|
|
|
|
|
switch (alt5) {
|
|
case 1 :
|
|
// InternalGame.g:259:4: (lv_connaissances_5_0= ruleNom )
|
|
{
|
|
// InternalGame.g:259:4: (lv_connaissances_5_0= ruleNom )
|
|
// InternalGame.g:260:5: lv_connaissances_5_0= ruleNom
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getExplorateurAccess().getConnaissancesNomParserRuleCall_5_0());
|
|
|
|
pushFollow(FOLLOW_13);
|
|
lv_connaissances_5_0=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getExplorateurRule());
|
|
}
|
|
add(
|
|
current,
|
|
"connaissances",
|
|
lv_connaissances_5_0,
|
|
"xtext.Game.Nom");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
break loop5;
|
|
}
|
|
} while (true);
|
|
|
|
// InternalGame.g:277:3: ( (lv_objets_6_0= ruleNom ) )*
|
|
loop6:
|
|
do {
|
|
int alt6=2;
|
|
int LA6_0 = input.LA(1);
|
|
|
|
if ( (LA6_0==RULE_STRING) ) {
|
|
alt6=1;
|
|
}
|
|
|
|
|
|
switch (alt6) {
|
|
case 1 :
|
|
// InternalGame.g:278:4: (lv_objets_6_0= ruleNom )
|
|
{
|
|
// InternalGame.g:278:4: (lv_objets_6_0= ruleNom )
|
|
// InternalGame.g:279:5: lv_objets_6_0= ruleNom
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getExplorateurAccess().getObjetsNomParserRuleCall_6_0());
|
|
|
|
pushFollow(FOLLOW_13);
|
|
lv_objets_6_0=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getExplorateurRule());
|
|
}
|
|
add(
|
|
current,
|
|
"objets",
|
|
lv_objets_6_0,
|
|
"xtext.Game.Nom");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
break loop6;
|
|
}
|
|
} while (true);
|
|
|
|
otherlv_7=(Token)match(input,13,FOLLOW_2);
|
|
|
|
newLeafNode(otherlv_7, grammarAccess.getExplorateurAccess().getRightCurlyBracketKeyword_7());
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
leaveRule();
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "ruleExplorateur"
|
|
|
|
|
|
// $ANTLR start "entryRuleTerritoire"
|
|
// InternalGame.g:304:1: entryRuleTerritoire returns [EObject current=null] : iv_ruleTerritoire= ruleTerritoire EOF ;
|
|
public final EObject entryRuleTerritoire() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
EObject iv_ruleTerritoire = null;
|
|
|
|
|
|
try {
|
|
// InternalGame.g:304:51: (iv_ruleTerritoire= ruleTerritoire EOF )
|
|
// InternalGame.g:305:2: iv_ruleTerritoire= ruleTerritoire EOF
|
|
{
|
|
newCompositeNode(grammarAccess.getTerritoireRule());
|
|
pushFollow(FOLLOW_1);
|
|
iv_ruleTerritoire=ruleTerritoire();
|
|
|
|
state._fsp--;
|
|
|
|
current =iv_ruleTerritoire;
|
|
match(input,EOF,FOLLOW_2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "entryRuleTerritoire"
|
|
|
|
|
|
// $ANTLR start "ruleTerritoire"
|
|
// InternalGame.g:311:1: ruleTerritoire returns [EObject current=null] : (otherlv_0= 'Territoire' otherlv_1= '{' otherlv_2= 'lieux' otherlv_3= ':' ( (lv_lieux_4_0= ruleLieu ) )+ otherlv_5= 'chemins' otherlv_6= ':' ( (lv_chemins_7_0= ruleChemin ) )* otherlv_8= '}' ) ;
|
|
public final EObject ruleTerritoire() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
Token otherlv_0=null;
|
|
Token otherlv_1=null;
|
|
Token otherlv_2=null;
|
|
Token otherlv_3=null;
|
|
Token otherlv_5=null;
|
|
Token otherlv_6=null;
|
|
Token otherlv_8=null;
|
|
EObject lv_lieux_4_0 = null;
|
|
|
|
EObject lv_chemins_7_0 = null;
|
|
|
|
|
|
|
|
enterRule();
|
|
|
|
try {
|
|
// InternalGame.g:317:2: ( (otherlv_0= 'Territoire' otherlv_1= '{' otherlv_2= 'lieux' otherlv_3= ':' ( (lv_lieux_4_0= ruleLieu ) )+ otherlv_5= 'chemins' otherlv_6= ':' ( (lv_chemins_7_0= ruleChemin ) )* otherlv_8= '}' ) )
|
|
// InternalGame.g:318:2: (otherlv_0= 'Territoire' otherlv_1= '{' otherlv_2= 'lieux' otherlv_3= ':' ( (lv_lieux_4_0= ruleLieu ) )+ otherlv_5= 'chemins' otherlv_6= ':' ( (lv_chemins_7_0= ruleChemin ) )* otherlv_8= '}' )
|
|
{
|
|
// InternalGame.g:318:2: (otherlv_0= 'Territoire' otherlv_1= '{' otherlv_2= 'lieux' otherlv_3= ':' ( (lv_lieux_4_0= ruleLieu ) )+ otherlv_5= 'chemins' otherlv_6= ':' ( (lv_chemins_7_0= ruleChemin ) )* otherlv_8= '}' )
|
|
// InternalGame.g:319:3: otherlv_0= 'Territoire' otherlv_1= '{' otherlv_2= 'lieux' otherlv_3= ':' ( (lv_lieux_4_0= ruleLieu ) )+ otherlv_5= 'chemins' otherlv_6= ':' ( (lv_chemins_7_0= ruleChemin ) )* otherlv_8= '}'
|
|
{
|
|
otherlv_0=(Token)match(input,17,FOLLOW_3);
|
|
|
|
newLeafNode(otherlv_0, grammarAccess.getTerritoireAccess().getTerritoireKeyword_0());
|
|
|
|
otherlv_1=(Token)match(input,12,FOLLOW_14);
|
|
|
|
newLeafNode(otherlv_1, grammarAccess.getTerritoireAccess().getLeftCurlyBracketKeyword_1());
|
|
|
|
otherlv_2=(Token)match(input,18,FOLLOW_15);
|
|
|
|
newLeafNode(otherlv_2, grammarAccess.getTerritoireAccess().getLieuxKeyword_2());
|
|
|
|
otherlv_3=(Token)match(input,19,FOLLOW_16);
|
|
|
|
newLeafNode(otherlv_3, grammarAccess.getTerritoireAccess().getColonKeyword_3());
|
|
|
|
// InternalGame.g:335:3: ( (lv_lieux_4_0= ruleLieu ) )+
|
|
int cnt7=0;
|
|
loop7:
|
|
do {
|
|
int alt7=2;
|
|
int LA7_0 = input.LA(1);
|
|
|
|
if ( (LA7_0==21) ) {
|
|
alt7=1;
|
|
}
|
|
|
|
|
|
switch (alt7) {
|
|
case 1 :
|
|
// InternalGame.g:336:4: (lv_lieux_4_0= ruleLieu )
|
|
{
|
|
// InternalGame.g:336:4: (lv_lieux_4_0= ruleLieu )
|
|
// InternalGame.g:337:5: lv_lieux_4_0= ruleLieu
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getTerritoireAccess().getLieuxLieuParserRuleCall_4_0());
|
|
|
|
pushFollow(FOLLOW_17);
|
|
lv_lieux_4_0=ruleLieu();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getTerritoireRule());
|
|
}
|
|
add(
|
|
current,
|
|
"lieux",
|
|
lv_lieux_4_0,
|
|
"xtext.Game.Lieu");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
if ( cnt7 >= 1 ) break loop7;
|
|
EarlyExitException eee =
|
|
new EarlyExitException(7, input);
|
|
throw eee;
|
|
}
|
|
cnt7++;
|
|
} while (true);
|
|
|
|
otherlv_5=(Token)match(input,20,FOLLOW_15);
|
|
|
|
newLeafNode(otherlv_5, grammarAccess.getTerritoireAccess().getCheminsKeyword_5());
|
|
|
|
otherlv_6=(Token)match(input,19,FOLLOW_18);
|
|
|
|
newLeafNode(otherlv_6, grammarAccess.getTerritoireAccess().getColonKeyword_6());
|
|
|
|
// InternalGame.g:362:3: ( (lv_chemins_7_0= ruleChemin ) )*
|
|
loop8:
|
|
do {
|
|
int alt8=2;
|
|
int LA8_0 = input.LA(1);
|
|
|
|
if ( (LA8_0==22) ) {
|
|
alt8=1;
|
|
}
|
|
|
|
|
|
switch (alt8) {
|
|
case 1 :
|
|
// InternalGame.g:363:4: (lv_chemins_7_0= ruleChemin )
|
|
{
|
|
// InternalGame.g:363:4: (lv_chemins_7_0= ruleChemin )
|
|
// InternalGame.g:364:5: lv_chemins_7_0= ruleChemin
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getTerritoireAccess().getCheminsCheminParserRuleCall_7_0());
|
|
|
|
pushFollow(FOLLOW_18);
|
|
lv_chemins_7_0=ruleChemin();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getTerritoireRule());
|
|
}
|
|
add(
|
|
current,
|
|
"chemins",
|
|
lv_chemins_7_0,
|
|
"xtext.Game.Chemin");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
break loop8;
|
|
}
|
|
} while (true);
|
|
|
|
otherlv_8=(Token)match(input,13,FOLLOW_2);
|
|
|
|
newLeafNode(otherlv_8, grammarAccess.getTerritoireAccess().getRightCurlyBracketKeyword_8());
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
leaveRule();
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "ruleTerritoire"
|
|
|
|
|
|
// $ANTLR start "entryRuleLieu"
|
|
// InternalGame.g:389:1: entryRuleLieu returns [EObject current=null] : iv_ruleLieu= ruleLieu EOF ;
|
|
public final EObject entryRuleLieu() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
EObject iv_ruleLieu = null;
|
|
|
|
|
|
try {
|
|
// InternalGame.g:389:45: (iv_ruleLieu= ruleLieu EOF )
|
|
// InternalGame.g:390:2: iv_ruleLieu= ruleLieu EOF
|
|
{
|
|
newCompositeNode(grammarAccess.getLieuRule());
|
|
pushFollow(FOLLOW_1);
|
|
iv_ruleLieu=ruleLieu();
|
|
|
|
state._fsp--;
|
|
|
|
current =iv_ruleLieu;
|
|
match(input,EOF,FOLLOW_2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "entryRuleLieu"
|
|
|
|
|
|
// $ANTLR start "ruleLieu"
|
|
// InternalGame.g:396:1: ruleLieu returns [EObject current=null] : (otherlv_0= 'Lieu' ( (lv_nom_1_0= ruleNom ) ) otherlv_2= '{' ( (lv_connaissances_3_0= ruleNom ) )* ( (lv_personnes_4_0= rulePersonne ) )* ( (lv_objets_5_0= ruleNom ) )* ( (lv_deposable_6_0= ruleCondition ) ) ( (lv_descriptions_7_0= ruleDescription ) )+ ( (lv_depart_8_0= ruleCondition ) ) ( (lv_fin_9_0= ruleCondition ) ) otherlv_10= '}' ) ;
|
|
public final EObject ruleLieu() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
Token otherlv_0=null;
|
|
Token otherlv_2=null;
|
|
Token otherlv_10=null;
|
|
AntlrDatatypeRuleToken lv_nom_1_0 = null;
|
|
|
|
AntlrDatatypeRuleToken lv_connaissances_3_0 = null;
|
|
|
|
EObject lv_personnes_4_0 = null;
|
|
|
|
AntlrDatatypeRuleToken lv_objets_5_0 = null;
|
|
|
|
EObject lv_deposable_6_0 = null;
|
|
|
|
EObject lv_descriptions_7_0 = null;
|
|
|
|
EObject lv_depart_8_0 = null;
|
|
|
|
EObject lv_fin_9_0 = null;
|
|
|
|
|
|
|
|
enterRule();
|
|
|
|
try {
|
|
// InternalGame.g:402:2: ( (otherlv_0= 'Lieu' ( (lv_nom_1_0= ruleNom ) ) otherlv_2= '{' ( (lv_connaissances_3_0= ruleNom ) )* ( (lv_personnes_4_0= rulePersonne ) )* ( (lv_objets_5_0= ruleNom ) )* ( (lv_deposable_6_0= ruleCondition ) ) ( (lv_descriptions_7_0= ruleDescription ) )+ ( (lv_depart_8_0= ruleCondition ) ) ( (lv_fin_9_0= ruleCondition ) ) otherlv_10= '}' ) )
|
|
// InternalGame.g:403:2: (otherlv_0= 'Lieu' ( (lv_nom_1_0= ruleNom ) ) otherlv_2= '{' ( (lv_connaissances_3_0= ruleNom ) )* ( (lv_personnes_4_0= rulePersonne ) )* ( (lv_objets_5_0= ruleNom ) )* ( (lv_deposable_6_0= ruleCondition ) ) ( (lv_descriptions_7_0= ruleDescription ) )+ ( (lv_depart_8_0= ruleCondition ) ) ( (lv_fin_9_0= ruleCondition ) ) otherlv_10= '}' )
|
|
{
|
|
// InternalGame.g:403:2: (otherlv_0= 'Lieu' ( (lv_nom_1_0= ruleNom ) ) otherlv_2= '{' ( (lv_connaissances_3_0= ruleNom ) )* ( (lv_personnes_4_0= rulePersonne ) )* ( (lv_objets_5_0= ruleNom ) )* ( (lv_deposable_6_0= ruleCondition ) ) ( (lv_descriptions_7_0= ruleDescription ) )+ ( (lv_depart_8_0= ruleCondition ) ) ( (lv_fin_9_0= ruleCondition ) ) otherlv_10= '}' )
|
|
// InternalGame.g:404:3: otherlv_0= 'Lieu' ( (lv_nom_1_0= ruleNom ) ) otherlv_2= '{' ( (lv_connaissances_3_0= ruleNom ) )* ( (lv_personnes_4_0= rulePersonne ) )* ( (lv_objets_5_0= ruleNom ) )* ( (lv_deposable_6_0= ruleCondition ) ) ( (lv_descriptions_7_0= ruleDescription ) )+ ( (lv_depart_8_0= ruleCondition ) ) ( (lv_fin_9_0= ruleCondition ) ) otherlv_10= '}'
|
|
{
|
|
otherlv_0=(Token)match(input,21,FOLLOW_19);
|
|
|
|
newLeafNode(otherlv_0, grammarAccess.getLieuAccess().getLieuKeyword_0());
|
|
|
|
// InternalGame.g:408:3: ( (lv_nom_1_0= ruleNom ) )
|
|
// InternalGame.g:409:4: (lv_nom_1_0= ruleNom )
|
|
{
|
|
// InternalGame.g:409:4: (lv_nom_1_0= ruleNom )
|
|
// InternalGame.g:410:5: lv_nom_1_0= ruleNom
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getLieuAccess().getNomNomParserRuleCall_1_0());
|
|
|
|
pushFollow(FOLLOW_3);
|
|
lv_nom_1_0=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getLieuRule());
|
|
}
|
|
set(
|
|
current,
|
|
"nom",
|
|
lv_nom_1_0,
|
|
"xtext.Game.Nom");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
otherlv_2=(Token)match(input,12,FOLLOW_20);
|
|
|
|
newLeafNode(otherlv_2, grammarAccess.getLieuAccess().getLeftCurlyBracketKeyword_2());
|
|
|
|
// InternalGame.g:431:3: ( (lv_connaissances_3_0= ruleNom ) )*
|
|
loop9:
|
|
do {
|
|
int alt9=2;
|
|
int LA9_0 = input.LA(1);
|
|
|
|
if ( (LA9_0==RULE_STRING) ) {
|
|
alt9=1;
|
|
}
|
|
|
|
|
|
switch (alt9) {
|
|
case 1 :
|
|
// InternalGame.g:432:4: (lv_connaissances_3_0= ruleNom )
|
|
{
|
|
// InternalGame.g:432:4: (lv_connaissances_3_0= ruleNom )
|
|
// InternalGame.g:433:5: lv_connaissances_3_0= ruleNom
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getLieuAccess().getConnaissancesNomParserRuleCall_3_0());
|
|
|
|
pushFollow(FOLLOW_20);
|
|
lv_connaissances_3_0=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getLieuRule());
|
|
}
|
|
add(
|
|
current,
|
|
"connaissances",
|
|
lv_connaissances_3_0,
|
|
"xtext.Game.Nom");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
break loop9;
|
|
}
|
|
} while (true);
|
|
|
|
// InternalGame.g:450:3: ( (lv_personnes_4_0= rulePersonne ) )*
|
|
loop10:
|
|
do {
|
|
int alt10=2;
|
|
int LA10_0 = input.LA(1);
|
|
|
|
if ( (LA10_0==27) ) {
|
|
alt10=1;
|
|
}
|
|
|
|
|
|
switch (alt10) {
|
|
case 1 :
|
|
// InternalGame.g:451:4: (lv_personnes_4_0= rulePersonne )
|
|
{
|
|
// InternalGame.g:451:4: (lv_personnes_4_0= rulePersonne )
|
|
// InternalGame.g:452:5: lv_personnes_4_0= rulePersonne
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getLieuAccess().getPersonnesPersonneParserRuleCall_4_0());
|
|
|
|
pushFollow(FOLLOW_20);
|
|
lv_personnes_4_0=rulePersonne();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getLieuRule());
|
|
}
|
|
add(
|
|
current,
|
|
"personnes",
|
|
lv_personnes_4_0,
|
|
"xtext.Game.Personne");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
break loop10;
|
|
}
|
|
} while (true);
|
|
|
|
// InternalGame.g:469:3: ( (lv_objets_5_0= ruleNom ) )*
|
|
loop11:
|
|
do {
|
|
int alt11=2;
|
|
int LA11_0 = input.LA(1);
|
|
|
|
if ( (LA11_0==RULE_STRING) ) {
|
|
alt11=1;
|
|
}
|
|
|
|
|
|
switch (alt11) {
|
|
case 1 :
|
|
// InternalGame.g:470:4: (lv_objets_5_0= ruleNom )
|
|
{
|
|
// InternalGame.g:470:4: (lv_objets_5_0= ruleNom )
|
|
// InternalGame.g:471:5: lv_objets_5_0= ruleNom
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getLieuAccess().getObjetsNomParserRuleCall_5_0());
|
|
|
|
pushFollow(FOLLOW_20);
|
|
lv_objets_5_0=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getLieuRule());
|
|
}
|
|
add(
|
|
current,
|
|
"objets",
|
|
lv_objets_5_0,
|
|
"xtext.Game.Nom");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
break loop11;
|
|
}
|
|
} while (true);
|
|
|
|
// InternalGame.g:488:3: ( (lv_deposable_6_0= ruleCondition ) )
|
|
// InternalGame.g:489:4: (lv_deposable_6_0= ruleCondition )
|
|
{
|
|
// InternalGame.g:489:4: (lv_deposable_6_0= ruleCondition )
|
|
// InternalGame.g:490:5: lv_deposable_6_0= ruleCondition
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getLieuAccess().getDeposableConditionParserRuleCall_6_0());
|
|
|
|
pushFollow(FOLLOW_21);
|
|
lv_deposable_6_0=ruleCondition();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getLieuRule());
|
|
}
|
|
set(
|
|
current,
|
|
"deposable",
|
|
lv_deposable_6_0,
|
|
"xtext.Game.Condition");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
// InternalGame.g:507:3: ( (lv_descriptions_7_0= ruleDescription ) )+
|
|
int cnt12=0;
|
|
loop12:
|
|
do {
|
|
int alt12=2;
|
|
int LA12_0 = input.LA(1);
|
|
|
|
if ( (LA12_0==30) ) {
|
|
alt12=1;
|
|
}
|
|
|
|
|
|
switch (alt12) {
|
|
case 1 :
|
|
// InternalGame.g:508:4: (lv_descriptions_7_0= ruleDescription )
|
|
{
|
|
// InternalGame.g:508:4: (lv_descriptions_7_0= ruleDescription )
|
|
// InternalGame.g:509:5: lv_descriptions_7_0= ruleDescription
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getLieuAccess().getDescriptionsDescriptionParserRuleCall_7_0());
|
|
|
|
pushFollow(FOLLOW_22);
|
|
lv_descriptions_7_0=ruleDescription();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getLieuRule());
|
|
}
|
|
add(
|
|
current,
|
|
"descriptions",
|
|
lv_descriptions_7_0,
|
|
"xtext.Game.Description");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
if ( cnt12 >= 1 ) break loop12;
|
|
EarlyExitException eee =
|
|
new EarlyExitException(12, input);
|
|
throw eee;
|
|
}
|
|
cnt12++;
|
|
} while (true);
|
|
|
|
// InternalGame.g:526:3: ( (lv_depart_8_0= ruleCondition ) )
|
|
// InternalGame.g:527:4: (lv_depart_8_0= ruleCondition )
|
|
{
|
|
// InternalGame.g:527:4: (lv_depart_8_0= ruleCondition )
|
|
// InternalGame.g:528:5: lv_depart_8_0= ruleCondition
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getLieuAccess().getDepartConditionParserRuleCall_8_0());
|
|
|
|
pushFollow(FOLLOW_20);
|
|
lv_depart_8_0=ruleCondition();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getLieuRule());
|
|
}
|
|
set(
|
|
current,
|
|
"depart",
|
|
lv_depart_8_0,
|
|
"xtext.Game.Condition");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
// InternalGame.g:545:3: ( (lv_fin_9_0= ruleCondition ) )
|
|
// InternalGame.g:546:4: (lv_fin_9_0= ruleCondition )
|
|
{
|
|
// InternalGame.g:546:4: (lv_fin_9_0= ruleCondition )
|
|
// InternalGame.g:547:5: lv_fin_9_0= ruleCondition
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getLieuAccess().getFinConditionParserRuleCall_9_0());
|
|
|
|
pushFollow(FOLLOW_23);
|
|
lv_fin_9_0=ruleCondition();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getLieuRule());
|
|
}
|
|
set(
|
|
current,
|
|
"fin",
|
|
lv_fin_9_0,
|
|
"xtext.Game.Condition");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
otherlv_10=(Token)match(input,13,FOLLOW_2);
|
|
|
|
newLeafNode(otherlv_10, grammarAccess.getLieuAccess().getRightCurlyBracketKeyword_10());
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
leaveRule();
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "ruleLieu"
|
|
|
|
|
|
// $ANTLR start "entryRuleChemin"
|
|
// InternalGame.g:572:1: entryRuleChemin returns [EObject current=null] : iv_ruleChemin= ruleChemin EOF ;
|
|
public final EObject entryRuleChemin() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
EObject iv_ruleChemin = null;
|
|
|
|
|
|
try {
|
|
// InternalGame.g:572:47: (iv_ruleChemin= ruleChemin EOF )
|
|
// InternalGame.g:573:2: iv_ruleChemin= ruleChemin EOF
|
|
{
|
|
newCompositeNode(grammarAccess.getCheminRule());
|
|
pushFollow(FOLLOW_1);
|
|
iv_ruleChemin=ruleChemin();
|
|
|
|
state._fsp--;
|
|
|
|
current =iv_ruleChemin;
|
|
match(input,EOF,FOLLOW_2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "entryRuleChemin"
|
|
|
|
|
|
// $ANTLR start "ruleChemin"
|
|
// InternalGame.g:579:1: ruleChemin returns [EObject current=null] : (otherlv_0= 'Chemin' otherlv_1= '{' ( (lv_lieuIn_2_0= ruleNom ) ) otherlv_3= '->' ( (lv_lieuOut_4_0= ruleNom ) ) ( (lv_connaissances_5_0= ruleNom ) )* ( (lv_objets_6_0= ruleNom ) )* ( (lv_objetsConso_7_0= ruleNom ) )* ( (lv_ouvert_8_0= ruleCondition ) ) ( (lv_ferme_9_0= ruleCondition ) ) ( (lv_obligatoire_10_0= ruleCondition ) ) ( (lv_descriptions_11_0= ruleDescription ) )+ otherlv_12= '}' ) ;
|
|
public final EObject ruleChemin() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
Token otherlv_0=null;
|
|
Token otherlv_1=null;
|
|
Token otherlv_3=null;
|
|
Token otherlv_12=null;
|
|
AntlrDatatypeRuleToken lv_lieuIn_2_0 = null;
|
|
|
|
AntlrDatatypeRuleToken lv_lieuOut_4_0 = null;
|
|
|
|
AntlrDatatypeRuleToken lv_connaissances_5_0 = null;
|
|
|
|
AntlrDatatypeRuleToken lv_objets_6_0 = null;
|
|
|
|
AntlrDatatypeRuleToken lv_objetsConso_7_0 = null;
|
|
|
|
EObject lv_ouvert_8_0 = null;
|
|
|
|
EObject lv_ferme_9_0 = null;
|
|
|
|
EObject lv_obligatoire_10_0 = null;
|
|
|
|
EObject lv_descriptions_11_0 = null;
|
|
|
|
|
|
|
|
enterRule();
|
|
|
|
try {
|
|
// InternalGame.g:585:2: ( (otherlv_0= 'Chemin' otherlv_1= '{' ( (lv_lieuIn_2_0= ruleNom ) ) otherlv_3= '->' ( (lv_lieuOut_4_0= ruleNom ) ) ( (lv_connaissances_5_0= ruleNom ) )* ( (lv_objets_6_0= ruleNom ) )* ( (lv_objetsConso_7_0= ruleNom ) )* ( (lv_ouvert_8_0= ruleCondition ) ) ( (lv_ferme_9_0= ruleCondition ) ) ( (lv_obligatoire_10_0= ruleCondition ) ) ( (lv_descriptions_11_0= ruleDescription ) )+ otherlv_12= '}' ) )
|
|
// InternalGame.g:586:2: (otherlv_0= 'Chemin' otherlv_1= '{' ( (lv_lieuIn_2_0= ruleNom ) ) otherlv_3= '->' ( (lv_lieuOut_4_0= ruleNom ) ) ( (lv_connaissances_5_0= ruleNom ) )* ( (lv_objets_6_0= ruleNom ) )* ( (lv_objetsConso_7_0= ruleNom ) )* ( (lv_ouvert_8_0= ruleCondition ) ) ( (lv_ferme_9_0= ruleCondition ) ) ( (lv_obligatoire_10_0= ruleCondition ) ) ( (lv_descriptions_11_0= ruleDescription ) )+ otherlv_12= '}' )
|
|
{
|
|
// InternalGame.g:586:2: (otherlv_0= 'Chemin' otherlv_1= '{' ( (lv_lieuIn_2_0= ruleNom ) ) otherlv_3= '->' ( (lv_lieuOut_4_0= ruleNom ) ) ( (lv_connaissances_5_0= ruleNom ) )* ( (lv_objets_6_0= ruleNom ) )* ( (lv_objetsConso_7_0= ruleNom ) )* ( (lv_ouvert_8_0= ruleCondition ) ) ( (lv_ferme_9_0= ruleCondition ) ) ( (lv_obligatoire_10_0= ruleCondition ) ) ( (lv_descriptions_11_0= ruleDescription ) )+ otherlv_12= '}' )
|
|
// InternalGame.g:587:3: otherlv_0= 'Chemin' otherlv_1= '{' ( (lv_lieuIn_2_0= ruleNom ) ) otherlv_3= '->' ( (lv_lieuOut_4_0= ruleNom ) ) ( (lv_connaissances_5_0= ruleNom ) )* ( (lv_objets_6_0= ruleNom ) )* ( (lv_objetsConso_7_0= ruleNom ) )* ( (lv_ouvert_8_0= ruleCondition ) ) ( (lv_ferme_9_0= ruleCondition ) ) ( (lv_obligatoire_10_0= ruleCondition ) ) ( (lv_descriptions_11_0= ruleDescription ) )+ otherlv_12= '}'
|
|
{
|
|
otherlv_0=(Token)match(input,22,FOLLOW_3);
|
|
|
|
newLeafNode(otherlv_0, grammarAccess.getCheminAccess().getCheminKeyword_0());
|
|
|
|
otherlv_1=(Token)match(input,12,FOLLOW_19);
|
|
|
|
newLeafNode(otherlv_1, grammarAccess.getCheminAccess().getLeftCurlyBracketKeyword_1());
|
|
|
|
// InternalGame.g:595:3: ( (lv_lieuIn_2_0= ruleNom ) )
|
|
// InternalGame.g:596:4: (lv_lieuIn_2_0= ruleNom )
|
|
{
|
|
// InternalGame.g:596:4: (lv_lieuIn_2_0= ruleNom )
|
|
// InternalGame.g:597:5: lv_lieuIn_2_0= ruleNom
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getCheminAccess().getLieuInNomParserRuleCall_2_0());
|
|
|
|
pushFollow(FOLLOW_24);
|
|
lv_lieuIn_2_0=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getCheminRule());
|
|
}
|
|
set(
|
|
current,
|
|
"lieuIn",
|
|
lv_lieuIn_2_0,
|
|
"xtext.Game.Nom");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
otherlv_3=(Token)match(input,23,FOLLOW_19);
|
|
|
|
newLeafNode(otherlv_3, grammarAccess.getCheminAccess().getHyphenMinusGreaterThanSignKeyword_3());
|
|
|
|
// InternalGame.g:618:3: ( (lv_lieuOut_4_0= ruleNom ) )
|
|
// InternalGame.g:619:4: (lv_lieuOut_4_0= ruleNom )
|
|
{
|
|
// InternalGame.g:619:4: (lv_lieuOut_4_0= ruleNom )
|
|
// InternalGame.g:620:5: lv_lieuOut_4_0= ruleNom
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getCheminAccess().getLieuOutNomParserRuleCall_4_0());
|
|
|
|
pushFollow(FOLLOW_20);
|
|
lv_lieuOut_4_0=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getCheminRule());
|
|
}
|
|
set(
|
|
current,
|
|
"lieuOut",
|
|
lv_lieuOut_4_0,
|
|
"xtext.Game.Nom");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
// InternalGame.g:637:3: ( (lv_connaissances_5_0= ruleNom ) )*
|
|
loop13:
|
|
do {
|
|
int alt13=2;
|
|
int LA13_0 = input.LA(1);
|
|
|
|
if ( (LA13_0==RULE_STRING) ) {
|
|
alt13=1;
|
|
}
|
|
|
|
|
|
switch (alt13) {
|
|
case 1 :
|
|
// InternalGame.g:638:4: (lv_connaissances_5_0= ruleNom )
|
|
{
|
|
// InternalGame.g:638:4: (lv_connaissances_5_0= ruleNom )
|
|
// InternalGame.g:639:5: lv_connaissances_5_0= ruleNom
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getCheminAccess().getConnaissancesNomParserRuleCall_5_0());
|
|
|
|
pushFollow(FOLLOW_20);
|
|
lv_connaissances_5_0=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getCheminRule());
|
|
}
|
|
add(
|
|
current,
|
|
"connaissances",
|
|
lv_connaissances_5_0,
|
|
"xtext.Game.Nom");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
break loop13;
|
|
}
|
|
} while (true);
|
|
|
|
// InternalGame.g:656:3: ( (lv_objets_6_0= ruleNom ) )*
|
|
loop14:
|
|
do {
|
|
int alt14=2;
|
|
int LA14_0 = input.LA(1);
|
|
|
|
if ( (LA14_0==RULE_STRING) ) {
|
|
alt14=1;
|
|
}
|
|
|
|
|
|
switch (alt14) {
|
|
case 1 :
|
|
// InternalGame.g:657:4: (lv_objets_6_0= ruleNom )
|
|
{
|
|
// InternalGame.g:657:4: (lv_objets_6_0= ruleNom )
|
|
// InternalGame.g:658:5: lv_objets_6_0= ruleNom
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getCheminAccess().getObjetsNomParserRuleCall_6_0());
|
|
|
|
pushFollow(FOLLOW_20);
|
|
lv_objets_6_0=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getCheminRule());
|
|
}
|
|
add(
|
|
current,
|
|
"objets",
|
|
lv_objets_6_0,
|
|
"xtext.Game.Nom");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
break loop14;
|
|
}
|
|
} while (true);
|
|
|
|
// InternalGame.g:675:3: ( (lv_objetsConso_7_0= ruleNom ) )*
|
|
loop15:
|
|
do {
|
|
int alt15=2;
|
|
int LA15_0 = input.LA(1);
|
|
|
|
if ( (LA15_0==RULE_STRING) ) {
|
|
alt15=1;
|
|
}
|
|
|
|
|
|
switch (alt15) {
|
|
case 1 :
|
|
// InternalGame.g:676:4: (lv_objetsConso_7_0= ruleNom )
|
|
{
|
|
// InternalGame.g:676:4: (lv_objetsConso_7_0= ruleNom )
|
|
// InternalGame.g:677:5: lv_objetsConso_7_0= ruleNom
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getCheminAccess().getObjetsConsoNomParserRuleCall_7_0());
|
|
|
|
pushFollow(FOLLOW_20);
|
|
lv_objetsConso_7_0=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getCheminRule());
|
|
}
|
|
add(
|
|
current,
|
|
"objetsConso",
|
|
lv_objetsConso_7_0,
|
|
"xtext.Game.Nom");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
break loop15;
|
|
}
|
|
} while (true);
|
|
|
|
// InternalGame.g:694:3: ( (lv_ouvert_8_0= ruleCondition ) )
|
|
// InternalGame.g:695:4: (lv_ouvert_8_0= ruleCondition )
|
|
{
|
|
// InternalGame.g:695:4: (lv_ouvert_8_0= ruleCondition )
|
|
// InternalGame.g:696:5: lv_ouvert_8_0= ruleCondition
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getCheminAccess().getOuvertConditionParserRuleCall_8_0());
|
|
|
|
pushFollow(FOLLOW_20);
|
|
lv_ouvert_8_0=ruleCondition();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getCheminRule());
|
|
}
|
|
set(
|
|
current,
|
|
"ouvert",
|
|
lv_ouvert_8_0,
|
|
"xtext.Game.Condition");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
// InternalGame.g:713:3: ( (lv_ferme_9_0= ruleCondition ) )
|
|
// InternalGame.g:714:4: (lv_ferme_9_0= ruleCondition )
|
|
{
|
|
// InternalGame.g:714:4: (lv_ferme_9_0= ruleCondition )
|
|
// InternalGame.g:715:5: lv_ferme_9_0= ruleCondition
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getCheminAccess().getFermeConditionParserRuleCall_9_0());
|
|
|
|
pushFollow(FOLLOW_20);
|
|
lv_ferme_9_0=ruleCondition();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getCheminRule());
|
|
}
|
|
set(
|
|
current,
|
|
"ferme",
|
|
lv_ferme_9_0,
|
|
"xtext.Game.Condition");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
// InternalGame.g:732:3: ( (lv_obligatoire_10_0= ruleCondition ) )
|
|
// InternalGame.g:733:4: (lv_obligatoire_10_0= ruleCondition )
|
|
{
|
|
// InternalGame.g:733:4: (lv_obligatoire_10_0= ruleCondition )
|
|
// InternalGame.g:734:5: lv_obligatoire_10_0= ruleCondition
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getCheminAccess().getObligatoireConditionParserRuleCall_10_0());
|
|
|
|
pushFollow(FOLLOW_21);
|
|
lv_obligatoire_10_0=ruleCondition();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getCheminRule());
|
|
}
|
|
set(
|
|
current,
|
|
"obligatoire",
|
|
lv_obligatoire_10_0,
|
|
"xtext.Game.Condition");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
// InternalGame.g:751:3: ( (lv_descriptions_11_0= ruleDescription ) )+
|
|
int cnt16=0;
|
|
loop16:
|
|
do {
|
|
int alt16=2;
|
|
int LA16_0 = input.LA(1);
|
|
|
|
if ( (LA16_0==30) ) {
|
|
alt16=1;
|
|
}
|
|
|
|
|
|
switch (alt16) {
|
|
case 1 :
|
|
// InternalGame.g:752:4: (lv_descriptions_11_0= ruleDescription )
|
|
{
|
|
// InternalGame.g:752:4: (lv_descriptions_11_0= ruleDescription )
|
|
// InternalGame.g:753:5: lv_descriptions_11_0= ruleDescription
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getCheminAccess().getDescriptionsDescriptionParserRuleCall_11_0());
|
|
|
|
pushFollow(FOLLOW_25);
|
|
lv_descriptions_11_0=ruleDescription();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getCheminRule());
|
|
}
|
|
add(
|
|
current,
|
|
"descriptions",
|
|
lv_descriptions_11_0,
|
|
"xtext.Game.Description");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
if ( cnt16 >= 1 ) break loop16;
|
|
EarlyExitException eee =
|
|
new EarlyExitException(16, input);
|
|
throw eee;
|
|
}
|
|
cnt16++;
|
|
} while (true);
|
|
|
|
otherlv_12=(Token)match(input,13,FOLLOW_2);
|
|
|
|
newLeafNode(otherlv_12, grammarAccess.getCheminAccess().getRightCurlyBracketKeyword_12());
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
leaveRule();
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "ruleChemin"
|
|
|
|
|
|
// $ANTLR start "entryRuleObjet"
|
|
// InternalGame.g:778:1: entryRuleObjet returns [EObject current=null] : iv_ruleObjet= ruleObjet EOF ;
|
|
public final EObject entryRuleObjet() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
EObject iv_ruleObjet = null;
|
|
|
|
|
|
try {
|
|
// InternalGame.g:778:46: (iv_ruleObjet= ruleObjet EOF )
|
|
// InternalGame.g:779:2: iv_ruleObjet= ruleObjet EOF
|
|
{
|
|
newCompositeNode(grammarAccess.getObjetRule());
|
|
pushFollow(FOLLOW_1);
|
|
iv_ruleObjet=ruleObjet();
|
|
|
|
state._fsp--;
|
|
|
|
current =iv_ruleObjet;
|
|
match(input,EOF,FOLLOW_2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "entryRuleObjet"
|
|
|
|
|
|
// $ANTLR start "ruleObjet"
|
|
// InternalGame.g:785:1: ruleObjet returns [EObject current=null] : (otherlv_0= 'Objet' ( (lv_nom_1_0= ruleNom ) ) otherlv_2= '{' ( (lv_taille_3_0= RULE_INT ) ) ( (lv_visible_4_0= ruleCondition ) ) ( (lv_descriptions_5_0= ruleDescription ) )+ otherlv_6= '}' ) ;
|
|
public final EObject ruleObjet() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
Token otherlv_0=null;
|
|
Token otherlv_2=null;
|
|
Token lv_taille_3_0=null;
|
|
Token otherlv_6=null;
|
|
AntlrDatatypeRuleToken lv_nom_1_0 = null;
|
|
|
|
EObject lv_visible_4_0 = null;
|
|
|
|
EObject lv_descriptions_5_0 = null;
|
|
|
|
|
|
|
|
enterRule();
|
|
|
|
try {
|
|
// InternalGame.g:791:2: ( (otherlv_0= 'Objet' ( (lv_nom_1_0= ruleNom ) ) otherlv_2= '{' ( (lv_taille_3_0= RULE_INT ) ) ( (lv_visible_4_0= ruleCondition ) ) ( (lv_descriptions_5_0= ruleDescription ) )+ otherlv_6= '}' ) )
|
|
// InternalGame.g:792:2: (otherlv_0= 'Objet' ( (lv_nom_1_0= ruleNom ) ) otherlv_2= '{' ( (lv_taille_3_0= RULE_INT ) ) ( (lv_visible_4_0= ruleCondition ) ) ( (lv_descriptions_5_0= ruleDescription ) )+ otherlv_6= '}' )
|
|
{
|
|
// InternalGame.g:792:2: (otherlv_0= 'Objet' ( (lv_nom_1_0= ruleNom ) ) otherlv_2= '{' ( (lv_taille_3_0= RULE_INT ) ) ( (lv_visible_4_0= ruleCondition ) ) ( (lv_descriptions_5_0= ruleDescription ) )+ otherlv_6= '}' )
|
|
// InternalGame.g:793:3: otherlv_0= 'Objet' ( (lv_nom_1_0= ruleNom ) ) otherlv_2= '{' ( (lv_taille_3_0= RULE_INT ) ) ( (lv_visible_4_0= ruleCondition ) ) ( (lv_descriptions_5_0= ruleDescription ) )+ otherlv_6= '}'
|
|
{
|
|
otherlv_0=(Token)match(input,24,FOLLOW_19);
|
|
|
|
newLeafNode(otherlv_0, grammarAccess.getObjetAccess().getObjetKeyword_0());
|
|
|
|
// InternalGame.g:797:3: ( (lv_nom_1_0= ruleNom ) )
|
|
// InternalGame.g:798:4: (lv_nom_1_0= ruleNom )
|
|
{
|
|
// InternalGame.g:798:4: (lv_nom_1_0= ruleNom )
|
|
// InternalGame.g:799:5: lv_nom_1_0= ruleNom
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getObjetAccess().getNomNomParserRuleCall_1_0());
|
|
|
|
pushFollow(FOLLOW_3);
|
|
lv_nom_1_0=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getObjetRule());
|
|
}
|
|
set(
|
|
current,
|
|
"nom",
|
|
lv_nom_1_0,
|
|
"xtext.Game.Nom");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
otherlv_2=(Token)match(input,12,FOLLOW_12);
|
|
|
|
newLeafNode(otherlv_2, grammarAccess.getObjetAccess().getLeftCurlyBracketKeyword_2());
|
|
|
|
// InternalGame.g:820:3: ( (lv_taille_3_0= RULE_INT ) )
|
|
// InternalGame.g:821:4: (lv_taille_3_0= RULE_INT )
|
|
{
|
|
// InternalGame.g:821:4: (lv_taille_3_0= RULE_INT )
|
|
// InternalGame.g:822:5: lv_taille_3_0= RULE_INT
|
|
{
|
|
lv_taille_3_0=(Token)match(input,RULE_INT,FOLLOW_20);
|
|
|
|
newLeafNode(lv_taille_3_0, grammarAccess.getObjetAccess().getTailleINTTerminalRuleCall_3_0());
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElement(grammarAccess.getObjetRule());
|
|
}
|
|
setWithLastConsumed(
|
|
current,
|
|
"taille",
|
|
lv_taille_3_0,
|
|
"org.eclipse.xtext.common.Terminals.INT");
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
// InternalGame.g:838:3: ( (lv_visible_4_0= ruleCondition ) )
|
|
// InternalGame.g:839:4: (lv_visible_4_0= ruleCondition )
|
|
{
|
|
// InternalGame.g:839:4: (lv_visible_4_0= ruleCondition )
|
|
// InternalGame.g:840:5: lv_visible_4_0= ruleCondition
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getObjetAccess().getVisibleConditionParserRuleCall_4_0());
|
|
|
|
pushFollow(FOLLOW_21);
|
|
lv_visible_4_0=ruleCondition();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getObjetRule());
|
|
}
|
|
set(
|
|
current,
|
|
"visible",
|
|
lv_visible_4_0,
|
|
"xtext.Game.Condition");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
// InternalGame.g:857:3: ( (lv_descriptions_5_0= ruleDescription ) )+
|
|
int cnt17=0;
|
|
loop17:
|
|
do {
|
|
int alt17=2;
|
|
int LA17_0 = input.LA(1);
|
|
|
|
if ( (LA17_0==30) ) {
|
|
alt17=1;
|
|
}
|
|
|
|
|
|
switch (alt17) {
|
|
case 1 :
|
|
// InternalGame.g:858:4: (lv_descriptions_5_0= ruleDescription )
|
|
{
|
|
// InternalGame.g:858:4: (lv_descriptions_5_0= ruleDescription )
|
|
// InternalGame.g:859:5: lv_descriptions_5_0= ruleDescription
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getObjetAccess().getDescriptionsDescriptionParserRuleCall_5_0());
|
|
|
|
pushFollow(FOLLOW_25);
|
|
lv_descriptions_5_0=ruleDescription();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getObjetRule());
|
|
}
|
|
add(
|
|
current,
|
|
"descriptions",
|
|
lv_descriptions_5_0,
|
|
"xtext.Game.Description");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
if ( cnt17 >= 1 ) break loop17;
|
|
EarlyExitException eee =
|
|
new EarlyExitException(17, input);
|
|
throw eee;
|
|
}
|
|
cnt17++;
|
|
} while (true);
|
|
|
|
otherlv_6=(Token)match(input,13,FOLLOW_2);
|
|
|
|
newLeafNode(otherlv_6, grammarAccess.getObjetAccess().getRightCurlyBracketKeyword_6());
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
leaveRule();
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "ruleObjet"
|
|
|
|
|
|
// $ANTLR start "entryRuleTransformation"
|
|
// InternalGame.g:884:1: entryRuleTransformation returns [EObject current=null] : iv_ruleTransformation= ruleTransformation EOF ;
|
|
public final EObject entryRuleTransformation() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
EObject iv_ruleTransformation = null;
|
|
|
|
|
|
try {
|
|
// InternalGame.g:884:55: (iv_ruleTransformation= ruleTransformation EOF )
|
|
// InternalGame.g:885:2: iv_ruleTransformation= ruleTransformation EOF
|
|
{
|
|
newCompositeNode(grammarAccess.getTransformationRule());
|
|
pushFollow(FOLLOW_1);
|
|
iv_ruleTransformation=ruleTransformation();
|
|
|
|
state._fsp--;
|
|
|
|
current =iv_ruleTransformation;
|
|
match(input,EOF,FOLLOW_2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "entryRuleTransformation"
|
|
|
|
|
|
// $ANTLR start "ruleTransformation"
|
|
// InternalGame.g:891:1: ruleTransformation returns [EObject current=null] : (otherlv_0= 'Transformation' otherlv_1= '{' ( (lv_condition_2_0= ruleCondition ) ) ( (lv_objetSource_3_0= ruleNom ) )+ otherlv_4= '->' ( (lv_objetsResultats_5_0= ruleNom ) )+ otherlv_6= '}' ) ;
|
|
public final EObject ruleTransformation() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
Token otherlv_0=null;
|
|
Token otherlv_1=null;
|
|
Token otherlv_4=null;
|
|
Token otherlv_6=null;
|
|
EObject lv_condition_2_0 = null;
|
|
|
|
AntlrDatatypeRuleToken lv_objetSource_3_0 = null;
|
|
|
|
AntlrDatatypeRuleToken lv_objetsResultats_5_0 = null;
|
|
|
|
|
|
|
|
enterRule();
|
|
|
|
try {
|
|
// InternalGame.g:897:2: ( (otherlv_0= 'Transformation' otherlv_1= '{' ( (lv_condition_2_0= ruleCondition ) ) ( (lv_objetSource_3_0= ruleNom ) )+ otherlv_4= '->' ( (lv_objetsResultats_5_0= ruleNom ) )+ otherlv_6= '}' ) )
|
|
// InternalGame.g:898:2: (otherlv_0= 'Transformation' otherlv_1= '{' ( (lv_condition_2_0= ruleCondition ) ) ( (lv_objetSource_3_0= ruleNom ) )+ otherlv_4= '->' ( (lv_objetsResultats_5_0= ruleNom ) )+ otherlv_6= '}' )
|
|
{
|
|
// InternalGame.g:898:2: (otherlv_0= 'Transformation' otherlv_1= '{' ( (lv_condition_2_0= ruleCondition ) ) ( (lv_objetSource_3_0= ruleNom ) )+ otherlv_4= '->' ( (lv_objetsResultats_5_0= ruleNom ) )+ otherlv_6= '}' )
|
|
// InternalGame.g:899:3: otherlv_0= 'Transformation' otherlv_1= '{' ( (lv_condition_2_0= ruleCondition ) ) ( (lv_objetSource_3_0= ruleNom ) )+ otherlv_4= '->' ( (lv_objetsResultats_5_0= ruleNom ) )+ otherlv_6= '}'
|
|
{
|
|
otherlv_0=(Token)match(input,25,FOLLOW_3);
|
|
|
|
newLeafNode(otherlv_0, grammarAccess.getTransformationAccess().getTransformationKeyword_0());
|
|
|
|
otherlv_1=(Token)match(input,12,FOLLOW_20);
|
|
|
|
newLeafNode(otherlv_1, grammarAccess.getTransformationAccess().getLeftCurlyBracketKeyword_1());
|
|
|
|
// InternalGame.g:907:3: ( (lv_condition_2_0= ruleCondition ) )
|
|
// InternalGame.g:908:4: (lv_condition_2_0= ruleCondition )
|
|
{
|
|
// InternalGame.g:908:4: (lv_condition_2_0= ruleCondition )
|
|
// InternalGame.g:909:5: lv_condition_2_0= ruleCondition
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getTransformationAccess().getConditionConditionParserRuleCall_2_0());
|
|
|
|
pushFollow(FOLLOW_19);
|
|
lv_condition_2_0=ruleCondition();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getTransformationRule());
|
|
}
|
|
set(
|
|
current,
|
|
"condition",
|
|
lv_condition_2_0,
|
|
"xtext.Game.Condition");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
// InternalGame.g:926:3: ( (lv_objetSource_3_0= ruleNom ) )+
|
|
int cnt18=0;
|
|
loop18:
|
|
do {
|
|
int alt18=2;
|
|
int LA18_0 = input.LA(1);
|
|
|
|
if ( (LA18_0==RULE_STRING) ) {
|
|
alt18=1;
|
|
}
|
|
|
|
|
|
switch (alt18) {
|
|
case 1 :
|
|
// InternalGame.g:927:4: (lv_objetSource_3_0= ruleNom )
|
|
{
|
|
// InternalGame.g:927:4: (lv_objetSource_3_0= ruleNom )
|
|
// InternalGame.g:928:5: lv_objetSource_3_0= ruleNom
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getTransformationAccess().getObjetSourceNomParserRuleCall_3_0());
|
|
|
|
pushFollow(FOLLOW_26);
|
|
lv_objetSource_3_0=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getTransformationRule());
|
|
}
|
|
add(
|
|
current,
|
|
"objetSource",
|
|
lv_objetSource_3_0,
|
|
"xtext.Game.Nom");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
if ( cnt18 >= 1 ) break loop18;
|
|
EarlyExitException eee =
|
|
new EarlyExitException(18, input);
|
|
throw eee;
|
|
}
|
|
cnt18++;
|
|
} while (true);
|
|
|
|
otherlv_4=(Token)match(input,23,FOLLOW_19);
|
|
|
|
newLeafNode(otherlv_4, grammarAccess.getTransformationAccess().getHyphenMinusGreaterThanSignKeyword_4());
|
|
|
|
// InternalGame.g:949:3: ( (lv_objetsResultats_5_0= ruleNom ) )+
|
|
int cnt19=0;
|
|
loop19:
|
|
do {
|
|
int alt19=2;
|
|
int LA19_0 = input.LA(1);
|
|
|
|
if ( (LA19_0==RULE_STRING) ) {
|
|
alt19=1;
|
|
}
|
|
|
|
|
|
switch (alt19) {
|
|
case 1 :
|
|
// InternalGame.g:950:4: (lv_objetsResultats_5_0= ruleNom )
|
|
{
|
|
// InternalGame.g:950:4: (lv_objetsResultats_5_0= ruleNom )
|
|
// InternalGame.g:951:5: lv_objetsResultats_5_0= ruleNom
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getTransformationAccess().getObjetsResultatsNomParserRuleCall_5_0());
|
|
|
|
pushFollow(FOLLOW_13);
|
|
lv_objetsResultats_5_0=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getTransformationRule());
|
|
}
|
|
add(
|
|
current,
|
|
"objetsResultats",
|
|
lv_objetsResultats_5_0,
|
|
"xtext.Game.Nom");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
if ( cnt19 >= 1 ) break loop19;
|
|
EarlyExitException eee =
|
|
new EarlyExitException(19, input);
|
|
throw eee;
|
|
}
|
|
cnt19++;
|
|
} while (true);
|
|
|
|
otherlv_6=(Token)match(input,13,FOLLOW_2);
|
|
|
|
newLeafNode(otherlv_6, grammarAccess.getTransformationAccess().getRightCurlyBracketKeyword_6());
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
leaveRule();
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "ruleTransformation"
|
|
|
|
|
|
// $ANTLR start "entryRuleConnaissance"
|
|
// InternalGame.g:976:1: entryRuleConnaissance returns [EObject current=null] : iv_ruleConnaissance= ruleConnaissance EOF ;
|
|
public final EObject entryRuleConnaissance() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
EObject iv_ruleConnaissance = null;
|
|
|
|
|
|
try {
|
|
// InternalGame.g:976:53: (iv_ruleConnaissance= ruleConnaissance EOF )
|
|
// InternalGame.g:977:2: iv_ruleConnaissance= ruleConnaissance EOF
|
|
{
|
|
newCompositeNode(grammarAccess.getConnaissanceRule());
|
|
pushFollow(FOLLOW_1);
|
|
iv_ruleConnaissance=ruleConnaissance();
|
|
|
|
state._fsp--;
|
|
|
|
current =iv_ruleConnaissance;
|
|
match(input,EOF,FOLLOW_2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "entryRuleConnaissance"
|
|
|
|
|
|
// $ANTLR start "ruleConnaissance"
|
|
// InternalGame.g:983:1: ruleConnaissance returns [EObject current=null] : (otherlv_0= 'Connaissance' ( (lv_nom_1_0= ruleNom ) ) otherlv_2= '{' ( (lv_visible_3_0= ruleCondition ) ) ( (lv_descriptions_4_0= ruleDescription ) )+ otherlv_5= '}' ) ;
|
|
public final EObject ruleConnaissance() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
Token otherlv_0=null;
|
|
Token otherlv_2=null;
|
|
Token otherlv_5=null;
|
|
AntlrDatatypeRuleToken lv_nom_1_0 = null;
|
|
|
|
EObject lv_visible_3_0 = null;
|
|
|
|
EObject lv_descriptions_4_0 = null;
|
|
|
|
|
|
|
|
enterRule();
|
|
|
|
try {
|
|
// InternalGame.g:989:2: ( (otherlv_0= 'Connaissance' ( (lv_nom_1_0= ruleNom ) ) otherlv_2= '{' ( (lv_visible_3_0= ruleCondition ) ) ( (lv_descriptions_4_0= ruleDescription ) )+ otherlv_5= '}' ) )
|
|
// InternalGame.g:990:2: (otherlv_0= 'Connaissance' ( (lv_nom_1_0= ruleNom ) ) otherlv_2= '{' ( (lv_visible_3_0= ruleCondition ) ) ( (lv_descriptions_4_0= ruleDescription ) )+ otherlv_5= '}' )
|
|
{
|
|
// InternalGame.g:990:2: (otherlv_0= 'Connaissance' ( (lv_nom_1_0= ruleNom ) ) otherlv_2= '{' ( (lv_visible_3_0= ruleCondition ) ) ( (lv_descriptions_4_0= ruleDescription ) )+ otherlv_5= '}' )
|
|
// InternalGame.g:991:3: otherlv_0= 'Connaissance' ( (lv_nom_1_0= ruleNom ) ) otherlv_2= '{' ( (lv_visible_3_0= ruleCondition ) ) ( (lv_descriptions_4_0= ruleDescription ) )+ otherlv_5= '}'
|
|
{
|
|
otherlv_0=(Token)match(input,26,FOLLOW_19);
|
|
|
|
newLeafNode(otherlv_0, grammarAccess.getConnaissanceAccess().getConnaissanceKeyword_0());
|
|
|
|
// InternalGame.g:995:3: ( (lv_nom_1_0= ruleNom ) )
|
|
// InternalGame.g:996:4: (lv_nom_1_0= ruleNom )
|
|
{
|
|
// InternalGame.g:996:4: (lv_nom_1_0= ruleNom )
|
|
// InternalGame.g:997:5: lv_nom_1_0= ruleNom
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getConnaissanceAccess().getNomNomParserRuleCall_1_0());
|
|
|
|
pushFollow(FOLLOW_3);
|
|
lv_nom_1_0=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getConnaissanceRule());
|
|
}
|
|
set(
|
|
current,
|
|
"nom",
|
|
lv_nom_1_0,
|
|
"xtext.Game.Nom");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
otherlv_2=(Token)match(input,12,FOLLOW_20);
|
|
|
|
newLeafNode(otherlv_2, grammarAccess.getConnaissanceAccess().getLeftCurlyBracketKeyword_2());
|
|
|
|
// InternalGame.g:1018:3: ( (lv_visible_3_0= ruleCondition ) )
|
|
// InternalGame.g:1019:4: (lv_visible_3_0= ruleCondition )
|
|
{
|
|
// InternalGame.g:1019:4: (lv_visible_3_0= ruleCondition )
|
|
// InternalGame.g:1020:5: lv_visible_3_0= ruleCondition
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getConnaissanceAccess().getVisibleConditionParserRuleCall_3_0());
|
|
|
|
pushFollow(FOLLOW_21);
|
|
lv_visible_3_0=ruleCondition();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getConnaissanceRule());
|
|
}
|
|
set(
|
|
current,
|
|
"visible",
|
|
lv_visible_3_0,
|
|
"xtext.Game.Condition");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
// InternalGame.g:1037:3: ( (lv_descriptions_4_0= ruleDescription ) )+
|
|
int cnt20=0;
|
|
loop20:
|
|
do {
|
|
int alt20=2;
|
|
int LA20_0 = input.LA(1);
|
|
|
|
if ( (LA20_0==30) ) {
|
|
alt20=1;
|
|
}
|
|
|
|
|
|
switch (alt20) {
|
|
case 1 :
|
|
// InternalGame.g:1038:4: (lv_descriptions_4_0= ruleDescription )
|
|
{
|
|
// InternalGame.g:1038:4: (lv_descriptions_4_0= ruleDescription )
|
|
// InternalGame.g:1039:5: lv_descriptions_4_0= ruleDescription
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getConnaissanceAccess().getDescriptionsDescriptionParserRuleCall_4_0());
|
|
|
|
pushFollow(FOLLOW_25);
|
|
lv_descriptions_4_0=ruleDescription();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getConnaissanceRule());
|
|
}
|
|
add(
|
|
current,
|
|
"descriptions",
|
|
lv_descriptions_4_0,
|
|
"xtext.Game.Description");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
if ( cnt20 >= 1 ) break loop20;
|
|
EarlyExitException eee =
|
|
new EarlyExitException(20, input);
|
|
throw eee;
|
|
}
|
|
cnt20++;
|
|
} while (true);
|
|
|
|
otherlv_5=(Token)match(input,13,FOLLOW_2);
|
|
|
|
newLeafNode(otherlv_5, grammarAccess.getConnaissanceAccess().getRightCurlyBracketKeyword_5());
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
leaveRule();
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "ruleConnaissance"
|
|
|
|
|
|
// $ANTLR start "entryRulePersonne"
|
|
// InternalGame.g:1064:1: entryRulePersonne returns [EObject current=null] : iv_rulePersonne= rulePersonne EOF ;
|
|
public final EObject entryRulePersonne() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
EObject iv_rulePersonne = null;
|
|
|
|
|
|
try {
|
|
// InternalGame.g:1064:49: (iv_rulePersonne= rulePersonne EOF )
|
|
// InternalGame.g:1065:2: iv_rulePersonne= rulePersonne EOF
|
|
{
|
|
newCompositeNode(grammarAccess.getPersonneRule());
|
|
pushFollow(FOLLOW_1);
|
|
iv_rulePersonne=rulePersonne();
|
|
|
|
state._fsp--;
|
|
|
|
current =iv_rulePersonne;
|
|
match(input,EOF,FOLLOW_2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "entryRulePersonne"
|
|
|
|
|
|
// $ANTLR start "rulePersonne"
|
|
// InternalGame.g:1071:1: rulePersonne returns [EObject current=null] : (otherlv_0= 'Personne' otherlv_1= '{' ( (lv_visible_2_0= ruleCondition ) ) ( (lv_obligatoire_3_0= ruleCondition ) ) ( (lv_interractions_4_0= ruleInterraction ) )+ otherlv_5= '}' ) ;
|
|
public final EObject rulePersonne() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
Token otherlv_0=null;
|
|
Token otherlv_1=null;
|
|
Token otherlv_5=null;
|
|
EObject lv_visible_2_0 = null;
|
|
|
|
EObject lv_obligatoire_3_0 = null;
|
|
|
|
EObject lv_interractions_4_0 = null;
|
|
|
|
|
|
|
|
enterRule();
|
|
|
|
try {
|
|
// InternalGame.g:1077:2: ( (otherlv_0= 'Personne' otherlv_1= '{' ( (lv_visible_2_0= ruleCondition ) ) ( (lv_obligatoire_3_0= ruleCondition ) ) ( (lv_interractions_4_0= ruleInterraction ) )+ otherlv_5= '}' ) )
|
|
// InternalGame.g:1078:2: (otherlv_0= 'Personne' otherlv_1= '{' ( (lv_visible_2_0= ruleCondition ) ) ( (lv_obligatoire_3_0= ruleCondition ) ) ( (lv_interractions_4_0= ruleInterraction ) )+ otherlv_5= '}' )
|
|
{
|
|
// InternalGame.g:1078:2: (otherlv_0= 'Personne' otherlv_1= '{' ( (lv_visible_2_0= ruleCondition ) ) ( (lv_obligatoire_3_0= ruleCondition ) ) ( (lv_interractions_4_0= ruleInterraction ) )+ otherlv_5= '}' )
|
|
// InternalGame.g:1079:3: otherlv_0= 'Personne' otherlv_1= '{' ( (lv_visible_2_0= ruleCondition ) ) ( (lv_obligatoire_3_0= ruleCondition ) ) ( (lv_interractions_4_0= ruleInterraction ) )+ otherlv_5= '}'
|
|
{
|
|
otherlv_0=(Token)match(input,27,FOLLOW_3);
|
|
|
|
newLeafNode(otherlv_0, grammarAccess.getPersonneAccess().getPersonneKeyword_0());
|
|
|
|
otherlv_1=(Token)match(input,12,FOLLOW_20);
|
|
|
|
newLeafNode(otherlv_1, grammarAccess.getPersonneAccess().getLeftCurlyBracketKeyword_1());
|
|
|
|
// InternalGame.g:1087:3: ( (lv_visible_2_0= ruleCondition ) )
|
|
// InternalGame.g:1088:4: (lv_visible_2_0= ruleCondition )
|
|
{
|
|
// InternalGame.g:1088:4: (lv_visible_2_0= ruleCondition )
|
|
// InternalGame.g:1089:5: lv_visible_2_0= ruleCondition
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getPersonneAccess().getVisibleConditionParserRuleCall_2_0());
|
|
|
|
pushFollow(FOLLOW_20);
|
|
lv_visible_2_0=ruleCondition();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getPersonneRule());
|
|
}
|
|
set(
|
|
current,
|
|
"visible",
|
|
lv_visible_2_0,
|
|
"xtext.Game.Condition");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
// InternalGame.g:1106:3: ( (lv_obligatoire_3_0= ruleCondition ) )
|
|
// InternalGame.g:1107:4: (lv_obligatoire_3_0= ruleCondition )
|
|
{
|
|
// InternalGame.g:1107:4: (lv_obligatoire_3_0= ruleCondition )
|
|
// InternalGame.g:1108:5: lv_obligatoire_3_0= ruleCondition
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getPersonneAccess().getObligatoireConditionParserRuleCall_3_0());
|
|
|
|
pushFollow(FOLLOW_27);
|
|
lv_obligatoire_3_0=ruleCondition();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getPersonneRule());
|
|
}
|
|
set(
|
|
current,
|
|
"obligatoire",
|
|
lv_obligatoire_3_0,
|
|
"xtext.Game.Condition");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
// InternalGame.g:1125:3: ( (lv_interractions_4_0= ruleInterraction ) )+
|
|
int cnt21=0;
|
|
loop21:
|
|
do {
|
|
int alt21=2;
|
|
int LA21_0 = input.LA(1);
|
|
|
|
if ( (LA21_0==28) ) {
|
|
alt21=1;
|
|
}
|
|
|
|
|
|
switch (alt21) {
|
|
case 1 :
|
|
// InternalGame.g:1126:4: (lv_interractions_4_0= ruleInterraction )
|
|
{
|
|
// InternalGame.g:1126:4: (lv_interractions_4_0= ruleInterraction )
|
|
// InternalGame.g:1127:5: lv_interractions_4_0= ruleInterraction
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getPersonneAccess().getInterractionsInterractionParserRuleCall_4_0());
|
|
|
|
pushFollow(FOLLOW_28);
|
|
lv_interractions_4_0=ruleInterraction();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getPersonneRule());
|
|
}
|
|
add(
|
|
current,
|
|
"interractions",
|
|
lv_interractions_4_0,
|
|
"xtext.Game.Interraction");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
if ( cnt21 >= 1 ) break loop21;
|
|
EarlyExitException eee =
|
|
new EarlyExitException(21, input);
|
|
throw eee;
|
|
}
|
|
cnt21++;
|
|
} while (true);
|
|
|
|
otherlv_5=(Token)match(input,13,FOLLOW_2);
|
|
|
|
newLeafNode(otherlv_5, grammarAccess.getPersonneAccess().getRightCurlyBracketKeyword_5());
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
leaveRule();
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "rulePersonne"
|
|
|
|
|
|
// $ANTLR start "entryRuleInterraction"
|
|
// InternalGame.g:1152:1: entryRuleInterraction returns [EObject current=null] : iv_ruleInterraction= ruleInterraction EOF ;
|
|
public final EObject entryRuleInterraction() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
EObject iv_ruleInterraction = null;
|
|
|
|
|
|
try {
|
|
// InternalGame.g:1152:53: (iv_ruleInterraction= ruleInterraction EOF )
|
|
// InternalGame.g:1153:2: iv_ruleInterraction= ruleInterraction EOF
|
|
{
|
|
newCompositeNode(grammarAccess.getInterractionRule());
|
|
pushFollow(FOLLOW_1);
|
|
iv_ruleInterraction=ruleInterraction();
|
|
|
|
state._fsp--;
|
|
|
|
current =iv_ruleInterraction;
|
|
match(input,EOF,FOLLOW_2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "entryRuleInterraction"
|
|
|
|
|
|
// $ANTLR start "ruleInterraction"
|
|
// InternalGame.g:1159:1: ruleInterraction returns [EObject current=null] : (otherlv_0= 'Interraction' otherlv_1= '{' ( (lv_actions_2_0= ruleAction ) )+ ( (lv_connaissances_3_0= ruleNom ) )* ( (lv_objets_4_0= ruleNom ) )* ( (lv_visible_5_0= ruleCondition ) ) otherlv_6= '}' ) ;
|
|
public final EObject ruleInterraction() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
Token otherlv_0=null;
|
|
Token otherlv_1=null;
|
|
Token otherlv_6=null;
|
|
EObject lv_actions_2_0 = null;
|
|
|
|
AntlrDatatypeRuleToken lv_connaissances_3_0 = null;
|
|
|
|
AntlrDatatypeRuleToken lv_objets_4_0 = null;
|
|
|
|
EObject lv_visible_5_0 = null;
|
|
|
|
|
|
|
|
enterRule();
|
|
|
|
try {
|
|
// InternalGame.g:1165:2: ( (otherlv_0= 'Interraction' otherlv_1= '{' ( (lv_actions_2_0= ruleAction ) )+ ( (lv_connaissances_3_0= ruleNom ) )* ( (lv_objets_4_0= ruleNom ) )* ( (lv_visible_5_0= ruleCondition ) ) otherlv_6= '}' ) )
|
|
// InternalGame.g:1166:2: (otherlv_0= 'Interraction' otherlv_1= '{' ( (lv_actions_2_0= ruleAction ) )+ ( (lv_connaissances_3_0= ruleNom ) )* ( (lv_objets_4_0= ruleNom ) )* ( (lv_visible_5_0= ruleCondition ) ) otherlv_6= '}' )
|
|
{
|
|
// InternalGame.g:1166:2: (otherlv_0= 'Interraction' otherlv_1= '{' ( (lv_actions_2_0= ruleAction ) )+ ( (lv_connaissances_3_0= ruleNom ) )* ( (lv_objets_4_0= ruleNom ) )* ( (lv_visible_5_0= ruleCondition ) ) otherlv_6= '}' )
|
|
// InternalGame.g:1167:3: otherlv_0= 'Interraction' otherlv_1= '{' ( (lv_actions_2_0= ruleAction ) )+ ( (lv_connaissances_3_0= ruleNom ) )* ( (lv_objets_4_0= ruleNom ) )* ( (lv_visible_5_0= ruleCondition ) ) otherlv_6= '}'
|
|
{
|
|
otherlv_0=(Token)match(input,28,FOLLOW_3);
|
|
|
|
newLeafNode(otherlv_0, grammarAccess.getInterractionAccess().getInterractionKeyword_0());
|
|
|
|
otherlv_1=(Token)match(input,12,FOLLOW_29);
|
|
|
|
newLeafNode(otherlv_1, grammarAccess.getInterractionAccess().getLeftCurlyBracketKeyword_1());
|
|
|
|
// InternalGame.g:1175:3: ( (lv_actions_2_0= ruleAction ) )+
|
|
int cnt22=0;
|
|
loop22:
|
|
do {
|
|
int alt22=2;
|
|
int LA22_0 = input.LA(1);
|
|
|
|
if ( (LA22_0==29) ) {
|
|
alt22=1;
|
|
}
|
|
|
|
|
|
switch (alt22) {
|
|
case 1 :
|
|
// InternalGame.g:1176:4: (lv_actions_2_0= ruleAction )
|
|
{
|
|
// InternalGame.g:1176:4: (lv_actions_2_0= ruleAction )
|
|
// InternalGame.g:1177:5: lv_actions_2_0= ruleAction
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getInterractionAccess().getActionsActionParserRuleCall_2_0());
|
|
|
|
pushFollow(FOLLOW_30);
|
|
lv_actions_2_0=ruleAction();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getInterractionRule());
|
|
}
|
|
add(
|
|
current,
|
|
"actions",
|
|
lv_actions_2_0,
|
|
"xtext.Game.Action");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
if ( cnt22 >= 1 ) break loop22;
|
|
EarlyExitException eee =
|
|
new EarlyExitException(22, input);
|
|
throw eee;
|
|
}
|
|
cnt22++;
|
|
} while (true);
|
|
|
|
// InternalGame.g:1194:3: ( (lv_connaissances_3_0= ruleNom ) )*
|
|
loop23:
|
|
do {
|
|
int alt23=2;
|
|
int LA23_0 = input.LA(1);
|
|
|
|
if ( (LA23_0==RULE_STRING) ) {
|
|
alt23=1;
|
|
}
|
|
|
|
|
|
switch (alt23) {
|
|
case 1 :
|
|
// InternalGame.g:1195:4: (lv_connaissances_3_0= ruleNom )
|
|
{
|
|
// InternalGame.g:1195:4: (lv_connaissances_3_0= ruleNom )
|
|
// InternalGame.g:1196:5: lv_connaissances_3_0= ruleNom
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getInterractionAccess().getConnaissancesNomParserRuleCall_3_0());
|
|
|
|
pushFollow(FOLLOW_20);
|
|
lv_connaissances_3_0=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getInterractionRule());
|
|
}
|
|
add(
|
|
current,
|
|
"connaissances",
|
|
lv_connaissances_3_0,
|
|
"xtext.Game.Nom");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
break loop23;
|
|
}
|
|
} while (true);
|
|
|
|
// InternalGame.g:1213:3: ( (lv_objets_4_0= ruleNom ) )*
|
|
loop24:
|
|
do {
|
|
int alt24=2;
|
|
int LA24_0 = input.LA(1);
|
|
|
|
if ( (LA24_0==RULE_STRING) ) {
|
|
alt24=1;
|
|
}
|
|
|
|
|
|
switch (alt24) {
|
|
case 1 :
|
|
// InternalGame.g:1214:4: (lv_objets_4_0= ruleNom )
|
|
{
|
|
// InternalGame.g:1214:4: (lv_objets_4_0= ruleNom )
|
|
// InternalGame.g:1215:5: lv_objets_4_0= ruleNom
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getInterractionAccess().getObjetsNomParserRuleCall_4_0());
|
|
|
|
pushFollow(FOLLOW_20);
|
|
lv_objets_4_0=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getInterractionRule());
|
|
}
|
|
add(
|
|
current,
|
|
"objets",
|
|
lv_objets_4_0,
|
|
"xtext.Game.Nom");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
break loop24;
|
|
}
|
|
} while (true);
|
|
|
|
// InternalGame.g:1232:3: ( (lv_visible_5_0= ruleCondition ) )
|
|
// InternalGame.g:1233:4: (lv_visible_5_0= ruleCondition )
|
|
{
|
|
// InternalGame.g:1233:4: (lv_visible_5_0= ruleCondition )
|
|
// InternalGame.g:1234:5: lv_visible_5_0= ruleCondition
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getInterractionAccess().getVisibleConditionParserRuleCall_5_0());
|
|
|
|
pushFollow(FOLLOW_23);
|
|
lv_visible_5_0=ruleCondition();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getInterractionRule());
|
|
}
|
|
set(
|
|
current,
|
|
"visible",
|
|
lv_visible_5_0,
|
|
"xtext.Game.Condition");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
otherlv_6=(Token)match(input,13,FOLLOW_2);
|
|
|
|
newLeafNode(otherlv_6, grammarAccess.getInterractionAccess().getRightCurlyBracketKeyword_6());
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
leaveRule();
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "ruleInterraction"
|
|
|
|
|
|
// $ANTLR start "entryRuleAction"
|
|
// InternalGame.g:1259:1: entryRuleAction returns [EObject current=null] : iv_ruleAction= ruleAction EOF ;
|
|
public final EObject entryRuleAction() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
EObject iv_ruleAction = null;
|
|
|
|
|
|
try {
|
|
// InternalGame.g:1259:47: (iv_ruleAction= ruleAction EOF )
|
|
// InternalGame.g:1260:2: iv_ruleAction= ruleAction EOF
|
|
{
|
|
newCompositeNode(grammarAccess.getActionRule());
|
|
pushFollow(FOLLOW_1);
|
|
iv_ruleAction=ruleAction();
|
|
|
|
state._fsp--;
|
|
|
|
current =iv_ruleAction;
|
|
match(input,EOF,FOLLOW_2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "entryRuleAction"
|
|
|
|
|
|
// $ANTLR start "ruleAction"
|
|
// InternalGame.g:1266:1: ruleAction returns [EObject current=null] : (otherlv_0= 'Action' otherlv_1= '{' ( (lv_connaissances_2_0= ruleNom ) )* ( (lv_objets_3_0= ruleNom ) )* ( (lv_objetsConso_4_0= ruleNom ) )* ( (lv_visible_5_0= ruleCondition ) ) ( (lv_finInterraction_6_0= ruleCondition ) ) otherlv_7= '}' ) ;
|
|
public final EObject ruleAction() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
Token otherlv_0=null;
|
|
Token otherlv_1=null;
|
|
Token otherlv_7=null;
|
|
AntlrDatatypeRuleToken lv_connaissances_2_0 = null;
|
|
|
|
AntlrDatatypeRuleToken lv_objets_3_0 = null;
|
|
|
|
AntlrDatatypeRuleToken lv_objetsConso_4_0 = null;
|
|
|
|
EObject lv_visible_5_0 = null;
|
|
|
|
EObject lv_finInterraction_6_0 = null;
|
|
|
|
|
|
|
|
enterRule();
|
|
|
|
try {
|
|
// InternalGame.g:1272:2: ( (otherlv_0= 'Action' otherlv_1= '{' ( (lv_connaissances_2_0= ruleNom ) )* ( (lv_objets_3_0= ruleNom ) )* ( (lv_objetsConso_4_0= ruleNom ) )* ( (lv_visible_5_0= ruleCondition ) ) ( (lv_finInterraction_6_0= ruleCondition ) ) otherlv_7= '}' ) )
|
|
// InternalGame.g:1273:2: (otherlv_0= 'Action' otherlv_1= '{' ( (lv_connaissances_2_0= ruleNom ) )* ( (lv_objets_3_0= ruleNom ) )* ( (lv_objetsConso_4_0= ruleNom ) )* ( (lv_visible_5_0= ruleCondition ) ) ( (lv_finInterraction_6_0= ruleCondition ) ) otherlv_7= '}' )
|
|
{
|
|
// InternalGame.g:1273:2: (otherlv_0= 'Action' otherlv_1= '{' ( (lv_connaissances_2_0= ruleNom ) )* ( (lv_objets_3_0= ruleNom ) )* ( (lv_objetsConso_4_0= ruleNom ) )* ( (lv_visible_5_0= ruleCondition ) ) ( (lv_finInterraction_6_0= ruleCondition ) ) otherlv_7= '}' )
|
|
// InternalGame.g:1274:3: otherlv_0= 'Action' otherlv_1= '{' ( (lv_connaissances_2_0= ruleNom ) )* ( (lv_objets_3_0= ruleNom ) )* ( (lv_objetsConso_4_0= ruleNom ) )* ( (lv_visible_5_0= ruleCondition ) ) ( (lv_finInterraction_6_0= ruleCondition ) ) otherlv_7= '}'
|
|
{
|
|
otherlv_0=(Token)match(input,29,FOLLOW_3);
|
|
|
|
newLeafNode(otherlv_0, grammarAccess.getActionAccess().getActionKeyword_0());
|
|
|
|
otherlv_1=(Token)match(input,12,FOLLOW_20);
|
|
|
|
newLeafNode(otherlv_1, grammarAccess.getActionAccess().getLeftCurlyBracketKeyword_1());
|
|
|
|
// InternalGame.g:1282:3: ( (lv_connaissances_2_0= ruleNom ) )*
|
|
loop25:
|
|
do {
|
|
int alt25=2;
|
|
int LA25_0 = input.LA(1);
|
|
|
|
if ( (LA25_0==RULE_STRING) ) {
|
|
alt25=1;
|
|
}
|
|
|
|
|
|
switch (alt25) {
|
|
case 1 :
|
|
// InternalGame.g:1283:4: (lv_connaissances_2_0= ruleNom )
|
|
{
|
|
// InternalGame.g:1283:4: (lv_connaissances_2_0= ruleNom )
|
|
// InternalGame.g:1284:5: lv_connaissances_2_0= ruleNom
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getActionAccess().getConnaissancesNomParserRuleCall_2_0());
|
|
|
|
pushFollow(FOLLOW_20);
|
|
lv_connaissances_2_0=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getActionRule());
|
|
}
|
|
add(
|
|
current,
|
|
"connaissances",
|
|
lv_connaissances_2_0,
|
|
"xtext.Game.Nom");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
break loop25;
|
|
}
|
|
} while (true);
|
|
|
|
// InternalGame.g:1301:3: ( (lv_objets_3_0= ruleNom ) )*
|
|
loop26:
|
|
do {
|
|
int alt26=2;
|
|
int LA26_0 = input.LA(1);
|
|
|
|
if ( (LA26_0==RULE_STRING) ) {
|
|
alt26=1;
|
|
}
|
|
|
|
|
|
switch (alt26) {
|
|
case 1 :
|
|
// InternalGame.g:1302:4: (lv_objets_3_0= ruleNom )
|
|
{
|
|
// InternalGame.g:1302:4: (lv_objets_3_0= ruleNom )
|
|
// InternalGame.g:1303:5: lv_objets_3_0= ruleNom
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getActionAccess().getObjetsNomParserRuleCall_3_0());
|
|
|
|
pushFollow(FOLLOW_20);
|
|
lv_objets_3_0=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getActionRule());
|
|
}
|
|
add(
|
|
current,
|
|
"objets",
|
|
lv_objets_3_0,
|
|
"xtext.Game.Nom");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
break loop26;
|
|
}
|
|
} while (true);
|
|
|
|
// InternalGame.g:1320:3: ( (lv_objetsConso_4_0= ruleNom ) )*
|
|
loop27:
|
|
do {
|
|
int alt27=2;
|
|
int LA27_0 = input.LA(1);
|
|
|
|
if ( (LA27_0==RULE_STRING) ) {
|
|
alt27=1;
|
|
}
|
|
|
|
|
|
switch (alt27) {
|
|
case 1 :
|
|
// InternalGame.g:1321:4: (lv_objetsConso_4_0= ruleNom )
|
|
{
|
|
// InternalGame.g:1321:4: (lv_objetsConso_4_0= ruleNom )
|
|
// InternalGame.g:1322:5: lv_objetsConso_4_0= ruleNom
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getActionAccess().getObjetsConsoNomParserRuleCall_4_0());
|
|
|
|
pushFollow(FOLLOW_20);
|
|
lv_objetsConso_4_0=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getActionRule());
|
|
}
|
|
add(
|
|
current,
|
|
"objetsConso",
|
|
lv_objetsConso_4_0,
|
|
"xtext.Game.Nom");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
break loop27;
|
|
}
|
|
} while (true);
|
|
|
|
// InternalGame.g:1339:3: ( (lv_visible_5_0= ruleCondition ) )
|
|
// InternalGame.g:1340:4: (lv_visible_5_0= ruleCondition )
|
|
{
|
|
// InternalGame.g:1340:4: (lv_visible_5_0= ruleCondition )
|
|
// InternalGame.g:1341:5: lv_visible_5_0= ruleCondition
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getActionAccess().getVisibleConditionParserRuleCall_5_0());
|
|
|
|
pushFollow(FOLLOW_20);
|
|
lv_visible_5_0=ruleCondition();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getActionRule());
|
|
}
|
|
set(
|
|
current,
|
|
"visible",
|
|
lv_visible_5_0,
|
|
"xtext.Game.Condition");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
// InternalGame.g:1358:3: ( (lv_finInterraction_6_0= ruleCondition ) )
|
|
// InternalGame.g:1359:4: (lv_finInterraction_6_0= ruleCondition )
|
|
{
|
|
// InternalGame.g:1359:4: (lv_finInterraction_6_0= ruleCondition )
|
|
// InternalGame.g:1360:5: lv_finInterraction_6_0= ruleCondition
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getActionAccess().getFinInterractionConditionParserRuleCall_6_0());
|
|
|
|
pushFollow(FOLLOW_23);
|
|
lv_finInterraction_6_0=ruleCondition();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getActionRule());
|
|
}
|
|
set(
|
|
current,
|
|
"finInterraction",
|
|
lv_finInterraction_6_0,
|
|
"xtext.Game.Condition");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
otherlv_7=(Token)match(input,13,FOLLOW_2);
|
|
|
|
newLeafNode(otherlv_7, grammarAccess.getActionAccess().getRightCurlyBracketKeyword_7());
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
leaveRule();
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "ruleAction"
|
|
|
|
|
|
// $ANTLR start "entryRuleDescription"
|
|
// InternalGame.g:1385:1: entryRuleDescription returns [EObject current=null] : iv_ruleDescription= ruleDescription EOF ;
|
|
public final EObject entryRuleDescription() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
EObject iv_ruleDescription = null;
|
|
|
|
|
|
try {
|
|
// InternalGame.g:1385:52: (iv_ruleDescription= ruleDescription EOF )
|
|
// InternalGame.g:1386:2: iv_ruleDescription= ruleDescription EOF
|
|
{
|
|
newCompositeNode(grammarAccess.getDescriptionRule());
|
|
pushFollow(FOLLOW_1);
|
|
iv_ruleDescription=ruleDescription();
|
|
|
|
state._fsp--;
|
|
|
|
current =iv_ruleDescription;
|
|
match(input,EOF,FOLLOW_2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "entryRuleDescription"
|
|
|
|
|
|
// $ANTLR start "ruleDescription"
|
|
// InternalGame.g:1392:1: ruleDescription returns [EObject current=null] : (otherlv_0= 'Description' otherlv_1= '{' ( (lv_texte_2_0= RULE_STRING ) ) ( (lv_condition_3_0= ruleCondition ) ) otherlv_4= '}' ) ;
|
|
public final EObject ruleDescription() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
Token otherlv_0=null;
|
|
Token otherlv_1=null;
|
|
Token lv_texte_2_0=null;
|
|
Token otherlv_4=null;
|
|
EObject lv_condition_3_0 = null;
|
|
|
|
|
|
|
|
enterRule();
|
|
|
|
try {
|
|
// InternalGame.g:1398:2: ( (otherlv_0= 'Description' otherlv_1= '{' ( (lv_texte_2_0= RULE_STRING ) ) ( (lv_condition_3_0= ruleCondition ) ) otherlv_4= '}' ) )
|
|
// InternalGame.g:1399:2: (otherlv_0= 'Description' otherlv_1= '{' ( (lv_texte_2_0= RULE_STRING ) ) ( (lv_condition_3_0= ruleCondition ) ) otherlv_4= '}' )
|
|
{
|
|
// InternalGame.g:1399:2: (otherlv_0= 'Description' otherlv_1= '{' ( (lv_texte_2_0= RULE_STRING ) ) ( (lv_condition_3_0= ruleCondition ) ) otherlv_4= '}' )
|
|
// InternalGame.g:1400:3: otherlv_0= 'Description' otherlv_1= '{' ( (lv_texte_2_0= RULE_STRING ) ) ( (lv_condition_3_0= ruleCondition ) ) otherlv_4= '}'
|
|
{
|
|
otherlv_0=(Token)match(input,30,FOLLOW_3);
|
|
|
|
newLeafNode(otherlv_0, grammarAccess.getDescriptionAccess().getDescriptionKeyword_0());
|
|
|
|
otherlv_1=(Token)match(input,12,FOLLOW_19);
|
|
|
|
newLeafNode(otherlv_1, grammarAccess.getDescriptionAccess().getLeftCurlyBracketKeyword_1());
|
|
|
|
// InternalGame.g:1408:3: ( (lv_texte_2_0= RULE_STRING ) )
|
|
// InternalGame.g:1409:4: (lv_texte_2_0= RULE_STRING )
|
|
{
|
|
// InternalGame.g:1409:4: (lv_texte_2_0= RULE_STRING )
|
|
// InternalGame.g:1410:5: lv_texte_2_0= RULE_STRING
|
|
{
|
|
lv_texte_2_0=(Token)match(input,RULE_STRING,FOLLOW_20);
|
|
|
|
newLeafNode(lv_texte_2_0, grammarAccess.getDescriptionAccess().getTexteSTRINGTerminalRuleCall_2_0());
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElement(grammarAccess.getDescriptionRule());
|
|
}
|
|
setWithLastConsumed(
|
|
current,
|
|
"texte",
|
|
lv_texte_2_0,
|
|
"org.eclipse.xtext.common.Terminals.STRING");
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
// InternalGame.g:1426:3: ( (lv_condition_3_0= ruleCondition ) )
|
|
// InternalGame.g:1427:4: (lv_condition_3_0= ruleCondition )
|
|
{
|
|
// InternalGame.g:1427:4: (lv_condition_3_0= ruleCondition )
|
|
// InternalGame.g:1428:5: lv_condition_3_0= ruleCondition
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getDescriptionAccess().getConditionConditionParserRuleCall_3_0());
|
|
|
|
pushFollow(FOLLOW_23);
|
|
lv_condition_3_0=ruleCondition();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getDescriptionRule());
|
|
}
|
|
set(
|
|
current,
|
|
"condition",
|
|
lv_condition_3_0,
|
|
"xtext.Game.Condition");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
otherlv_4=(Token)match(input,13,FOLLOW_2);
|
|
|
|
newLeafNode(otherlv_4, grammarAccess.getDescriptionAccess().getRightCurlyBracketKeyword_4());
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
leaveRule();
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "ruleDescription"
|
|
|
|
|
|
// $ANTLR start "entryRuleCondition"
|
|
// InternalGame.g:1453:1: entryRuleCondition returns [EObject current=null] : iv_ruleCondition= ruleCondition EOF ;
|
|
public final EObject entryRuleCondition() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
EObject iv_ruleCondition = null;
|
|
|
|
|
|
try {
|
|
// InternalGame.g:1453:50: (iv_ruleCondition= ruleCondition EOF )
|
|
// InternalGame.g:1454:2: iv_ruleCondition= ruleCondition EOF
|
|
{
|
|
newCompositeNode(grammarAccess.getConditionRule());
|
|
pushFollow(FOLLOW_1);
|
|
iv_ruleCondition=ruleCondition();
|
|
|
|
state._fsp--;
|
|
|
|
current =iv_ruleCondition;
|
|
match(input,EOF,FOLLOW_2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "entryRuleCondition"
|
|
|
|
|
|
// $ANTLR start "ruleCondition"
|
|
// InternalGame.g:1460:1: ruleCondition returns [EObject current=null] : (otherlv_0= 'Condition' otherlv_1= '{' ( (otherlv_2= RULE_ID ) ) (otherlv_3= '||' ( (otherlv_4= RULE_ID ) ) )* otherlv_5= '}' ) ;
|
|
public final EObject ruleCondition() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
Token otherlv_0=null;
|
|
Token otherlv_1=null;
|
|
Token otherlv_2=null;
|
|
Token otherlv_3=null;
|
|
Token otherlv_4=null;
|
|
Token otherlv_5=null;
|
|
|
|
|
|
enterRule();
|
|
|
|
try {
|
|
// InternalGame.g:1466:2: ( (otherlv_0= 'Condition' otherlv_1= '{' ( (otherlv_2= RULE_ID ) ) (otherlv_3= '||' ( (otherlv_4= RULE_ID ) ) )* otherlv_5= '}' ) )
|
|
// InternalGame.g:1467:2: (otherlv_0= 'Condition' otherlv_1= '{' ( (otherlv_2= RULE_ID ) ) (otherlv_3= '||' ( (otherlv_4= RULE_ID ) ) )* otherlv_5= '}' )
|
|
{
|
|
// InternalGame.g:1467:2: (otherlv_0= 'Condition' otherlv_1= '{' ( (otherlv_2= RULE_ID ) ) (otherlv_3= '||' ( (otherlv_4= RULE_ID ) ) )* otherlv_5= '}' )
|
|
// InternalGame.g:1468:3: otherlv_0= 'Condition' otherlv_1= '{' ( (otherlv_2= RULE_ID ) ) (otherlv_3= '||' ( (otherlv_4= RULE_ID ) ) )* otherlv_5= '}'
|
|
{
|
|
otherlv_0=(Token)match(input,31,FOLLOW_3);
|
|
|
|
newLeafNode(otherlv_0, grammarAccess.getConditionAccess().getConditionKeyword_0());
|
|
|
|
otherlv_1=(Token)match(input,12,FOLLOW_31);
|
|
|
|
newLeafNode(otherlv_1, grammarAccess.getConditionAccess().getLeftCurlyBracketKeyword_1());
|
|
|
|
// InternalGame.g:1476:3: ( (otherlv_2= RULE_ID ) )
|
|
// InternalGame.g:1477:4: (otherlv_2= RULE_ID )
|
|
{
|
|
// InternalGame.g:1477:4: (otherlv_2= RULE_ID )
|
|
// InternalGame.g:1478:5: otherlv_2= RULE_ID
|
|
{
|
|
|
|
if (current==null) {
|
|
current = createModelElement(grammarAccess.getConditionRule());
|
|
}
|
|
|
|
otherlv_2=(Token)match(input,RULE_ID,FOLLOW_32);
|
|
|
|
newLeafNode(otherlv_2, grammarAccess.getConditionAccess().getConditionConditionEtCrossReference_2_0());
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
// InternalGame.g:1489:3: (otherlv_3= '||' ( (otherlv_4= RULE_ID ) ) )*
|
|
loop28:
|
|
do {
|
|
int alt28=2;
|
|
int LA28_0 = input.LA(1);
|
|
|
|
if ( (LA28_0==32) ) {
|
|
alt28=1;
|
|
}
|
|
|
|
|
|
switch (alt28) {
|
|
case 1 :
|
|
// InternalGame.g:1490:4: otherlv_3= '||' ( (otherlv_4= RULE_ID ) )
|
|
{
|
|
otherlv_3=(Token)match(input,32,FOLLOW_31);
|
|
|
|
newLeafNode(otherlv_3, grammarAccess.getConditionAccess().getVerticalLineVerticalLineKeyword_3_0());
|
|
|
|
// InternalGame.g:1494:4: ( (otherlv_4= RULE_ID ) )
|
|
// InternalGame.g:1495:5: (otherlv_4= RULE_ID )
|
|
{
|
|
// InternalGame.g:1495:5: (otherlv_4= RULE_ID )
|
|
// InternalGame.g:1496:6: otherlv_4= RULE_ID
|
|
{
|
|
|
|
if (current==null) {
|
|
current = createModelElement(grammarAccess.getConditionRule());
|
|
}
|
|
|
|
otherlv_4=(Token)match(input,RULE_ID,FOLLOW_32);
|
|
|
|
newLeafNode(otherlv_4, grammarAccess.getConditionAccess().getConditionConditionEtCrossReference_3_1_0());
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
default :
|
|
break loop28;
|
|
}
|
|
} while (true);
|
|
|
|
otherlv_5=(Token)match(input,13,FOLLOW_2);
|
|
|
|
newLeafNode(otherlv_5, grammarAccess.getConditionAccess().getRightCurlyBracketKeyword_4());
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
leaveRule();
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "ruleCondition"
|
|
|
|
|
|
// $ANTLR start "entryRuleConditionConnaissance"
|
|
// InternalGame.g:1516:1: entryRuleConditionConnaissance returns [EObject current=null] : iv_ruleConditionConnaissance= ruleConditionConnaissance EOF ;
|
|
public final EObject entryRuleConditionConnaissance() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
EObject iv_ruleConditionConnaissance = null;
|
|
|
|
|
|
try {
|
|
// InternalGame.g:1516:62: (iv_ruleConditionConnaissance= ruleConditionConnaissance EOF )
|
|
// InternalGame.g:1517:2: iv_ruleConditionConnaissance= ruleConditionConnaissance EOF
|
|
{
|
|
newCompositeNode(grammarAccess.getConditionConnaissanceRule());
|
|
pushFollow(FOLLOW_1);
|
|
iv_ruleConditionConnaissance=ruleConditionConnaissance();
|
|
|
|
state._fsp--;
|
|
|
|
current =iv_ruleConditionConnaissance;
|
|
match(input,EOF,FOLLOW_2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "entryRuleConditionConnaissance"
|
|
|
|
|
|
// $ANTLR start "ruleConditionConnaissance"
|
|
// InternalGame.g:1523:1: ruleConditionConnaissance returns [EObject current=null] : ( (lv_connaissance_0_0= ruleNom ) ) ;
|
|
public final EObject ruleConditionConnaissance() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
AntlrDatatypeRuleToken lv_connaissance_0_0 = null;
|
|
|
|
|
|
|
|
enterRule();
|
|
|
|
try {
|
|
// InternalGame.g:1529:2: ( ( (lv_connaissance_0_0= ruleNom ) ) )
|
|
// InternalGame.g:1530:2: ( (lv_connaissance_0_0= ruleNom ) )
|
|
{
|
|
// InternalGame.g:1530:2: ( (lv_connaissance_0_0= ruleNom ) )
|
|
// InternalGame.g:1531:3: (lv_connaissance_0_0= ruleNom )
|
|
{
|
|
// InternalGame.g:1531:3: (lv_connaissance_0_0= ruleNom )
|
|
// InternalGame.g:1532:4: lv_connaissance_0_0= ruleNom
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getConditionConnaissanceAccess().getConnaissanceNomParserRuleCall_0());
|
|
|
|
pushFollow(FOLLOW_2);
|
|
lv_connaissance_0_0=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getConditionConnaissanceRule());
|
|
}
|
|
set(
|
|
current,
|
|
"connaissance",
|
|
lv_connaissance_0_0,
|
|
"xtext.Game.Nom");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
leaveRule();
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "ruleConditionConnaissance"
|
|
|
|
|
|
// $ANTLR start "entryRuleAntiConditionConnaissance"
|
|
// InternalGame.g:1552:1: entryRuleAntiConditionConnaissance returns [EObject current=null] : iv_ruleAntiConditionConnaissance= ruleAntiConditionConnaissance EOF ;
|
|
public final EObject entryRuleAntiConditionConnaissance() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
EObject iv_ruleAntiConditionConnaissance = null;
|
|
|
|
|
|
try {
|
|
// InternalGame.g:1552:66: (iv_ruleAntiConditionConnaissance= ruleAntiConditionConnaissance EOF )
|
|
// InternalGame.g:1553:2: iv_ruleAntiConditionConnaissance= ruleAntiConditionConnaissance EOF
|
|
{
|
|
newCompositeNode(grammarAccess.getAntiConditionConnaissanceRule());
|
|
pushFollow(FOLLOW_1);
|
|
iv_ruleAntiConditionConnaissance=ruleAntiConditionConnaissance();
|
|
|
|
state._fsp--;
|
|
|
|
current =iv_ruleAntiConditionConnaissance;
|
|
match(input,EOF,FOLLOW_2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "entryRuleAntiConditionConnaissance"
|
|
|
|
|
|
// $ANTLR start "ruleAntiConditionConnaissance"
|
|
// InternalGame.g:1559:1: ruleAntiConditionConnaissance returns [EObject current=null] : (otherlv_0= '!' ( (lv_connaissance_1_0= ruleNom ) ) ) ;
|
|
public final EObject ruleAntiConditionConnaissance() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
Token otherlv_0=null;
|
|
AntlrDatatypeRuleToken lv_connaissance_1_0 = null;
|
|
|
|
|
|
|
|
enterRule();
|
|
|
|
try {
|
|
// InternalGame.g:1565:2: ( (otherlv_0= '!' ( (lv_connaissance_1_0= ruleNom ) ) ) )
|
|
// InternalGame.g:1566:2: (otherlv_0= '!' ( (lv_connaissance_1_0= ruleNom ) ) )
|
|
{
|
|
// InternalGame.g:1566:2: (otherlv_0= '!' ( (lv_connaissance_1_0= ruleNom ) ) )
|
|
// InternalGame.g:1567:3: otherlv_0= '!' ( (lv_connaissance_1_0= ruleNom ) )
|
|
{
|
|
otherlv_0=(Token)match(input,33,FOLLOW_19);
|
|
|
|
newLeafNode(otherlv_0, grammarAccess.getAntiConditionConnaissanceAccess().getExclamationMarkKeyword_0());
|
|
|
|
// InternalGame.g:1571:3: ( (lv_connaissance_1_0= ruleNom ) )
|
|
// InternalGame.g:1572:4: (lv_connaissance_1_0= ruleNom )
|
|
{
|
|
// InternalGame.g:1572:4: (lv_connaissance_1_0= ruleNom )
|
|
// InternalGame.g:1573:5: lv_connaissance_1_0= ruleNom
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getAntiConditionConnaissanceAccess().getConnaissanceNomParserRuleCall_1_0());
|
|
|
|
pushFollow(FOLLOW_2);
|
|
lv_connaissance_1_0=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getAntiConditionConnaissanceRule());
|
|
}
|
|
set(
|
|
current,
|
|
"connaissance",
|
|
lv_connaissance_1_0,
|
|
"xtext.Game.Nom");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
leaveRule();
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "ruleAntiConditionConnaissance"
|
|
|
|
|
|
// $ANTLR start "entryRuleConditionObjet"
|
|
// InternalGame.g:1594:1: entryRuleConditionObjet returns [EObject current=null] : iv_ruleConditionObjet= ruleConditionObjet EOF ;
|
|
public final EObject entryRuleConditionObjet() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
EObject iv_ruleConditionObjet = null;
|
|
|
|
|
|
try {
|
|
// InternalGame.g:1594:55: (iv_ruleConditionObjet= ruleConditionObjet EOF )
|
|
// InternalGame.g:1595:2: iv_ruleConditionObjet= ruleConditionObjet EOF
|
|
{
|
|
newCompositeNode(grammarAccess.getConditionObjetRule());
|
|
pushFollow(FOLLOW_1);
|
|
iv_ruleConditionObjet=ruleConditionObjet();
|
|
|
|
state._fsp--;
|
|
|
|
current =iv_ruleConditionObjet;
|
|
match(input,EOF,FOLLOW_2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "entryRuleConditionObjet"
|
|
|
|
|
|
// $ANTLR start "ruleConditionObjet"
|
|
// InternalGame.g:1601:1: ruleConditionObjet returns [EObject current=null] : ( ( (lv_objet_0_0= RULE_STRING ) ) ( (lv_comparateur_1_0= ruleComparateur ) ) ( (lv_nombre_2_0= RULE_INT ) ) ) ;
|
|
public final EObject ruleConditionObjet() throws RecognitionException {
|
|
EObject current = null;
|
|
|
|
Token lv_objet_0_0=null;
|
|
Token lv_nombre_2_0=null;
|
|
AntlrDatatypeRuleToken lv_comparateur_1_0 = null;
|
|
|
|
|
|
|
|
enterRule();
|
|
|
|
try {
|
|
// InternalGame.g:1607:2: ( ( ( (lv_objet_0_0= RULE_STRING ) ) ( (lv_comparateur_1_0= ruleComparateur ) ) ( (lv_nombre_2_0= RULE_INT ) ) ) )
|
|
// InternalGame.g:1608:2: ( ( (lv_objet_0_0= RULE_STRING ) ) ( (lv_comparateur_1_0= ruleComparateur ) ) ( (lv_nombre_2_0= RULE_INT ) ) )
|
|
{
|
|
// InternalGame.g:1608:2: ( ( (lv_objet_0_0= RULE_STRING ) ) ( (lv_comparateur_1_0= ruleComparateur ) ) ( (lv_nombre_2_0= RULE_INT ) ) )
|
|
// InternalGame.g:1609:3: ( (lv_objet_0_0= RULE_STRING ) ) ( (lv_comparateur_1_0= ruleComparateur ) ) ( (lv_nombre_2_0= RULE_INT ) )
|
|
{
|
|
// InternalGame.g:1609:3: ( (lv_objet_0_0= RULE_STRING ) )
|
|
// InternalGame.g:1610:4: (lv_objet_0_0= RULE_STRING )
|
|
{
|
|
// InternalGame.g:1610:4: (lv_objet_0_0= RULE_STRING )
|
|
// InternalGame.g:1611:5: lv_objet_0_0= RULE_STRING
|
|
{
|
|
lv_objet_0_0=(Token)match(input,RULE_STRING,FOLLOW_33);
|
|
|
|
newLeafNode(lv_objet_0_0, grammarAccess.getConditionObjetAccess().getObjetSTRINGTerminalRuleCall_0_0());
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElement(grammarAccess.getConditionObjetRule());
|
|
}
|
|
setWithLastConsumed(
|
|
current,
|
|
"objet",
|
|
lv_objet_0_0,
|
|
"org.eclipse.xtext.common.Terminals.STRING");
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
// InternalGame.g:1627:3: ( (lv_comparateur_1_0= ruleComparateur ) )
|
|
// InternalGame.g:1628:4: (lv_comparateur_1_0= ruleComparateur )
|
|
{
|
|
// InternalGame.g:1628:4: (lv_comparateur_1_0= ruleComparateur )
|
|
// InternalGame.g:1629:5: lv_comparateur_1_0= ruleComparateur
|
|
{
|
|
|
|
newCompositeNode(grammarAccess.getConditionObjetAccess().getComparateurComparateurParserRuleCall_1_0());
|
|
|
|
pushFollow(FOLLOW_12);
|
|
lv_comparateur_1_0=ruleComparateur();
|
|
|
|
state._fsp--;
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElementForParent(grammarAccess.getConditionObjetRule());
|
|
}
|
|
set(
|
|
current,
|
|
"comparateur",
|
|
lv_comparateur_1_0,
|
|
"xtext.Game.Comparateur");
|
|
afterParserOrEnumRuleCall();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
// InternalGame.g:1646:3: ( (lv_nombre_2_0= RULE_INT ) )
|
|
// InternalGame.g:1647:4: (lv_nombre_2_0= RULE_INT )
|
|
{
|
|
// InternalGame.g:1647:4: (lv_nombre_2_0= RULE_INT )
|
|
// InternalGame.g:1648:5: lv_nombre_2_0= RULE_INT
|
|
{
|
|
lv_nombre_2_0=(Token)match(input,RULE_INT,FOLLOW_2);
|
|
|
|
newLeafNode(lv_nombre_2_0, grammarAccess.getConditionObjetAccess().getNombreINTTerminalRuleCall_2_0());
|
|
|
|
|
|
if (current==null) {
|
|
current = createModelElement(grammarAccess.getConditionObjetRule());
|
|
}
|
|
setWithLastConsumed(
|
|
current,
|
|
"nombre",
|
|
lv_nombre_2_0,
|
|
"org.eclipse.xtext.common.Terminals.INT");
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
leaveRule();
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "ruleConditionObjet"
|
|
|
|
|
|
// $ANTLR start "entryRuleComparateur"
|
|
// InternalGame.g:1668:1: entryRuleComparateur returns [String current=null] : iv_ruleComparateur= ruleComparateur EOF ;
|
|
public final String entryRuleComparateur() throws RecognitionException {
|
|
String current = null;
|
|
|
|
AntlrDatatypeRuleToken iv_ruleComparateur = null;
|
|
|
|
|
|
try {
|
|
// InternalGame.g:1668:51: (iv_ruleComparateur= ruleComparateur EOF )
|
|
// InternalGame.g:1669:2: iv_ruleComparateur= ruleComparateur EOF
|
|
{
|
|
newCompositeNode(grammarAccess.getComparateurRule());
|
|
pushFollow(FOLLOW_1);
|
|
iv_ruleComparateur=ruleComparateur();
|
|
|
|
state._fsp--;
|
|
|
|
current =iv_ruleComparateur.getText();
|
|
match(input,EOF,FOLLOW_2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "entryRuleComparateur"
|
|
|
|
|
|
// $ANTLR start "ruleComparateur"
|
|
// InternalGame.g:1675:1: ruleComparateur returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (kw= '<' | kw= '>' | kw= '=' | kw= '<=' | kw= '>=' ) ;
|
|
public final AntlrDatatypeRuleToken ruleComparateur() throws RecognitionException {
|
|
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
|
|
|
|
Token kw=null;
|
|
|
|
|
|
enterRule();
|
|
|
|
try {
|
|
// InternalGame.g:1681:2: ( (kw= '<' | kw= '>' | kw= '=' | kw= '<=' | kw= '>=' ) )
|
|
// InternalGame.g:1682:2: (kw= '<' | kw= '>' | kw= '=' | kw= '<=' | kw= '>=' )
|
|
{
|
|
// InternalGame.g:1682:2: (kw= '<' | kw= '>' | kw= '=' | kw= '<=' | kw= '>=' )
|
|
int alt29=5;
|
|
switch ( input.LA(1) ) {
|
|
case 34:
|
|
{
|
|
alt29=1;
|
|
}
|
|
break;
|
|
case 35:
|
|
{
|
|
alt29=2;
|
|
}
|
|
break;
|
|
case 16:
|
|
{
|
|
alt29=3;
|
|
}
|
|
break;
|
|
case 36:
|
|
{
|
|
alt29=4;
|
|
}
|
|
break;
|
|
case 37:
|
|
{
|
|
alt29=5;
|
|
}
|
|
break;
|
|
default:
|
|
NoViableAltException nvae =
|
|
new NoViableAltException("", 29, 0, input);
|
|
|
|
throw nvae;
|
|
}
|
|
|
|
switch (alt29) {
|
|
case 1 :
|
|
// InternalGame.g:1683:3: kw= '<'
|
|
{
|
|
kw=(Token)match(input,34,FOLLOW_2);
|
|
|
|
current.merge(kw);
|
|
newLeafNode(kw, grammarAccess.getComparateurAccess().getLessThanSignKeyword_0());
|
|
|
|
|
|
}
|
|
break;
|
|
case 2 :
|
|
// InternalGame.g:1689:3: kw= '>'
|
|
{
|
|
kw=(Token)match(input,35,FOLLOW_2);
|
|
|
|
current.merge(kw);
|
|
newLeafNode(kw, grammarAccess.getComparateurAccess().getGreaterThanSignKeyword_1());
|
|
|
|
|
|
}
|
|
break;
|
|
case 3 :
|
|
// InternalGame.g:1695:3: kw= '='
|
|
{
|
|
kw=(Token)match(input,16,FOLLOW_2);
|
|
|
|
current.merge(kw);
|
|
newLeafNode(kw, grammarAccess.getComparateurAccess().getEqualsSignKeyword_2());
|
|
|
|
|
|
}
|
|
break;
|
|
case 4 :
|
|
// InternalGame.g:1701:3: kw= '<='
|
|
{
|
|
kw=(Token)match(input,36,FOLLOW_2);
|
|
|
|
current.merge(kw);
|
|
newLeafNode(kw, grammarAccess.getComparateurAccess().getLessThanSignEqualsSignKeyword_3());
|
|
|
|
|
|
}
|
|
break;
|
|
case 5 :
|
|
// InternalGame.g:1707:3: kw= '>='
|
|
{
|
|
kw=(Token)match(input,37,FOLLOW_2);
|
|
|
|
current.merge(kw);
|
|
newLeafNode(kw, grammarAccess.getComparateurAccess().getGreaterThanSignEqualsSignKeyword_4());
|
|
|
|
|
|
}
|
|
break;
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
leaveRule();
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "ruleComparateur"
|
|
|
|
|
|
// $ANTLR start "entryRuleNom"
|
|
// InternalGame.g:1716:1: entryRuleNom returns [String current=null] : iv_ruleNom= ruleNom EOF ;
|
|
public final String entryRuleNom() throws RecognitionException {
|
|
String current = null;
|
|
|
|
AntlrDatatypeRuleToken iv_ruleNom = null;
|
|
|
|
|
|
try {
|
|
// InternalGame.g:1716:43: (iv_ruleNom= ruleNom EOF )
|
|
// InternalGame.g:1717:2: iv_ruleNom= ruleNom EOF
|
|
{
|
|
newCompositeNode(grammarAccess.getNomRule());
|
|
pushFollow(FOLLOW_1);
|
|
iv_ruleNom=ruleNom();
|
|
|
|
state._fsp--;
|
|
|
|
current =iv_ruleNom.getText();
|
|
match(input,EOF,FOLLOW_2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "entryRuleNom"
|
|
|
|
|
|
// $ANTLR start "ruleNom"
|
|
// InternalGame.g:1723:1: ruleNom returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_STRING_0= RULE_STRING ;
|
|
public final AntlrDatatypeRuleToken ruleNom() throws RecognitionException {
|
|
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
|
|
|
|
Token this_STRING_0=null;
|
|
|
|
|
|
enterRule();
|
|
|
|
try {
|
|
// InternalGame.g:1729:2: (this_STRING_0= RULE_STRING )
|
|
// InternalGame.g:1730:2: this_STRING_0= RULE_STRING
|
|
{
|
|
this_STRING_0=(Token)match(input,RULE_STRING,FOLLOW_2);
|
|
|
|
current.merge(this_STRING_0);
|
|
|
|
|
|
newLeafNode(this_STRING_0, grammarAccess.getNomAccess().getSTRINGTerminalRuleCall());
|
|
|
|
|
|
}
|
|
|
|
|
|
leaveRule();
|
|
|
|
}
|
|
|
|
catch (RecognitionException re) {
|
|
recover(input,re);
|
|
appendSkippedTokens();
|
|
}
|
|
finally {
|
|
}
|
|
return current;
|
|
}
|
|
// $ANTLR end "ruleNom"
|
|
|
|
// 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[]{0x0000000000001000L});
|
|
public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000000004000L});
|
|
public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x0000000000020000L});
|
|
public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x000000000F002000L});
|
|
public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x000000000E002000L});
|
|
public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x000000000A002000L});
|
|
public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000000002002000L});
|
|
public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x0000000000008000L});
|
|
public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0000000000010000L});
|
|
public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0000000000000010L});
|
|
public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0000000000002020L});
|
|
public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000000000040000L});
|
|
public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000000080000L});
|
|
public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x0000000000200000L});
|
|
public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000000300000L});
|
|
public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000000402000L});
|
|
public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0000000000000020L});
|
|
public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x0000000088000020L});
|
|
public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x0000000040000000L});
|
|
public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x00000000C8000020L});
|
|
public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x0000000000002000L});
|
|
public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x0000000000800000L});
|
|
public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x0000000040002000L});
|
|
public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0000000000800020L});
|
|
public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0000000010000000L});
|
|
public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x0000000010002000L});
|
|
public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x0000000020000000L});
|
|
public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x00000000A8000020L});
|
|
public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0000000000000040L});
|
|
public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x0000000100002000L});
|
|
public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x0000003C00010000L});
|
|
|
|
} |