From d2ca2649d78c8a66de18f4f1f94f30bb6e2cbabb Mon Sep 17 00:00:00 2001 From: b21223327 <zakaria.bazizi@etu.univ-amu.fr> Date: Fri, 12 Apr 2024 10:56:07 +0200 Subject: [PATCH] =?UTF-8?q?tp=20eval=20(=20s'il=20vous=20plait=20voir=20le?= =?UTF-8?q?=20mail=20envoy=C3=A9=20par=20zakaria=20Bazizi=20pour=20monsieu?= =?UTF-8?q?r=20Alexis=20nasr=20)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Compiler.java | 2 +- src/l.cfg | 12 +- src/lParser/analysis/Analysis.java | 10 +- src/lParser/analysis/AnalysisAdapter.java | 40 +- src/lParser/analysis/DepthFirstAdapter.java | 126 +++- .../analysis/ReversedDepthFirstAdapter.java | 128 +++- src/lParser/lexer/Lexer.java | 162 +++-- src/lParser/lexer/lexer.dat | Bin 3180 -> 3220 bytes src/lParser/node/AAddtoAdd.java | 95 +++ src/lParser/node/AAddtoAddto.java | 181 +++++ src/lParser/node/AAddtoMult.java | 95 +++ src/lParser/node/AMoinsAdd.java | 30 +- .../node/{ANegMult.java => ANegAddto.java} | 10 +- src/lParser/node/APlusAdd.java | 30 +- src/lParser/node/PAddto.java | 8 + src/lParser/node/TPlusegale.java | 39 ++ src/lParser/parser/Parser.java | 638 +++++++++++------- src/lParser/parser/TokenIndex.java | 54 +- src/lParser/parser/parser.dat | Bin 9162 -> 9914 bytes src/sa/Sc2sa.java | 35 +- src/saParser/analysis/Analysis.java | 4 + src/saParser/analysis/AnalysisAdapter.java | 24 + src/saParser/analysis/DepthFirstAdapter.java | 74 ++ .../analysis/ReversedDepthFirstAdapter.java | 74 ++ src/saParser/lexer/Lexer.java | 303 +++++---- src/saParser/lexer/lexer.dat | Bin 8476 -> 8784 bytes src/saParser/parser/Parser.java | 492 ++++++++------ src/saParser/parser/TokenIndex.java | 68 +- src/saParser/parser/parser.dat | Bin 7678 -> 8160 bytes 29 files changed, 1945 insertions(+), 789 deletions(-) create mode 100644 src/lParser/node/AAddtoAdd.java create mode 100644 src/lParser/node/AAddtoAddto.java create mode 100644 src/lParser/node/AAddtoMult.java rename src/lParser/node/{ANegMult.java => ANegAddto.java} (90%) create mode 100644 src/lParser/node/PAddto.java create mode 100644 src/lParser/node/TPlusegale.java diff --git a/src/Compiler.java b/src/Compiler.java index 09f1c74..14ead4d 100644 --- a/src/Compiler.java +++ b/src/Compiler.java @@ -39,9 +39,9 @@ public class Compiler typeCheck(); System.out.println("[BUILD C3A] "); buildC3a(); - /* System.out.println("[BUILD PRE NASM] "); buildPreNasm(); + /* System.out.println("[BUILD FLOW GRAPH] "); buildFg(); System.out.println("[SOLVE FLOW GRAPH]"); diff --git a/src/l.cfg b/src/l.cfg index 11bfb2e..5b42890 100644 --- a/src/l.cfg +++ b/src/l.cfg @@ -22,6 +22,8 @@ inf = '<' ; fois = '*' ; diviser = '/' ; non ='!' ; +modulo = '%'; +plusegale='+=' ; gparenthese = '(' ; dparenthese = ')' ; accoladeg = '{' ; @@ -65,10 +67,16 @@ equals = {egale} equals egale add | {inf} equals inf add | {add} add ; add = - {plus} add plus mult | {moins} add moins mult | {mult} mult ; + {plus} add plus mod | {moins} add moins mod | {mod} mod ; + +mod = {mod} mod modulo mult | {mult} mult ; mult = - {fois} mult fois neg | {diviser} mult diviser neg | {neg} neg ; + {fois} mult fois neg | {diviser} mult diviser neg | {addto} addto ; + + +addto = {addto} addto plusegale neg | {neg} neg ; + neg = {non} non neg | {e6} e6 ; diff --git a/src/lParser/analysis/Analysis.java b/src/lParser/analysis/Analysis.java index 2f313cf..a9e69cf 100644 --- a/src/lParser/analysis/Analysis.java +++ b/src/lParser/analysis/Analysis.java @@ -22,10 +22,14 @@ public interface Analysis extends Switch void caseAAddEquals(AAddEquals node); void caseAPlusAdd(APlusAdd node); void caseAMoinsAdd(AMoinsAdd node); - void caseAMultAdd(AMultAdd node); + void caseAModAdd(AModAdd node); + void caseAModMod(AModMod node); + void caseAMultMod(AMultMod node); void caseAFoisMult(AFoisMult node); void caseADiviserMult(ADiviserMult node); - void caseANegMult(ANegMult node); + void caseAAddtoMult(AAddtoMult node); + void caseAAddtoAddto(AAddtoAddto node); + void caseANegAddto(ANegAddto node); void caseANonNeg(ANonNeg node); void caseAE6Neg(AE6Neg node); void caseAParentheseE6(AParentheseE6 node); @@ -79,6 +83,8 @@ public interface Analysis extends Switch void caseTFois(TFois node); void caseTDiviser(TDiviser node); void caseTNon(TNon node); + void caseTModulo(TModulo node); + void caseTPlusegale(TPlusegale node); void caseTGparenthese(TGparenthese node); void caseTDparenthese(TDparenthese node); void caseTAccoladeg(TAccoladeg node); diff --git a/src/lParser/analysis/AnalysisAdapter.java b/src/lParser/analysis/AnalysisAdapter.java index 80ac9c0..f254aaf 100644 --- a/src/lParser/analysis/AnalysisAdapter.java +++ b/src/lParser/analysis/AnalysisAdapter.java @@ -135,7 +135,19 @@ public class AnalysisAdapter implements Analysis } @Override - public void caseAMultAdd(AMultAdd node) + public void caseAModAdd(AModAdd node) + { + defaultCase(node); + } + + @Override + public void caseAModMod(AModMod node) + { + defaultCase(node); + } + + @Override + public void caseAMultMod(AMultMod node) { defaultCase(node); } @@ -153,7 +165,19 @@ public class AnalysisAdapter implements Analysis } @Override - public void caseANegMult(ANegMult node) + public void caseAAddtoMult(AAddtoMult node) + { + defaultCase(node); + } + + @Override + public void caseAAddtoAddto(AAddtoAddto node) + { + defaultCase(node); + } + + @Override + public void caseANegAddto(ANegAddto node) { defaultCase(node); } @@ -470,6 +494,18 @@ public class AnalysisAdapter implements Analysis defaultCase(node); } + @Override + public void caseTModulo(TModulo node) + { + defaultCase(node); + } + + @Override + public void caseTPlusegale(TPlusegale node) + { + defaultCase(node); + } + @Override public void caseTGparenthese(TGparenthese node) { diff --git a/src/lParser/analysis/DepthFirstAdapter.java b/src/lParser/analysis/DepthFirstAdapter.java index d9885ca..e832c9b 100644 --- a/src/lParser/analysis/DepthFirstAdapter.java +++ b/src/lParser/analysis/DepthFirstAdapter.java @@ -262,9 +262,9 @@ public class DepthFirstAdapter extends AnalysisAdapter { node.getPlus().apply(this); } - if(node.getMult() != null) + if(node.getMod() != null) { - node.getMult().apply(this); + node.getMod().apply(this); } outAPlusAdd(node); } @@ -291,32 +291,82 @@ public class DepthFirstAdapter extends AnalysisAdapter { node.getMoins().apply(this); } + if(node.getMod() != null) + { + node.getMod().apply(this); + } + outAMoinsAdd(node); + } + + public void inAModAdd(AModAdd node) + { + defaultIn(node); + } + + public void outAModAdd(AModAdd node) + { + defaultOut(node); + } + + @Override + public void caseAModAdd(AModAdd node) + { + inAModAdd(node); + if(node.getMod() != null) + { + node.getMod().apply(this); + } + outAModAdd(node); + } + + public void inAModMod(AModMod node) + { + defaultIn(node); + } + + public void outAModMod(AModMod node) + { + defaultOut(node); + } + + @Override + public void caseAModMod(AModMod node) + { + inAModMod(node); + if(node.getMod() != null) + { + node.getMod().apply(this); + } + if(node.getModulo() != null) + { + node.getModulo().apply(this); + } if(node.getMult() != null) { node.getMult().apply(this); } - outAMoinsAdd(node); + outAModMod(node); } - public void inAMultAdd(AMultAdd node) + public void inAMultMod(AMultMod node) { defaultIn(node); } - public void outAMultAdd(AMultAdd node) + public void outAMultMod(AMultMod node) { defaultOut(node); } @Override - public void caseAMultAdd(AMultAdd node) + public void caseAMultMod(AMultMod node) { - inAMultAdd(node); + inAMultMod(node); if(node.getMult() != null) { node.getMult().apply(this); } - outAMultAdd(node); + outAMultMod(node); } public void inAFoisMult(AFoisMult node) @@ -377,25 +427,75 @@ public class DepthFirstAdapter extends AnalysisAdapter outADiviserMult(node); } - public void inANegMult(ANegMult node) + public void inAAddtoMult(AAddtoMult node) + { + defaultIn(node); + } + + public void outAAddtoMult(AAddtoMult node) + { + defaultOut(node); + } + + @Override + public void caseAAddtoMult(AAddtoMult node) + { + inAAddtoMult(node); + if(node.getAddto() != null) + { + node.getAddto().apply(this); + } + outAAddtoMult(node); + } + + public void inAAddtoAddto(AAddtoAddto node) + { + defaultIn(node); + } + + public void outAAddtoAddto(AAddtoAddto node) + { + defaultOut(node); + } + + @Override + public void caseAAddtoAddto(AAddtoAddto node) + { + inAAddtoAddto(node); + if(node.getAddto() != null) + { + node.getAddto().apply(this); + } + if(node.getPlusegale() != null) + { + node.getPlusegale().apply(this); + } + if(node.getNeg() != null) + { + node.getNeg().apply(this); + } + outAAddtoAddto(node); + } + + public void inANegAddto(ANegAddto node) { defaultIn(node); } - public void outANegMult(ANegMult node) + public void outANegAddto(ANegAddto node) { defaultOut(node); } @Override - public void caseANegMult(ANegMult node) + public void caseANegAddto(ANegAddto node) { - inANegMult(node); + inANegAddto(node); if(node.getNeg() != null) { node.getNeg().apply(this); } - outANegMult(node); + outANegAddto(node); } public void inANonNeg(ANonNeg node) diff --git a/src/lParser/analysis/ReversedDepthFirstAdapter.java b/src/lParser/analysis/ReversedDepthFirstAdapter.java index b41333c..5f21cc1 100644 --- a/src/lParser/analysis/ReversedDepthFirstAdapter.java +++ b/src/lParser/analysis/ReversedDepthFirstAdapter.java @@ -254,9 +254,9 @@ public class ReversedDepthFirstAdapter extends AnalysisAdapter public void caseAPlusAdd(APlusAdd node) { inAPlusAdd(node); - if(node.getMult() != null) + if(node.getMod() != null) { - node.getMult().apply(this); + node.getMod().apply(this); } if(node.getPlus() != null) { @@ -283,9 +283,9 @@ public class ReversedDepthFirstAdapter extends AnalysisAdapter public void caseAMoinsAdd(AMoinsAdd node) { inAMoinsAdd(node); - if(node.getMult() != null) + if(node.getMod() != null) { - node.getMult().apply(this); + node.getMod().apply(this); } if(node.getMoins() != null) { @@ -298,25 +298,75 @@ public class ReversedDepthFirstAdapter extends AnalysisAdapter outAMoinsAdd(node); } - public void inAMultAdd(AMultAdd node) + public void inAModAdd(AModAdd node) + { + defaultIn(node); + } + + public void outAModAdd(AModAdd node) + { + defaultOut(node); + } + + @Override + public void caseAModAdd(AModAdd node) + { + inAModAdd(node); + if(node.getMod() != null) + { + node.getMod().apply(this); + } + outAModAdd(node); + } + + public void inAModMod(AModMod node) + { + defaultIn(node); + } + + public void outAModMod(AModMod node) + { + defaultOut(node); + } + + @Override + public void caseAModMod(AModMod node) + { + inAModMod(node); + if(node.getMult() != null) + { + node.getMult().apply(this); + } + if(node.getModulo() != null) + { + node.getModulo().apply(this); + } + if(node.getMod() != null) + { + node.getMod().apply(this); + } + outAModMod(node); + } + + public void inAMultMod(AMultMod node) { defaultIn(node); } - public void outAMultAdd(AMultAdd node) + public void outAMultMod(AMultMod node) { defaultOut(node); } @Override - public void caseAMultAdd(AMultAdd node) + public void caseAMultMod(AMultMod node) { - inAMultAdd(node); + inAMultMod(node); if(node.getMult() != null) { node.getMult().apply(this); } - outAMultAdd(node); + outAMultMod(node); } public void inAFoisMult(AFoisMult node) @@ -377,25 +427,75 @@ public class ReversedDepthFirstAdapter extends AnalysisAdapter outADiviserMult(node); } - public void inANegMult(ANegMult node) + public void inAAddtoMult(AAddtoMult node) + { + defaultIn(node); + } + + public void outAAddtoMult(AAddtoMult node) + { + defaultOut(node); + } + + @Override + public void caseAAddtoMult(AAddtoMult node) + { + inAAddtoMult(node); + if(node.getAddto() != null) + { + node.getAddto().apply(this); + } + outAAddtoMult(node); + } + + public void inAAddtoAddto(AAddtoAddto node) + { + defaultIn(node); + } + + public void outAAddtoAddto(AAddtoAddto node) + { + defaultOut(node); + } + + @Override + public void caseAAddtoAddto(AAddtoAddto node) + { + inAAddtoAddto(node); + if(node.getNeg() != null) + { + node.getNeg().apply(this); + } + if(node.getPlusegale() != null) + { + node.getPlusegale().apply(this); + } + if(node.getAddto() != null) + { + node.getAddto().apply(this); + } + outAAddtoAddto(node); + } + + public void inANegAddto(ANegAddto node) { defaultIn(node); } - public void outANegMult(ANegMult node) + public void outANegAddto(ANegAddto node) { defaultOut(node); } @Override - public void caseANegMult(ANegMult node) + public void caseANegAddto(ANegAddto node) { - inANegMult(node); + inANegAddto(node); if(node.getNeg() != null) { node.getNeg().apply(this); } - outANegMult(node); + outANegAddto(node); } public void inANonNeg(ANonNeg node) diff --git a/src/lParser/lexer/Lexer.java b/src/lParser/lexer/Lexer.java index f399d7c..4f46453 100644 --- a/src/lParser/lexer/Lexer.java +++ b/src/lParser/lexer/Lexer.java @@ -469,7 +469,6 @@ public class Lexer case 29: { @SuppressWarnings("hiding") Token token = new29( - getText(accept_length), start_line + 1, start_pos + 1); pushBack(accept_length); @@ -490,6 +489,7 @@ public class Lexer case 31: { @SuppressWarnings("hiding") Token token = new31( + getText(accept_length), start_line + 1, start_pos + 1); pushBack(accept_length); @@ -500,6 +500,26 @@ public class Lexer case 32: { @SuppressWarnings("hiding") Token token = new32( + start_line + 1, + start_pos + 1); + pushBack(accept_length); + this.pos = accept_pos; + this.line = accept_line; + return token; + } + case 33: + { + @SuppressWarnings("hiding") Token token = new33( + start_line + 1, + start_pos + 1); + pushBack(accept_length); + this.pos = accept_pos; + this.line = accept_line; + return token; + } + case 34: + { + @SuppressWarnings("hiding") Token token = new34( getText(accept_length), start_line + 1, start_pos + 1); @@ -542,26 +562,28 @@ public class Lexer Token new10(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TFois(line, pos); } Token new11(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TDiviser(line, pos); } Token new12(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TNon(line, pos); } - Token new13(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TGparenthese(line, pos); } - Token new14(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TDparenthese(line, pos); } - Token new15(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TAccoladeg(line, pos); } - Token new16(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TAccoladed(line, pos); } - Token new17(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TCrochetg(line, pos); } - Token new18(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TCrochetd(line, pos); } - Token new19(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TBool(line, pos); } - Token new20(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TEntier(line, pos); } - Token new21(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSi(line, pos); } - Token new22(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TAlors(line, pos); } - Token new23(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TTantque(line, pos); } - Token new24(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TFaire(line, pos); } - Token new25(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSinon(line, pos); } - Token new26(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TRetourner(line, pos); } - Token new27(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TLire(line, pos); } - Token new28(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TEcrire(line, pos); } - Token new29(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TNombre(text, line, pos); } - Token new30(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TVrai(line, pos); } - Token new31(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TFaux(line, pos); } - Token new32(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TId(text, line, pos); } + Token new13(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TModulo(line, pos); } + Token new14(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TPlusegale(line, pos); } + Token new15(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TGparenthese(line, pos); } + Token new16(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TDparenthese(line, pos); } + Token new17(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TAccoladeg(line, pos); } + Token new18(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TAccoladed(line, pos); } + Token new19(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TCrochetg(line, pos); } + Token new20(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TCrochetd(line, pos); } + Token new21(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TBool(line, pos); } + Token new22(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TEntier(line, pos); } + Token new23(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSi(line, pos); } + Token new24(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TAlors(line, pos); } + Token new25(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TTantque(line, pos); } + Token new26(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TFaire(line, pos); } + Token new27(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSinon(line, pos); } + Token new28(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TRetourner(line, pos); } + Token new29(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TLire(line, pos); } + Token new30(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TEcrire(line, pos); } + Token new31(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TNombre(text, line, pos); } + Token new32(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TVrai(line, pos); } + Token new33(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TFaux(line, pos); } + Token new34(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TId(text, line, pos); } private int getChar() throws IOException { @@ -621,87 +643,89 @@ public class Lexer private static int[][][][] gotoTable; /* { { // INITIAL - {{10, 10, 1}, {13, 13, 2}, {32, 32, 3}, {33, 33, 4}, {35, 35, 5}, {36, 36, 6}, {38, 38, 7}, {40, 40, 8}, {41, 41, 9}, {42, 42, 10}, {43, 43, 11}, {44, 44, 12}, {45, 45, 13}, {47, 47, 14}, {48, 57, 15}, {59, 59, 16}, {60, 60, 17}, {61, 61, 18}, {65, 90, 6}, {91, 91, 19}, {93, 93, 20}, {95, 95, 6}, {97, 97, 21}, {98, 98, 22}, {99, 100, 6}, {101, 101, 23}, {102, 102, 24}, {103, 107, 6}, {108, 108, 25}, {109, 113, 6}, {114, 114, 26}, {115, 115, 27}, {116, 116, 28}, {117, 117, 6}, {118, 118, 29}, {119, 122, 6}, {123, 123, 30}, {124, 124, 31}, {125, 125, 32}, }, + {{10, 10, 1}, {13, 13, 2}, {32, 32, 3}, {33, 33, 4}, {35, 35, 5}, {36, 36, 6}, {37, 37, 7}, {38, 38, 8}, {40, 40, 9}, {41, 41, 10}, {42, 42, 11}, {43, 43, 12}, {44, 44, 13}, {45, 45, 14}, {47, 47, 15}, {48, 57, 16}, {59, 59, 17}, {60, 60, 18}, {61, 61, 19}, {65, 90, 6}, {91, 91, 20}, {93, 93, 21}, {95, 95, 6}, {97, 97, 22}, {98, 98, 23}, {99, 100, 6}, {101, 101, 24}, {102, 102, 25}, {103, 107, 6}, {108, 108, 26}, {109, 113, 6}, {114, 114, 27}, {115, 115, 28}, {116, 116, 29}, {117, 117, 6}, {118, 118, 30}, {119, 122, 6}, {123, 123, 31}, {124, 124, 32}, {125, 125, 33}, }, {{10, 32, -2}, }, {{10, 32, -2}, }, {{10, 32, -2}, }, {}, - {{0, 9, 33}, {10, 10, 34}, {11, 12, 33}, {13, 13, 35}, {14, 65535, 33}, }, - {{36, 36, 36}, {48, 57, 36}, {65, 90, 36}, {95, 95, 36}, {97, 122, 36}, }, + {{0, 9, 34}, {10, 10, 35}, {11, 12, 34}, {13, 13, 36}, {14, 65535, 34}, }, + {{36, 36, 37}, {48, 57, 37}, {65, 90, 37}, {95, 95, 37}, {97, 122, 37}, }, {}, {}, {}, {}, {}, + {{61, 61, 38}, }, {}, {}, {}, - {{48, 57, 15}, }, + {{48, 57, 16}, }, {}, {}, {}, {}, {}, - {{36, 95, -8}, {97, 107, 36}, {108, 108, 37}, {109, 122, 36}, }, - {{36, 95, -8}, {97, 110, 36}, {111, 111, 38}, {112, 122, 36}, }, - {{36, 95, -8}, {97, 98, 36}, {99, 99, 39}, {100, 109, 36}, {110, 110, 40}, {111, 122, 36}, }, - {{36, 95, -8}, {97, 97, 41}, {98, 122, 36}, }, - {{36, 95, -8}, {97, 104, 36}, {105, 105, 42}, {106, 122, 36}, }, - {{36, 95, -8}, {97, 100, 36}, {101, 101, 43}, {102, 122, 36}, }, - {{36, 104, -27}, {105, 105, 44}, {106, 122, 36}, }, - {{36, 95, -8}, {97, 97, 45}, {98, 122, 36}, }, - {{36, 95, -8}, {97, 113, 36}, {114, 114, 46}, {115, 122, 36}, }, + {{36, 95, -8}, {97, 107, 37}, {108, 108, 39}, {109, 122, 37}, }, + {{36, 95, -8}, {97, 110, 37}, {111, 111, 40}, {112, 122, 37}, }, + {{36, 95, -8}, {97, 98, 37}, {99, 99, 41}, {100, 109, 37}, {110, 110, 42}, {111, 122, 37}, }, + {{36, 95, -8}, {97, 97, 43}, {98, 122, 37}, }, + {{36, 95, -8}, {97, 104, 37}, {105, 105, 44}, {106, 122, 37}, }, + {{36, 95, -8}, {97, 100, 37}, {101, 101, 45}, {102, 122, 37}, }, + {{36, 104, -28}, {105, 105, 46}, {106, 122, 37}, }, + {{36, 95, -8}, {97, 97, 47}, {98, 122, 37}, }, + {{36, 95, -8}, {97, 113, 37}, {114, 114, 48}, {115, 122, 37}, }, {}, {}, {}, {{0, 65535, -7}, }, - {{13, 13, 47}, }, + {{13, 13, 49}, }, {}, {{36, 122, -8}, }, - {{36, 110, -24}, {111, 111, 48}, {112, 122, 36}, }, - {{36, 110, -24}, {111, 111, 49}, {112, 122, 36}, }, - {{36, 113, -31}, {114, 114, 50}, {115, 122, 36}, }, - {{36, 95, -8}, {97, 115, 36}, {116, 116, 51}, {117, 122, 36}, }, - {{36, 104, -27}, {105, 105, 52}, {106, 116, 36}, {117, 117, 53}, {118, 122, 36}, }, - {{36, 113, -31}, {114, 114, 54}, {115, 122, 36}, }, - {{36, 115, -42}, {116, 116, 55}, {117, 122, 36}, }, - {{36, 95, -8}, {97, 109, 36}, {110, 110, 56}, {111, 122, 36}, }, - {{36, 109, -46}, {110, 110, 57}, {111, 122, 36}, }, - {{36, 95, -8}, {97, 97, 58}, {98, 122, 36}, }, {}, - {{36, 113, -31}, {114, 114, 59}, {115, 122, 36}, }, - {{36, 107, -23}, {108, 108, 60}, {109, 122, 36}, }, - {{36, 104, -27}, {105, 105, 61}, {106, 122, 36}, }, - {{36, 104, -27}, {105, 105, 62}, {106, 122, 36}, }, - {{36, 113, -31}, {114, 114, 63}, {115, 122, 36}, }, - {{36, 95, -8}, {97, 119, 36}, {120, 120, 64}, {121, 122, 36}, }, - {{36, 100, -28}, {101, 101, 65}, {102, 122, 36}, }, - {{36, 110, -24}, {111, 111, 66}, {112, 122, 36}, }, - {{36, 110, -24}, {111, 111, 67}, {112, 122, 36}, }, - {{36, 115, -42}, {116, 116, 68}, {117, 122, 36}, }, - {{36, 104, -27}, {105, 105, 69}, {106, 122, 36}, }, - {{36, 95, -8}, {97, 114, 36}, {115, 115, 70}, {116, 122, 36}, }, + {{36, 110, -25}, {111, 111, 50}, {112, 122, 37}, }, + {{36, 110, -25}, {111, 111, 51}, {112, 122, 37}, }, + {{36, 113, -32}, {114, 114, 52}, {115, 122, 37}, }, + {{36, 95, -8}, {97, 115, 37}, {116, 116, 53}, {117, 122, 37}, }, + {{36, 104, -28}, {105, 105, 54}, {106, 116, 37}, {117, 117, 55}, {118, 122, 37}, }, + {{36, 113, -32}, {114, 114, 56}, {115, 122, 37}, }, + {{36, 115, -44}, {116, 116, 57}, {117, 122, 37}, }, + {{36, 95, -8}, {97, 109, 37}, {110, 110, 58}, {111, 122, 37}, }, + {{36, 109, -48}, {110, 110, 59}, {111, 122, 37}, }, + {{36, 95, -8}, {97, 97, 60}, {98, 122, 37}, }, + {}, + {{36, 113, -32}, {114, 114, 61}, {115, 122, 37}, }, + {{36, 107, -24}, {108, 108, 62}, {109, 122, 37}, }, + {{36, 104, -28}, {105, 105, 63}, {106, 122, 37}, }, + {{36, 104, -28}, {105, 105, 64}, {106, 122, 37}, }, + {{36, 113, -32}, {114, 114, 65}, {115, 122, 37}, }, + {{36, 95, -8}, {97, 119, 37}, {120, 120, 66}, {121, 122, 37}, }, + {{36, 100, -29}, {101, 101, 67}, {102, 122, 37}, }, + {{36, 110, -25}, {111, 111, 68}, {112, 122, 37}, }, + {{36, 110, -25}, {111, 111, 69}, {112, 122, 37}, }, + {{36, 115, -44}, {116, 116, 70}, {117, 122, 37}, }, + {{36, 104, -28}, {105, 105, 71}, {106, 122, 37}, }, + {{36, 95, -8}, {97, 114, 37}, {115, 115, 72}, {116, 122, 37}, }, {{36, 122, -8}, }, - {{36, 113, -31}, {114, 114, 71}, {115, 122, 36}, }, - {{36, 100, -28}, {101, 101, 72}, {102, 122, 36}, }, - {{36, 100, -28}, {101, 101, 73}, {102, 122, 36}, }, + {{36, 113, -32}, {114, 114, 73}, {115, 122, 37}, }, + {{36, 100, -29}, {101, 101, 74}, {102, 122, 37}, }, + {{36, 100, -29}, {101, 101, 75}, {102, 122, 37}, }, {{36, 122, -8}, }, {{36, 122, -8}, }, - {{36, 95, -8}, {97, 116, 36}, {117, 117, 74}, {118, 122, 36}, }, - {{36, 109, -46}, {110, 110, 75}, {111, 122, 36}, }, - {{36, 95, -8}, {97, 112, 36}, {113, 113, 76}, {114, 122, 36}, }, + {{36, 95, -8}, {97, 116, 37}, {117, 117, 76}, {118, 122, 37}, }, + {{36, 109, -48}, {110, 110, 77}, {111, 122, 37}, }, + {{36, 95, -8}, {97, 112, 37}, {113, 113, 78}, {114, 122, 37}, }, {{36, 122, -8}, }, {{36, 122, -8}, }, - {{36, 100, -28}, {101, 101, 77}, {102, 122, 36}, }, - {{36, 113, -31}, {114, 114, 78}, {115, 122, 36}, }, + {{36, 100, -29}, {101, 101, 79}, {102, 122, 37}, }, + {{36, 113, -32}, {114, 114, 80}, {115, 122, 37}, }, {{36, 122, -8}, }, - {{36, 113, -31}, {114, 114, 79}, {115, 122, 36}, }, + {{36, 113, -32}, {114, 114, 81}, {115, 122, 37}, }, {{36, 122, -8}, }, - {{36, 116, -68}, {117, 117, 80}, {118, 122, 36}, }, + {{36, 116, -70}, {117, 117, 82}, {118, 122, 37}, }, {{36, 122, -8}, }, {{36, 122, -8}, }, {{36, 122, -8}, }, - {{36, 100, -28}, {101, 101, 81}, {102, 122, 36}, }, + {{36, 100, -29}, {101, 101, 83}, {102, 122, 37}, }, {{36, 122, -8}, }, } };*/ @@ -709,7 +733,7 @@ public class Lexer private static int[][] accept; /* { // INITIAL - {-1, 0, 0, 0, 12, -1, 32, 6, 13, 14, 10, 2, 7, 4, 11, 29, 3, 9, 8, 17, 18, 32, 32, 32, 32, 32, 32, 32, 32, 32, 15, 5, 16, -1, 1, 1, 32, 32, 32, 32, 32, 32, 32, 32, 21, 32, 32, 1, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 19, 32, 32, 32, 31, 27, 32, 32, 32, 30, 22, 32, 32, 24, 32, 25, 32, 28, 20, 26, 32, 23, }, + {-1, 0, 0, 0, 12, -1, 34, 13, 6, 15, 16, 10, 2, 7, 4, 11, 31, 3, 9, 8, 19, 20, 34, 34, 34, 34, 34, 34, 34, 34, 34, 17, 5, 18, -1, 1, 1, 34, 14, 34, 34, 34, 34, 34, 34, 34, 23, 34, 34, 1, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 21, 34, 34, 34, 33, 29, 34, 34, 34, 32, 24, 34, 34, 26, 34, 27, 34, 30, 22, 28, 34, 25, }, };*/ diff --git a/src/lParser/lexer/lexer.dat b/src/lParser/lexer/lexer.dat index 3f7ff84477e368b889a806eb3edea9e588dbd39d..1994a0994207aaf73683e286082f19157e9b0ff9 100644 GIT binary patch literal 3220 zcmZQzU|?imU<hGgV9;P-VBmsckQgrm0|N*%F)%PFKru4|1A`(IvoJ6)C_^zT0|SE! z6tgifFsMQ?I|BoQ8WeLt?Eu-s$-uy%3B@2gwHO!}K$x3>fk7LJc^DWNbf6gI4qXNY z1`y_BU|`UPVtxh&1_K5L21^D81_1^J25Tr5WME*hfnp&B1_oOw7G_{zaAaU$h+<%1 z0J$@ofq?;pMHm<uVxd@+fq@|&ia}};85kHqSd4*zAqk4b85kIn85kH+pys49Fff3y z1Oo#@8Wc-1FfgPuFfe38)#NZRFo3WW0|P@Y0|P@LRJ@3RfdPc285kIfp;(52fuRJ7 zWf>S4N}(9!o-zgo1`w8GU|=X`U|^_%np4fdzyQMX3=9l4Pz;K<S_TFN5C+8?C|*I~ zt?>W<|9{Z9$H!-2U|;~nEr<rinG!U8fb@Xk9u!}ocmj!o;s}I6>41-c;s1XI1_qEg zNIysnghA;77GEGXEG|H7SeS#@pzsFy3&aN5jgCS7fW;{&eId((<Y0Dy(gd;`j15Y= zAos-o|Ns97G=4$x1hNklM<A>YjVG8pu<6Nzrt^FT1_lrYrR@S}oPf*%#TU9gpfm)M z1En7j2IT`#Is&B$kT}Rp5C-K3keM+1L3t0|EKoRs@(ajJm^y6k%z(NxlYxN&ghBZ# z3(1|>^nlz1at|n7gD@!Xfzme29+-PF{{R2~1ZpnGY&`}B24u5g>X5@4<Ze(NCgg5V z9s#)lls`Zi6tAE>0&@c_K0!1n-WfpY?*IS)KcQ(GlpaCY5TpPq1`5L}XuN}jVeZTO z|NsAUXgq?#-H3sK0XZ&lsWZl*uJHf={|}&f8{~EqXx@go9b1@#{08zbEbp5_^F2%t zEH9ylxfwLfLHa=YVdaH6w5)*Xhxq~BZ5C*5gQ+Y2|Ns9LXgLHj8&uAM%!ZkV%@645 z*a{k^Fg-A{bN~PUe}RF40hHE37*uwH!W~^5db$CX>&WQ_IS$eN1u7#zVTx{M_W%F? zUqH)aP+qq~%j+;VqKC6RG@Q}RLs#d3Lmj&NK;<8@`>=&4sEh~2X$1oV0|+}YFfddi z<z1LtQ~v+|{}@^if%2;}v>rltD|$M2!I6H^)w$wOhn_~<(9$f-eduB2juuAP{0_=D zAismc2!uVLX%XfpP@YH5&oH~t!`Tx@`bG~kFC1ZpuFe}x9lATv`Plph%1<D_f$|dw z`{2l{==sDKEk9v18&qzA%m$U8AnXS%hj4`(x_e>ai0*HHG=Ia?p@(+>T6p6!A6;J{ zk@`yh|Np-Wn$AFB7lame==Krf!~B8n-(WQVVlyY?|9@~>2UHHhFb`A=)cyh0KcIF1 zsI3ZWkAT`vpf)wAZ48P#P#X%=W&^na)W!m}lR@oNP@5E_pAZJMbwTxl5Y$eP8$lSP z57br$(YP?E9Sf6#>4EWyp+RkBWObl6CaArNECy<Wg4)F}F;M###0Ir@K{Tix3u;?~ J+PomXBmii}q_+S7 literal 3180 zcmZQzU|?imU<hJhU{GgZVBmsckQgrm0|N*%F)%PFKru4|1A`(IvoJ6)C_^zT0|SE! z6tgifFsMN>I|BoQ1{8BJFfeFBF((59gBBEn?9^spU;trm1_lNlDCS{cV9<qPkUR7l z7#Kj9kAZ=~fPsO*l7WGNpMinF8j1xN7#M7zSdf8%!4`^z7#J8F85kI%7#J8pZi{AM zU;trZ1_p*$C>CL0V2FoekeWmW1_lroWnf@Pf?_cS28Lt?28I-<IjIZ`3?MAdz`&3O z#S#n*4CxFE4B1dMISdR8AS}tiz>v$pz)%PkFJfR|0AVQx28LoNmS$jJD1l-b1_p*w zC<eKwjDdjxgk>2R7|IzK7^<M=R5LIzfUq0`149iI%QG-A)Iu>R-av5)3S));|NsAk z#y37b0|NsCC_X_nD4sy^4N?!nN(>APpg01>4M-dmFCYv`2Yd_+|NleN21q|FJ%DIf ze1X`oxB#(XVGd%0!W-l-5F2DSJ`C~`%uG-kz@`?IK0#*1|NsC02Q)rG@d6S9#R&+j zLgNKyFE%}S&~%;8z`y{)ptM~8jRTNbp!fmN$o7EJ3`h)=UO*U>w?OFzlm<ZJATvQ2 zls7<T!t4j-FOWR4S)gzM<r|QhFm>46nE`cYCIbTl2!rxh7Lq%$=>fS3WFIIUgD@x$ zg3>a~9+-PF{{R2~6lyNWY)~FWHXEi6-QA%4OUT`zJOOe8C_jL(9yC9|+<+Xnpm=8h zrL+J4|Nn%hWl;J9VNlrsQVUW8GOr36?=ZLJ{r~^}1vCypVGc?^$nl6vogo7Q12%Pq z|NsAg2+hYJcN?L(8(VmT@;b<EuzYR|&Eqh?!txDzc$+XVFo41vqz|MYRyLSI%LSNz zm><yHW`^cAn7ZQs|NmcumN_7^&C%S0%@62l*a8}+=x)gU|Ns9b1_lODItO7;c?}A8 zbam)y#tK^A!qkD{6y{!Ze}T$=P?*Bh!qjE||Ns9bwCn}tb5OkiayPm<^l%2%8K7_` zq|Oc+AL#1P-Di&$?%2W;RGx$4w1R<w0fZeG7#J#%@-56yDgXcfe*&#@KzS8Zj$+HJ z=;_=ENBTuq=Zr%gdKz&-OCvD%p@*d_S{PyTJ1F0P{0@pk5O#y6MOe7v%FF2C?2Z=B zFgKxxnFq9<hMA8`ohO<)ba$ZhvH1;@pFn<t<y9{nc@;gMc%$VfY-WSXBaqpkvJ-@T zpyd$EU+C^b=i~CXFPgt$>d?d64=ucLnUAi|pGbWr|NsBr15Ib3@C!f-J9PU9@nQZz zPY;1;{>5fa(EtD7b`7W;f?*!07^r;(s{cXt52#%VY9oQ#%b<2IDBeJAB~Y6UWIw1a z1!@C>+NPj3DM&9N3~Jke>I4C(eIWONFd==Qb}LK`G3sGzVKk_13}b_6P@59eJ_WI1 g7}VwjwTWSTP}>*82DNoTG^h;=YFC5WxFEhb0PUipk^lez diff --git a/src/lParser/node/AAddtoAdd.java b/src/lParser/node/AAddtoAdd.java new file mode 100644 index 0000000..3bf5b37 --- /dev/null +++ b/src/lParser/node/AAddtoAdd.java @@ -0,0 +1,95 @@ +/* This file was generated by SableCC (http://www.sablecc.org/). */ + +package lParser.node; + +import lParser.analysis.*; + +@SuppressWarnings("nls") +public final class AAddtoAdd extends PAdd +{ + private PAddto _addto_; + + public AAddtoAdd() + { + // Constructor + } + + public AAddtoAdd( + @SuppressWarnings("hiding") PAddto _addto_) + { + // Constructor + setAddto(_addto_); + + } + + @Override + public Object clone() + { + return new AAddtoAdd( + cloneNode(this._addto_)); + } + + @Override + public void apply(Switch sw) + { + ((Analysis) sw).caseAAddtoAddto(this); + } + + public PAddto getAddto() + { + return this._addto_; + } + + public void setAddto(PAddto node) + { + if(this._addto_ != null) + { + this._addto_.parent(null); + } + + if(node != null) + { + if(node.parent() != null) + { + node.parent().removeChild(node); + } + + node.parent(this); + } + + this._addto_ = node; + } + + @Override + public String toString() + { + return "" + + toString(this._addto_); + } + + @Override + void removeChild(@SuppressWarnings("unused") Node child) + { + // Remove child + if(this._addto_ == child) + { + this._addto_ = null; + return; + } + + throw new RuntimeException("Not a child."); + } + + @Override + void replaceChild(@SuppressWarnings("unused") Node oldChild, @SuppressWarnings("unused") Node newChild) + { + // Replace child + if(this._addto_ == oldChild) + { + setAddto((PAddto) newChild); + return; + } + + throw new RuntimeException("Not a child."); + } +} diff --git a/src/lParser/node/AAddtoAddto.java b/src/lParser/node/AAddtoAddto.java new file mode 100644 index 0000000..c43c7a2 --- /dev/null +++ b/src/lParser/node/AAddtoAddto.java @@ -0,0 +1,181 @@ +/* This file was generated by SableCC (http://www.sablecc.org/). */ + +package lParser.node; + +import lParser.analysis.*; + +@SuppressWarnings("nls") +public final class AAddtoAddto extends PAddto +{ + private PAddto _addto_; + private TPlusegale _plusegale_; + private PNeg _neg_; + + public AAddtoAddto() + { + // Constructor + } + + public AAddtoAddto( + @SuppressWarnings("hiding") PAddto _addto_, + @SuppressWarnings("hiding") TPlusegale _plusegale_, + @SuppressWarnings("hiding") PNeg _neg_) + { + // Constructor + setAddto(_addto_); + + setPlusegale(_plusegale_); + + setNeg(_neg_); + + } + + @Override + public Object clone() + { + return new AAddtoAddto( + cloneNode(this._addto_), + cloneNode(this._plusegale_), + cloneNode(this._neg_)); + } + + @Override + public void apply(Switch sw) + { + ((Analysis) sw).caseAAddtoAddto(this); + } + + public PAddto getAddto() + { + return this._addto_; + } + + public void setAddto(PAddto node) + { + if(this._addto_ != null) + { + this._addto_.parent(null); + } + + if(node != null) + { + if(node.parent() != null) + { + node.parent().removeChild(node); + } + + node.parent(this); + } + + this._addto_ = node; + } + + public TPlusegale getPlusegale() + { + return this._plusegale_; + } + + public void setPlusegale(TPlusegale node) + { + if(this._plusegale_ != null) + { + this._plusegale_.parent(null); + } + + if(node != null) + { + if(node.parent() != null) + { + node.parent().removeChild(node); + } + + node.parent(this); + } + + this._plusegale_ = node; + } + + public PNeg getNeg() + { + return this._neg_; + } + + public void setNeg(PNeg node) + { + if(this._neg_ != null) + { + this._neg_.parent(null); + } + + if(node != null) + { + if(node.parent() != null) + { + node.parent().removeChild(node); + } + + node.parent(this); + } + + this._neg_ = node; + } + + @Override + public String toString() + { + return "" + + toString(this._addto_) + + toString(this._plusegale_) + + toString(this._neg_); + } + + @Override + void removeChild(@SuppressWarnings("unused") Node child) + { + // Remove child + if(this._addto_ == child) + { + this._addto_ = null; + return; + } + + if(this._plusegale_ == child) + { + this._plusegale_ = null; + return; + } + + if(this._neg_ == child) + { + this._neg_ = null; + return; + } + + throw new RuntimeException("Not a child."); + } + + @Override + void replaceChild(@SuppressWarnings("unused") Node oldChild, @SuppressWarnings("unused") Node newChild) + { + // Replace child + if(this._addto_ == oldChild) + { + setAddto((PAddto) newChild); + return; + } + + if(this._plusegale_ == oldChild) + { + setPlusegale((TPlusegale) newChild); + return; + } + + if(this._neg_ == oldChild) + { + setNeg((PNeg) newChild); + return; + } + + throw new RuntimeException("Not a child."); + } +} diff --git a/src/lParser/node/AAddtoMult.java b/src/lParser/node/AAddtoMult.java new file mode 100644 index 0000000..178df79 --- /dev/null +++ b/src/lParser/node/AAddtoMult.java @@ -0,0 +1,95 @@ +/* This file was generated by SableCC (http://www.sablecc.org/). */ + +package lParser.node; + +import lParser.analysis.*; + +@SuppressWarnings("nls") +public final class AAddtoMult extends PMult +{ + private PAddto _addto_; + + public AAddtoMult() + { + // Constructor + } + + public AAddtoMult( + @SuppressWarnings("hiding") PAddto _addto_) + { + // Constructor + setAddto(_addto_); + + } + + @Override + public Object clone() + { + return new AAddtoMult( + cloneNode(this._addto_)); + } + + @Override + public void apply(Switch sw) + { + ((Analysis) sw).caseAAddtoMult(this); + } + + public PAddto getAddto() + { + return this._addto_; + } + + public void setAddto(PAddto node) + { + if(this._addto_ != null) + { + this._addto_.parent(null); + } + + if(node != null) + { + if(node.parent() != null) + { + node.parent().removeChild(node); + } + + node.parent(this); + } + + this._addto_ = node; + } + + @Override + public String toString() + { + return "" + + toString(this._addto_); + } + + @Override + void removeChild(@SuppressWarnings("unused") Node child) + { + // Remove child + if(this._addto_ == child) + { + this._addto_ = null; + return; + } + + throw new RuntimeException("Not a child."); + } + + @Override + void replaceChild(@SuppressWarnings("unused") Node oldChild, @SuppressWarnings("unused") Node newChild) + { + // Replace child + if(this._addto_ == oldChild) + { + setAddto((PAddto) newChild); + return; + } + + throw new RuntimeException("Not a child."); + } +} diff --git a/src/lParser/node/AMoinsAdd.java b/src/lParser/node/AMoinsAdd.java index 27e6858..e39237f 100644 --- a/src/lParser/node/AMoinsAdd.java +++ b/src/lParser/node/AMoinsAdd.java @@ -9,7 +9,7 @@ public final class AMoinsAdd extends PAdd { private PAdd _add_; private TMoins _moins_; - private PMult _mult_; + private PMod _mod_; public AMoinsAdd() { @@ -19,14 +19,14 @@ public final class AMoinsAdd extends PAdd public AMoinsAdd( @SuppressWarnings("hiding") PAdd _add_, @SuppressWarnings("hiding") TMoins _moins_, - @SuppressWarnings("hiding") PMult _mult_) + @SuppressWarnings("hiding") PMod _mod_) { // Constructor setAdd(_add_); setMoins(_moins_); - setMult(_mult_); + setMod(_mod_); } @@ -36,7 +36,7 @@ public final class AMoinsAdd extends PAdd return new AMoinsAdd( cloneNode(this._add_), cloneNode(this._moins_), - cloneNode(this._mult_)); + cloneNode(this._mod_)); } @Override @@ -95,16 +95,16 @@ public final class AMoinsAdd extends PAdd this._moins_ = node; } - public PMult getMult() + public PMod getMod() { - return this._mult_; + return this._mod_; } - public void setMult(PMult node) + public void setMod(PMod node) { - if(this._mult_ != null) + if(this._mod_ != null) { - this._mult_.parent(null); + this._mod_.parent(null); } if(node != null) @@ -117,7 +117,7 @@ public final class AMoinsAdd extends PAdd node.parent(this); } - this._mult_ = node; + this._mod_ = node; } @Override @@ -126,7 +126,7 @@ public final class AMoinsAdd extends PAdd return "" + toString(this._add_) + toString(this._moins_) - + toString(this._mult_); + + toString(this._mod_); } @Override @@ -145,9 +145,9 @@ public final class AMoinsAdd extends PAdd return; } - if(this._mult_ == child) + if(this._mod_ == child) { - this._mult_ = null; + this._mod_ = null; return; } @@ -170,9 +170,9 @@ public final class AMoinsAdd extends PAdd return; } - if(this._mult_ == oldChild) + if(this._mod_ == oldChild) { - setMult((PMult) newChild); + setMod((PMod) newChild); return; } diff --git a/src/lParser/node/ANegMult.java b/src/lParser/node/ANegAddto.java similarity index 90% rename from src/lParser/node/ANegMult.java rename to src/lParser/node/ANegAddto.java index dbcc3c2..2c37482 100644 --- a/src/lParser/node/ANegMult.java +++ b/src/lParser/node/ANegAddto.java @@ -5,16 +5,16 @@ package lParser.node; import lParser.analysis.*; @SuppressWarnings("nls") -public final class ANegMult extends PMult +public final class ANegAddto extends PAddto { private PNeg _neg_; - public ANegMult() + public ANegAddto() { // Constructor } - public ANegMult( + public ANegAddto( @SuppressWarnings("hiding") PNeg _neg_) { // Constructor @@ -25,14 +25,14 @@ public final class ANegMult extends PMult @Override public Object clone() { - return new ANegMult( + return new ANegAddto( cloneNode(this._neg_)); } @Override public void apply(Switch sw) { - ((Analysis) sw).caseANegMult(this); + ((Analysis) sw).caseANegAddto(this); } public PNeg getNeg() diff --git a/src/lParser/node/APlusAdd.java b/src/lParser/node/APlusAdd.java index bd1386b..8c87c2f 100644 --- a/src/lParser/node/APlusAdd.java +++ b/src/lParser/node/APlusAdd.java @@ -9,7 +9,7 @@ public final class APlusAdd extends PAdd { private PAdd _add_; private TPlus _plus_; - private PMult _mult_; + private PMod _mod_; public APlusAdd() { @@ -19,14 +19,14 @@ public final class APlusAdd extends PAdd public APlusAdd( @SuppressWarnings("hiding") PAdd _add_, @SuppressWarnings("hiding") TPlus _plus_, - @SuppressWarnings("hiding") PMult _mult_) + @SuppressWarnings("hiding") PMod _mod_) { // Constructor setAdd(_add_); setPlus(_plus_); - setMult(_mult_); + setMod(_mod_); } @@ -36,7 +36,7 @@ public final class APlusAdd extends PAdd return new APlusAdd( cloneNode(this._add_), cloneNode(this._plus_), - cloneNode(this._mult_)); + cloneNode(this._mod_)); } @Override @@ -95,16 +95,16 @@ public final class APlusAdd extends PAdd this._plus_ = node; } - public PMult getMult() + public PMod getMod() { - return this._mult_; + return this._mod_; } - public void setMult(PMult node) + public void setMod(PMod node) { - if(this._mult_ != null) + if(this._mod_ != null) { - this._mult_.parent(null); + this._mod_.parent(null); } if(node != null) @@ -117,7 +117,7 @@ public final class APlusAdd extends PAdd node.parent(this); } - this._mult_ = node; + this._mod_ = node; } @Override @@ -126,7 +126,7 @@ public final class APlusAdd extends PAdd return "" + toString(this._add_) + toString(this._plus_) - + toString(this._mult_); + + toString(this._mod_); } @Override @@ -145,9 +145,9 @@ public final class APlusAdd extends PAdd return; } - if(this._mult_ == child) + if(this._mod_ == child) { - this._mult_ = null; + this._mod_ = null; return; } @@ -170,9 +170,9 @@ public final class APlusAdd extends PAdd return; } - if(this._mult_ == oldChild) + if(this._mod_ == oldChild) { - setMult((PMult) newChild); + setMod((PMod) newChild); return; } diff --git a/src/lParser/node/PAddto.java b/src/lParser/node/PAddto.java new file mode 100644 index 0000000..7170eed --- /dev/null +++ b/src/lParser/node/PAddto.java @@ -0,0 +1,8 @@ +/* This file was generated by SableCC (http://www.sablecc.org/). */ + +package lParser.node; + +public abstract class PAddto extends Node +{ + // Empty body +} diff --git a/src/lParser/node/TPlusegale.java b/src/lParser/node/TPlusegale.java new file mode 100644 index 0000000..7fc0e86 --- /dev/null +++ b/src/lParser/node/TPlusegale.java @@ -0,0 +1,39 @@ +/* This file was generated by SableCC (http://www.sablecc.org/). */ + +package lParser.node; + +import lParser.analysis.*; + +@SuppressWarnings("nls") +public final class TPlusegale extends Token +{ + public TPlusegale() + { + super.setText("+="); + } + + public TPlusegale(int line, int pos) + { + super.setText("+="); + setLine(line); + setPos(pos); + } + + @Override + public Object clone() + { + return new TPlusegale(getLine(), getPos()); + } + + @Override + public void apply(Switch sw) + { + ((Analysis) sw).caseTPlusegale(this); + } + + @Override + public void setText(@SuppressWarnings("unused") String text) + { + throw new RuntimeException("Cannot change TPlusegale text."); + } +} diff --git a/src/lParser/parser/Parser.java b/src/lParser/parser/Parser.java index 88d8ac5..5349d46 100644 --- a/src/lParser/parser/Parser.java +++ b/src/lParser/parser/Parser.java @@ -255,276 +255,300 @@ public class Parser push(goTo(4), list); } break; - case 11: /* reduce AMultAdd */ + case 11: /* reduce AModAdd */ { ArrayList<Object> list = new11(); push(goTo(4), list); } break; - case 12: /* reduce AFoisMult */ + case 12: /* reduce AModMod */ { ArrayList<Object> list = new12(); push(goTo(5), list); } break; - case 13: /* reduce ADiviserMult */ + case 13: /* reduce AMultMod */ { ArrayList<Object> list = new13(); push(goTo(5), list); } break; - case 14: /* reduce ANegMult */ + case 14: /* reduce AFoisMult */ { ArrayList<Object> list = new14(); - push(goTo(5), list); + push(goTo(6), list); } break; - case 15: /* reduce ANonNeg */ + case 15: /* reduce ADiviserMult */ { ArrayList<Object> list = new15(); push(goTo(6), list); } break; - case 16: /* reduce AE6Neg */ + case 16: /* reduce AAddtoMult */ { ArrayList<Object> list = new16(); push(goTo(6), list); } break; - case 17: /* reduce AParentheseE6 */ + case 17: /* reduce AAddtoAddto */ { ArrayList<Object> list = new17(); push(goTo(7), list); } break; - case 18: /* reduce ANombreE6 */ + case 18: /* reduce ANegAddto */ { ArrayList<Object> list = new18(); push(goTo(7), list); } break; - case 19: /* reduce AVraiE6 */ + case 19: /* reduce ANonNeg */ { ArrayList<Object> list = new19(); - push(goTo(7), list); + push(goTo(8), list); } break; - case 20: /* reduce AFauxE6 */ + case 20: /* reduce AE6Neg */ { ArrayList<Object> list = new20(); - push(goTo(7), list); + push(goTo(8), list); } break; - case 21: /* reduce ALireE6 */ + case 21: /* reduce AParentheseE6 */ { ArrayList<Object> list = new21(); - push(goTo(7), list); + push(goTo(9), list); } break; - case 22: /* reduce AVarE6 */ + case 22: /* reduce ANombreE6 */ { ArrayList<Object> list = new22(); - push(goTo(7), list); + push(goTo(9), list); } break; - case 23: /* reduce AAppelfncE6 */ + case 23: /* reduce AVraiE6 */ { ArrayList<Object> list = new23(); - push(goTo(7), list); + push(goTo(9), list); } break; - case 24: /* reduce AAffectationIns */ + case 24: /* reduce AFauxE6 */ { ArrayList<Object> list = new24(); - push(goTo(8), list); + push(goTo(9), list); } break; - case 25: /* reduce ATqIns */ + case 25: /* reduce ALireE6 */ { ArrayList<Object> list = new25(); - push(goTo(8), list); + push(goTo(9), list); } break; - case 26: /* reduce ASiIns */ + case 26: /* reduce AVarE6 */ { ArrayList<Object> list = new26(); - push(goTo(8), list); + push(goTo(9), list); } break; - case 27: /* reduce ASisinonIns */ + case 27: /* reduce AAppelfncE6 */ { ArrayList<Object> list = new27(); - push(goTo(8), list); + push(goTo(9), list); } break; - case 28: /* reduce AReturnIns */ + case 28: /* reduce AAffectationIns */ { ArrayList<Object> list = new28(); - push(goTo(8), list); + push(goTo(10), list); } break; - case 29: /* reduce AWriteIns */ + case 29: /* reduce ATqIns */ { ArrayList<Object> list = new29(); - push(goTo(8), list); + push(goTo(10), list); } break; - case 30: /* reduce AAppelfncIns */ + case 30: /* reduce ASiIns */ { ArrayList<Object> list = new30(); - push(goTo(8), list); + push(goTo(10), list); } break; - case 31: /* reduce AInstrBloc */ + case 31: /* reduce ASisinonIns */ { ArrayList<Object> list = new31(); - push(goTo(9), list); + push(goTo(10), list); } break; - case 32: /* reduce AListeinstrLi */ + case 32: /* reduce AReturnIns */ { ArrayList<Object> list = new32(); push(goTo(10), list); } break; - case 33: /* reduce AEpsilon$1Li */ + case 33: /* reduce AWriteIns */ { ArrayList<Object> list = new33(); push(goTo(10), list); } break; - case 34: /* reduce AExprLe */ + case 34: /* reduce AAppelfncIns */ { ArrayList<Object> list = new34(); - push(goTo(11), list); + push(goTo(10), list); } break; - case 35: /* reduce AEpsilon$1Le */ + case 35: /* reduce AInstrBloc */ { ArrayList<Object> list = new35(); push(goTo(11), list); } break; - case 36: /* reduce ALstexprLse */ + case 36: /* reduce AListeinstrLi */ { ArrayList<Object> list = new36(); push(goTo(12), list); } break; - case 37: /* reduce AEpsilon$1Lse */ + case 37: /* reduce AEpsilon$1Li */ { ArrayList<Object> list = new37(); push(goTo(12), list); } break; - case 38: /* reduce AIdVar */ + case 38: /* reduce AExprLe */ { ArrayList<Object> list = new38(); push(goTo(13), list); } break; - case 39: /* reduce AIdCrochetVar */ + case 39: /* reduce AEpsilon$1Le */ { ArrayList<Object> list = new39(); push(goTo(13), list); } break; - case 40: /* reduce ADeclavariableDecvar */ + case 40: /* reduce ALstexprLse */ { ArrayList<Object> list = new40(); push(goTo(14), list); } break; - case 41: /* reduce ADecvar */ + case 41: /* reduce AEpsilon$1Lse */ { ArrayList<Object> list = new41(); push(goTo(14), list); } break; - case 42: /* reduce ATypeType */ + case 42: /* reduce AIdVar */ { ArrayList<Object> list = new42(); push(goTo(15), list); } break; - case 43: /* reduce AType */ + case 43: /* reduce AIdCrochetVar */ { ArrayList<Object> list = new43(); push(goTo(15), list); } break; - case 44: /* reduce ADeclafonc$Lstdeclacvar1$Lstdeclacvar2$Typeopt1Decfonc */ + case 44: /* reduce ADeclavariableDecvar */ { ArrayList<Object> list = new44(); push(goTo(16), list); } break; - case 45: /* reduce ADeclafonc$Lstdeclacvar1$Lstdeclacvar2$11Decfonc */ + case 45: /* reduce ADecvar */ { ArrayList<Object> list = new45(); push(goTo(16), list); } break; - case 46: /* reduce ADeclafonc$Lstdeclacvar1$12$Typeopt1Decfonc */ + case 46: /* reduce ATypeType */ { ArrayList<Object> list = new46(); - push(goTo(16), list); + push(goTo(17), list); } break; - case 47: /* reduce ADeclafonc$Lstdeclacvar1$12$11Decfonc */ + case 47: /* reduce AType */ { ArrayList<Object> list = new47(); - push(goTo(16), list); + push(goTo(17), list); } break; - case 48: /* reduce ADeclafonc$11$Lstdeclacvar2$Typeopt1Decfonc */ + case 48: /* reduce ADeclafonc$Lstdeclacvar1$Lstdeclacvar2$Typeopt1Decfonc */ { ArrayList<Object> list = new48(); - push(goTo(16), list); + push(goTo(18), list); } break; - case 49: /* reduce ADeclafonc$11$Lstdeclacvar2$11Decfonc */ + case 49: /* reduce ADeclafonc$Lstdeclacvar1$Lstdeclacvar2$11Decfonc */ { ArrayList<Object> list = new49(); - push(goTo(16), list); + push(goTo(18), list); } break; - case 50: /* reduce ADeclafonc$11$12$Typeopt1Decfonc */ + case 50: /* reduce ADeclafonc$Lstdeclacvar1$12$Typeopt1Decfonc */ { ArrayList<Object> list = new50(); - push(goTo(16), list); + push(goTo(18), list); } break; - case 51: /* reduce ADeclafonc$11$12$11Decfonc */ + case 51: /* reduce ADeclafonc$Lstdeclacvar1$12$11Decfonc */ { ArrayList<Object> list = new51(); - push(goTo(16), list); + push(goTo(18), list); } break; - case 52: /* reduce ASuitedeclvarSuitedec */ + case 52: /* reduce ADeclafonc$11$Lstdeclacvar2$Typeopt1Decfonc */ { ArrayList<Object> list = new52(); - push(goTo(17), list); + push(goTo(18), list); } break; - case 53: /* reduce A1Suitedec */ + case 53: /* reduce ADeclafonc$11$Lstdeclacvar2$11Decfonc */ { ArrayList<Object> list = new53(); - push(goTo(17), list); + push(goTo(18), list); } break; - case 54: /* reduce ALstdecfncLdf */ + case 54: /* reduce ADeclafonc$11$12$Typeopt1Decfonc */ { ArrayList<Object> list = new54(); push(goTo(18), list); } break; - case 55: /* reduce A1Ldf */ + case 55: /* reduce ADeclafonc$11$12$11Decfonc */ { ArrayList<Object> list = new55(); push(goTo(18), list); } break; + case 56: /* reduce ASuitedeclvarSuitedec */ + { + ArrayList<Object> list = new56(); + push(goTo(19), list); + } + break; + case 57: /* reduce A1Suitedec */ + { + ArrayList<Object> list = new57(); + push(goTo(19), list); + } + break; + case 58: /* reduce ALstdecfncLdf */ + { + ArrayList<Object> list = new58(); + push(goTo(20), list); + } + break; + case 59: /* reduce A1Ldf */ + { + ArrayList<Object> list = new59(); + push(goTo(20), list); + } + break; } } @@ -771,12 +795,12 @@ public class Parser // Block PAdd paddNode2; TPlus tplusNode3; - PMult pmultNode4; + PMod pmodNode4; paddNode2 = (PAdd)nodeArrayList1.get(0); tplusNode3 = (TPlus)nodeArrayList2.get(0); - pmultNode4 = (PMult)nodeArrayList3.get(0); + pmodNode4 = (PMod)nodeArrayList3.get(0); - paddNode1 = new APlusAdd(paddNode2, tplusNode3, pmultNode4); + paddNode1 = new APlusAdd(paddNode2, tplusNode3, pmodNode4); } nodeList.add(paddNode1); return nodeList; @@ -797,12 +821,12 @@ public class Parser // Block PAdd paddNode2; TMoins tmoinsNode3; - PMult pmultNode4; + PMod pmodNode4; paddNode2 = (PAdd)nodeArrayList1.get(0); tmoinsNode3 = (TMoins)nodeArrayList2.get(0); - pmultNode4 = (PMult)nodeArrayList3.get(0); + pmodNode4 = (PMod)nodeArrayList3.get(0); - paddNode1 = new AMoinsAdd(paddNode2, tmoinsNode3, pmultNode4); + paddNode1 = new AMoinsAdd(paddNode2, tmoinsNode3, pmodNode4); } nodeList.add(paddNode1); return nodeList; @@ -811,27 +835,73 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new11() /* reduce AMultAdd */ + ArrayList<Object> new11() /* reduce AModAdd */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @SuppressWarnings("unused") ArrayList<Object> nodeArrayList1 = pop(); PAdd paddNode1; + { + // Block + PMod pmodNode2; + pmodNode2 = (PMod)nodeArrayList1.get(0); + + paddNode1 = new AModAdd(pmodNode2); + } + nodeList.add(paddNode1); + return nodeList; + } + + + + @SuppressWarnings({ "unchecked", "rawtypes" }) + ArrayList<Object> new12() /* reduce AModMod */ + { + @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); + + @SuppressWarnings("unused") ArrayList<Object> nodeArrayList3 = pop(); + @SuppressWarnings("unused") ArrayList<Object> nodeArrayList2 = pop(); + @SuppressWarnings("unused") ArrayList<Object> nodeArrayList1 = pop(); + PMod pmodNode1; + { + // Block + PMod pmodNode2; + TModulo tmoduloNode3; + PMult pmultNode4; + pmodNode2 = (PMod)nodeArrayList1.get(0); + tmoduloNode3 = (TModulo)nodeArrayList2.get(0); + pmultNode4 = (PMult)nodeArrayList3.get(0); + + pmodNode1 = new AModMod(pmodNode2, tmoduloNode3, pmultNode4); + } + nodeList.add(pmodNode1); + return nodeList; + } + + + + @SuppressWarnings({ "unchecked", "rawtypes" }) + ArrayList<Object> new13() /* reduce AMultMod */ + { + @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); + + @SuppressWarnings("unused") ArrayList<Object> nodeArrayList1 = pop(); + PMod pmodNode1; { // Block PMult pmultNode2; pmultNode2 = (PMult)nodeArrayList1.get(0); - paddNode1 = new AMultAdd(pmultNode2); + pmodNode1 = new AMultMod(pmultNode2); } - nodeList.add(paddNode1); + nodeList.add(pmodNode1); return nodeList; } @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new12() /* reduce AFoisMult */ + ArrayList<Object> new14() /* reduce AFoisMult */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -857,7 +927,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new13() /* reduce ADiviserMult */ + ArrayList<Object> new15() /* reduce ADiviserMult */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -883,27 +953,73 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new14() /* reduce ANegMult */ + ArrayList<Object> new16() /* reduce AAddtoMult */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @SuppressWarnings("unused") ArrayList<Object> nodeArrayList1 = pop(); PMult pmultNode1; + { + // Block + PAddto paddtoNode2; + paddtoNode2 = (PAddto)nodeArrayList1.get(0); + + pmultNode1 = new AAddtoMult(paddtoNode2); + } + nodeList.add(pmultNode1); + return nodeList; + } + + + + @SuppressWarnings({ "unchecked", "rawtypes" }) + ArrayList<Object> new17() /* reduce AAddtoAddto */ + { + @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); + + @SuppressWarnings("unused") ArrayList<Object> nodeArrayList3 = pop(); + @SuppressWarnings("unused") ArrayList<Object> nodeArrayList2 = pop(); + @SuppressWarnings("unused") ArrayList<Object> nodeArrayList1 = pop(); + PAddto paddtoNode1; + { + // Block + PAddto paddtoNode2; + TPlusegale tplusegaleNode3; + PNeg pnegNode4; + paddtoNode2 = (PAddto)nodeArrayList1.get(0); + tplusegaleNode3 = (TPlusegale)nodeArrayList2.get(0); + pnegNode4 = (PNeg)nodeArrayList3.get(0); + + paddtoNode1 = new AAddtoAddto(paddtoNode2, tplusegaleNode3, pnegNode4); + } + nodeList.add(paddtoNode1); + return nodeList; + } + + + + @SuppressWarnings({ "unchecked", "rawtypes" }) + ArrayList<Object> new18() /* reduce ANegAddto */ + { + @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); + + @SuppressWarnings("unused") ArrayList<Object> nodeArrayList1 = pop(); + PAddto paddtoNode1; { // Block PNeg pnegNode2; pnegNode2 = (PNeg)nodeArrayList1.get(0); - pmultNode1 = new ANegMult(pnegNode2); + paddtoNode1 = new ANegAddto(pnegNode2); } - nodeList.add(pmultNode1); + nodeList.add(paddtoNode1); return nodeList; } @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new15() /* reduce ANonNeg */ + ArrayList<Object> new19() /* reduce ANonNeg */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -926,7 +1042,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new16() /* reduce AE6Neg */ + ArrayList<Object> new20() /* reduce AE6Neg */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -946,7 +1062,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new17() /* reduce AParentheseE6 */ + ArrayList<Object> new21() /* reduce AParentheseE6 */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -972,7 +1088,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new18() /* reduce ANombreE6 */ + ArrayList<Object> new22() /* reduce ANombreE6 */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -992,7 +1108,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new19() /* reduce AVraiE6 */ + ArrayList<Object> new23() /* reduce AVraiE6 */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1012,7 +1128,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new20() /* reduce AFauxE6 */ + ArrayList<Object> new24() /* reduce AFauxE6 */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1032,7 +1148,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new21() /* reduce ALireE6 */ + ArrayList<Object> new25() /* reduce ALireE6 */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1058,7 +1174,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new22() /* reduce AVarE6 */ + ArrayList<Object> new26() /* reduce AVarE6 */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1078,7 +1194,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new23() /* reduce AAppelfncE6 */ + ArrayList<Object> new27() /* reduce AAppelfncE6 */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1107,7 +1223,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new24() /* reduce AAffectationIns */ + ArrayList<Object> new28() /* reduce AAffectationIns */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1136,7 +1252,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new25() /* reduce ATqIns */ + ArrayList<Object> new29() /* reduce ATqIns */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1165,7 +1281,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new26() /* reduce ASiIns */ + ArrayList<Object> new30() /* reduce ASiIns */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1194,7 +1310,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new27() /* reduce ASisinonIns */ + ArrayList<Object> new31() /* reduce ASisinonIns */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1229,7 +1345,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new28() /* reduce AReturnIns */ + ArrayList<Object> new32() /* reduce AReturnIns */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1255,7 +1371,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new29() /* reduce AWriteIns */ + ArrayList<Object> new33() /* reduce AWriteIns */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1287,7 +1403,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new30() /* reduce AAppelfncIns */ + ArrayList<Object> new34() /* reduce AAppelfncIns */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1319,7 +1435,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new31() /* reduce AInstrBloc */ + ArrayList<Object> new35() /* reduce AInstrBloc */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1345,7 +1461,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new32() /* reduce AListeinstrLi */ + ArrayList<Object> new36() /* reduce AListeinstrLi */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1368,7 +1484,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new33() /* reduce AEpsilon$1Li */ + ArrayList<Object> new37() /* reduce AEpsilon$1Li */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1391,7 +1507,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new34() /* reduce AExprLe */ + ArrayList<Object> new38() /* reduce AExprLe */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1414,7 +1530,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new35() /* reduce AEpsilon$1Le */ + ArrayList<Object> new39() /* reduce AEpsilon$1Le */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1437,7 +1553,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new36() /* reduce ALstexprLse */ + ArrayList<Object> new40() /* reduce ALstexprLse */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1463,7 +1579,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new37() /* reduce AEpsilon$1Lse */ + ArrayList<Object> new41() /* reduce AEpsilon$1Lse */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1486,7 +1602,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new38() /* reduce AIdVar */ + ArrayList<Object> new42() /* reduce AIdVar */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1506,7 +1622,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new39() /* reduce AIdCrochetVar */ + ArrayList<Object> new43() /* reduce AIdCrochetVar */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1535,7 +1651,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new40() /* reduce ADeclavariableDecvar */ + ArrayList<Object> new44() /* reduce ADeclavariableDecvar */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1558,7 +1674,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new41() /* reduce ADecvar */ + ArrayList<Object> new45() /* reduce ADecvar */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1590,7 +1706,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new42() /* reduce ATypeType */ + ArrayList<Object> new46() /* reduce ATypeType */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1610,7 +1726,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new43() /* reduce AType */ + ArrayList<Object> new47() /* reduce AType */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1630,7 +1746,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new44() /* reduce ADeclafonc$Lstdeclacvar1$Lstdeclacvar2$Typeopt1Decfonc */ + ArrayList<Object> new48() /* reduce ADeclafonc$Lstdeclacvar1$Lstdeclacvar2$Typeopt1Decfonc */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1692,7 +1808,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new45() /* reduce ADeclafonc$Lstdeclacvar1$Lstdeclacvar2$11Decfonc */ + ArrayList<Object> new49() /* reduce ADeclafonc$Lstdeclacvar1$Lstdeclacvar2$11Decfonc */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1757,7 +1873,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new46() /* reduce ADeclafonc$Lstdeclacvar1$12$Typeopt1Decfonc */ + ArrayList<Object> new50() /* reduce ADeclafonc$Lstdeclacvar1$12$Typeopt1Decfonc */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1819,7 +1935,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new47() /* reduce ADeclafonc$Lstdeclacvar1$12$11Decfonc */ + ArrayList<Object> new51() /* reduce ADeclafonc$Lstdeclacvar1$12$11Decfonc */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1884,7 +2000,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new48() /* reduce ADeclafonc$11$Lstdeclacvar2$Typeopt1Decfonc */ + ArrayList<Object> new52() /* reduce ADeclafonc$11$Lstdeclacvar2$Typeopt1Decfonc */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1946,7 +2062,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new49() /* reduce ADeclafonc$11$Lstdeclacvar2$11Decfonc */ + ArrayList<Object> new53() /* reduce ADeclafonc$11$Lstdeclacvar2$11Decfonc */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -2011,7 +2127,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new50() /* reduce ADeclafonc$11$12$Typeopt1Decfonc */ + ArrayList<Object> new54() /* reduce ADeclafonc$11$12$Typeopt1Decfonc */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -2073,7 +2189,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new51() /* reduce ADeclafonc$11$12$11Decfonc */ + ArrayList<Object> new55() /* reduce ADeclafonc$11$12$11Decfonc */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -2138,7 +2254,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new52() /* reduce ASuitedeclvarSuitedec */ + ArrayList<Object> new56() /* reduce ASuitedeclvarSuitedec */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -2164,7 +2280,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new53() /* reduce A1Suitedec */ + ArrayList<Object> new57() /* reduce A1Suitedec */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -2187,7 +2303,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new54() /* reduce ALstdecfncLdf */ + ArrayList<Object> new58() /* reduce ALstdecfncLdf */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -2210,7 +2326,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new55() /* reduce A1Ldf */ + ArrayList<Object> new59() /* reduce A1Ldf */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -2234,154 +2350,162 @@ public class Parser private static int[][][] actionTable; /* { - {{-1, REDUCE, 55}, {17, SHIFT, 1}, {18, SHIFT, 2}, {30, SHIFT, 3}, }, - {{-1, REDUCE, 42}, }, - {{-1, REDUCE, 43}, }, - {{-1, ERROR, 3}, {11, SHIFT, 9}, }, - {{-1, ERROR, 4}, {31, ACCEPT, -1}, }, - {{-1, REDUCE, 53}, {5, SHIFT, 10}, }, - {{-1, ERROR, 6}, {30, SHIFT, 12}, }, - {{-1, REDUCE, 55}, {17, SHIFT, 1}, {18, SHIFT, 2}, {30, SHIFT, 3}, }, + {{-1, REDUCE, 59}, {19, SHIFT, 1}, {20, SHIFT, 2}, {32, SHIFT, 3}, }, + {{-1, REDUCE, 46}, }, + {{-1, REDUCE, 47}, }, + {{-1, ERROR, 3}, {13, SHIFT, 9}, }, + {{-1, ERROR, 4}, {33, ACCEPT, -1}, }, + {{-1, REDUCE, 57}, {5, SHIFT, 10}, }, + {{-1, ERROR, 6}, {32, SHIFT, 12}, }, + {{-1, REDUCE, 59}, {19, SHIFT, 1}, {20, SHIFT, 2}, {32, SHIFT, 3}, }, {{-1, REDUCE, 1}, }, - {{-1, ERROR, 9}, {12, SHIFT, 15}, {17, SHIFT, 1}, {18, SHIFT, 2}, }, - {{-1, ERROR, 10}, {17, SHIFT, 1}, {18, SHIFT, 2}, }, - {{-1, REDUCE, 55}, {17, SHIFT, 1}, {18, SHIFT, 2}, {30, SHIFT, 3}, }, - {{-1, REDUCE, 40}, {11, SHIFT, 20}, {15, SHIFT, 21}, }, - {{-1, ERROR, 13}, {30, SHIFT, 22}, }, - {{-1, REDUCE, 54}, }, - {{-1, ERROR, 15}, {13, SHIFT, 23}, {17, SHIFT, 1}, {18, SHIFT, 2}, }, - {{-1, REDUCE, 53}, {5, SHIFT, 10}, }, - {{-1, ERROR, 17}, {30, SHIFT, 27}, }, - {{-1, REDUCE, 53}, {5, SHIFT, 10}, }, + {{-1, ERROR, 9}, {14, SHIFT, 15}, {19, SHIFT, 1}, {20, SHIFT, 2}, }, + {{-1, ERROR, 10}, {19, SHIFT, 1}, {20, SHIFT, 2}, }, + {{-1, REDUCE, 59}, {19, SHIFT, 1}, {20, SHIFT, 2}, {32, SHIFT, 3}, }, + {{-1, REDUCE, 44}, {13, SHIFT, 20}, {17, SHIFT, 21}, }, + {{-1, ERROR, 13}, {32, SHIFT, 22}, }, + {{-1, REDUCE, 58}, }, + {{-1, ERROR, 15}, {15, SHIFT, 23}, {19, SHIFT, 1}, {20, SHIFT, 2}, }, + {{-1, REDUCE, 57}, {5, SHIFT, 10}, }, + {{-1, ERROR, 17}, {32, SHIFT, 27}, }, + {{-1, REDUCE, 57}, {5, SHIFT, 10}, }, {{-1, REDUCE, 0}, }, - {{-1, ERROR, 20}, {12, SHIFT, 29}, {17, SHIFT, 1}, {18, SHIFT, 2}, }, - {{-1, ERROR, 21}, {27, SHIFT, 31}, }, - {{-1, ERROR, 22}, {11, SHIFT, 20}, }, - {{-1, REDUCE, 33}, {19, SHIFT, 32}, {21, SHIFT, 33}, {24, SHIFT, 34}, {26, SHIFT, 35}, {30, SHIFT, 36}, }, + {{-1, ERROR, 20}, {14, SHIFT, 29}, {19, SHIFT, 1}, {20, SHIFT, 2}, }, + {{-1, ERROR, 21}, {29, SHIFT, 31}, }, + {{-1, ERROR, 22}, {13, SHIFT, 20}, }, + {{-1, REDUCE, 37}, {21, SHIFT, 32}, {23, SHIFT, 33}, {26, SHIFT, 34}, {28, SHIFT, 35}, {32, SHIFT, 36}, }, + {{-1, REDUCE, 55}, }, + {{-1, REDUCE, 57}, {5, SHIFT, 10}, }, + {{-1, ERROR, 26}, {14, SHIFT, 41}, }, + {{-1, REDUCE, 44}, {17, SHIFT, 21}, }, + {{-1, REDUCE, 56}, }, + {{-1, ERROR, 29}, {15, SHIFT, 23}, {19, SHIFT, 1}, {20, SHIFT, 2}, }, + {{-1, REDUCE, 57}, {5, SHIFT, 10}, }, + {{-1, ERROR, 31}, {18, SHIFT, 45}, }, + {{-1, ERROR, 32}, {10, SHIFT, 46}, {13, SHIFT, 47}, {27, SHIFT, 48}, {29, SHIFT, 49}, {30, SHIFT, 50}, {31, SHIFT, 51}, {32, SHIFT, 52}, }, + {{-1, ERROR, 33}, {10, SHIFT, 46}, {13, SHIFT, 47}, {27, SHIFT, 48}, {29, SHIFT, 49}, {30, SHIFT, 50}, {31, SHIFT, 51}, {32, SHIFT, 52}, }, + {{-1, ERROR, 34}, {10, SHIFT, 46}, {13, SHIFT, 47}, {27, SHIFT, 48}, {29, SHIFT, 49}, {30, SHIFT, 50}, {31, SHIFT, 51}, {32, SHIFT, 52}, }, + {{-1, ERROR, 35}, {13, SHIFT, 65}, }, + {{-1, REDUCE, 42}, {13, SHIFT, 66}, {17, SHIFT, 67}, }, + {{-1, REDUCE, 37}, {21, SHIFT, 32}, {23, SHIFT, 33}, {26, SHIFT, 34}, {28, SHIFT, 35}, {32, SHIFT, 36}, }, + {{-1, ERROR, 38}, {16, SHIFT, 69}, }, + {{-1, ERROR, 39}, {6, SHIFT, 70}, }, + {{-1, ERROR, 40}, {15, SHIFT, 23}, }, + {{-1, ERROR, 41}, {15, SHIFT, 23}, {19, SHIFT, 1}, {20, SHIFT, 2}, }, + {{-1, REDUCE, 54}, }, + {{-1, REDUCE, 57}, {5, SHIFT, 10}, }, + {{-1, ERROR, 44}, {14, SHIFT, 75}, }, + {{-1, REDUCE, 45}, }, + {{-1, ERROR, 46}, {10, SHIFT, 46}, {13, SHIFT, 47}, {27, SHIFT, 48}, {29, SHIFT, 49}, {30, SHIFT, 50}, {31, SHIFT, 51}, {32, SHIFT, 52}, }, + {{-1, ERROR, 47}, {10, SHIFT, 46}, {13, SHIFT, 47}, {27, SHIFT, 48}, {29, SHIFT, 49}, {30, SHIFT, 50}, {31, SHIFT, 51}, {32, SHIFT, 52}, }, + {{-1, ERROR, 48}, {13, SHIFT, 78}, }, + {{-1, REDUCE, 22}, }, + {{-1, REDUCE, 23}, }, + {{-1, REDUCE, 24}, }, + {{-1, REDUCE, 42}, {13, SHIFT, 79}, {17, SHIFT, 67}, }, + {{-1, ERROR, 53}, {3, SHIFT, 80}, {22, SHIFT, 81}, }, + {{-1, REDUCE, 3}, {4, SHIFT, 82}, }, + {{-1, REDUCE, 5}, {6, SHIFT, 83}, {7, SHIFT, 84}, }, + {{-1, REDUCE, 8}, {0, SHIFT, 85}, {2, SHIFT, 86}, }, + {{-1, REDUCE, 11}, {11, SHIFT, 87}, }, + {{-1, REDUCE, 13}, {8, SHIFT, 88}, {9, SHIFT, 89}, }, + {{-1, REDUCE, 16}, {12, SHIFT, 90}, }, + {{-1, REDUCE, 18}, }, + {{-1, REDUCE, 20}, }, + {{-1, REDUCE, 26}, }, + {{-1, ERROR, 63}, {3, SHIFT, 80}, {24, SHIFT, 91}, }, + {{-1, ERROR, 64}, {1, SHIFT, 92}, {3, SHIFT, 80}, }, + {{-1, ERROR, 65}, {10, SHIFT, 46}, {13, SHIFT, 47}, {27, SHIFT, 48}, {29, SHIFT, 49}, {30, SHIFT, 50}, {31, SHIFT, 51}, {32, SHIFT, 52}, }, + {{-1, REDUCE, 39}, {10, SHIFT, 46}, {13, SHIFT, 47}, {27, SHIFT, 48}, {29, SHIFT, 49}, {30, SHIFT, 50}, {31, SHIFT, 51}, {32, SHIFT, 52}, }, + {{-1, ERROR, 67}, {10, SHIFT, 46}, {13, SHIFT, 47}, {27, SHIFT, 48}, {29, SHIFT, 49}, {30, SHIFT, 50}, {31, SHIFT, 51}, {32, SHIFT, 52}, }, + {{-1, REDUCE, 36}, }, + {{-1, REDUCE, 35}, }, + {{-1, ERROR, 70}, {10, SHIFT, 46}, {13, SHIFT, 47}, {27, SHIFT, 48}, {29, SHIFT, 49}, {30, SHIFT, 50}, {31, SHIFT, 51}, {32, SHIFT, 52}, }, + {{-1, REDUCE, 53}, }, {{-1, REDUCE, 51}, }, - {{-1, REDUCE, 53}, {5, SHIFT, 10}, }, - {{-1, ERROR, 26}, {12, SHIFT, 41}, }, - {{-1, REDUCE, 40}, {15, SHIFT, 21}, }, + {{-1, REDUCE, 57}, {5, SHIFT, 10}, }, + {{-1, ERROR, 74}, {15, SHIFT, 23}, }, + {{-1, ERROR, 75}, {15, SHIFT, 23}, {19, SHIFT, 1}, {20, SHIFT, 2}, }, + {{-1, REDUCE, 19}, }, + {{-1, ERROR, 77}, {3, SHIFT, 80}, {14, SHIFT, 102}, }, + {{-1, ERROR, 78}, {14, SHIFT, 103}, }, + {{-1, REDUCE, 39}, {10, SHIFT, 46}, {13, SHIFT, 47}, {27, SHIFT, 48}, {29, SHIFT, 49}, {30, SHIFT, 50}, {31, SHIFT, 51}, {32, SHIFT, 52}, }, + {{-1, ERROR, 80}, {10, SHIFT, 46}, {13, SHIFT, 47}, {27, SHIFT, 48}, {29, SHIFT, 49}, {30, SHIFT, 50}, {31, SHIFT, 51}, {32, SHIFT, 52}, }, + {{-1, ERROR, 81}, {15, SHIFT, 23}, }, + {{-1, ERROR, 82}, {10, SHIFT, 46}, {13, SHIFT, 47}, {27, SHIFT, 48}, {29, SHIFT, 49}, {30, SHIFT, 50}, {31, SHIFT, 51}, {32, SHIFT, 52}, }, + {{-1, ERROR, 83}, {10, SHIFT, 46}, {13, SHIFT, 47}, {27, SHIFT, 48}, {29, SHIFT, 49}, {30, SHIFT, 50}, {31, SHIFT, 51}, {32, SHIFT, 52}, }, + {{-1, ERROR, 84}, {10, SHIFT, 46}, {13, SHIFT, 47}, {27, SHIFT, 48}, {29, SHIFT, 49}, {30, SHIFT, 50}, {31, SHIFT, 51}, {32, SHIFT, 52}, }, + {{-1, ERROR, 85}, {10, SHIFT, 46}, {13, SHIFT, 47}, {27, SHIFT, 48}, {29, SHIFT, 49}, {30, SHIFT, 50}, {31, SHIFT, 51}, {32, SHIFT, 52}, }, + {{-1, ERROR, 86}, {10, SHIFT, 46}, {13, SHIFT, 47}, {27, SHIFT, 48}, {29, SHIFT, 49}, {30, SHIFT, 50}, {31, SHIFT, 51}, {32, SHIFT, 52}, }, + {{-1, ERROR, 87}, {10, SHIFT, 46}, {13, SHIFT, 47}, {27, SHIFT, 48}, {29, SHIFT, 49}, {30, SHIFT, 50}, {31, SHIFT, 51}, {32, SHIFT, 52}, }, + {{-1, ERROR, 88}, {10, SHIFT, 46}, {13, SHIFT, 47}, {27, SHIFT, 48}, {29, SHIFT, 49}, {30, SHIFT, 50}, {31, SHIFT, 51}, {32, SHIFT, 52}, }, + {{-1, ERROR, 89}, {10, SHIFT, 46}, {13, SHIFT, 47}, {27, SHIFT, 48}, {29, SHIFT, 49}, {30, SHIFT, 50}, {31, SHIFT, 51}, {32, SHIFT, 52}, }, + {{-1, ERROR, 90}, {10, SHIFT, 46}, {13, SHIFT, 47}, {27, SHIFT, 48}, {29, SHIFT, 49}, {30, SHIFT, 50}, {31, SHIFT, 51}, {32, SHIFT, 52}, }, + {{-1, ERROR, 91}, {15, SHIFT, 23}, }, + {{-1, REDUCE, 32}, }, + {{-1, ERROR, 93}, {3, SHIFT, 80}, {14, SHIFT, 117}, }, + {{-1, REDUCE, 41}, {3, SHIFT, 80}, {5, SHIFT, 118}, }, + {{-1, ERROR, 95}, {14, SHIFT, 120}, }, + {{-1, ERROR, 96}, {3, SHIFT, 80}, {18, SHIFT, 121}, }, + {{-1, ERROR, 97}, {1, SHIFT, 122}, {3, SHIFT, 80}, }, + {{-1, ERROR, 98}, {15, SHIFT, 23}, }, {{-1, REDUCE, 52}, }, - {{-1, ERROR, 29}, {13, SHIFT, 23}, {17, SHIFT, 1}, {18, SHIFT, 2}, }, - {{-1, REDUCE, 53}, {5, SHIFT, 10}, }, - {{-1, ERROR, 31}, {16, SHIFT, 45}, }, - {{-1, ERROR, 32}, {10, SHIFT, 46}, {11, SHIFT, 47}, {25, SHIFT, 48}, {27, SHIFT, 49}, {28, SHIFT, 50}, {29, SHIFT, 51}, {30, SHIFT, 52}, }, - {{-1, ERROR, 33}, {10, SHIFT, 46}, {11, SHIFT, 47}, {25, SHIFT, 48}, {27, SHIFT, 49}, {28, SHIFT, 50}, {29, SHIFT, 51}, {30, SHIFT, 52}, }, - {{-1, ERROR, 34}, {10, SHIFT, 46}, {11, SHIFT, 47}, {25, SHIFT, 48}, {27, SHIFT, 49}, {28, SHIFT, 50}, {29, SHIFT, 51}, {30, SHIFT, 52}, }, - {{-1, ERROR, 35}, {11, SHIFT, 63}, }, - {{-1, REDUCE, 38}, {11, SHIFT, 64}, {15, SHIFT, 65}, }, - {{-1, REDUCE, 33}, {19, SHIFT, 32}, {21, SHIFT, 33}, {24, SHIFT, 34}, {26, SHIFT, 35}, {30, SHIFT, 36}, }, - {{-1, ERROR, 38}, {14, SHIFT, 67}, }, - {{-1, ERROR, 39}, {6, SHIFT, 68}, }, - {{-1, ERROR, 40}, {13, SHIFT, 23}, }, - {{-1, ERROR, 41}, {13, SHIFT, 23}, {17, SHIFT, 1}, {18, SHIFT, 2}, }, {{-1, REDUCE, 50}, }, - {{-1, REDUCE, 53}, {5, SHIFT, 10}, }, - {{-1, ERROR, 44}, {12, SHIFT, 73}, }, - {{-1, REDUCE, 41}, }, - {{-1, ERROR, 46}, {10, SHIFT, 46}, {11, SHIFT, 47}, {25, SHIFT, 48}, {27, SHIFT, 49}, {28, SHIFT, 50}, {29, SHIFT, 51}, {30, SHIFT, 52}, }, - {{-1, ERROR, 47}, {10, SHIFT, 46}, {11, SHIFT, 47}, {25, SHIFT, 48}, {27, SHIFT, 49}, {28, SHIFT, 50}, {29, SHIFT, 51}, {30, SHIFT, 52}, }, - {{-1, ERROR, 48}, {11, SHIFT, 76}, }, - {{-1, REDUCE, 18}, }, - {{-1, REDUCE, 19}, }, - {{-1, REDUCE, 20}, }, - {{-1, REDUCE, 38}, {11, SHIFT, 77}, {15, SHIFT, 65}, }, - {{-1, ERROR, 53}, {3, SHIFT, 78}, {20, SHIFT, 79}, }, - {{-1, REDUCE, 3}, {4, SHIFT, 80}, }, - {{-1, REDUCE, 5}, {6, SHIFT, 81}, {7, SHIFT, 82}, }, - {{-1, REDUCE, 8}, {0, SHIFT, 83}, {2, SHIFT, 84}, }, - {{-1, REDUCE, 11}, {8, SHIFT, 85}, {9, SHIFT, 86}, }, + {{-1, REDUCE, 57}, {5, SHIFT, 10}, }, + {{-1, REDUCE, 21}, }, + {{-1, REDUCE, 25}, }, + {{-1, ERROR, 104}, {14, SHIFT, 125}, }, + {{-1, REDUCE, 2}, {4, SHIFT, 82}, }, + {{-1, REDUCE, 30}, {25, SHIFT, 126}, }, + {{-1, REDUCE, 4}, {6, SHIFT, 83}, {7, SHIFT, 84}, }, + {{-1, REDUCE, 6}, {0, SHIFT, 85}, {2, SHIFT, 86}, }, + {{-1, REDUCE, 7}, {0, SHIFT, 85}, {2, SHIFT, 86}, }, + {{-1, REDUCE, 9}, {11, SHIFT, 87}, }, + {{-1, REDUCE, 10}, {11, SHIFT, 87}, }, + {{-1, REDUCE, 12}, {8, SHIFT, 88}, {9, SHIFT, 89}, }, {{-1, REDUCE, 14}, }, - {{-1, REDUCE, 16}, }, - {{-1, REDUCE, 22}, }, - {{-1, ERROR, 61}, {3, SHIFT, 78}, {22, SHIFT, 87}, }, - {{-1, ERROR, 62}, {1, SHIFT, 88}, {3, SHIFT, 78}, }, - {{-1, ERROR, 63}, {10, SHIFT, 46}, {11, SHIFT, 47}, {25, SHIFT, 48}, {27, SHIFT, 49}, {28, SHIFT, 50}, {29, SHIFT, 51}, {30, SHIFT, 52}, }, - {{-1, REDUCE, 35}, {10, SHIFT, 46}, {11, SHIFT, 47}, {25, SHIFT, 48}, {27, SHIFT, 49}, {28, SHIFT, 50}, {29, SHIFT, 51}, {30, SHIFT, 52}, }, - {{-1, ERROR, 65}, {10, SHIFT, 46}, {11, SHIFT, 47}, {25, SHIFT, 48}, {27, SHIFT, 49}, {28, SHIFT, 50}, {29, SHIFT, 51}, {30, SHIFT, 52}, }, - {{-1, REDUCE, 32}, }, - {{-1, REDUCE, 31}, }, - {{-1, ERROR, 68}, {10, SHIFT, 46}, {11, SHIFT, 47}, {25, SHIFT, 48}, {27, SHIFT, 49}, {28, SHIFT, 50}, {29, SHIFT, 51}, {30, SHIFT, 52}, }, - {{-1, REDUCE, 49}, }, - {{-1, REDUCE, 47}, }, - {{-1, REDUCE, 53}, {5, SHIFT, 10}, }, - {{-1, ERROR, 72}, {13, SHIFT, 23}, }, - {{-1, ERROR, 73}, {13, SHIFT, 23}, {17, SHIFT, 1}, {18, SHIFT, 2}, }, {{-1, REDUCE, 15}, }, - {{-1, ERROR, 75}, {3, SHIFT, 78}, {12, SHIFT, 98}, }, - {{-1, ERROR, 76}, {12, SHIFT, 99}, }, - {{-1, REDUCE, 35}, {10, SHIFT, 46}, {11, SHIFT, 47}, {25, SHIFT, 48}, {27, SHIFT, 49}, {28, SHIFT, 50}, {29, SHIFT, 51}, {30, SHIFT, 52}, }, - {{-1, ERROR, 78}, {10, SHIFT, 46}, {11, SHIFT, 47}, {25, SHIFT, 48}, {27, SHIFT, 49}, {28, SHIFT, 50}, {29, SHIFT, 51}, {30, SHIFT, 52}, }, - {{-1, ERROR, 79}, {13, SHIFT, 23}, }, - {{-1, ERROR, 80}, {10, SHIFT, 46}, {11, SHIFT, 47}, {25, SHIFT, 48}, {27, SHIFT, 49}, {28, SHIFT, 50}, {29, SHIFT, 51}, {30, SHIFT, 52}, }, - {{-1, ERROR, 81}, {10, SHIFT, 46}, {11, SHIFT, 47}, {25, SHIFT, 48}, {27, SHIFT, 49}, {28, SHIFT, 50}, {29, SHIFT, 51}, {30, SHIFT, 52}, }, - {{-1, ERROR, 82}, {10, SHIFT, 46}, {11, SHIFT, 47}, {25, SHIFT, 48}, {27, SHIFT, 49}, {28, SHIFT, 50}, {29, SHIFT, 51}, {30, SHIFT, 52}, }, - {{-1, ERROR, 83}, {10, SHIFT, 46}, {11, SHIFT, 47}, {25, SHIFT, 48}, {27, SHIFT, 49}, {28, SHIFT, 50}, {29, SHIFT, 51}, {30, SHIFT, 52}, }, - {{-1, ERROR, 84}, {10, SHIFT, 46}, {11, SHIFT, 47}, {25, SHIFT, 48}, {27, SHIFT, 49}, {28, SHIFT, 50}, {29, SHIFT, 51}, {30, SHIFT, 52}, }, - {{-1, ERROR, 85}, {10, SHIFT, 46}, {11, SHIFT, 47}, {25, SHIFT, 48}, {27, SHIFT, 49}, {28, SHIFT, 50}, {29, SHIFT, 51}, {30, SHIFT, 52}, }, - {{-1, ERROR, 86}, {10, SHIFT, 46}, {11, SHIFT, 47}, {25, SHIFT, 48}, {27, SHIFT, 49}, {28, SHIFT, 50}, {29, SHIFT, 51}, {30, SHIFT, 52}, }, - {{-1, ERROR, 87}, {13, SHIFT, 23}, }, - {{-1, REDUCE, 28}, }, - {{-1, ERROR, 89}, {3, SHIFT, 78}, {12, SHIFT, 111}, }, - {{-1, REDUCE, 37}, {3, SHIFT, 78}, {5, SHIFT, 112}, }, - {{-1, ERROR, 91}, {12, SHIFT, 114}, }, - {{-1, ERROR, 92}, {3, SHIFT, 78}, {16, SHIFT, 115}, }, - {{-1, ERROR, 93}, {1, SHIFT, 116}, {3, SHIFT, 78}, }, - {{-1, ERROR, 94}, {13, SHIFT, 23}, }, - {{-1, REDUCE, 48}, }, - {{-1, REDUCE, 46}, }, - {{-1, REDUCE, 53}, {5, SHIFT, 10}, }, {{-1, REDUCE, 17}, }, - {{-1, REDUCE, 21}, }, - {{-1, ERROR, 100}, {12, SHIFT, 119}, }, - {{-1, REDUCE, 2}, {4, SHIFT, 80}, }, - {{-1, REDUCE, 26}, {23, SHIFT, 120}, }, - {{-1, REDUCE, 4}, {6, SHIFT, 81}, {7, SHIFT, 82}, }, - {{-1, REDUCE, 6}, {0, SHIFT, 83}, {2, SHIFT, 84}, }, - {{-1, REDUCE, 7}, {0, SHIFT, 83}, {2, SHIFT, 84}, }, - {{-1, REDUCE, 9}, {8, SHIFT, 85}, {9, SHIFT, 86}, }, - {{-1, REDUCE, 10}, {8, SHIFT, 85}, {9, SHIFT, 86}, }, - {{-1, REDUCE, 12}, }, - {{-1, REDUCE, 13}, }, - {{-1, REDUCE, 25}, }, - {{-1, ERROR, 111}, {1, SHIFT, 121}, }, - {{-1, ERROR, 112}, {10, SHIFT, 46}, {11, SHIFT, 47}, {25, SHIFT, 48}, {27, SHIFT, 49}, {28, SHIFT, 50}, {29, SHIFT, 51}, {30, SHIFT, 52}, }, - {{-1, REDUCE, 34}, }, - {{-1, ERROR, 114}, {1, SHIFT, 123}, }, - {{-1, REDUCE, 39}, }, - {{-1, REDUCE, 24}, }, - {{-1, REDUCE, 45}, }, - {{-1, ERROR, 118}, {13, SHIFT, 23}, }, - {{-1, REDUCE, 23}, }, - {{-1, ERROR, 120}, {13, SHIFT, 23}, }, {{-1, REDUCE, 29}, }, - {{-1, REDUCE, 37}, {3, SHIFT, 78}, {5, SHIFT, 112}, }, - {{-1, REDUCE, 30}, }, - {{-1, REDUCE, 44}, }, + {{-1, ERROR, 117}, {1, SHIFT, 127}, }, + {{-1, ERROR, 118}, {10, SHIFT, 46}, {13, SHIFT, 47}, {27, SHIFT, 48}, {29, SHIFT, 49}, {30, SHIFT, 50}, {31, SHIFT, 51}, {32, SHIFT, 52}, }, + {{-1, REDUCE, 38}, }, + {{-1, ERROR, 120}, {1, SHIFT, 129}, }, + {{-1, REDUCE, 43}, }, + {{-1, REDUCE, 28}, }, + {{-1, REDUCE, 49}, }, + {{-1, ERROR, 124}, {15, SHIFT, 23}, }, {{-1, REDUCE, 27}, }, - {{-1, REDUCE, 36}, }, + {{-1, ERROR, 126}, {15, SHIFT, 23}, }, + {{-1, REDUCE, 33}, }, + {{-1, REDUCE, 41}, {3, SHIFT, 80}, {5, SHIFT, 118}, }, + {{-1, REDUCE, 34}, }, + {{-1, REDUCE, 48}, }, + {{-1, REDUCE, 31}, }, + {{-1, REDUCE, 40}, }, };*/ private static int[][][] gotoTable; /* { {{-1, 4}, }, - {{-1, 90}, {32, 53}, {33, 61}, {34, 62}, {47, 75}, {63, 89}, {65, 92}, {68, 93}, {112, 122}, }, - {{-1, 54}, {78, 101}, }, - {{-1, 55}, {80, 103}, }, - {{-1, 56}, {81, 104}, {82, 105}, }, - {{-1, 57}, {83, 106}, {84, 107}, }, - {{-1, 58}, {46, 74}, {85, 108}, {86, 109}, }, + {{-1, 94}, {32, 53}, {33, 63}, {34, 64}, {47, 77}, {65, 93}, {67, 96}, {70, 97}, {118, 128}, }, + {{-1, 54}, {80, 105}, }, + {{-1, 55}, {82, 107}, }, + {{-1, 56}, {83, 108}, {84, 109}, }, + {{-1, 57}, {85, 110}, {86, 111}, }, + {{-1, 58}, {87, 112}, }, {{-1, 59}, }, + {{-1, 60}, {46, 76}, {88, 113}, {89, 114}, {90, 115}, }, + {{-1, 61}, }, {{-1, 37}, }, - {{-1, 24}, {29, 42}, {40, 69}, {41, 70}, {72, 95}, {73, 96}, {79, 102}, {87, 110}, {94, 117}, {118, 124}, {120, 125}, }, - {{-1, 38}, {37, 66}, }, - {{-1, 91}, {77, 100}, }, - {{-1, 113}, {122, 126}, }, - {{-1, 60}, {23, 39}, {37, 39}, }, - {{-1, 5}, {9, 16}, {10, 18}, {15, 25}, {20, 30}, {29, 43}, {41, 71}, {73, 97}, }, + {{-1, 24}, {29, 42}, {40, 71}, {41, 72}, {74, 99}, {75, 100}, {81, 106}, {91, 116}, {98, 123}, {124, 130}, {126, 131}, }, + {{-1, 38}, {37, 68}, }, + {{-1, 95}, {79, 104}, }, + {{-1, 119}, {128, 132}, }, + {{-1, 62}, {23, 39}, {37, 39}, }, + {{-1, 5}, {9, 16}, {10, 18}, {15, 25}, {20, 30}, {29, 43}, {41, 73}, {75, 101}, }, {{-1, 17}, {0, 6}, {7, 13}, {11, 13}, }, {{-1, 7}, }, - {{-1, 11}, {16, 26}, {18, 28}, {25, 40}, {30, 44}, {43, 72}, {71, 94}, {97, 118}, }, + {{-1, 11}, {16, 26}, {18, 28}, {25, 40}, {30, 44}, {43, 74}, {73, 98}, {101, 124}, }, {{-1, 8}, {7, 14}, {11, 19}, }, };*/ private static String[] errorMessages; @@ -2409,12 +2533,14 @@ public class Parser "expecting: '}'", "expecting: '='", "expecting: '{'", - "expecting: '+', ';', '-', '|', '&', ',', '=', '<', '*', '/', ')', ']', 'alors', 'faire'", - "expecting: '+', ';', '-', '|', '&', ',', '=', '<', '*', '/', '(', ')', '[', ']', 'alors', 'faire'", + "expecting: '+', ';', '-', '|', '&', ',', '=', '<', '*', '/', '%', '+=', ')', ']', 'alors', 'faire'", + "expecting: '+', ';', '-', '|', '&', ',', '=', '<', '*', '/', '%', '+=', '(', ')', '[', ']', 'alors', 'faire'", "expecting: '|', 'alors'", "expecting: ';', '|', '&', ',', ')', ']', 'alors', 'faire'", "expecting: ';', '|', '&', ',', '=', '<', ')', ']', 'alors', 'faire'", "expecting: '+', ';', '-', '|', '&', ',', '=', '<', ')', ']', 'alors', 'faire'", + "expecting: '+', ';', '-', '|', '&', ',', '=', '<', '%', ')', ']', 'alors', 'faire'", + "expecting: '+', ';', '-', '|', '&', ',', '=', '<', '*', '/', '%', ')', ']', 'alors', 'faire'", "expecting: '|', 'faire'", "expecting: ';', '|'", "expecting: '!', '(', ')', 'lire', nombre, 'vrai', 'faux', id", @@ -2427,7 +2553,7 @@ public class Parser };*/ private static int[] errors; /* { - 0, 1, 1, 2, 3, 4, 1, 0, 3, 5, 6, 0, 7, 1, 3, 8, 9, 1, 10, 3, 5, 11, 2, 12, 0, 13, 14, 15, 16, 8, 9, 17, 18, 18, 18, 2, 19, 12, 20, 21, 22, 8, 0, 13, 14, 10, 18, 18, 2, 23, 23, 23, 24, 25, 26, 27, 28, 23, 23, 23, 23, 29, 30, 18, 31, 18, 20, 32, 18, 0, 0, 13, 22, 8, 23, 33, 14, 31, 18, 22, 18, 18, 18, 18, 18, 18, 18, 22, 12, 33, 34, 14, 35, 30, 22, 0, 0, 13, 23, 23, 14, 26, 36, 27, 28, 28, 23, 23, 23, 23, 12, 37, 18, 14, 37, 23, 12, 0, 22, 23, 22, 12, 34, 12, 0, 12, 14, + 0, 1, 1, 2, 3, 4, 1, 0, 3, 5, 6, 0, 7, 1, 3, 8, 9, 1, 10, 3, 5, 11, 2, 12, 0, 13, 14, 15, 16, 8, 9, 17, 18, 18, 18, 2, 19, 12, 20, 21, 22, 8, 0, 13, 14, 10, 18, 18, 2, 23, 23, 23, 24, 25, 26, 27, 28, 29, 30, 23, 23, 23, 23, 31, 32, 18, 33, 18, 20, 34, 18, 0, 0, 13, 22, 8, 23, 35, 14, 33, 18, 22, 18, 18, 18, 18, 18, 18, 18, 18, 18, 22, 12, 35, 36, 14, 37, 32, 22, 0, 0, 13, 23, 23, 14, 26, 38, 27, 28, 28, 29, 29, 30, 30, 30, 23, 12, 39, 18, 14, 39, 23, 12, 0, 22, 23, 22, 12, 36, 12, 0, 12, 14, };*/ static diff --git a/src/lParser/parser/TokenIndex.java b/src/lParser/parser/TokenIndex.java index e11fb83..86cac14 100644 --- a/src/lParser/parser/TokenIndex.java +++ b/src/lParser/parser/TokenIndex.java @@ -76,128 +76,140 @@ class TokenIndex extends AnalysisAdapter } @Override - public void caseTGparenthese(@SuppressWarnings("unused") TGparenthese node) + public void caseTModulo(@SuppressWarnings("unused") TModulo node) { this.index = 11; } @Override - public void caseTDparenthese(@SuppressWarnings("unused") TDparenthese node) + public void caseTPlusegale(@SuppressWarnings("unused") TPlusegale node) { this.index = 12; } @Override - public void caseTAccoladeg(@SuppressWarnings("unused") TAccoladeg node) + public void caseTGparenthese(@SuppressWarnings("unused") TGparenthese node) { this.index = 13; } @Override - public void caseTAccoladed(@SuppressWarnings("unused") TAccoladed node) + public void caseTDparenthese(@SuppressWarnings("unused") TDparenthese node) { this.index = 14; } @Override - public void caseTCrochetg(@SuppressWarnings("unused") TCrochetg node) + public void caseTAccoladeg(@SuppressWarnings("unused") TAccoladeg node) { this.index = 15; } @Override - public void caseTCrochetd(@SuppressWarnings("unused") TCrochetd node) + public void caseTAccoladed(@SuppressWarnings("unused") TAccoladed node) { this.index = 16; } @Override - public void caseTBool(@SuppressWarnings("unused") TBool node) + public void caseTCrochetg(@SuppressWarnings("unused") TCrochetg node) { this.index = 17; } @Override - public void caseTEntier(@SuppressWarnings("unused") TEntier node) + public void caseTCrochetd(@SuppressWarnings("unused") TCrochetd node) { this.index = 18; } @Override - public void caseTSi(@SuppressWarnings("unused") TSi node) + public void caseTBool(@SuppressWarnings("unused") TBool node) { this.index = 19; } @Override - public void caseTAlors(@SuppressWarnings("unused") TAlors node) + public void caseTEntier(@SuppressWarnings("unused") TEntier node) { this.index = 20; } @Override - public void caseTTantque(@SuppressWarnings("unused") TTantque node) + public void caseTSi(@SuppressWarnings("unused") TSi node) { this.index = 21; } @Override - public void caseTFaire(@SuppressWarnings("unused") TFaire node) + public void caseTAlors(@SuppressWarnings("unused") TAlors node) { this.index = 22; } @Override - public void caseTSinon(@SuppressWarnings("unused") TSinon node) + public void caseTTantque(@SuppressWarnings("unused") TTantque node) { this.index = 23; } @Override - public void caseTRetourner(@SuppressWarnings("unused") TRetourner node) + public void caseTFaire(@SuppressWarnings("unused") TFaire node) { this.index = 24; } @Override - public void caseTLire(@SuppressWarnings("unused") TLire node) + public void caseTSinon(@SuppressWarnings("unused") TSinon node) { this.index = 25; } @Override - public void caseTEcrire(@SuppressWarnings("unused") TEcrire node) + public void caseTRetourner(@SuppressWarnings("unused") TRetourner node) { this.index = 26; } @Override - public void caseTNombre(@SuppressWarnings("unused") TNombre node) + public void caseTLire(@SuppressWarnings("unused") TLire node) { this.index = 27; } @Override - public void caseTVrai(@SuppressWarnings("unused") TVrai node) + public void caseTEcrire(@SuppressWarnings("unused") TEcrire node) { this.index = 28; } @Override - public void caseTFaux(@SuppressWarnings("unused") TFaux node) + public void caseTNombre(@SuppressWarnings("unused") TNombre node) { this.index = 29; } @Override - public void caseTId(@SuppressWarnings("unused") TId node) + public void caseTVrai(@SuppressWarnings("unused") TVrai node) { this.index = 30; } @Override - public void caseEOF(@SuppressWarnings("unused") EOF node) + public void caseTFaux(@SuppressWarnings("unused") TFaux node) { this.index = 31; } + + @Override + public void caseTId(@SuppressWarnings("unused") TId node) + { + this.index = 32; + } + + @Override + public void caseEOF(@SuppressWarnings("unused") EOF node) + { + this.index = 33; + } } diff --git a/src/lParser/parser/parser.dat b/src/lParser/parser/parser.dat index 9dbabdb8133515e879ff42809b35f9ed019ff33c..95f7cf6812ca2d7d1ef5b6136166c1adbe5aa50a 100644 GIT binary patch literal 9914 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 L4iF8J1JQf{B-^$n literal 9162 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 diff --git a/src/sa/Sc2sa.java b/src/sa/Sc2sa.java index 7b3d648..d8f0662 100644 --- a/src/sa/Sc2sa.java +++ b/src/sa/Sc2sa.java @@ -1,6 +1,7 @@ package sa; import lParser.analysis.*; import lParser.node.*; +import saParser.node.AModuloExp; import util.Type; public class Sc2sa extends DepthFirstAdapter @@ -152,7 +153,7 @@ public class Sc2sa extends DepthFirstAdapter node.getAdd().apply(this); op1=(SaExp) this.returnValue ; - node.getMult().apply(this); + node.getMod().apply(this); op2=(SaExp) this.returnValue ; this.returnValue = new SaExpAdd(op1,op2); @@ -167,13 +168,35 @@ public class Sc2sa extends DepthFirstAdapter node.getAdd().apply(this); op1=(SaExp) this.returnValue ; - node.getMult().apply(this); + node.getMod().apply(this); op2=(SaExp) this.returnValue ; this.returnValue = new SaExpSub(op1,op2); outAMoinsAdd(node); } + public void caseAAddtoAdd(AAddtoAddto node){ + SaExp op2 = null; + SaVar op1= null ; + + node.getAddto().apply(this); + op1 = (SaVar) this.returnValue; + this.returnValue = new SaIncr(op1,null); + + } + public void caseAmodmod(AModMod node){ + SaExp op1 = null ; + node.getMod().apply(this); + op1 = (SaExp) this.returnValue; + SaExp op2 = null ; + node.getMult().apply(this); + op2 = (SaExp) this.returnValue; + + this.returnValue = new SaExpModulo(op1,op2); + + } + +/* @Override public void caseAMultAdd(AMultAdd node) { @@ -181,7 +204,7 @@ public class Sc2sa extends DepthFirstAdapter node.getMult().apply(this); outAMultAdd(node); } - +*/ @Override public void caseAFoisMult(AFoisMult node) { @@ -214,17 +237,18 @@ public class Sc2sa extends DepthFirstAdapter this.returnValue = new SaExpDiv(op1, op2); outADiviserMult(node); } - +/* public void inANegMult(ANegMult node) { defaultIn(node); } - public void outANegMult(ANegMult node) + public void outANegMult(ANegMult node) { defaultOut(node); } + @Override public void caseANegMult(ANegMult node) { @@ -233,6 +257,7 @@ public class Sc2sa extends DepthFirstAdapter outANegMult(node); } + */ public void inANonNeg(ANonNeg node) { defaultIn(node); diff --git a/src/saParser/analysis/Analysis.java b/src/saParser/analysis/Analysis.java index 3e31ebf..98d490e 100644 --- a/src/saParser/analysis/Analysis.java +++ b/src/saParser/analysis/Analysis.java @@ -19,6 +19,7 @@ public interface Analysis extends Switch void caseAEqualExp(AEqualExp node); void caseAInfExp(AInfExp node); void caseAMultExp(AMultExp node); + void caseAModuloExp(AModuloExp node); void caseAOrExp(AOrExp node); void caseASubExp(ASubExp node); void caseANotExp(ANotExp node); @@ -29,6 +30,7 @@ public interface Analysis extends Switch void caseAIntExp(AIntExp node); void caseALireExp(ALireExp node); void caseAAffectInst(AAffectInst node); + void caseAIncrInst(AIncrInst node); void caseABlocInst(ABlocInst node); void caseAEcritureInst(AEcritureInst node); void caseARetourInst(ARetourInst node); @@ -73,12 +75,14 @@ public interface Analysis extends Switch void caseTSaexpint(TSaexpint node); void caseTSaexplire(TSaexplire node); void caseTSaexpmult(TSaexpmult node); + void caseTSaexpmodulo(TSaexpmodulo node); void caseTSaexpnot(TSaexpnot node); void caseTSaexpor(TSaexpor node); void caseTSaexpsub(TSaexpsub node); void caseTSaexpvar(TSaexpvar node); void caseTSaexpvrai(TSaexpvrai node); void caseTSainstaffect(TSainstaffect node); + void caseTSaincr(TSaincr node); void caseTSainstbloc(TSainstbloc node); void caseTSainstecriture(TSainstecriture node); void caseTSainstretour(TSainstretour node); diff --git a/src/saParser/analysis/AnalysisAdapter.java b/src/saParser/analysis/AnalysisAdapter.java index 2d1be4a..6f315c6 100644 --- a/src/saParser/analysis/AnalysisAdapter.java +++ b/src/saParser/analysis/AnalysisAdapter.java @@ -116,6 +116,12 @@ public class AnalysisAdapter implements Analysis defaultCase(node); } + @Override + public void caseAModuloExp(AModuloExp node) + { + defaultCase(node); + } + @Override public void caseAOrExp(AOrExp node) { @@ -176,6 +182,12 @@ public class AnalysisAdapter implements Analysis defaultCase(node); } + @Override + public void caseAIncrInst(AIncrInst node) + { + defaultCase(node); + } + @Override public void caseABlocInst(ABlocInst node) { @@ -434,6 +446,12 @@ public class AnalysisAdapter implements Analysis defaultCase(node); } + @Override + public void caseTSaexpmodulo(TSaexpmodulo node) + { + defaultCase(node); + } + @Override public void caseTSaexpnot(TSaexpnot node) { @@ -470,6 +488,12 @@ public class AnalysisAdapter implements Analysis defaultCase(node); } + @Override + public void caseTSaincr(TSaincr node) + { + defaultCase(node); + } + @Override public void caseTSainstbloc(TSainstbloc node) { diff --git a/src/saParser/analysis/DepthFirstAdapter.java b/src/saParser/analysis/DepthFirstAdapter.java index 80c2ee4..c5dd2b2 100644 --- a/src/saParser/analysis/DepthFirstAdapter.java +++ b/src/saParser/analysis/DepthFirstAdapter.java @@ -295,6 +295,43 @@ public class DepthFirstAdapter extends AnalysisAdapter outAMultExp(node); } + public void inAModuloExp(AModuloExp node) + { + defaultIn(node); + } + + public void outAModuloExp(AModuloExp node) + { + defaultOut(node); + } + + @Override + public void caseAModuloExp(AModuloExp node) + { + inAModuloExp(node); + if(node.getPo() != null) + { + node.getPo().apply(this); + } + if(node.getSaexpmodulo() != null) + { + node.getSaexpmodulo().apply(this); + } + if(node.getOp1() != null) + { + node.getOp1().apply(this); + } + if(node.getOp2() != null) + { + node.getOp2().apply(this); + } + if(node.getPf() != null) + { + node.getPf().apply(this); + } + outAModuloExp(node); + } + public void inAOrExp(AOrExp node) { defaultIn(node); @@ -589,6 +626,43 @@ public class DepthFirstAdapter extends AnalysisAdapter outAAffectInst(node); } + public void inAIncrInst(AIncrInst node) + { + defaultIn(node); + } + + public void outAIncrInst(AIncrInst node) + { + defaultOut(node); + } + + @Override + public void caseAIncrInst(AIncrInst node) + { + inAIncrInst(node); + if(node.getPo() != null) + { + node.getPo().apply(this); + } + if(node.getSaincr() != null) + { + node.getSaincr().apply(this); + } + if(node.getVar() != null) + { + node.getVar().apply(this); + } + if(node.getExp() != null) + { + node.getExp().apply(this); + } + if(node.getPf() != null) + { + node.getPf().apply(this); + } + outAIncrInst(node); + } + public void inABlocInst(ABlocInst node) { defaultIn(node); diff --git a/src/saParser/analysis/ReversedDepthFirstAdapter.java b/src/saParser/analysis/ReversedDepthFirstAdapter.java index 598cce6..9e9deb2 100644 --- a/src/saParser/analysis/ReversedDepthFirstAdapter.java +++ b/src/saParser/analysis/ReversedDepthFirstAdapter.java @@ -295,6 +295,43 @@ public class ReversedDepthFirstAdapter extends AnalysisAdapter outAMultExp(node); } + public void inAModuloExp(AModuloExp node) + { + defaultIn(node); + } + + public void outAModuloExp(AModuloExp node) + { + defaultOut(node); + } + + @Override + public void caseAModuloExp(AModuloExp node) + { + inAModuloExp(node); + if(node.getPf() != null) + { + node.getPf().apply(this); + } + if(node.getOp2() != null) + { + node.getOp2().apply(this); + } + if(node.getOp1() != null) + { + node.getOp1().apply(this); + } + if(node.getSaexpmodulo() != null) + { + node.getSaexpmodulo().apply(this); + } + if(node.getPo() != null) + { + node.getPo().apply(this); + } + outAModuloExp(node); + } + public void inAOrExp(AOrExp node) { defaultIn(node); @@ -589,6 +626,43 @@ public class ReversedDepthFirstAdapter extends AnalysisAdapter outAAffectInst(node); } + public void inAIncrInst(AIncrInst node) + { + defaultIn(node); + } + + public void outAIncrInst(AIncrInst node) + { + defaultOut(node); + } + + @Override + public void caseAIncrInst(AIncrInst node) + { + inAIncrInst(node); + if(node.getPf() != null) + { + node.getPf().apply(this); + } + if(node.getExp() != null) + { + node.getExp().apply(this); + } + if(node.getVar() != null) + { + node.getVar().apply(this); + } + if(node.getSaincr() != null) + { + node.getSaincr().apply(this); + } + if(node.getPo() != null) + { + node.getPo().apply(this); + } + outAIncrInst(node); + } + public void inABlocInst(ABlocInst node) { defaultIn(node); diff --git a/src/saParser/lexer/Lexer.java b/src/saParser/lexer/Lexer.java index 648ecb5..5529221 100644 --- a/src/saParser/lexer/Lexer.java +++ b/src/saParser/lexer/Lexer.java @@ -619,7 +619,6 @@ public class Lexer case 44: { @SuppressWarnings("hiding") Token token = new44( - getText(accept_length), start_line + 1, start_pos + 1); pushBack(accept_length); @@ -630,6 +629,27 @@ public class Lexer case 45: { @SuppressWarnings("hiding") Token token = new45( + start_line + 1, + start_pos + 1); + pushBack(accept_length); + this.pos = accept_pos; + this.line = accept_line; + return token; + } + case 46: + { + @SuppressWarnings("hiding") Token token = new46( + getText(accept_length), + start_line + 1, + start_pos + 1); + pushBack(accept_length); + this.pos = accept_pos; + this.line = accept_line; + return token; + } + case 47: + { + @SuppressWarnings("hiding") Token token = new47( getText(accept_length), start_line + 1, start_pos + 1); @@ -678,33 +698,35 @@ public class Lexer Token new16(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSaexpint(line, pos); } Token new17(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSaexplire(line, pos); } Token new18(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSaexpmult(line, pos); } - Token new19(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSaexpnot(line, pos); } - Token new20(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSaexpor(line, pos); } - Token new21(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSaexpsub(line, pos); } - Token new22(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSaexpvar(line, pos); } - Token new23(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSaexpvrai(line, pos); } - Token new24(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSainstaffect(line, pos); } - Token new25(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSainstbloc(line, pos); } - Token new26(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSainstecriture(line, pos); } - Token new27(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSainstretour(line, pos); } - Token new28(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSainstsi(line, pos); } - Token new29(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSainsttantque(line, pos); } - Token new30(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSaldecfonc(line, pos); } - Token new31(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSaldecvar(line, pos); } - Token new32(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSalexp(line, pos); } - Token new33(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSalinst(line, pos); } - Token new34(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSaprog(line, pos); } - Token new35(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSavarindicee(line, pos); } - Token new36(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSavarsimple(line, pos); } - Token new37(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TFaux(line, pos); } - Token new38(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TVrai(line, pos); } - Token new39(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TLire(line, pos); } - Token new40(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TNull(line, pos); } - Token new41(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TEntier(line, pos); } - Token new42(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TBool(line, pos); } - Token new43(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TNul(line, pos); } - Token new44(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TInteger(text, line, pos); } - Token new45(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TId(text, line, pos); } + Token new19(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSaexpmodulo(line, pos); } + Token new20(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSaexpnot(line, pos); } + Token new21(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSaexpor(line, pos); } + Token new22(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSaexpsub(line, pos); } + Token new23(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSaexpvar(line, pos); } + Token new24(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSaexpvrai(line, pos); } + Token new25(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSainstaffect(line, pos); } + Token new26(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSaincr(line, pos); } + Token new27(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSainstbloc(line, pos); } + Token new28(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSainstecriture(line, pos); } + Token new29(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSainstretour(line, pos); } + Token new30(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSainstsi(line, pos); } + Token new31(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSainsttantque(line, pos); } + Token new32(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSaldecfonc(line, pos); } + Token new33(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSaldecvar(line, pos); } + Token new34(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSalexp(line, pos); } + Token new35(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSalinst(line, pos); } + Token new36(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSaprog(line, pos); } + Token new37(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSavarindicee(line, pos); } + Token new38(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSavarsimple(line, pos); } + Token new39(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TFaux(line, pos); } + Token new40(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TVrai(line, pos); } + Token new41(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TLire(line, pos); } + Token new42(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TNull(line, pos); } + Token new43(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TEntier(line, pos); } + Token new44(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TBool(line, pos); } + Token new45(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TNul(line, pos); } + Token new46(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TInteger(text, line, pos); } + Token new47(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TId(text, line, pos); } private int getChar() throws IOException { @@ -809,150 +831,157 @@ public class Lexer {{48, 111, -31}, {112, 112, 57}, {113, 122, 20}, }, {{48, 90, -8}, {97, 98, 20}, {99, 99, 58}, {100, 122, 20}, }, {{48, 111, -31}, {112, 112, 59}, {113, 122, 20}, }, - {{48, 90, -8}, {97, 114, 20}, {115, 115, 60}, {116, 122, 20}, }, - {{48, 100, -32}, {101, 101, 61}, {102, 122, 20}, }, - {{48, 119, -33}, {120, 120, 62}, {121, 122, 20}, }, - {{48, 109, -14}, {110, 110, 63}, {111, 122, 20}, }, - {{48, 110, -13}, {111, 111, 64}, {112, 122, 20}, }, - {{48, 113, -18}, {114, 114, 65}, {115, 122, 20}, }, - {{48, 122, -8}, }, - {{48, 100, -32}, {101, 101, 66}, {102, 122, 20}, }, - {{48, 122, -8}, }, + {{48, 98, -45}, {99, 99, 60}, {100, 114, 20}, {115, 115, 61}, {116, 122, 20}, }, + {{48, 100, -32}, {101, 101, 62}, {102, 122, 20}, }, + {{48, 119, -33}, {120, 120, 63}, {121, 122, 20}, }, + {{48, 109, -14}, {110, 110, 64}, {111, 122, 20}, }, + {{48, 110, -13}, {111, 111, 65}, {112, 122, 20}, }, + {{48, 113, -18}, {114, 114, 66}, {115, 122, 20}, }, {{48, 122, -8}, }, + {{48, 100, -32}, {101, 101, 67}, {102, 122, 20}, }, {{48, 122, -8}, }, {{48, 122, -8}, }, - {{48, 100, -32}, {101, 101, 67}, {102, 122, 20}, }, - {{48, 57, 20}, {65, 69, 20}, {70, 70, 68}, {71, 83, 20}, {84, 84, 69}, {85, 85, 20}, {86, 86, 70}, {87, 122, -23}, }, - {{48, 57, 20}, {65, 65, 71}, {66, 67, 20}, {68, 68, 72}, {69, 69, 73}, {70, 70, 74}, {71, 72, 20}, {73, 73, 75}, {74, 75, 20}, {76, 76, 76}, {77, 77, 77}, {78, 78, 78}, {79, 79, 79}, {80, 82, 20}, {83, 83, 80}, {84, 85, 20}, {86, 86, 81}, {87, 122, -23}, }, - {{48, 115, -25}, {116, 116, 82}, {117, 122, 20}, }, - {{48, 98, -45}, {99, 99, 83}, {100, 122, 20}, }, - {{48, 111, -31}, {112, 112, 84}, {113, 122, 20}, }, - {{48, 114, -47}, {115, 115, 85}, {116, 122, 20}, }, - {{48, 90, -8}, {97, 102, 20}, {103, 103, 86}, {104, 122, 20}, }, - {{48, 57, 20}, {65, 72, 20}, {73, 73, 87}, {74, 82, 20}, {83, 83, 88}, {84, 90, 20}, {97, 122, 20}, }, - {{48, 113, -18}, {114, 114, 89}, {115, 122, 20}, }, - {{48, 107, -28}, {108, 108, 90}, {109, 122, 20}, }, - {{48, 110, -13}, {111, 111, 91}, {112, 122, 20}, }, - {{48, 90, -8}, {97, 97, 92}, {98, 122, 20}, }, - {{48, 90, -8}, {97, 97, 93}, {98, 122, 20}, }, - {{48, 90, -8}, {97, 99, 20}, {100, 100, 94}, {101, 109, 20}, {110, 110, 95}, {111, 111, 20}, {112, 112, 96}, {113, 122, 20}, }, - {{48, 104, -16}, {105, 105, 97}, {106, 122, 20}, }, - {{48, 90, -8}, {97, 112, 20}, {113, 113, 98}, {114, 122, 20}, }, - {{48, 90, -8}, {97, 97, 99}, {98, 122, 20}, }, - {{48, 109, -14}, {110, 110, 100}, {111, 122, 20}, }, - {{48, 104, -16}, {105, 105, 101}, {106, 122, 20}, }, - {{48, 116, -17}, {117, 117, 102}, {118, 122, 20}, }, - {{48, 110, -13}, {111, 111, 103}, {112, 122, 20}, }, - {{48, 113, -18}, {114, 114, 104}, {115, 122, 20}, }, - {{48, 116, -17}, {117, 117, 105}, {118, 122, 20}, }, - {{48, 90, -8}, {97, 97, 106}, {98, 113, 20}, {114, 114, 107}, {115, 122, 20}, }, - {{48, 57, 20}, {65, 65, 108}, {66, 66, 109}, {67, 68, 20}, {69, 69, 110}, {70, 81, 20}, {82, 82, 111}, {83, 83, 112}, {84, 84, 113}, {85, 90, 20}, {97, 122, 20}, }, - {{48, 69, -60}, {70, 70, 114}, {71, 85, 20}, {86, 86, 115}, {87, 122, -23}, }, {{48, 122, -8}, }, - {{48, 115, -25}, {116, 116, 116}, {117, 122, 20}, }, {{48, 122, -8}, }, - {{48, 109, -14}, {110, 110, 117}, {111, 122, 20}, }, - {{48, 104, -16}, {105, 105, 118}, {106, 122, 20}, }, + {{48, 100, -32}, {101, 101, 68}, {102, 122, 20}, }, + {{48, 57, 20}, {65, 69, 20}, {70, 70, 69}, {71, 83, 20}, {84, 84, 70}, {85, 85, 20}, {86, 86, 71}, {87, 122, -23}, }, + {{48, 57, 20}, {65, 65, 72}, {66, 67, 20}, {68, 68, 73}, {69, 69, 74}, {70, 70, 75}, {71, 72, 20}, {73, 73, 76}, {74, 75, 20}, {76, 76, 77}, {77, 77, 78}, {78, 78, 79}, {79, 79, 80}, {80, 82, 20}, {83, 83, 81}, {84, 85, 20}, {86, 86, 82}, {87, 122, -23}, }, + {{48, 113, -18}, {114, 114, 83}, {115, 122, 20}, }, + {{48, 115, -25}, {116, 116, 84}, {117, 122, 20}, }, + {{48, 98, -45}, {99, 99, 85}, {100, 122, 20}, }, + {{48, 111, -31}, {112, 112, 86}, {113, 122, 20}, }, + {{48, 90, -8}, {97, 114, 20}, {115, 115, 87}, {116, 122, 20}, }, + {{48, 90, -8}, {97, 102, 20}, {103, 103, 88}, {104, 122, 20}, }, + {{48, 57, 20}, {65, 72, 20}, {73, 73, 89}, {74, 82, 20}, {83, 83, 90}, {84, 90, 20}, {97, 122, 20}, }, + {{48, 113, -18}, {114, 114, 91}, {115, 122, 20}, }, + {{48, 107, -28}, {108, 108, 92}, {109, 122, 20}, }, + {{48, 110, -13}, {111, 111, 93}, {112, 122, 20}, }, + {{48, 90, -8}, {97, 97, 94}, {98, 122, 20}, }, + {{48, 90, -8}, {97, 97, 95}, {98, 122, 20}, }, + {{48, 90, -8}, {97, 99, 20}, {100, 100, 96}, {101, 109, 20}, {110, 110, 97}, {111, 111, 20}, {112, 112, 98}, {113, 122, 20}, }, + {{48, 104, -16}, {105, 105, 99}, {106, 122, 20}, }, + {{48, 90, -8}, {97, 112, 20}, {113, 113, 100}, {114, 122, 20}, }, + {{48, 90, -8}, {97, 97, 101}, {98, 122, 20}, }, + {{48, 109, -14}, {110, 110, 102}, {111, 122, 20}, }, + {{48, 104, -16}, {105, 105, 103}, {106, 122, 20}, }, + {{48, 110, -13}, {111, 111, 104}, {112, 116, 20}, {117, 117, 105}, {118, 122, 20}, }, + {{48, 110, -13}, {111, 111, 106}, {112, 122, 20}, }, + {{48, 113, -18}, {114, 114, 107}, {115, 122, 20}, }, + {{48, 116, -17}, {117, 117, 108}, {118, 122, 20}, }, + {{48, 90, -8}, {97, 97, 109}, {98, 113, 20}, {114, 114, 110}, {115, 122, 20}, }, {{48, 122, -8}, }, + {{48, 57, 20}, {65, 65, 111}, {66, 66, 112}, {67, 68, 20}, {69, 69, 113}, {70, 81, 20}, {82, 82, 114}, {83, 83, 115}, {84, 84, 116}, {85, 90, 20}, {97, 122, 20}, }, + {{48, 69, -60}, {70, 70, 117}, {71, 85, 20}, {86, 86, 118}, {87, 122, -23}, }, {{48, 122, -8}, }, - {{48, 109, -14}, {110, 110, 119}, {111, 122, 20}, }, - {{48, 90, -8}, {97, 97, 20}, {98, 98, 120}, {99, 122, 20}, }, - {{48, 113, -18}, {114, 114, 121}, {115, 122, 20}, }, - {{48, 99, -73}, {100, 100, 122}, {101, 122, 20}, }, - {{48, 99, -73}, {100, 100, 123}, {101, 122, 20}, }, - {{48, 111, -31}, {112, 112, 124}, {113, 122, 20}, }, - {{48, 90, -8}, {97, 117, 20}, {118, 118, 125}, {119, 122, 20}, }, - {{48, 116, -17}, {117, 117, 126}, {118, 122, 20}, }, - {{48, 116, -17}, {117, 117, 127}, {118, 122, 20}, }, - {{48, 90, -8}, {97, 101, 20}, {102, 102, 128}, {103, 115, 20}, {116, 116, 129}, {117, 122, 20}, }, - {{48, 113, -18}, {114, 114, 130}, {115, 122, 20}, }, - {{48, 107, -28}, {108, 108, 131}, {109, 122, 20}, }, - {{48, 115, -25}, {116, 116, 132}, {117, 122, 20}, }, + {{48, 115, -25}, {116, 116, 119}, {117, 122, 20}, }, {{48, 122, -8}, }, - {{48, 97, -94}, {98, 98, 133}, {99, 122, 20}, }, - {{48, 113, -18}, {114, 114, 134}, {115, 122, 20}, }, - {{48, 90, -8}, {97, 97, 135}, {98, 122, 20}, }, - {{48, 101, -102}, {102, 102, 136}, {103, 122, 20}, }, - {{48, 107, -28}, {108, 108, 137}, {109, 122, 20}, }, - {{48, 98, -45}, {99, 99, 138}, {100, 122, 20}, }, - {{48, 100, -32}, {101, 101, 139}, {102, 122, 20}, }, - {{48, 104, -16}, {105, 105, 140}, {106, 122, 20}, }, - {{48, 90, -8}, {97, 97, 141}, {98, 122, 20}, }, - {{48, 110, -13}, {111, 111, 142}, {112, 122, 20}, }, - {{48, 90, -8}, {97, 97, 143}, {98, 122, 20}, }, + {{48, 109, -14}, {110, 110, 120}, {111, 122, 20}, }, + {{48, 104, -16}, {105, 105, 121}, {106, 122, 20}, }, {{48, 122, -8}, }, - {{48, 99, -73}, {100, 100, 144}, {101, 122, 20}, }, - {{48, 90, -8}, {97, 108, 20}, {109, 109, 145}, {110, 122, 20}, }, - {{48, 98, -45}, {99, 99, 146}, {100, 122, 20}, }, {{48, 122, -8}, }, - {{48, 57, 20}, {65, 82, 20}, {83, 83, 147}, {84, 122, -67}, }, + {{48, 109, -14}, {110, 110, 122}, {111, 122, 20}, }, + {{48, 90, -8}, {97, 97, 20}, {98, 98, 123}, {99, 122, 20}, }, + {{48, 113, -18}, {114, 114, 124}, {115, 122, 20}, }, + {{48, 99, -74}, {100, 100, 125}, {101, 122, 20}, }, + {{48, 99, -74}, {100, 100, 126}, {101, 122, 20}, }, + {{48, 111, -31}, {112, 112, 127}, {113, 122, 20}, }, + {{48, 90, -8}, {97, 117, 20}, {118, 118, 128}, {119, 122, 20}, }, + {{48, 116, -17}, {117, 117, 129}, {118, 122, 20}, }, + {{48, 116, -17}, {117, 117, 130}, {118, 122, 20}, }, + {{48, 90, -8}, {97, 101, 20}, {102, 102, 131}, {103, 115, 20}, {116, 116, 132}, {117, 122, 20}, }, + {{48, 113, -18}, {114, 114, 133}, {115, 122, 20}, }, + {{48, 99, -74}, {100, 100, 134}, {101, 122, 20}, }, + {{48, 107, -28}, {108, 108, 135}, {109, 122, 20}, }, + {{48, 115, -25}, {116, 116, 136}, {117, 122, 20}, }, {{48, 122, -8}, }, + {{48, 97, -96}, {98, 98, 137}, {99, 122, 20}, }, + {{48, 113, -18}, {114, 114, 138}, {115, 122, 20}, }, + {{48, 90, -8}, {97, 97, 139}, {98, 122, 20}, }, + {{48, 101, -104}, {102, 102, 140}, {103, 122, 20}, }, + {{48, 107, -28}, {108, 108, 141}, {109, 122, 20}, }, + {{48, 98, -45}, {99, 99, 142}, {100, 122, 20}, }, + {{48, 100, -32}, {101, 101, 143}, {102, 122, 20}, }, + {{48, 104, -16}, {105, 105, 144}, {106, 122, 20}, }, + {{48, 90, -8}, {97, 97, 145}, {98, 122, 20}, }, + {{48, 110, -13}, {111, 111, 146}, {112, 122, 20}, }, + {{48, 90, -8}, {97, 97, 147}, {98, 122, 20}, }, {{48, 122, -8}, }, - {{48, 100, -32}, {101, 101, 148}, {102, 122, 20}, }, + {{48, 99, -74}, {100, 100, 148}, {101, 122, 20}, }, + {{48, 90, -8}, {97, 108, 20}, {109, 109, 149}, {110, 122, 20}, }, + {{48, 98, -45}, {99, 99, 150}, {100, 122, 20}, }, {{48, 122, -8}, }, - {{48, 90, -8}, {97, 97, 149}, {98, 122, 20}, }, - {{48, 119, -33}, {120, 120, 150}, {121, 122, 20}, }, + {{48, 57, 20}, {65, 82, 20}, {83, 83, 151}, {84, 122, -68}, }, {{48, 122, -8}, }, {{48, 122, -8}, }, - {{48, 100, -32}, {101, 101, 151}, {102, 122, 20}, }, - {{48, 115, -25}, {116, 116, 152}, {117, 122, 20}, }, + {{48, 100, -32}, {101, 101, 152}, {102, 122, 20}, }, {{48, 122, -8}, }, + {{48, 90, -8}, {97, 97, 153}, {98, 122, 20}, }, + {{48, 119, -33}, {120, 120, 154}, {121, 122, 20}, }, {{48, 122, -8}, }, {{48, 122, -8}, }, - {{48, 104, -16}, {105, 105, 153}, {106, 122, 20}, }, - {{48, 101, -102}, {102, 102, 154}, {103, 122, 20}, }, - {{48, 110, -13}, {111, 111, 155}, {112, 122, 20}, }, - {{48, 113, -18}, {114, 114, 156}, {115, 122, 20}, }, + {{48, 100, -32}, {101, 101, 155}, {102, 122, 20}, }, + {{48, 116, -17}, {117, 117, 156}, {118, 122, 20}, }, {{48, 115, -25}, {116, 116, 157}, {117, 122, 20}, }, {{48, 122, -8}, }, - {{48, 109, -14}, {110, 110, 158}, {111, 122, 20}, }, - {{48, 109, -14}, {110, 110, 159}, {111, 122, 20}, }, - {{48, 113, -18}, {114, 114, 160}, {115, 122, 20}, }, - {{48, 104, -16}, {105, 105, 161}, {106, 122, 20}, }, - {{48, 111, -31}, {112, 112, 162}, {113, 122, 20}, }, - {{48, 122, -8}, }, - {{48, 104, -16}, {105, 105, 163}, {106, 122, 20}, }, - {{48, 107, -28}, {108, 108, 164}, {109, 122, 20}, }, - {{48, 107, -28}, {108, 108, 165}, {109, 122, 20}, }, {{48, 122, -8}, }, {{48, 122, -8}, }, + {{48, 104, -16}, {105, 105, 158}, {106, 122, 20}, }, + {{48, 101, -104}, {102, 102, 159}, {103, 122, 20}, }, + {{48, 110, -13}, {111, 111, 160}, {112, 122, 20}, }, + {{48, 113, -18}, {114, 114, 161}, {115, 122, 20}, }, + {{48, 115, -25}, {116, 116, 162}, {117, 122, 20}, }, {{48, 122, -8}, }, + {{48, 109, -14}, {110, 110, 163}, {111, 122, 20}, }, + {{48, 109, -14}, {110, 110, 164}, {111, 122, 20}, }, + {{48, 113, -18}, {114, 114, 165}, {115, 122, 20}, }, + {{48, 104, -16}, {105, 105, 166}, {106, 122, 20}, }, + {{48, 111, -31}, {112, 112, 167}, {113, 122, 20}, }, {{48, 122, -8}, }, - {{48, 100, -32}, {101, 101, 166}, {102, 122, 20}, }, - {{48, 98, -45}, {99, 99, 167}, {100, 122, 20}, }, {{48, 104, -16}, {105, 105, 168}, {106, 122, 20}, }, - {{48, 110, -13}, {111, 111, 169}, {112, 122, 20}, }, - {{48, 115, -25}, {116, 116, 170}, {117, 122, 20}, }, - {{48, 98, -45}, {99, 99, 171}, {100, 122, 20}, }, + {{48, 107, -28}, {108, 108, 169}, {109, 122, 20}, }, + {{48, 107, -28}, {108, 108, 170}, {109, 122, 20}, }, {{48, 122, -8}, }, - {{48, 98, -45}, {99, 99, 172}, {100, 122, 20}, }, - {{48, 107, -28}, {108, 108, 173}, {109, 122, 20}, }, - {{48, 108, -120}, {109, 109, 174}, {110, 122, 20}, }, {{48, 122, -8}, }, + {{48, 107, -28}, {108, 108, 171}, {109, 122, 20}, }, {{48, 122, -8}, }, - {{48, 98, -45}, {99, 99, 175}, {100, 122, 20}, }, {{48, 122, -8}, }, + {{48, 100, -32}, {101, 101, 172}, {102, 122, 20}, }, + {{48, 98, -45}, {99, 99, 173}, {100, 122, 20}, }, + {{48, 104, -16}, {105, 105, 174}, {106, 122, 20}, }, + {{48, 110, -13}, {111, 111, 175}, {112, 122, 20}, }, {{48, 115, -25}, {116, 116, 176}, {117, 122, 20}, }, - {{48, 116, -17}, {117, 117, 177}, {118, 122, 20}, }, - {{48, 57, 20}, {65, 80, 20}, {81, 81, 178}, {82, 90, 20}, {97, 122, 20}, }, + {{48, 98, -45}, {99, 99, 177}, {100, 122, 20}, }, + {{48, 122, -8}, }, + {{48, 98, -45}, {99, 99, 178}, {100, 122, 20}, }, + {{48, 107, -28}, {108, 108, 179}, {109, 122, 20}, }, + {{48, 108, -123}, {109, 109, 180}, {110, 122, 20}, }, + {{48, 122, -8}, }, + {{48, 122, -8}, }, + {{48, 110, -13}, {111, 111, 181}, {112, 122, 20}, }, + {{48, 98, -45}, {99, 99, 182}, {100, 122, 20}, }, + {{48, 122, -8}, }, + {{48, 115, -25}, {116, 116, 183}, {117, 122, 20}, }, + {{48, 116, -17}, {117, 117, 184}, {118, 122, 20}, }, + {{48, 57, 20}, {65, 80, 20}, {81, 81, 185}, {82, 90, 20}, {97, 122, 20}, }, {{48, 122, -8}, }, - {{48, 100, -32}, {101, 101, 179}, {102, 122, 20}, }, - {{48, 100, -32}, {101, 101, 180}, {102, 122, 20}, }, - {{48, 111, -31}, {112, 112, 181}, {113, 122, 20}, }, - {{48, 115, -25}, {116, 116, 182}, {117, 122, 20}, }, - {{48, 116, -17}, {117, 117, 183}, {118, 122, 20}, }, - {{48, 113, -18}, {114, 114, 184}, {115, 122, 20}, }, - {{48, 116, -17}, {117, 117, 185}, {118, 122, 20}, }, {{48, 100, -32}, {101, 101, 186}, {102, 122, 20}, }, + {{48, 100, -32}, {101, 101, 187}, {102, 122, 20}, }, + {{48, 111, -31}, {112, 112, 188}, {113, 122, 20}, }, + {{48, 122, -8}, }, + {{48, 115, -25}, {116, 116, 189}, {117, 122, 20}, }, + {{48, 116, -17}, {117, 117, 190}, {118, 122, 20}, }, + {{48, 113, -18}, {114, 114, 191}, {115, 122, 20}, }, + {{48, 116, -17}, {117, 117, 192}, {118, 122, 20}, }, + {{48, 100, -32}, {101, 101, 193}, {102, 122, 20}, }, {{48, 122, -8}, }, - {{48, 107, -28}, {108, 108, 187}, {109, 122, 20}, }, + {{48, 107, -28}, {108, 108, 194}, {109, 122, 20}, }, {{48, 122, -8}, }, - {{48, 113, -18}, {114, 114, 188}, {115, 122, 20}, }, + {{48, 113, -18}, {114, 114, 195}, {115, 122, 20}, }, {{48, 122, -8}, }, - {{48, 100, -32}, {101, 101, 189}, {102, 122, 20}, }, + {{48, 100, -32}, {101, 101, 196}, {102, 122, 20}, }, {{48, 122, -8}, }, - {{48, 100, -32}, {101, 101, 190}, {102, 122, 20}, }, - {{48, 100, -32}, {101, 101, 191}, {102, 122, 20}, }, + {{48, 100, -32}, {101, 101, 197}, {102, 122, 20}, }, + {{48, 100, -32}, {101, 101, 198}, {102, 122, 20}, }, {{48, 122, -8}, }, {{48, 122, -8}, }, {{48, 122, -8}, }, @@ -962,7 +991,7 @@ public class Lexer private static int[][] accept; /* { // INITIAL - {-1, 0, 0, 0, 0, -1, 45, 2, 3, 44, 45, 45, 45, 45, 45, 45, 45, -1, 1, 1, 45, 45, 45, 45, 45, 45, 45, 45, 1, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 43, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 42, 45, 37, 39, 40, 38, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 32, 45, 34, 45, 45, 41, 4, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 33, 45, 45, 45, 6, 7, 9, 10, 45, 12, 45, 45, 15, 16, 45, 45, 19, 21, 22, 45, 45, 45, 45, 45, 28, 45, 45, 45, 45, 45, 5, 45, 45, 45, 14, 17, 18, 23, 45, 45, 45, 45, 45, 45, 31, 45, 45, 45, 11, 13, 45, 25, 45, 45, 45, 30, 45, 45, 45, 45, 45, 45, 45, 45, 36, 45, 24, 45, 27, 45, 35, 45, 45, 29, 8, 26, }, + {-1, 0, 0, 0, 0, -1, 47, 2, 3, 46, 47, 47, 47, 47, 47, 47, 47, -1, 1, 1, 47, 47, 47, 47, 47, 47, 47, 47, 1, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 45, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 44, 47, 39, 41, 42, 40, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 26, 47, 47, 34, 47, 36, 47, 47, 43, 4, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 21, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 35, 47, 47, 47, 6, 7, 9, 10, 47, 12, 47, 47, 15, 16, 47, 47, 47, 20, 22, 23, 47, 47, 47, 47, 47, 30, 47, 47, 47, 47, 47, 5, 47, 47, 47, 14, 17, 47, 18, 24, 47, 47, 47, 47, 47, 47, 33, 47, 47, 47, 11, 13, 47, 47, 27, 47, 47, 47, 32, 47, 47, 47, 19, 47, 47, 47, 47, 47, 38, 47, 25, 47, 29, 47, 37, 47, 47, 31, 8, 28, }, };*/ diff --git a/src/saParser/lexer/lexer.dat b/src/saParser/lexer/lexer.dat index a1bd028415b0ad63a549525ba6dc4d3836c69934..5472df88c0000d4ff6e2f219d449246eb770387c 100644 GIT binary patch delta 2287 zcmbQ^bisv#fq{XMfq~)pMh<NbM%Kv&QsS~U3=9k@3=9lK3=9k+3=9m#P;AS<z)&(- zhh3S`ZgK;MI;%Yc14HHH2fWIR4wEl%s53fFHV{{5begQdX+C*Br@-X<G6IwTOL#E4 zOg_MAZ0O3sz~Iinzz_^IHH3kI0fgNc7#KpK7-U-*0|NsHyH8f(QV;cDU|?`!U|?{D z>T+RVU;trH1_lO@i6HF7z`y`91%$n!wt)13OarL{VIKwt29P?CyvXDwT*i|xbBRa> zLfrteAEX*&F9-)s;ufELoJD{!c(Q<?_~iXU0*oP(4P?Y8+j9#rhE5LPR%Zn%E1WFA zEI-+uLx3@S@&ayS#)!#RxQ!(vp;iS!oec6Y2uDp;;4x;5p4=d$&KNVfKuUaayodl} z?BoIwb;h{K8`#7r&u0^0jGz34$5=9ffq@~Ffq@|xYDOLd0|N*rPIllGXH8;YU?`k? zhfSF=d2$1<F)KK-CO0rCGp2&g+0P-sm^S$Whxp|8YyyJm3=9le3=9laP_tMkKj0AO z&0t_)C;&w$NObZ6KIzH(SvbHh$^u2>WNv<e$^9}Cj5(7Xq{Sz@3kyhs+yb^4qyw5f zKuIKTvI3{PDmMcIg8>5rgC$hfk%55$g!7>h2#Uml$qxMDhK11R0tG%O&_Uq@!XUFi z;RM2<BnL_yAY3xJgWp)P6dJMUQB^ki3copH`Q!$1bH)mopBXDB=Lop7f_$70j-%@W z0<6^x3=GMW4S19pYbFZ_O7m`mCUa2e)lN<j6c<eX|NlR-Xx-!lL3P%8aA<>KdbOYc zYXbuVL-}L_K4r$n$s1V2C(maQU~HPqBV^3jJlR1=oUsL*PWU+m7+W!HX#?3Z`MiVx zV>>whLFuYv@&zGn!37Kq44|+D;ZC?ayCxe5t21_k;#4s8|Ns9p7#JARptxspgRnYd zFW4MVs_dJ5L0Fx!e{ujjIMx{_OjZz4XPgMq3y#%EpmfGM8D!670Rd$UzfPHaLByDK zDkz;z*5OuWoHkiNN`A7ps0#0NXeO!p|NsA<$u*+Zj58)*kWrs}UsQl`=Hw5e>a4TC z1wny;@#OWK0*tf4ZUBYL9B>HbiyKV-FQG8mo|9wpc`*UTd6OTAN%JE6W&Y#_VMuOR z07`p|3*otL5jb8KgX0yHs+UZDAg<216fFOqO@MLP<OS^Ntji%WB%lm3fAVxm32+#% z1cwbMv{y}jAfZ3`y^I9oYB0;5Q-W~~*p;A=TRXWxQk`+#BzA}s)=xelsXkd;S^}Ke zH%=CiGH2X0Ie=RnZ0P361ya(2t<bCq$`V_^K?d@CHlG0F*2x7TkYZxn<OfpbjN2z0 z$fz^!nCu{J%(!!MiL~?N^D+XH_sdE!?w<TWTAg(d-08ph1sL~&Rqva;fkmBh|KtW4 zb;bkWAhc%}U_3baf{Z!ip~(*<<iSCyFDt-!7*y6W9sx%ODCmz)-XN>acx>_o8TrZo zB~%!XPnMCBuGeQ^U|?ckU|?ooV9;Y=U;y#4;{X5u|A*EGpgIAo8YKP1sL^L&sE1pq zi=>&5;W|*Y>I@7FnhXpKS_}*f8c;DpdQs);@%R{zfl^3vN>H{6lm=O#&A`CGg2V@j zVa1^G1Dk{>F`ALoC?l~!=CLs_Ft9T)FmN(3FmOTTc%U>$o}Yn%L4bjQ0UZAz0T2ci zxMB<p4B|)%LE<nhheMndO`MN`fk6-|Cd9zNAOU5=%t4~-85GeZL3IT$l9)6S8>CSI gjW3MG2dM#JHK@2Gl$M3ks!$rFMjjMKpjM6y0Hu3>kpKVy delta 2177 zcmccMGRKL7fq{XMfq~(`Mh<O`$^QjKCZFdPV6|ajU?`ca!>-I|J2`+|e6l#Z0IMAX z14HFx1wLg)`^g0o;*;Nt2rxQK5*44kURZ$9ak37lIiu6$4|2|vPm8HAI!`{sY0T&{ ziA!A4m4SgF6pBR{7#PB!*ln@_m%67r0|SE-0|SFI0|Ns{)`fwA0fapm7#Ki0LD-Xl zfx!)my%-o6Kzcy(AoU<Q5cZzDfJ=PxW-cAmAgD>f3=9k)9KgW95Q4@2Kn4bea0Uj3 zs{jB0zntvAEzKA-`GAo4WPcF>#^A{bBI1+p3kqn0bQXeCK}}_5U|=v{U|=Zv|Ns9* z1_p*=C=Q+cfZLccY_bTCu_VY;kUP;`5-~Y}$Cxp4@&RG-$?=i`j8T&dBq8A#JxNrZ zF=p}xHu1^x*#sD4C!6pZOU5xUFr+dtFyun5&SPL;0O9z_4ZPy42@DJjg_Ac3C^IHb zKEP|tngnvx<OU{X#$>QLuUQ2cQy>w=Ccv0FiCuj1d=>%5w8<M-Aa<t1;w}U1p!qBU zlUMTzOg841;LT!SU;vp1^0>(44}8*-oB1VFbD&WLiY}0wKv4#YDo`|lq6viaCLiDz zm&}I-Jt+7KpurCg$jKl0jU|hqQ3y&DAib~zQ9Rj3z?`vUa)Pk><ah}I#!{H;S<4t0 z7_ufCa7s^>7n1<Xl~0xtG-j-r93ZI9SP62!VDkU}|F<(RFr+|n)#L?&(!9tb)sq(p zf+Ll&X7UF?W7b**28QxU{K|}V;4lG&PW|K(A!Eq~1_p+7XuN_PSOUro3=9m7lMe`~ zGd6*&1IJ%8IR5;F1sGc<CkSivE`kOdDCk<jPHUTdKv<oz9TXvgssI1~pT)qykOsva zlLbW789O0nhzKxtO->L|XY2;&xA$xUj6IV#h^RC6g7kv(THhp5b=H266_X7(l`;G~ zVRC|~G3!K78kwBHt;{%S@&_sT$+tyScqc<+0F==8PJSSuJ^8+v0OOR&6Xet<=Zgt2 zPMzE!rp`JIoV_7otid=P><p0CW=wVv4`-Y?iCrAS2eT$05LaiM4NFIJCJRWYPqr6V zm|QQ+0gk14lM5u&8RvuJ5mZVnn0!D&opIsh1?=jKizW+5nlmm2rAts=STealQk`+> z<Oh=aljFrTz)oBSafFBf<MPP?QtFf4B_+Tiv2yYPDRstG@Z7q3@&_q%#x>wP3o>i% z<N#@D!47EF0VUOS;9!AxPGa(EQ31yFlRrqQPv(~qn0#DH0-Q58PWF&7X52KnM#h<O z^W+0E>Wo{!_TLv2VBHGNY&OEmjN2wF$fz@JpS*!ZopA>^C4kb+&dCR4)hF+l5tuw* zPGa(TNdd;)lNIF58TWvT#l4d!$eA<l1Dm-YR7BPv`2YX^e+D!F71L#4U|?ckU;vdg zIt&a9AU;+MRSzn?K^UtVB>hNg>Tw&2q(K{rO~`O9s9IG91_pHo1_liV1_m{#7^dEO zJifxIiLf38s9q%~4YF91fq{Vqi4PLftw$HY!3Sl2um&9R=yHl^>ev_<7}yyY7&sXi z7`UKvJPZsB^)QY63=9kcPzjKjFaraFC<6n77?K!B9EN3Zh_j-J^D!_m2r@7*2r)1) zh@;8rGB6<GUmi`8n}LCW7b+$RrD2xKq48nj$g~PnjRcgIhSJJV8l+Yh6egf{hZF!{ CgnqmL diff --git a/src/saParser/parser/Parser.java b/src/saParser/parser/Parser.java index 92c63c8..efde8a1 100644 --- a/src/saParser/parser/Parser.java +++ b/src/saParser/parser/Parser.java @@ -240,210 +240,222 @@ public class Parser push(goTo(1), list, false); } break; - case 7: /* reduce AOrExp */ + case 7: /* reduce AModuloExp */ { ArrayList<Object> list = new7(); push(goTo(1), list, false); } break; - case 8: /* reduce ASubExp */ + case 8: /* reduce AOrExp */ { ArrayList<Object> list = new8(); push(goTo(1), list, false); } break; - case 9: /* reduce ANotExp */ + case 9: /* reduce ASubExp */ { ArrayList<Object> list = new9(); push(goTo(1), list, false); } break; - case 10: /* reduce AAppelExp */ + case 10: /* reduce ANotExp */ { ArrayList<Object> list = new10(); push(goTo(1), list, false); } break; - case 11: /* reduce AVarExp */ + case 11: /* reduce AAppelExp */ { ArrayList<Object> list = new11(); push(goTo(1), list, false); } break; - case 12: /* reduce AFauxExp */ + case 12: /* reduce AVarExp */ { ArrayList<Object> list = new12(); push(goTo(1), list, false); } break; - case 13: /* reduce AVraiExp */ + case 13: /* reduce AFauxExp */ { ArrayList<Object> list = new13(); push(goTo(1), list, false); } break; - case 14: /* reduce AIntExp */ + case 14: /* reduce AVraiExp */ { ArrayList<Object> list = new14(); push(goTo(1), list, false); } break; - case 15: /* reduce ALireExp */ + case 15: /* reduce AIntExp */ { ArrayList<Object> list = new15(); push(goTo(1), list, false); } break; - case 16: /* reduce AAffectInst */ + case 16: /* reduce ALireExp */ { ArrayList<Object> list = new16(); - push(goTo(2), list, false); + push(goTo(1), list, false); } break; - case 17: /* reduce ABlocInst */ + case 17: /* reduce AAffectInst */ { ArrayList<Object> list = new17(); push(goTo(2), list, false); } break; - case 18: /* reduce AEcritureInst */ + case 18: /* reduce AIncrInst */ { ArrayList<Object> list = new18(); push(goTo(2), list, false); } break; - case 19: /* reduce ARetourInst */ + case 19: /* reduce ABlocInst */ { ArrayList<Object> list = new19(); push(goTo(2), list, false); } break; - case 20: /* reduce ASiInst */ + case 20: /* reduce AEcritureInst */ { ArrayList<Object> list = new20(); push(goTo(2), list, false); } break; - case 21: /* reduce ASi2Inst */ + case 21: /* reduce ARetourInst */ { ArrayList<Object> list = new21(); push(goTo(2), list, false); } break; - case 22: /* reduce ATantqueInst */ + case 22: /* reduce ASiInst */ { ArrayList<Object> list = new22(); push(goTo(2), list, false); } break; - case 23: /* reduce AAppelInst */ + case 23: /* reduce ASi2Inst */ { ArrayList<Object> list = new23(); push(goTo(2), list, false); } break; - case 24: /* reduce ARecLdecfonc */ + case 24: /* reduce ATantqueInst */ { ArrayList<Object> list = new24(); - push(goTo(3), list, false); + push(goTo(2), list, false); } break; - case 25: /* reduce AFinLdecfonc */ + case 25: /* reduce AAppelInst */ { ArrayList<Object> list = new25(); - push(goTo(3), list, false); + push(goTo(2), list, false); } break; - case 26: /* reduce ARecLdecvar */ + case 26: /* reduce ARecLdecfonc */ { ArrayList<Object> list = new26(); - push(goTo(4), list, false); + push(goTo(3), list, false); } break; - case 27: /* reduce AFinLdecvar */ + case 27: /* reduce AFinLdecfonc */ { ArrayList<Object> list = new27(); - push(goTo(4), list, false); + push(goTo(3), list, false); } break; - case 28: /* reduce ARecLexp */ + case 28: /* reduce ARecLdecvar */ { ArrayList<Object> list = new28(); - push(goTo(5), list, false); + push(goTo(4), list, false); } break; - case 29: /* reduce AFinLexp */ + case 29: /* reduce AFinLdecvar */ { ArrayList<Object> list = new29(); - push(goTo(5), list, false); + push(goTo(4), list, false); } break; - case 30: /* reduce ARecLinst */ + case 30: /* reduce ARecLexp */ { ArrayList<Object> list = new30(); - push(goTo(6), list, false); + push(goTo(5), list, false); } break; - case 31: /* reduce AFinLinst */ + case 31: /* reduce AFinLexp */ { ArrayList<Object> list = new31(); - push(goTo(6), list, false); + push(goTo(5), list, false); } break; - case 32: /* reduce ADecfonc */ + case 32: /* reduce ARecLinst */ { ArrayList<Object> list = new32(); - push(goTo(7), list, false); + push(goTo(6), list, false); } break; - case 33: /* reduce ATabDecvar */ + case 33: /* reduce AFinLinst */ { ArrayList<Object> list = new33(); - push(goTo(8), list, false); + push(goTo(6), list, false); } break; - case 34: /* reduce ASimpleDecvar */ + case 34: /* reduce ADecfonc */ { ArrayList<Object> list = new34(); - push(goTo(8), list, false); + push(goTo(7), list, false); } break; - case 35: /* reduce AIndiceeVar */ + case 35: /* reduce ATabDecvar */ { ArrayList<Object> list = new35(); - push(goTo(9), list, false); + push(goTo(8), list, false); } break; - case 36: /* reduce ASimpleVar */ + case 36: /* reduce ASimpleDecvar */ { ArrayList<Object> list = new36(); - push(goTo(9), list, false); + push(goTo(8), list, false); } break; - case 37: /* reduce AAppel */ + case 37: /* reduce AIndiceeVar */ { ArrayList<Object> list = new37(); - push(goTo(10), list, false); + push(goTo(9), list, false); } break; - case 38: /* reduce AEntierType */ + case 38: /* reduce ASimpleVar */ { ArrayList<Object> list = new38(); - push(goTo(11), list, false); + push(goTo(9), list, false); } break; - case 39: /* reduce ABoolType */ + case 39: /* reduce AAppel */ { ArrayList<Object> list = new39(); - push(goTo(11), list, false); + push(goTo(10), list, false); } break; - case 40: /* reduce ANullType */ + case 40: /* reduce AEntierType */ { ArrayList<Object> list = new40(); push(goTo(11), list, false); } break; + case 41: /* reduce ABoolType */ + { + ArrayList<Object> list = new41(); + push(goTo(11), list, false); + } + break; + case 42: /* reduce ANullType */ + { + ArrayList<Object> list = new42(); + push(goTo(11), list, false); + } + break; } } @@ -674,7 +686,39 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new7() /* reduce AOrExp */ + ArrayList<Object> new7() /* reduce AModuloExp */ + { + @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); + + @SuppressWarnings("unused") ArrayList<Object> nodeArrayList5 = pop(); + @SuppressWarnings("unused") ArrayList<Object> nodeArrayList4 = pop(); + @SuppressWarnings("unused") ArrayList<Object> nodeArrayList3 = pop(); + @SuppressWarnings("unused") ArrayList<Object> nodeArrayList2 = pop(); + @SuppressWarnings("unused") ArrayList<Object> nodeArrayList1 = pop(); + PExp pexpNode1; + { + // Block + TPo tpoNode2; + TSaexpmodulo tsaexpmoduloNode3; + PExp pexpNode4; + PExp pexpNode5; + TPf tpfNode6; + tpoNode2 = (TPo)nodeArrayList1.get(0); + tsaexpmoduloNode3 = (TSaexpmodulo)nodeArrayList2.get(0); + pexpNode4 = (PExp)nodeArrayList3.get(0); + pexpNode5 = (PExp)nodeArrayList4.get(0); + tpfNode6 = (TPf)nodeArrayList5.get(0); + + pexpNode1 = new AModuloExp(tpoNode2, tsaexpmoduloNode3, pexpNode4, pexpNode5, tpfNode6); + } + nodeList.add(pexpNode1); + return nodeList; + } + + + + @SuppressWarnings({ "unchecked", "rawtypes" }) + ArrayList<Object> new8() /* reduce AOrExp */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -706,7 +750,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new8() /* reduce ASubExp */ + ArrayList<Object> new9() /* reduce ASubExp */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -738,7 +782,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new9() /* reduce ANotExp */ + ArrayList<Object> new10() /* reduce ANotExp */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -767,7 +811,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new10() /* reduce AAppelExp */ + ArrayList<Object> new11() /* reduce AAppelExp */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -796,7 +840,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new11() /* reduce AVarExp */ + ArrayList<Object> new12() /* reduce AVarExp */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -825,7 +869,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new12() /* reduce AFauxExp */ + ArrayList<Object> new13() /* reduce AFauxExp */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -845,7 +889,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new13() /* reduce AVraiExp */ + ArrayList<Object> new14() /* reduce AVraiExp */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -865,7 +909,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new14() /* reduce AIntExp */ + ArrayList<Object> new15() /* reduce AIntExp */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -885,7 +929,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new15() /* reduce ALireExp */ + ArrayList<Object> new16() /* reduce ALireExp */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -905,7 +949,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new16() /* reduce AAffectInst */ + ArrayList<Object> new17() /* reduce AAffectInst */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -937,7 +981,39 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new17() /* reduce ABlocInst */ + ArrayList<Object> new18() /* reduce AIncrInst */ + { + @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); + + @SuppressWarnings("unused") ArrayList<Object> nodeArrayList5 = pop(); + @SuppressWarnings("unused") ArrayList<Object> nodeArrayList4 = pop(); + @SuppressWarnings("unused") ArrayList<Object> nodeArrayList3 = pop(); + @SuppressWarnings("unused") ArrayList<Object> nodeArrayList2 = pop(); + @SuppressWarnings("unused") ArrayList<Object> nodeArrayList1 = pop(); + PInst pinstNode1; + { + // Block + TPo tpoNode2; + TSaincr tsaincrNode3; + PVar pvarNode4; + PExp pexpNode5; + TPf tpfNode6; + tpoNode2 = (TPo)nodeArrayList1.get(0); + tsaincrNode3 = (TSaincr)nodeArrayList2.get(0); + pvarNode4 = (PVar)nodeArrayList3.get(0); + pexpNode5 = (PExp)nodeArrayList4.get(0); + tpfNode6 = (TPf)nodeArrayList5.get(0); + + pinstNode1 = new AIncrInst(tpoNode2, tsaincrNode3, pvarNode4, pexpNode5, tpfNode6); + } + nodeList.add(pinstNode1); + return nodeList; + } + + + + @SuppressWarnings({ "unchecked", "rawtypes" }) + ArrayList<Object> new19() /* reduce ABlocInst */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -966,7 +1042,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new18() /* reduce AEcritureInst */ + ArrayList<Object> new20() /* reduce AEcritureInst */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -995,7 +1071,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new19() /* reduce ARetourInst */ + ArrayList<Object> new21() /* reduce ARetourInst */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1024,7 +1100,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new20() /* reduce ASiInst */ + ArrayList<Object> new22() /* reduce ASiInst */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1059,7 +1135,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new21() /* reduce ASi2Inst */ + ArrayList<Object> new23() /* reduce ASi2Inst */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1094,7 +1170,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new22() /* reduce ATantqueInst */ + ArrayList<Object> new24() /* reduce ATantqueInst */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1126,7 +1202,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new23() /* reduce AAppelInst */ + ArrayList<Object> new25() /* reduce AAppelInst */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1146,7 +1222,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new24() /* reduce ARecLdecfonc */ + ArrayList<Object> new26() /* reduce ARecLdecfonc */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1178,7 +1254,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new25() /* reduce AFinLdecfonc */ + ArrayList<Object> new27() /* reduce AFinLdecfonc */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1198,7 +1274,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new26() /* reduce ARecLdecvar */ + ArrayList<Object> new28() /* reduce ARecLdecvar */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1230,7 +1306,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new27() /* reduce AFinLdecvar */ + ArrayList<Object> new29() /* reduce AFinLdecvar */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1250,7 +1326,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new28() /* reduce ARecLexp */ + ArrayList<Object> new30() /* reduce ARecLexp */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1282,7 +1358,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new29() /* reduce AFinLexp */ + ArrayList<Object> new31() /* reduce AFinLexp */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1302,7 +1378,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new30() /* reduce ARecLinst */ + ArrayList<Object> new32() /* reduce ARecLinst */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1334,7 +1410,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new31() /* reduce AFinLinst */ + ArrayList<Object> new33() /* reduce AFinLinst */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1354,7 +1430,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new32() /* reduce ADecfonc */ + ArrayList<Object> new34() /* reduce ADecfonc */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1395,7 +1471,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new33() /* reduce ATabDecvar */ + ArrayList<Object> new35() /* reduce ATabDecvar */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1430,7 +1506,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new34() /* reduce ASimpleDecvar */ + ArrayList<Object> new36() /* reduce ASimpleDecvar */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1462,7 +1538,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new35() /* reduce AIndiceeVar */ + ArrayList<Object> new37() /* reduce AIndiceeVar */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1494,7 +1570,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new36() /* reduce ASimpleVar */ + ArrayList<Object> new38() /* reduce ASimpleVar */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1523,7 +1599,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new37() /* reduce AAppel */ + ArrayList<Object> new39() /* reduce AAppel */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1555,7 +1631,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new38() /* reduce AEntierType */ + ArrayList<Object> new40() /* reduce AEntierType */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1575,7 +1651,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new39() /* reduce ABoolType */ + ArrayList<Object> new41() /* reduce ABoolType */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1595,7 +1671,7 @@ public class Parser @SuppressWarnings({ "unchecked", "rawtypes" }) - ArrayList<Object> new40() /* reduce ANullType */ + ArrayList<Object> new42() /* reduce ANullType */ { @SuppressWarnings("hiding") ArrayList<Object> nodeList = new ArrayList<Object>(); @@ -1617,133 +1693,140 @@ public class Parser private static int[][][] actionTable; /* { {{-1, ERROR, 0}, {0, SHIFT, 1}, }, - {{-1, ERROR, 1}, {32, SHIFT, 3}, }, - {{-1, ERROR, 2}, {44, ACCEPT, -1}, }, - {{-1, ERROR, 3}, {0, SHIFT, 4}, {38, SHIFT, 5}, }, - {{-1, ERROR, 4}, {29, SHIFT, 7}, }, - {{-1, REDUCE, 27}, }, - {{-1, ERROR, 6}, {0, SHIFT, 8}, {38, SHIFT, 9}, }, + {{-1, ERROR, 1}, {34, SHIFT, 3}, }, + {{-1, ERROR, 2}, {46, ACCEPT, -1}, }, + {{-1, ERROR, 3}, {0, SHIFT, 4}, {40, SHIFT, 5}, }, + {{-1, ERROR, 4}, {31, SHIFT, 7}, }, + {{-1, REDUCE, 29}, }, + {{-1, ERROR, 6}, {0, SHIFT, 8}, {40, SHIFT, 9}, }, {{-1, ERROR, 7}, {0, SHIFT, 11}, }, - {{-1, ERROR, 8}, {28, SHIFT, 13}, }, - {{-1, REDUCE, 25}, }, + {{-1, ERROR, 8}, {30, SHIFT, 13}, }, + {{-1, REDUCE, 27}, }, {{-1, ERROR, 10}, {1, SHIFT, 14}, }, {{-1, ERROR, 11}, {4, SHIFT, 15}, {6, SHIFT, 16}, }, - {{-1, ERROR, 12}, {0, SHIFT, 4}, {38, SHIFT, 5}, }, + {{-1, ERROR, 12}, {0, SHIFT, 4}, {40, SHIFT, 5}, }, {{-1, ERROR, 13}, {0, SHIFT, 18}, }, {{-1, REDUCE, 0}, }, - {{-1, ERROR, 15}, {43, SHIFT, 20}, }, - {{-1, ERROR, 16}, {43, SHIFT, 21}, }, + {{-1, ERROR, 15}, {45, SHIFT, 20}, }, + {{-1, ERROR, 16}, {45, SHIFT, 21}, }, {{-1, ERROR, 17}, {1, SHIFT, 22}, }, {{-1, ERROR, 18}, {3, SHIFT, 23}, }, - {{-1, ERROR, 19}, {0, SHIFT, 8}, {38, SHIFT, 9}, }, - {{-1, ERROR, 20}, {39, SHIFT, 25}, {40, SHIFT, 26}, {41, SHIFT, 27}, }, - {{-1, ERROR, 21}, {39, SHIFT, 25}, {40, SHIFT, 26}, {41, SHIFT, 27}, }, - {{-1, REDUCE, 26}, }, - {{-1, ERROR, 23}, {43, SHIFT, 30}, }, + {{-1, ERROR, 19}, {0, SHIFT, 8}, {40, SHIFT, 9}, }, + {{-1, ERROR, 20}, {41, SHIFT, 25}, {42, SHIFT, 26}, {43, SHIFT, 27}, }, + {{-1, ERROR, 21}, {41, SHIFT, 25}, {42, SHIFT, 26}, {43, SHIFT, 27}, }, + {{-1, REDUCE, 28}, }, + {{-1, ERROR, 23}, {45, SHIFT, 30}, }, {{-1, ERROR, 24}, {1, SHIFT, 31}, }, - {{-1, REDUCE, 38}, }, - {{-1, REDUCE, 39}, }, {{-1, REDUCE, 40}, }, - {{-1, ERROR, 28}, {42, SHIFT, 32}, }, + {{-1, REDUCE, 41}, }, + {{-1, REDUCE, 42}, }, + {{-1, ERROR, 28}, {44, SHIFT, 32}, }, {{-1, ERROR, 29}, {1, SHIFT, 33}, }, - {{-1, ERROR, 30}, {39, SHIFT, 25}, {40, SHIFT, 26}, {41, SHIFT, 27}, }, - {{-1, REDUCE, 24}, }, + {{-1, ERROR, 30}, {41, SHIFT, 25}, {42, SHIFT, 26}, {43, SHIFT, 27}, }, + {{-1, REDUCE, 26}, }, {{-1, ERROR, 32}, {1, SHIFT, 35}, }, + {{-1, REDUCE, 36}, }, + {{-1, ERROR, 34}, {0, SHIFT, 4}, {40, SHIFT, 5}, }, + {{-1, REDUCE, 35}, }, + {{-1, ERROR, 36}, {0, SHIFT, 4}, {40, SHIFT, 5}, }, + {{-1, ERROR, 37}, {0, SHIFT, 38}, }, + {{-1, ERROR, 38}, {2, SHIFT, 41}, {23, SHIFT, 42}, {24, SHIFT, 43}, {25, SHIFT, 44}, {26, SHIFT, 45}, {27, SHIFT, 46}, {28, SHIFT, 47}, {29, SHIFT, 48}, }, + {{-1, ERROR, 39}, {1, SHIFT, 49}, }, + {{-1, REDUCE, 25}, }, + {{-1, ERROR, 41}, {45, SHIFT, 50}, }, + {{-1, ERROR, 42}, {0, SHIFT, 51}, }, + {{-1, ERROR, 43}, {0, SHIFT, 51}, }, + {{-1, ERROR, 44}, {0, SHIFT, 54}, {40, SHIFT, 55}, }, + {{-1, ERROR, 45}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 46}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 47}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 48}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, {{-1, REDUCE, 34}, }, - {{-1, ERROR, 34}, {0, SHIFT, 4}, {38, SHIFT, 5}, }, + {{-1, ERROR, 50}, {0, SHIFT, 66}, {40, SHIFT, 67}, }, + {{-1, ERROR, 51}, {35, SHIFT, 69}, {36, SHIFT, 70}, }, + {{-1, ERROR, 52}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 53}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 54}, {33, SHIFT, 73}, }, {{-1, REDUCE, 33}, }, - {{-1, ERROR, 36}, {0, SHIFT, 4}, {38, SHIFT, 5}, }, - {{-1, ERROR, 37}, {0, SHIFT, 38}, }, - {{-1, ERROR, 38}, {2, SHIFT, 41}, {22, SHIFT, 42}, {23, SHIFT, 43}, {24, SHIFT, 44}, {25, SHIFT, 45}, {26, SHIFT, 46}, {27, SHIFT, 47}, }, - {{-1, ERROR, 39}, {1, SHIFT, 48}, }, - {{-1, REDUCE, 23}, }, - {{-1, ERROR, 41}, {43, SHIFT, 49}, }, - {{-1, ERROR, 42}, {0, SHIFT, 50}, }, - {{-1, ERROR, 43}, {0, SHIFT, 52}, {38, SHIFT, 53}, }, - {{-1, ERROR, 44}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 45}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 46}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 47}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, REDUCE, 32}, }, - {{-1, ERROR, 49}, {0, SHIFT, 64}, {38, SHIFT, 65}, }, - {{-1, ERROR, 50}, {33, SHIFT, 67}, {34, SHIFT, 68}, }, - {{-1, ERROR, 51}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 52}, {31, SHIFT, 70}, }, - {{-1, REDUCE, 31}, }, - {{-1, ERROR, 54}, {1, SHIFT, 71}, }, - {{-1, ERROR, 55}, {7, SHIFT, 72}, {8, SHIFT, 73}, {9, SHIFT, 74}, {10, SHIFT, 75}, {11, SHIFT, 76}, {13, SHIFT, 77}, {16, SHIFT, 78}, {17, SHIFT, 79}, {18, SHIFT, 80}, {19, SHIFT, 81}, {20, SHIFT, 82}, }, - {{-1, REDUCE, 12}, }, + {{-1, ERROR, 56}, {1, SHIFT, 74}, }, + {{-1, ERROR, 57}, {7, SHIFT, 75}, {8, SHIFT, 76}, {9, SHIFT, 77}, {10, SHIFT, 78}, {11, SHIFT, 79}, {13, SHIFT, 80}, {16, SHIFT, 81}, {17, SHIFT, 82}, {18, SHIFT, 83}, {19, SHIFT, 84}, {20, SHIFT, 85}, {21, SHIFT, 86}, }, {{-1, REDUCE, 13}, }, - {{-1, REDUCE, 15}, }, {{-1, REDUCE, 14}, }, - {{-1, ERROR, 60}, {1, SHIFT, 83}, }, - {{-1, ERROR, 61}, {1, SHIFT, 84}, }, - {{-1, ERROR, 62}, {0, SHIFT, 38}, }, - {{-1, ERROR, 63}, {0, SHIFT, 38}, }, - {{-1, ERROR, 64}, {30, SHIFT, 87}, }, - {{-1, REDUCE, 29}, }, - {{-1, ERROR, 66}, {1, SHIFT, 88}, }, - {{-1, ERROR, 67}, {43, SHIFT, 89}, }, - {{-1, ERROR, 68}, {43, SHIFT, 90}, }, - {{-1, ERROR, 69}, {1, SHIFT, 91}, }, - {{-1, ERROR, 70}, {0, SHIFT, 38}, }, + {{-1, REDUCE, 16}, }, + {{-1, REDUCE, 15}, }, + {{-1, ERROR, 62}, {1, SHIFT, 87}, }, + {{-1, ERROR, 63}, {1, SHIFT, 88}, }, + {{-1, ERROR, 64}, {0, SHIFT, 38}, }, + {{-1, ERROR, 65}, {0, SHIFT, 38}, }, + {{-1, ERROR, 66}, {32, SHIFT, 91}, }, + {{-1, REDUCE, 31}, }, + {{-1, ERROR, 68}, {1, SHIFT, 92}, }, + {{-1, ERROR, 69}, {45, SHIFT, 93}, }, + {{-1, ERROR, 70}, {45, SHIFT, 94}, }, + {{-1, ERROR, 71}, {1, SHIFT, 95}, }, + {{-1, ERROR, 72}, {1, SHIFT, 96}, }, + {{-1, ERROR, 73}, {0, SHIFT, 38}, }, + {{-1, REDUCE, 19}, }, + {{-1, ERROR, 75}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 76}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 77}, {0, SHIFT, 100}, }, + {{-1, ERROR, 78}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 79}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 80}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 81}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 82}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 83}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 84}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 85}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 86}, {0, SHIFT, 51}, }, + {{-1, REDUCE, 20}, }, + {{-1, REDUCE, 21}, }, + {{-1, ERROR, 89}, {0, SHIFT, 38}, {40, SHIFT, 111}, }, + {{-1, ERROR, 90}, {1, SHIFT, 113}, }, + {{-1, ERROR, 91}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, REDUCE, 39}, }, + {{-1, ERROR, 93}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 94}, {1, SHIFT, 116}, }, {{-1, REDUCE, 17}, }, - {{-1, ERROR, 72}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 73}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 74}, {0, SHIFT, 95}, }, - {{-1, ERROR, 75}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 76}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 77}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 78}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 79}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 80}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 81}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 82}, {0, SHIFT, 50}, }, {{-1, REDUCE, 18}, }, - {{-1, REDUCE, 19}, }, - {{-1, ERROR, 85}, {0, SHIFT, 38}, {38, SHIFT, 105}, }, - {{-1, ERROR, 86}, {1, SHIFT, 107}, }, - {{-1, ERROR, 87}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, REDUCE, 37}, }, - {{-1, ERROR, 89}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 90}, {1, SHIFT, 110}, }, - {{-1, REDUCE, 16}, }, - {{-1, ERROR, 92}, {0, SHIFT, 52}, {38, SHIFT, 53}, }, - {{-1, ERROR, 93}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 94}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 95}, {2, SHIFT, 41}, }, - {{-1, ERROR, 96}, {1, SHIFT, 114}, }, - {{-1, ERROR, 97}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 98}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 99}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 100}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 101}, {1, SHIFT, 119}, }, - {{-1, ERROR, 102}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 103}, {0, SHIFT, 55}, {35, SHIFT, 56}, {36, SHIFT, 57}, {37, SHIFT, 58}, {42, SHIFT, 59}, }, - {{-1, ERROR, 104}, {1, SHIFT, 122}, }, - {{-1, ERROR, 105}, {1, SHIFT, 123}, }, - {{-1, ERROR, 106}, {1, SHIFT, 124}, }, - {{-1, REDUCE, 22}, }, - {{-1, ERROR, 108}, {0, SHIFT, 64}, {38, SHIFT, 65}, }, - {{-1, ERROR, 109}, {1, SHIFT, 126}, }, - {{-1, REDUCE, 36}, }, - {{-1, ERROR, 111}, {1, SHIFT, 127}, }, - {{-1, ERROR, 112}, {1, SHIFT, 128}, }, - {{-1, ERROR, 113}, {1, SHIFT, 129}, }, - {{-1, REDUCE, 10}, }, - {{-1, ERROR, 115}, {1, SHIFT, 130}, }, - {{-1, ERROR, 116}, {1, SHIFT, 131}, }, - {{-1, ERROR, 117}, {1, SHIFT, 132}, }, - {{-1, ERROR, 118}, {1, SHIFT, 133}, }, - {{-1, REDUCE, 9}, }, - {{-1, ERROR, 120}, {1, SHIFT, 134}, }, - {{-1, ERROR, 121}, {1, SHIFT, 135}, }, + {{-1, ERROR, 97}, {0, SHIFT, 54}, {40, SHIFT, 55}, }, + {{-1, ERROR, 98}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 99}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 100}, {2, SHIFT, 41}, }, + {{-1, ERROR, 101}, {1, SHIFT, 120}, }, + {{-1, ERROR, 102}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 103}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 104}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 105}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 106}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 107}, {1, SHIFT, 126}, }, + {{-1, ERROR, 108}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 109}, {0, SHIFT, 57}, {37, SHIFT, 58}, {38, SHIFT, 59}, {39, SHIFT, 60}, {44, SHIFT, 61}, }, + {{-1, ERROR, 110}, {1, SHIFT, 129}, }, + {{-1, ERROR, 111}, {1, SHIFT, 130}, }, + {{-1, ERROR, 112}, {1, SHIFT, 131}, }, + {{-1, REDUCE, 24}, }, + {{-1, ERROR, 114}, {0, SHIFT, 66}, {40, SHIFT, 67}, }, + {{-1, ERROR, 115}, {1, SHIFT, 133}, }, + {{-1, REDUCE, 38}, }, + {{-1, ERROR, 117}, {1, SHIFT, 134}, }, + {{-1, ERROR, 118}, {1, SHIFT, 135}, }, + {{-1, ERROR, 119}, {1, SHIFT, 136}, }, {{-1, REDUCE, 11}, }, - {{-1, REDUCE, 21}, }, - {{-1, REDUCE, 20}, }, - {{-1, ERROR, 125}, {1, SHIFT, 136}, }, - {{-1, REDUCE, 35}, }, - {{-1, REDUCE, 30}, }, + {{-1, ERROR, 121}, {1, SHIFT, 137}, }, + {{-1, ERROR, 122}, {1, SHIFT, 138}, }, + {{-1, ERROR, 123}, {1, SHIFT, 139}, }, + {{-1, ERROR, 124}, {1, SHIFT, 140}, }, + {{-1, ERROR, 125}, {1, SHIFT, 141}, }, + {{-1, REDUCE, 10}, }, + {{-1, ERROR, 127}, {1, SHIFT, 142}, }, + {{-1, ERROR, 128}, {1, SHIFT, 143}, }, + {{-1, REDUCE, 12}, }, + {{-1, REDUCE, 23}, }, + {{-1, REDUCE, 22}, }, + {{-1, ERROR, 132}, {1, SHIFT, 144}, }, + {{-1, REDUCE, 37}, }, + {{-1, REDUCE, 32}, }, {{-1, REDUCE, 1}, }, {{-1, REDUCE, 2}, }, {{-1, REDUCE, 3}, }, @@ -1752,21 +1835,22 @@ public class Parser {{-1, REDUCE, 6}, }, {{-1, REDUCE, 7}, }, {{-1, REDUCE, 8}, }, - {{-1, REDUCE, 28}, }, + {{-1, REDUCE, 9}, }, + {{-1, REDUCE, 30}, }, };*/ private static int[][][] gotoTable; /* { {{-1, 2}, }, - {{-1, 60}, {45, 61}, {46, 62}, {47, 63}, {51, 69}, {72, 93}, {73, 94}, {75, 97}, {76, 98}, {77, 99}, {78, 100}, {79, 101}, {80, 102}, {81, 103}, {87, 108}, {89, 109}, {93, 112}, {94, 113}, {97, 115}, {98, 116}, {99, 117}, {100, 118}, {102, 120}, {103, 121}, }, - {{-1, 39}, {62, 85}, {63, 86}, {70, 92}, {85, 106}, }, + {{-1, 62}, {46, 63}, {47, 64}, {48, 65}, {52, 71}, {53, 72}, {75, 98}, {76, 99}, {78, 102}, {79, 103}, {80, 104}, {81, 105}, {82, 106}, {83, 107}, {84, 108}, {85, 109}, {91, 114}, {93, 115}, {98, 118}, {99, 119}, {102, 121}, {103, 122}, {104, 123}, {105, 124}, {106, 125}, {108, 127}, {109, 128}, }, + {{-1, 39}, {64, 89}, {65, 90}, {73, 97}, {89, 112}, }, {{-1, 10}, {19, 24}, }, {{-1, 6}, {12, 17}, {34, 36}, {36, 37}, }, - {{-1, 66}, {108, 125}, }, - {{-1, 54}, {92, 111}, }, + {{-1, 68}, {114, 132}, }, + {{-1, 56}, {97, 117}, }, {{-1, 19}, }, {{-1, 12}, }, - {{-1, 51}, {82, 104}, }, - {{-1, 40}, {74, 96}, }, + {{-1, 52}, {43, 53}, {86, 110}, }, + {{-1, 40}, {77, 101}, }, {{-1, 28}, {21, 29}, {30, 34}, }, };*/ private static String[] errorMessages; @@ -1785,11 +1869,11 @@ public class Parser "expecting: 'entier', 'bool', 'nul'", "expecting: '(', ')', 'null', integer", "expecting: integer", - "expecting: 'SaAppel', 'SaInstAffect', 'SaInstBloc', 'SaInstEcriture', 'SaInstRetour', 'SaInstSi', 'SaInstTantQue'", + "expecting: 'SaAppel', 'SaInstAffect', 'SaIncr', 'SaInstBloc', 'SaInstEcriture', 'SaInstRetour', 'SaInstSi', 'SaInstTantQue'", "expecting: '(', 'faux', 'vrai', 'lire', integer", "expecting: 'SaVarIndicee', 'SaVarSimple'", "expecting: 'SaLInst'", - "expecting: 'SaExpAdd', 'SaExpAnd', 'SaExpAppel', 'SaExpDiv', 'SaExpEqual', 'SaExpInf', 'SaExpMult', 'SaExpNot', 'SaExpOr', 'SaExpSub', 'SaExpVar'", + "expecting: 'SaExpAdd', 'SaExpAnd', 'SaExpAppel', 'SaExpDiv', 'SaExpEqual', 'SaExpInf', 'SaExpMult', 'SaExpModulo', 'SaExpNot', 'SaExpOr', 'SaExpSub', 'SaExpVar'", "expecting: '(', ')', 'faux', 'vrai', 'lire', 'null', integer", "expecting: 'SaLExp'", "expecting: 'SaAppel'", @@ -1797,7 +1881,7 @@ public class Parser };*/ private static int[] errors; /* { - 0, 1, 2, 3, 4, 5, 3, 0, 6, 7, 7, 8, 3, 0, 2, 9, 9, 7, 10, 3, 11, 11, 5, 9, 7, 12, 12, 12, 13, 7, 11, 7, 7, 3, 3, 3, 3, 0, 14, 7, 5, 9, 0, 3, 15, 15, 15, 15, 3, 3, 16, 15, 17, 7, 7, 18, 19, 19, 19, 19, 7, 7, 0, 0, 20, 7, 7, 9, 9, 7, 0, 5, 15, 15, 0, 15, 15, 15, 15, 15, 15, 15, 0, 5, 5, 3, 7, 15, 5, 15, 7, 5, 3, 15, 15, 21, 7, 15, 15, 15, 15, 7, 15, 15, 7, 7, 7, 5, 3, 7, 22, 7, 7, 7, 19, 7, 7, 7, 7, 19, 7, 7, 19, 5, 5, 7, 22, 7, 19, 19, 19, 19, 19, 19, 19, 19, 7, + 0, 1, 2, 3, 4, 5, 3, 0, 6, 7, 7, 8, 3, 0, 2, 9, 9, 7, 10, 3, 11, 11, 5, 9, 7, 12, 12, 12, 13, 7, 11, 7, 7, 3, 3, 3, 3, 0, 14, 7, 5, 9, 0, 0, 3, 15, 15, 15, 15, 3, 3, 16, 15, 15, 17, 7, 7, 18, 19, 19, 19, 19, 7, 7, 0, 0, 20, 7, 7, 9, 9, 7, 7, 0, 5, 15, 15, 0, 15, 15, 15, 15, 15, 15, 15, 15, 0, 5, 5, 3, 7, 15, 5, 15, 7, 5, 5, 3, 15, 15, 21, 7, 15, 15, 15, 15, 15, 7, 15, 15, 7, 7, 7, 5, 3, 7, 22, 7, 7, 7, 19, 7, 7, 7, 7, 7, 19, 7, 7, 19, 5, 5, 7, 22, 7, 19, 19, 19, 19, 19, 19, 19, 19, 19, 7, };*/ static diff --git a/src/saParser/parser/TokenIndex.java b/src/saParser/parser/TokenIndex.java index c7c5f32..9e14b98 100644 --- a/src/saParser/parser/TokenIndex.java +++ b/src/saParser/parser/TokenIndex.java @@ -112,170 +112,182 @@ class TokenIndex extends AnalysisAdapter } @Override - public void caseTSaexpnot(@SuppressWarnings("unused") TSaexpnot node) + public void caseTSaexpmodulo(@SuppressWarnings("unused") TSaexpmodulo node) { this.index = 17; } @Override - public void caseTSaexpor(@SuppressWarnings("unused") TSaexpor node) + public void caseTSaexpnot(@SuppressWarnings("unused") TSaexpnot node) { this.index = 18; } @Override - public void caseTSaexpsub(@SuppressWarnings("unused") TSaexpsub node) + public void caseTSaexpor(@SuppressWarnings("unused") TSaexpor node) { this.index = 19; } @Override - public void caseTSaexpvar(@SuppressWarnings("unused") TSaexpvar node) + public void caseTSaexpsub(@SuppressWarnings("unused") TSaexpsub node) { this.index = 20; } @Override - public void caseTSaexpvrai(@SuppressWarnings("unused") TSaexpvrai node) + public void caseTSaexpvar(@SuppressWarnings("unused") TSaexpvar node) { this.index = 21; } @Override - public void caseTSainstaffect(@SuppressWarnings("unused") TSainstaffect node) + public void caseTSaexpvrai(@SuppressWarnings("unused") TSaexpvrai node) { this.index = 22; } @Override - public void caseTSainstbloc(@SuppressWarnings("unused") TSainstbloc node) + public void caseTSainstaffect(@SuppressWarnings("unused") TSainstaffect node) { this.index = 23; } @Override - public void caseTSainstecriture(@SuppressWarnings("unused") TSainstecriture node) + public void caseTSaincr(@SuppressWarnings("unused") TSaincr node) { this.index = 24; } @Override - public void caseTSainstretour(@SuppressWarnings("unused") TSainstretour node) + public void caseTSainstbloc(@SuppressWarnings("unused") TSainstbloc node) { this.index = 25; } @Override - public void caseTSainstsi(@SuppressWarnings("unused") TSainstsi node) + public void caseTSainstecriture(@SuppressWarnings("unused") TSainstecriture node) { this.index = 26; } @Override - public void caseTSainsttantque(@SuppressWarnings("unused") TSainsttantque node) + public void caseTSainstretour(@SuppressWarnings("unused") TSainstretour node) { this.index = 27; } @Override - public void caseTSaldecfonc(@SuppressWarnings("unused") TSaldecfonc node) + public void caseTSainstsi(@SuppressWarnings("unused") TSainstsi node) { this.index = 28; } @Override - public void caseTSaldecvar(@SuppressWarnings("unused") TSaldecvar node) + public void caseTSainsttantque(@SuppressWarnings("unused") TSainsttantque node) { this.index = 29; } @Override - public void caseTSalexp(@SuppressWarnings("unused") TSalexp node) + public void caseTSaldecfonc(@SuppressWarnings("unused") TSaldecfonc node) { this.index = 30; } @Override - public void caseTSalinst(@SuppressWarnings("unused") TSalinst node) + public void caseTSaldecvar(@SuppressWarnings("unused") TSaldecvar node) { this.index = 31; } @Override - public void caseTSaprog(@SuppressWarnings("unused") TSaprog node) + public void caseTSalexp(@SuppressWarnings("unused") TSalexp node) { this.index = 32; } @Override - public void caseTSavarindicee(@SuppressWarnings("unused") TSavarindicee node) + public void caseTSalinst(@SuppressWarnings("unused") TSalinst node) { this.index = 33; } @Override - public void caseTSavarsimple(@SuppressWarnings("unused") TSavarsimple node) + public void caseTSaprog(@SuppressWarnings("unused") TSaprog node) { this.index = 34; } @Override - public void caseTFaux(@SuppressWarnings("unused") TFaux node) + public void caseTSavarindicee(@SuppressWarnings("unused") TSavarindicee node) { this.index = 35; } @Override - public void caseTVrai(@SuppressWarnings("unused") TVrai node) + public void caseTSavarsimple(@SuppressWarnings("unused") TSavarsimple node) { this.index = 36; } @Override - public void caseTLire(@SuppressWarnings("unused") TLire node) + public void caseTFaux(@SuppressWarnings("unused") TFaux node) { this.index = 37; } @Override - public void caseTNull(@SuppressWarnings("unused") TNull node) + public void caseTVrai(@SuppressWarnings("unused") TVrai node) { this.index = 38; } @Override - public void caseTEntier(@SuppressWarnings("unused") TEntier node) + public void caseTLire(@SuppressWarnings("unused") TLire node) { this.index = 39; } @Override - public void caseTBool(@SuppressWarnings("unused") TBool node) + public void caseTNull(@SuppressWarnings("unused") TNull node) { this.index = 40; } @Override - public void caseTNul(@SuppressWarnings("unused") TNul node) + public void caseTEntier(@SuppressWarnings("unused") TEntier node) { this.index = 41; } @Override - public void caseTInteger(@SuppressWarnings("unused") TInteger node) + public void caseTBool(@SuppressWarnings("unused") TBool node) { this.index = 42; } @Override - public void caseTId(@SuppressWarnings("unused") TId node) + public void caseTNul(@SuppressWarnings("unused") TNul node) { this.index = 43; } @Override - public void caseEOF(@SuppressWarnings("unused") EOF node) + public void caseTInteger(@SuppressWarnings("unused") TInteger node) { this.index = 44; } + + @Override + public void caseTId(@SuppressWarnings("unused") TId node) + { + this.index = 45; + } + + @Override + public void caseEOF(@SuppressWarnings("unused") EOF node) + { + this.index = 46; + } } diff --git a/src/saParser/parser/parser.dat b/src/saParser/parser/parser.dat index ab0f40aba3c0985f37bdb0b822ad9f1dfab43c82..e64a05e0052df0e5319065a9509c0f8e150ee0be 100644 GIT binary patch literal 8160 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 NNDa&kkT@aC4gmUxB`W{` literal 7678 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 B>-hix -- GitLab