diff --git a/src/main/java/org/sablecc/sablecc/AcceptStates.java b/src/main/java/org/sablecc/sablecc/AcceptStates.java index 7bdfe11395fb592645dec42a990f9fbaa46d12b9..d38ba438482902550af7af9231cb14e8ee6617fa 100644 --- a/src/main/java/org/sablecc/sablecc/AcceptStates.java +++ b/src/main/java/org/sablecc/sablecc/AcceptStates.java @@ -24,6 +24,7 @@ public class AcceptStates extends DepthFirstAdapter this.stateName = stateName; } + @Override public void caseStart(Start node) { for(int i = 0; i < dfa.states.size(); i++) diff --git a/src/main/java/org/sablecc/sablecc/AddAstProductions.java b/src/main/java/org/sablecc/sablecc/AddAstProductions.java index b5c9e6a42a1dc2461d4c650d7484568e48b0ca77..1557fa4b5fd2a95cbd18bd31cd34738c0ee7e219 100644 --- a/src/main/java/org/sablecc/sablecc/AddAstProductions.java +++ b/src/main/java/org/sablecc/sablecc/AddAstProductions.java @@ -32,6 +32,7 @@ public class AddAstProductions extends DepthFirstAdapter public AddAstProductions() {} + @Override public void caseAProd(AProd node) { firstAlt = true; @@ -56,17 +57,20 @@ public class AddAstProductions extends DepthFirstAdapter listAstProd.add(astProd); } + @Override public void outAGrammar(AGrammar node) { node.setAst(new AAst(listAstProd)); } + @Override public void inAAlt(AAlt node) { listElems = new LinkedList<>(); processingParsedAlt = true; } + @Override public void inAAltTransform(AAltTransform node) { if(node.getLBrace() != null) @@ -75,6 +79,7 @@ public class AddAstProductions extends DepthFirstAdapter } } + @Override public void outAAlt(AAlt node) { TId aAltname = node.getAltName() == null ? null : (TId)node.getAltName().clone(); @@ -86,6 +91,7 @@ public class AddAstProductions extends DepthFirstAdapter boolean processingParsedAlt; + @Override public void inAElem(AElem node) { if(processingParsedAlt) diff --git a/src/main/java/org/sablecc/sablecc/AddEventualEmptyTransformationToProductions.java b/src/main/java/org/sablecc/sablecc/AddEventualEmptyTransformationToProductions.java index 2cab3121dc8e5c1634e828419c22ddcdf5e499ae..36120522a66c16d80ba4b6d8727269348e406e39 100644 --- a/src/main/java/org/sablecc/sablecc/AddEventualEmptyTransformationToProductions.java +++ b/src/main/java/org/sablecc/sablecc/AddEventualEmptyTransformationToProductions.java @@ -38,6 +38,7 @@ public class AddEventualEmptyTransformationToProductions extends DepthFirstAdapt this.ast_ids = ast_ids; } + @Override public void inAProd(AProd node) { currentProd = ids.names.get(node); @@ -57,6 +58,7 @@ public class AddEventualEmptyTransformationToProductions extends DepthFirstAdapt { alts[i].apply( new DepthFirstAdapter() { + @Override public void inAAlt(AAlt node) { if(node.getAltTransform() != null && ((AAltTransform)node.getAltTransform()).getTerms().size() > 0) diff --git a/src/main/java/org/sablecc/sablecc/AddProdTransformAndAltTransform.java b/src/main/java/org/sablecc/sablecc/AddProdTransformAndAltTransform.java index 336a94ef45fc020f4b8351798d6e3b884f2f4b49..9ec3746bc0f80c6bca50efc7bc0b0fe3cf7d05a4 100644 --- a/src/main/java/org/sablecc/sablecc/AddProdTransformAndAltTransform.java +++ b/src/main/java/org/sablecc/sablecc/AddProdTransformAndAltTransform.java @@ -30,6 +30,7 @@ public class AddProdTransformAndAltTransform extends DepthFirstAdapter private String currentProdId; private String currentAlt; + @Override public void inAProd(final AProd production) { currentProdId = production.getId().getText(); @@ -47,6 +48,7 @@ public class AddProdTransformAndAltTransform extends DepthFirstAdapter private int i; private LinkedList list; + @Override public void inAAlt(AAlt alt) { if(alt.getAltTransform() == null) @@ -68,6 +70,7 @@ public class AddProdTransformAndAltTransform extends DepthFirstAdapter { ((PElem) temp[i]).apply(new DepthFirstAdapter() { + @Override public void caseAElem(AElem elem) { PTerm term; diff --git a/src/main/java/org/sablecc/sablecc/AltTransformAdapter.java b/src/main/java/org/sablecc/sablecc/AltTransformAdapter.java index 396bfefa15984ccb5000fe0d856b90d4e2eaa919..e5be2d29bd0df71c6b47a06d82c4e2b1449c5cb5 100644 --- a/src/main/java/org/sablecc/sablecc/AltTransformAdapter.java +++ b/src/main/java/org/sablecc/sablecc/AltTransformAdapter.java @@ -37,6 +37,7 @@ public class AltTransformAdapter extends DepthFirstAdapter this.simpleTermOrsimpleListTermTypes = simpleTermOrsimpleListTermTypes; } + @Override public void inASimpleTerm(ASimpleTerm node) { String name = node.getId().getText(); @@ -74,6 +75,7 @@ public class AltTransformAdapter extends DepthFirstAdapter } } + @Override public void inASimpleListTerm(ASimpleListTerm node) { String name = node.getId().getText(); @@ -115,6 +117,7 @@ public class AltTransformAdapter extends DepthFirstAdapter } } + @Override public void outAListTerm(AListTerm node) { if( (node.getListTerms() != null) && (node.getListTerms().size() > 0) ) diff --git a/src/main/java/org/sablecc/sablecc/AlternativeElementTypes.java b/src/main/java/org/sablecc/sablecc/AlternativeElementTypes.java index 34de7054783c61a952d93e096c2d36e68ff41cf2..d275aba57e6b54a6eba57e09b322ee57e6491ff4 100644 --- a/src/main/java/org/sablecc/sablecc/AlternativeElementTypes.java +++ b/src/main/java/org/sablecc/sablecc/AlternativeElementTypes.java @@ -29,9 +29,11 @@ public class AlternativeElementTypes extends DepthFirstAdapter return altElemTypes; } + @Override public void caseAAst(AAst node) {} + @Override public void caseAProd(final AProd production) { Object []temp = production.getAlts().toArray(); @@ -41,6 +43,7 @@ public class AlternativeElementTypes extends DepthFirstAdapter } } + @Override public void caseAAlt(AAlt node) { currentAlt = ids.names.get(node); @@ -51,6 +54,7 @@ public class AlternativeElementTypes extends DepthFirstAdapter } } + @Override public void inAElem(AElem node) { String elemType = ids.elemTypes.get(node); diff --git a/src/main/java/org/sablecc/sablecc/CharSet.java b/src/main/java/org/sablecc/sablecc/CharSet.java index ec5f8114b97dc26947cc85440c9cee5b5793c175..e49bceaa3dee922aafa33f042e243700811808b0 100644 --- a/src/main/java/org/sablecc/sablecc/CharSet.java +++ b/src/main/java/org/sablecc/sablecc/CharSet.java @@ -33,6 +33,7 @@ public class CharSet implements Cloneable } } + @Override public Object clone() { return new CharSet(intervals); @@ -160,6 +161,7 @@ public class CharSet implements Cloneable return result; } + @Override public String toString() { StringBuffer result = new StringBuffer(); @@ -180,6 +182,7 @@ public class CharSet implements Cloneable this.end = end; } + @Override public Object clone() { return new Interval(start, end); @@ -195,6 +198,7 @@ public class CharSet implements Cloneable return "" + ((int) c); } + @Override public String toString() { if(start < end) diff --git a/src/main/java/org/sablecc/sablecc/ComputeCGNomenclature.java b/src/main/java/org/sablecc/sablecc/ComputeCGNomenclature.java index bb8ebf191ef2c6f820a2ff86b0013f378856287c..29a695c11d25d47ed10ec6ea8a7d671e2f713bd9 100644 --- a/src/main/java/org/sablecc/sablecc/ComputeCGNomenclature.java +++ b/src/main/java/org/sablecc/sablecc/ComputeCGNomenclature.java @@ -58,6 +58,7 @@ public class ComputeCGNomenclature extends DepthFirstAdapter return termNumbers; } + @Override public void caseAProd(final AProd production) { currentProd = "P" + ids.name(production.getId().getText()); @@ -68,6 +69,7 @@ public class ComputeCGNomenclature extends DepthFirstAdapter } } + @Override public void inAAlt(AAlt nodeAlt) { counter = 0; @@ -86,9 +88,11 @@ public class ComputeCGNomenclature extends DepthFirstAdapter counter = 0; } + @Override public void caseAAst(AAst node) {} + @Override public void inAElem(AElem node) { String elemType = ids.elemTypes.get(node); @@ -99,6 +103,7 @@ public class ComputeCGNomenclature extends DepthFirstAdapter } } + @Override public void inANewTerm(ANewTerm node) { AProdName aProdName = (AProdName)node.getProdName(); @@ -108,6 +113,7 @@ public class ComputeCGNomenclature extends DepthFirstAdapter termNumbers.put(node, ++counter); } + @Override public void inANewListTerm(ANewListTerm node) { AProdName aProdName = (AProdName)node.getProdName(); @@ -117,6 +123,7 @@ public class ComputeCGNomenclature extends DepthFirstAdapter termNumbers.put(node, ++counter); } + @Override public void outAListTerm(AListTerm node) { if( node.getListTerms().size() > 0 ) @@ -144,6 +151,7 @@ public class ComputeCGNomenclature extends DepthFirstAdapter termNumbers.put(node, ++counter); } + @Override public void caseASimpleTerm(ASimpleTerm node) { String name; @@ -232,12 +240,14 @@ public class ComputeCGNomenclature extends DepthFirstAdapter termNumbers.put(node, new Integer(++counter)); } */ + @Override public void caseANullTerm(ANullTerm node) { altTransformElemTypes.put(node, "null"); termNumbers.put(node, ++counter); } + @Override public void caseASimpleListTerm(ASimpleListTerm node) { String name; diff --git a/src/main/java/org/sablecc/sablecc/ComputeInlining.java b/src/main/java/org/sablecc/sablecc/ComputeInlining.java index fada5751a09a240a50f8d02a95621c5198802e81..e4a2f550b03a9b9a5ba24ac4d3f9a670b9010515 100644 --- a/src/main/java/org/sablecc/sablecc/ComputeInlining.java +++ b/src/main/java/org/sablecc/sablecc/ComputeInlining.java @@ -70,6 +70,7 @@ public class ComputeInlining tree.apply(new DepthFirstAdapter() { + @Override public void caseAProd(AProd node) { //We do not inline the production itself. @@ -115,6 +116,7 @@ public class ComputeInlining production.apply(new DepthFirstAdapter() { + @Override public void caseAProd(AProd node) { Object temp[] = node.getAlts().toArray(); @@ -124,6 +126,7 @@ public class ComputeInlining } } + @Override public void caseAAlt(AAlt node) { Object temp[] = node.getElems().toArray(); @@ -133,6 +136,7 @@ public class ComputeInlining } } + @Override public void caseAElem(AElem node) { if(node.getId().getText().equals(currentProdName)) diff --git a/src/main/java/org/sablecc/sablecc/ComputeSimpleTermPosition.java b/src/main/java/org/sablecc/sablecc/ComputeSimpleTermPosition.java index f6fe21ba3cc06f1b126eea0212731c6465da65bd..7f0de7df0a98b04a2642ec32369d0a0bf69d3476 100644 --- a/src/main/java/org/sablecc/sablecc/ComputeSimpleTermPosition.java +++ b/src/main/java/org/sablecc/sablecc/ComputeSimpleTermPosition.java @@ -29,12 +29,14 @@ public class ComputeSimpleTermPosition extends DepthFirstAdapter this.ids = ids; } + @Override public void inAProd(AProd node) { currentProd = ids.name(node.getId().getText()); ids.names.put(node, currentProd); } + @Override public void inAAlt(AAlt node) { counter = 0; @@ -54,6 +56,7 @@ public class ComputeSimpleTermPosition extends DepthFirstAdapter ids.names.put(node, currentAlt); } + @Override public void inAElem(AElem node) { if(processingParsedAlt) @@ -96,6 +99,7 @@ public class ComputeSimpleTermPosition extends DepthFirstAdapter } } + @Override public void outAAlt(AAlt node) { processingParsedAlt = false; diff --git a/src/main/java/org/sablecc/sablecc/ConstructNFA.java b/src/main/java/org/sablecc/sablecc/ConstructNFA.java index c7ceff4c68b932254696d1832781ecda7716739d..83b29b01dd97b7b1f5d9c0a8d34aafe570f90816 100644 --- a/src/main/java/org/sablecc/sablecc/ConstructNFA.java +++ b/src/main/java/org/sablecc/sablecc/ConstructNFA.java @@ -24,6 +24,7 @@ public class ConstructNFA extends DepthFirstAdapter this.stateName = stateName; } + @Override public void outStart(Start node) { setOut(node, getOut(node.getPGrammar())); @@ -33,6 +34,7 @@ public class ConstructNFA extends DepthFirstAdapter setOut(node.getPGrammar(), null); } + @Override public void outAGrammar(AGrammar node) { setOut(node, getOut(node.getTokens())); @@ -42,6 +44,7 @@ public class ConstructNFA extends DepthFirstAdapter setOut(node.getTokens(), null); } + @Override public void outAHelperDef(AHelperDef node) { setOut(node, getOut(node.getRegExp())); @@ -51,6 +54,7 @@ public class ConstructNFA extends DepthFirstAdapter setOut(node.getRegExp(), null); } + @Override public void outATokens(ATokens node) { ATokenDef[] tokenDefs = (ATokenDef[]) node.getTokenDefs().toArray(new ATokenDef[0]); @@ -80,6 +84,7 @@ public class ConstructNFA extends DepthFirstAdapter setOut(node, result); } + @Override public void outATokenDef(ATokenDef node) { Set set @@ -109,6 +114,7 @@ public class ConstructNFA extends DepthFirstAdapter setOut(node.getRegExp(), null); } + @Override public void outAStateList(AStateList node) { Set set @@ -126,6 +132,7 @@ public class ConstructNFA extends DepthFirstAdapter ); } + @Override public void outARegExp(ARegExp node) { AConcat[] concats = (AConcat[]) node.getConcats().toArray(new AConcat[0]); @@ -163,6 +170,7 @@ public class ConstructNFA extends DepthFirstAdapter } } + @Override public void outAConcat(AConcat node) { AUnExp[] unExps = (AUnExp[]) node.getUnExps().toArray(new AUnExp[0]); @@ -206,6 +214,7 @@ public class ConstructNFA extends DepthFirstAdapter } } + @Override public void outAUnExp(AUnExp node) { Object o = getOut(node.getBasic()); @@ -248,6 +257,7 @@ public class ConstructNFA extends DepthFirstAdapter setOut(node.getUnOp(), null); } + @Override public void outACharBasic(ACharBasic node) { char c = ((Character) getOut(node.getChar())).charValue(); @@ -258,6 +268,7 @@ public class ConstructNFA extends DepthFirstAdapter setOut(node.getChar(), null); } + @Override public void outASetBasic(ASetBasic node) { setOut(node, getOut(node.getSet())); @@ -267,6 +278,7 @@ public class ConstructNFA extends DepthFirstAdapter setOut(node.getSet(), null); } + @Override public void outAStringBasic(AStringBasic node) { String s = node.getString().getText(); @@ -275,6 +287,7 @@ public class ConstructNFA extends DepthFirstAdapter setOut(node, new NFA(s)); } + @Override public void outAIdBasic(AIdBasic node) { Object o = getOut(ids.helpers.get(node.getId().getText())); @@ -289,6 +302,7 @@ public class ConstructNFA extends DepthFirstAdapter } } + @Override public void outARegExpBasic(ARegExpBasic node) { setOut(node, getOut(node.getRegExp())); @@ -298,22 +312,26 @@ public class ConstructNFA extends DepthFirstAdapter setOut(node.getRegExp(), null); } + @Override public void outACharChar(ACharChar node) { setOut(node, new Character(node.getChar().getText().charAt(1))); } + @Override public void outADecChar(ADecChar node) { setOut(node, new Character((char) Integer.parseInt(node.getDecChar().getText()))); } + @Override public void outAHexChar(AHexChar node) { setOut(node, new Character((char) Integer.parseInt(node.getHexChar().getText().substring(2), 16))); } + @Override public void outAOperationSet(AOperationSet node) { try @@ -350,6 +368,7 @@ public class ConstructNFA extends DepthFirstAdapter setOut(node.getRight(), null); } + @Override public void outAIntervalSet(AIntervalSet node) { char c1 = ((Character) getOut(node.getLeft())).charValue(); @@ -369,31 +388,37 @@ public class ConstructNFA extends DepthFirstAdapter setOut(node.getRight(), null); } + @Override public void outAStarUnOp(AStarUnOp node) { setOut(node, new Character('*')); } + @Override public void outAQMarkUnOp(AQMarkUnOp node) { setOut(node, new Character('?')); } + @Override public void outAPlusUnOp(APlusUnOp node) { setOut(node, new Character('+')); } + @Override public void outAPlusBinOp(APlusBinOp node) { setOut(node, new Character('+')); } + @Override public void outAMinusBinOp(AMinusBinOp node) { setOut(node, new Character('-')); } + @Override public Object getOut(Node node) { if(node == null) @@ -404,6 +429,7 @@ public class ConstructNFA extends DepthFirstAdapter return super.getOut(node); } + @Override public void setOut(Node node, Object out) { if(node == null) diff --git a/src/main/java/org/sablecc/sablecc/ConstructParserGenerationDatas.java b/src/main/java/org/sablecc/sablecc/ConstructParserGenerationDatas.java index f0f559d48060d3ddad2e7da170279b51d7c1515d..6ee0859d5fe6a2610ced4afd97461b001adebe7d 100644 --- a/src/main/java/org/sablecc/sablecc/ConstructParserGenerationDatas.java +++ b/src/main/java/org/sablecc/sablecc/ConstructParserGenerationDatas.java @@ -26,9 +26,11 @@ public class ConstructParserGenerationDatas extends DepthFirstAdapter this.alts = alts; } + @Override public void caseAAst(AAst node) {} + @Override public void caseAProd(AProd node) { currentProd = ids.names.get(node); @@ -39,6 +41,7 @@ public class ConstructParserGenerationDatas extends DepthFirstAdapter } } + @Override public void caseAAlt(AAlt node) { currentAlt = Grammar.addProduction(currentProd, ids.names.get(node)); @@ -51,6 +54,7 @@ public class ConstructParserGenerationDatas extends DepthFirstAdapter } } + @Override public void caseAElem(AElem node) { String name = ids.name(node.getId().getText()); diff --git a/src/main/java/org/sablecc/sablecc/ConstructProdsMap.java b/src/main/java/org/sablecc/sablecc/ConstructProdsMap.java index 52e06391d7c6839e800c4435c974bfba4fd791a7..b0725fe7bbf840ef98960141fec1ffdefa713d83 100644 --- a/src/main/java/org/sablecc/sablecc/ConstructProdsMap.java +++ b/src/main/java/org/sablecc/sablecc/ConstructProdsMap.java @@ -17,6 +17,7 @@ public class ConstructProdsMap extends DepthFirstAdapter private String currentProd; + @Override public void caseAProd(AProd node) { currentProd = ResolveIds.name(node.getId().getText()); diff --git a/src/main/java/org/sablecc/sablecc/DFA.java b/src/main/java/org/sablecc/sablecc/DFA.java index 3747676983ecd37dabafb1877dd4221d7fd088a3..ecc0c6759d4d7b2dbb3a3d1a5d7441ed1b7a9096 100644 --- a/src/main/java/org/sablecc/sablecc/DFA.java +++ b/src/main/java/org/sablecc/sablecc/DFA.java @@ -314,6 +314,7 @@ public class DFA return result; } + @Override public String toString() { StringBuffer result = new StringBuffer(); @@ -338,6 +339,7 @@ public class DFA public Vector transitions = new Vector(0); public int accept; + @Override public String toString() { StringBuffer result = new StringBuffer(); @@ -388,6 +390,7 @@ public class DFA destination = transition.destination; } + @Override public String toString() { return destination + ":[" + interval() + "]"; diff --git a/src/main/java/org/sablecc/sablecc/GenAlts.java b/src/main/java/org/sablecc/sablecc/GenAlts.java index 2aedd3eb12abc153a7960c97b3a07dc246244c7f..3edc0437607243545cf2805ec2a0cf307a4f66db 100644 --- a/src/main/java/org/sablecc/sablecc/GenAlts.java +++ b/src/main/java/org/sablecc/sablecc/GenAlts.java @@ -50,19 +50,23 @@ public class GenAlts extends DepthFirstAdapter } } + @Override public void inAAstProd(AAstProd node) { currentProd = ast_ids.ast_names.get(node); } + @Override public void inAAstAlt(AAstAlt node) { elemList = new LinkedList<>(); } + @Override public void caseAProductions(AProductions node) {} + @Override public void inAElem(AElem node) { info = new ElemInfo(); @@ -74,16 +78,19 @@ public class GenAlts extends DepthFirstAdapter { node.getUnOp().apply(new DepthFirstAdapter() { + @Override public void caseAStarUnOp(AStarUnOp node) { info.operator = ElemInfo.STAR; } + @Override public void caseAQMarkUnOp(AQMarkUnOp node) { info.operator = ElemInfo.QMARK; } + @Override public void caseAPlusUnOp(APlusUnOp node) { info.operator = ElemInfo.PLUS; @@ -95,6 +102,7 @@ public class GenAlts extends DepthFirstAdapter info = null; } + @Override public void outAAstAlt(AAstAlt node) { String name = ast_ids.ast_names.get(node); diff --git a/src/main/java/org/sablecc/sablecc/GenAnalyses.java b/src/main/java/org/sablecc/sablecc/GenAnalyses.java index 9eeefa171bf3a7c13c8d11a2e85881c41aa740ca..624dfcae76eb3368e82455fa8f7ef67857ee0a84 100644 --- a/src/main/java/org/sablecc/sablecc/GenAnalyses.java +++ b/src/main/java/org/sablecc/sablecc/GenAnalyses.java @@ -52,6 +52,7 @@ public class GenAnalyses extends DepthFirstAdapter } } + @Override public void inAAstProd(AAstProd node) { if(mainProduction == null) @@ -60,19 +61,23 @@ public class GenAnalyses extends DepthFirstAdapter } } + @Override public void inATokenDef(ATokenDef node) { tokenList.add(ast_ids.astIds.names.get(node)); } + @Override public void inAAstAlt(AAstAlt node) { elemList = new LinkedList<>(); } + @Override public void caseAProductions(AProductions node) {} + @Override public void inAElem(AElem node) { info = new ElemInfo(); @@ -86,16 +91,19 @@ public class GenAnalyses extends DepthFirstAdapter node.getUnOp().apply(new DepthFirstAdapter() { + @Override public void caseAStarUnOp(AStarUnOp node) { info.operator = ElemInfo.STAR; } + @Override public void caseAQMarkUnOp(AQMarkUnOp node) { info.operator = ElemInfo.QMARK; } + @Override public void caseAPlusUnOp(APlusUnOp node) { info.operator = ElemInfo.PLUS; @@ -108,6 +116,7 @@ public class GenAnalyses extends DepthFirstAdapter info = null; } + @Override public void outAAstAlt(AAstAlt node) { AltInfo info = new AltInfo(); @@ -119,6 +128,7 @@ public class GenAnalyses extends DepthFirstAdapter altList.add(info); } + @Override public void outStart(Start node) { createAnalysis(); diff --git a/src/main/java/org/sablecc/sablecc/GenLexer.java b/src/main/java/org/sablecc/sablecc/GenLexer.java index 5a22465c7773b9b024824abc600fb96d025bf9e9..58d1f32c4c0df4d34306e88462f7972f562c3057 100644 --- a/src/main/java/org/sablecc/sablecc/GenLexer.java +++ b/src/main/java/org/sablecc/sablecc/GenLexer.java @@ -50,6 +50,7 @@ public class GenLexer extends AnalysisAdapter } } + @Override public void caseStart(Start tree) { String[] names; diff --git a/src/main/java/org/sablecc/sablecc/GenParser.java b/src/main/java/org/sablecc/sablecc/GenParser.java index 8ba18065d7fb7e3fd72584c0c39cf8b8a65e1a65..78bf55207579d51b35f4cc16631e766b5e308951 100644 --- a/src/main/java/org/sablecc/sablecc/GenParser.java +++ b/src/main/java/org/sablecc/sablecc/GenParser.java @@ -116,10 +116,12 @@ public class GenParser extends DepthFirstAdapter } } + @Override public void caseStart(Start tree) { tree.getPGrammar().apply(new DepthFirstAdapter() { + @Override public void caseAProd(AProd node) { hasProductions = true; @@ -171,6 +173,7 @@ public class GenParser extends DepthFirstAdapter { private boolean hasAlternative; + @Override public void caseATokenDef(ATokenDef node) { String name = ids.names.get(node); @@ -182,16 +185,19 @@ public class GenParser extends DepthFirstAdapter } } + @Override public void inAProd(AProd node) { hasAlternative = false; } + @Override public void inAAlt(AAlt node) { hasAlternative = true; } + @Override public void outAProd(AProd node) { if(hasAlternative) @@ -274,6 +280,7 @@ public class GenParser extends DepthFirstAdapter { tree.apply(new DepthFirstAdapter() { + @Override public void caseAProd(AProd node) { currentProd = ids.name(node.getId().getText()); @@ -289,12 +296,14 @@ public class GenParser extends DepthFirstAdapter } } + @Override public void outAHelperDef(AHelperDef node) { String name = node.getId().getText(); ids.names.put(node, name); } + @Override public void outATokenDef(ATokenDef node) { String name = "T" + ids.name(node.getId().getText()); @@ -302,6 +311,7 @@ public class GenParser extends DepthFirstAdapter ids.names.put(node, name); } + @Override public void caseAAlt(final AAlt alt) { if(alt.getAltName() != null) @@ -326,9 +336,11 @@ public class GenParser extends DepthFirstAdapter } } + @Override public void caseAAst(AAst node) {} + @Override public void caseAElem(final AElem elem) { if(elem.getElemName() != null) @@ -422,6 +434,7 @@ public class GenParser extends DepthFirstAdapter { private int current; + @Override public void caseAElem(AElem elem) { current++; diff --git a/src/main/java/org/sablecc/sablecc/GenProds.java b/src/main/java/org/sablecc/sablecc/GenProds.java index d5e29b90517c6a171edeba3cb9f8157d06fec860..6e223d94f82f9ba70658bb7ada90112db4185498 100644 --- a/src/main/java/org/sablecc/sablecc/GenProds.java +++ b/src/main/java/org/sablecc/sablecc/GenProds.java @@ -46,6 +46,7 @@ public class GenProds extends DepthFirstAdapter } } + @Override public void inAAstProd(AAstProd node) { String name = ast_ids.ast_names.get(node); diff --git a/src/main/java/org/sablecc/sablecc/GenTokens.java b/src/main/java/org/sablecc/sablecc/GenTokens.java index 110833abe499d6911223a5ad6517891985b62e43..d93a3333c04265e01fed375a2240153e3d7720cb 100644 --- a/src/main/java/org/sablecc/sablecc/GenTokens.java +++ b/src/main/java/org/sablecc/sablecc/GenTokens.java @@ -49,6 +49,7 @@ public class GenTokens extends DepthFirstAdapter } } + @Override public void inATokenDef(ATokenDef node) { String name = ids.names.get(node); diff --git a/src/main/java/org/sablecc/sablecc/GenUtils.java b/src/main/java/org/sablecc/sablecc/GenUtils.java index 8e76bf0a26d9d0f0aa5f8fda8b611ded0581708b..2361af91e7901f9ae7ba0d561f99f3f92d60b6bf 100644 --- a/src/main/java/org/sablecc/sablecc/GenUtils.java +++ b/src/main/java/org/sablecc/sablecc/GenUtils.java @@ -59,6 +59,7 @@ public class GenUtils extends DepthFirstAdapter } */ + @Override public void caseAAstProd(AAstProd node) { if(mainProduction == null) @@ -67,6 +68,7 @@ public class GenUtils extends DepthFirstAdapter } } + @Override public void outStart(Start node) { if(mainProduction != null) diff --git a/src/main/java/org/sablecc/sablecc/GenerateAlternativeCodeForParser.java b/src/main/java/org/sablecc/sablecc/GenerateAlternativeCodeForParser.java index 946757d76128279605c024abe919740772e5eb7b..7fd6f563b178c7aa9b4e7c9dcac1bfc4f7c3d5e4 100644 --- a/src/main/java/org/sablecc/sablecc/GenerateAlternativeCodeForParser.java +++ b/src/main/java/org/sablecc/sablecc/GenerateAlternativeCodeForParser.java @@ -54,6 +54,7 @@ public class GenerateAlternativeCodeForParser extends DepthFirstAdapter this.simpleTermOrsimpleListTermTypes = simpleTermOrsimpleListTermTypes; } + @Override public void inAAltTransform(AAltTransform node) { Object temp[] = node.getTerms().toArray(); @@ -96,6 +97,7 @@ public class GenerateAlternativeCodeForParser extends DepthFirstAdapter } } + @Override public void outAAltTransform(AAltTransform node) { Object temp[] = node.getTerms().toArray(); @@ -183,6 +185,7 @@ public class GenerateAlternativeCodeForParser extends DepthFirstAdapter } } + @Override public void inASimpleTerm(ASimpleTerm node) { try @@ -254,6 +257,7 @@ public class GenerateAlternativeCodeForParser extends DepthFirstAdapter } } + @Override public void inASimpleListTerm(ASimpleListTerm node) { try @@ -328,6 +332,7 @@ public class GenerateAlternativeCodeForParser extends DepthFirstAdapter } } + @Override public void inANewTerm(ANewTerm node) { try @@ -342,6 +347,7 @@ public class GenerateAlternativeCodeForParser extends DepthFirstAdapter inAParams(node.getParams()); } + @Override public void inANewListTerm(ANewListTerm node) { try @@ -356,6 +362,7 @@ public class GenerateAlternativeCodeForParser extends DepthFirstAdapter inAParams(node.getParams()); } + @Override public void inAListTerm(AListTerm node) { try @@ -397,6 +404,7 @@ public class GenerateAlternativeCodeForParser extends DepthFirstAdapter } } + @Override public void outAListTerm(AListTerm node) { try @@ -438,6 +446,7 @@ public class GenerateAlternativeCodeForParser extends DepthFirstAdapter } } + @Override public void outANewTerm(ANewTerm node) { String type_name; @@ -515,6 +524,7 @@ public class GenerateAlternativeCodeForParser extends DepthFirstAdapter } } + @Override public void outANewListTerm(ANewListTerm node) { String type_name; diff --git a/src/main/java/org/sablecc/sablecc/In_Production.java b/src/main/java/org/sablecc/sablecc/In_Production.java index 304131af96c9e6d22b14aca1ef6c7746d9d60d60..ff35622a461ebfdcdc574fa708b56d7dfe74aa45 100644 --- a/src/main/java/org/sablecc/sablecc/In_Production.java +++ b/src/main/java/org/sablecc/sablecc/In_Production.java @@ -121,11 +121,13 @@ public class In_Production PTerm tmpTerm = (PTerm)list.get(i); tmpTerm.apply(new DepthFirstAdapter() { + @Override public void caseASimpleListTerm(ASimpleListTerm node) { node.setId( new TId(newElemName + "#" + node.getId().getText(), node.getId().getLine(), node.getId().getPos()) ); } + @Override public void caseASimpleTerm(ASimpleTerm node) { node.setId( new TId(newElemName + "#" + node.getId().getText(), node.getId().getLine(), node.getId().getPos()) ); diff --git a/src/main/java/org/sablecc/sablecc/Inlining.java b/src/main/java/org/sablecc/sablecc/Inlining.java index a6b0a7852c0afba1ff5db3883a38627e53f9a357..1f9ce31c6ca90f5507d7971f67736d252a355065 100644 --- a/src/main/java/org/sablecc/sablecc/Inlining.java +++ b/src/main/java/org/sablecc/sablecc/Inlining.java @@ -53,6 +53,7 @@ public class Inlining { ((PAlt)alts[i]).apply( new DepthFirstAdapter() { + @Override public void caseAElem(AElem node) { String elem_name = node.getId().getText(); @@ -256,6 +257,7 @@ public class Inlining aAltTransform.apply(new DepthFirstAdapter() { + @Override public void caseASimpleTerm(ASimpleTerm node) { if(node.getId().getText().equals(alt_elem_info) && @@ -280,6 +282,7 @@ public class Inlining } } + @Override public void caseASimpleListTerm(final ASimpleListTerm node_) { if(node_.getId().getText().equals(alt_elem_info) && @@ -305,6 +308,7 @@ public class Inlining { term.apply(new DepthFirstAdapter() { + @Override public void caseANewTerm(ANewTerm node) { node_.replaceBy( new ANewListTerm( (AProdName)node.getProdName().clone(), @@ -314,6 +318,7 @@ public class Inlining ); } + @Override public void caseASimpleTerm(ASimpleTerm node) { PSpecifier specifier = null; @@ -338,6 +343,7 @@ public class Inlining node_.replaceBy( null ); } + @Override public void caseAListTerm(AListTerm node) { AListTerm parent = (AListTerm)node_.parent(); @@ -471,6 +477,7 @@ public class Inlining { tmpaAltTransform.apply(new DepthFirstAdapter() { + @Override public void caseASimpleTerm(ASimpleTerm node) { if(mapOldNameNewNames.get(node.getId().getText()) != null) @@ -479,6 +486,7 @@ public class Inlining } } + @Override public void caseASimpleListTerm(ASimpleListTerm node) { if(mapOldNameNewNames.get(node.getId().getText()) != null) diff --git a/src/main/java/org/sablecc/sablecc/IntSet.java b/src/main/java/org/sablecc/sablecc/IntSet.java index 1283f989dc838bebdd6fe5800a3e91e02ac35099..120c707623905e47b64e9b6fea5d31d29a73d18a 100644 --- a/src/main/java/org/sablecc/sablecc/IntSet.java +++ b/src/main/java/org/sablecc/sablecc/IntSet.java @@ -81,11 +81,13 @@ public class IntSet elements = new int[0]; } + @Override public Object clone() { return new IntSet(this); } + @Override public boolean equals(Object obj) { if(obj == null) @@ -144,6 +146,7 @@ public class IntSet return false; } + @Override public int hashCode() { int result = 0; @@ -295,6 +298,7 @@ public class IntSet return elements[elements.length - 1] + 1; } + @Override public String toString() { StringBuffer s = new StringBuffer(); diff --git a/src/main/java/org/sablecc/sablecc/InternalTransformationsToGrammar.java b/src/main/java/org/sablecc/sablecc/InternalTransformationsToGrammar.java index 8ced274b5ee58d2a1e6a4da6575f5f79713a397f..2ec134ad1435dd4ed1ae0ebea03f0d76a7ff7f31 100644 --- a/src/main/java/org/sablecc/sablecc/InternalTransformationsToGrammar.java +++ b/src/main/java/org/sablecc/sablecc/InternalTransformationsToGrammar.java @@ -66,6 +66,7 @@ public class InternalTransformationsToGrammar extends DepthFirstAdapter this.simpleTermOrsimpleListTermTypes = simpleTermOrsimpleListTermTypes; } + @Override public void inAProductions(AProductions node) { listProd = node.getProds(); @@ -73,16 +74,19 @@ public class InternalTransformationsToGrammar extends DepthFirstAdapter private LinkedList listOfAlts; + @Override public void inAAst(AAst node) { processingAst = true; } + @Override public void outAAst(AAst node) { processingAst = false; } + @Override public void caseAProd(AProd node) { currentProd = ids.names.get(node); @@ -106,6 +110,7 @@ public class InternalTransformationsToGrammar extends DepthFirstAdapter LinkedList listOfAlternativeElemsWHaveName; + @Override public void caseAAlt(AAlt node) { count = 1; @@ -117,23 +122,27 @@ public class InternalTransformationsToGrammar extends DepthFirstAdapter node.apply(new DepthFirstAdapter() { + @Override public void inAElem(AElem node) { InternalTransformationsToGrammar.this.setOut(node, new Integer(NONE)); } + @Override public void caseAStarUnOp(AStarUnOp node) { count *= 2; InternalTransformationsToGrammar.this.setOut(node.parent(), new Integer(STAR)); } + @Override public void caseAQMarkUnOp(AQMarkUnOp node) { count *= 2; InternalTransformationsToGrammar.this.setOut(node.parent(), new Integer(QMARK)); } + @Override public void caseAPlusUnOp(APlusUnOp node) { InternalTransformationsToGrammar.this.setOut(node.parent(), new Integer(PLUS)); @@ -261,6 +270,7 @@ public class InternalTransformationsToGrammar extends DepthFirstAdapter List<String> checkCreationOfXElem = new LinkedList<>(); //It's also available for Ignored alternatives + @Override public void caseAElem(AElem node) { if(!processingAst) @@ -488,6 +498,7 @@ public class InternalTransformationsToGrammar extends DepthFirstAdapter { temp_listProdTransform[i].apply( new DepthFirstAdapter() { + @Override public void caseAElem(AElem node) { //The production transformation needs to have a star operator. @@ -514,6 +525,7 @@ public class InternalTransformationsToGrammar extends DepthFirstAdapter { prodTransformElems[i].apply(new AnalysisAdapter() { + @Override public void caseAElem(AElem node) { String tmpNodeName = ( (node.getElemName() == null) ? node.getId().getText() : @@ -567,6 +579,7 @@ public class InternalTransformationsToGrammar extends DepthFirstAdapter { prodTransformElems[i].apply(new AnalysisAdapter() { + @Override public void caseAElem(AElem node) { String tmpNodeName = ( (node.getElemName() == null) ? node.getId().getText() : diff --git a/src/main/java/org/sablecc/sablecc/LR0Collection.java b/src/main/java/org/sablecc/sablecc/LR0Collection.java index 2dca7cd995392af1c2b94586b652c435a5513671..9c306dae60b0605ed17ee45ca2038d9f2e26ebeb 100644 --- a/src/main/java/org/sablecc/sablecc/LR0Collection.java +++ b/src/main/java/org/sablecc/sablecc/LR0Collection.java @@ -113,6 +113,7 @@ final class LR0Collection )).get(symbol); } + @Override public String toString() { StringBuffer result = new StringBuffer(); diff --git a/src/main/java/org/sablecc/sablecc/LR0Item.java b/src/main/java/org/sablecc/sablecc/LR0Item.java index a6f973b6bd3366a2d5ebadc70c17ede84ad8044a..df2f3f202b21951f9a07a66c47fbfdda533ebb6d 100644 --- a/src/main/java/org/sablecc/sablecc/LR0Item.java +++ b/src/main/java/org/sablecc/sablecc/LR0Item.java @@ -20,6 +20,7 @@ final class LR0Item implements Cloneable, Comparable this.position = position; } + @Override public int compareTo(Object object) { LR0Item item = (LR0Item) object; @@ -34,11 +35,13 @@ final class LR0Item implements Cloneable, Comparable return result; } + @Override public Object clone() { return new LR0Item(production, position); } + @Override public boolean equals(Object obj) { if((obj == null) || @@ -53,11 +56,13 @@ final class LR0Item implements Cloneable, Comparable (item.position == position); } + @Override public int hashCode() { return (production * 13) ^ (position * 17); } + @Override public String toString() { StringBuffer result = new StringBuffer(); diff --git a/src/main/java/org/sablecc/sablecc/LR0ItemSet.java b/src/main/java/org/sablecc/sablecc/LR0ItemSet.java index d2ca512a967990fbc44c5c6b38bf1cf1a41b5c7e..824097a82c174ad0d4d6f1a596bd8d348c1890de 100644 --- a/src/main/java/org/sablecc/sablecc/LR0ItemSet.java +++ b/src/main/java/org/sablecc/sablecc/LR0ItemSet.java @@ -70,6 +70,7 @@ final class LR0ItemSet implements Cloneable, Comparable return items_; } + @Override public String toString() { StringBuffer result = new StringBuffer(); @@ -106,11 +107,13 @@ final class LR0ItemSet implements Cloneable, Comparable return result.toString(); } + @Override public Object clone() { return new LR0ItemSet(this); } + @Override public boolean equals(Object obj) { if((obj == null) || @@ -138,11 +141,13 @@ final class LR0ItemSet implements Cloneable, Comparable return true; } + @Override public int hashCode() { return hashCode; } + @Override public int compareTo(Object object) { LR0ItemSet set diff --git a/src/main/java/org/sablecc/sablecc/LR1Collection.java b/src/main/java/org/sablecc/sablecc/LR1Collection.java index cca92462dfab27b5f867eef77a4e99a2cd0fe172..91094efa758118be23631833d8ee392167e2f429 100644 --- a/src/main/java/org/sablecc/sablecc/LR1Collection.java +++ b/src/main/java/org/sablecc/sablecc/LR1Collection.java @@ -156,6 +156,7 @@ final class LR1Collection System.out.println(); } + @Override public String toString() { StringBuffer result = new StringBuffer(); diff --git a/src/main/java/org/sablecc/sablecc/LR1Item.java b/src/main/java/org/sablecc/sablecc/LR1Item.java index 9aadae7597b9cf21022eb70b8afc65334e5ece0e..7f93dc2938b3caf8ec46ed1d1c026428607ee1e9 100644 --- a/src/main/java/org/sablecc/sablecc/LR1Item.java +++ b/src/main/java/org/sablecc/sablecc/LR1Item.java @@ -20,11 +20,13 @@ final class LR1Item implements Cloneable, Comparable this.terminal = terminal; } + @Override public Object clone() { return new LR1Item(lr0Item, terminal); } + @Override public boolean equals(Object obj) { if((obj == null) || @@ -39,11 +41,13 @@ final class LR1Item implements Cloneable, Comparable (item.terminal == terminal); } + @Override public int hashCode() { return lr0Item.hashCode() * (terminal + 1) * 37; } + @Override public String toString() { return lr0Item + ":" + Symbol.symbol(terminal, true); @@ -83,6 +87,7 @@ final class LR1Item implements Cloneable, Comparable } } + @Override public int compareTo(Object object) { LR1Item item = (LR1Item) object; diff --git a/src/main/java/org/sablecc/sablecc/LR1ItemSet.java b/src/main/java/org/sablecc/sablecc/LR1ItemSet.java index ba7114d226fed260161c72830348c0054dfb7718..68f3bab32135db1c0bf7c41d2e1025594c926b12 100644 --- a/src/main/java/org/sablecc/sablecc/LR1ItemSet.java +++ b/src/main/java/org/sablecc/sablecc/LR1ItemSet.java @@ -70,6 +70,7 @@ final class LR1ItemSet implements Cloneable, Comparable return items_; } + @Override public String toString() { String nl = System.getProperty("line.separator"); @@ -160,11 +161,13 @@ final class LR1ItemSet implements Cloneable, Comparable return result.toString(); } + @Override public Object clone() { return new LR1ItemSet(this); } + @Override public boolean equals(Object obj) { if((obj == null) || @@ -192,11 +195,13 @@ final class LR1ItemSet implements Cloneable, Comparable return true; } + @Override public int hashCode() { return hashCode; } + @Override public int compareTo(Object object) { LR1ItemSet set diff --git a/src/main/java/org/sablecc/sablecc/MacroExpander.java b/src/main/java/org/sablecc/sablecc/MacroExpander.java index 76c75149b0866473cf051ebe8047c64ac5922f3a..72a05a376f965bdfce7e6a9fc3d37d8ded5d36f7 100644 --- a/src/main/java/org/sablecc/sablecc/MacroExpander.java +++ b/src/main/java/org/sablecc/sablecc/MacroExpander.java @@ -54,6 +54,7 @@ public class MacroExpander return false; } + @Override public String toString() { return this.getClass().getName() + macros; diff --git a/src/main/java/org/sablecc/sablecc/NFA.java b/src/main/java/org/sablecc/sablecc/NFA.java index 8de83cf3edfdfe1fbfb389512814bbce4cdb85f7..cf8cce1742b7033111a59719ffdfaebc306321b7 100644 --- a/src/main/java/org/sablecc/sablecc/NFA.java +++ b/src/main/java/org/sablecc/sablecc/NFA.java @@ -269,11 +269,13 @@ public class NFA implements Cloneable return nfa; } + @Override public Object clone() { return new NFA(this); } + @Override public String toString() { StringBuffer result = new StringBuffer(); @@ -311,6 +313,7 @@ public class NFA implements Cloneable } } + @Override public String toString() { StringBuffer result = new StringBuffer(); @@ -347,6 +350,7 @@ public class NFA implements Cloneable destination = transition.destination; } + @Override public String toString() { return destination + ":{" + chars + "}"; diff --git a/src/main/java/org/sablecc/sablecc/PrettyPrinter.java b/src/main/java/org/sablecc/sablecc/PrettyPrinter.java index 43eb5cf4e9e81b231bad388bbd95ecafd011a5b5..4c24e5e4b6d9d6481783cec56d72f8f761edd94a 100644 --- a/src/main/java/org/sablecc/sablecc/PrettyPrinter.java +++ b/src/main/java/org/sablecc/sablecc/PrettyPrinter.java @@ -18,6 +18,7 @@ public class PrettyPrinter extends DepthFirstAdapter public static String alternative_INDENT = " " ; public static String alt_transform_INDENT = " " ; + @Override public void caseAProductions(AProductions node) { System.err.println("Productions \n"); @@ -29,6 +30,7 @@ public class PrettyPrinter extends DepthFirstAdapter } } + @Override public void caseAProd(AProd node) { System.err.print(production_INDENT + node.getId().getText()); @@ -67,6 +69,7 @@ public class PrettyPrinter extends DepthFirstAdapter System.err.println("\n" + alternative_INDENT + ";\n"); } + @Override public void caseAAlt(AAlt node) { System.err.print("\n" + alternative_INDENT); @@ -90,6 +93,7 @@ public class PrettyPrinter extends DepthFirstAdapter } } + @Override public void caseAAltTransform(AAltTransform node) { System.err.print("\n" + alt_transform_INDENT + "{-> "); @@ -104,6 +108,7 @@ public class PrettyPrinter extends DepthFirstAdapter System.err.print(" } "); } + @Override public void caseAProdName(AProdName node) { System.err.print(node.getId().getText()); @@ -113,6 +118,7 @@ public class PrettyPrinter extends DepthFirstAdapter } } + @Override public void caseANewTerm(ANewTerm node) { System.err.print("New "); @@ -132,6 +138,7 @@ public class PrettyPrinter extends DepthFirstAdapter System.err.print(" )"); } + @Override public void caseAListTerm(AListTerm node) { System.err.print("[ "); @@ -144,6 +151,7 @@ public class PrettyPrinter extends DepthFirstAdapter System.err.print(" ]"); } + @Override public void caseASimpleTerm(ASimpleTerm node) { if(node.getSpecifier() != null) @@ -165,11 +173,13 @@ public class PrettyPrinter extends DepthFirstAdapter System.err.print(" "); } + @Override public void caseANullTerm(ANullTerm node) { System.err.print("Null "); } + @Override public void caseANewListTerm(ANewListTerm node) { System.err.print("New "); @@ -189,6 +199,7 @@ public class PrettyPrinter extends DepthFirstAdapter System.err.print(" )"); } + @Override public void caseASimpleListTerm(ASimpleListTerm node) { if(node.getSpecifier() != null) @@ -210,6 +221,7 @@ public class PrettyPrinter extends DepthFirstAdapter System.err.print(" "); } + @Override public void caseAAst(AAst node) { System.err.print("Abstract Syntax Tree\n"); @@ -222,6 +234,7 @@ public class PrettyPrinter extends DepthFirstAdapter } } + @Override public void caseAAstProd(AAstProd node) { System.err.println(production_INDENT + node.getId().getText() + " ="); @@ -237,6 +250,7 @@ public class PrettyPrinter extends DepthFirstAdapter System.err.println("\n" + alternative_INDENT + ";\n"); } + @Override public void caseAAstAlt(AAstAlt node) { System.err.print(alternative_INDENT); @@ -255,6 +269,7 @@ public class PrettyPrinter extends DepthFirstAdapter } } + @Override public void caseAElem(AElem node) { if(node.getElemName() != null) @@ -279,16 +294,19 @@ public class PrettyPrinter extends DepthFirstAdapter { node.getUnOp().apply(new DepthFirstAdapter() { + @Override public void caseAStarUnOp(AStarUnOp node) { System.err.print("*"); } + @Override public void caseAQMarkUnOp(AQMarkUnOp node) { System.err.print("?"); } + @Override public void caseAPlusUnOp(APlusUnOp node) { System.err.print("+"); diff --git a/src/main/java/org/sablecc/sablecc/Production.java b/src/main/java/org/sablecc/sablecc/Production.java index 7457e0a51cf3cc91b3cabfc512c9ed901156edcd..f2901dab1c7a65daec0ab6bd10c3833d8978d7f0 100644 --- a/src/main/java/org/sablecc/sablecc/Production.java +++ b/src/main/java/org/sablecc/sablecc/Production.java @@ -128,6 +128,7 @@ final class Production return productions_; } + @Override public String toString() { StringBuffer result = new StringBuffer(); diff --git a/src/main/java/org/sablecc/sablecc/RecursiveProductionsDetections.java b/src/main/java/org/sablecc/sablecc/RecursiveProductionsDetections.java index c6e04b8411194c59b2a0c6fc55faeff7e3250e64..71a94096096c05fc0d56ff41a2b42e4717ccb0d7 100644 --- a/src/main/java/org/sablecc/sablecc/RecursiveProductionsDetections.java +++ b/src/main/java/org/sablecc/sablecc/RecursiveProductionsDetections.java @@ -16,6 +16,7 @@ public class RecursiveProductionsDetections extends DepthFirstAdapter public List<String> listOfRecursiveProds = new LinkedList<>(); private String currentProd; + @Override public void caseAProd(AProd node) { currentProd = node.getId().getText(); @@ -34,6 +35,7 @@ public class RecursiveProductionsDetections extends DepthFirstAdapter } } + @Override public void caseAAlt(AAlt node) { Object temp[] = node.getElems().toArray(); @@ -53,6 +55,7 @@ public class RecursiveProductionsDetections extends DepthFirstAdapter } */ + @Override public void caseAElem(AElem node) { if(node.getId().getText().equals(currentProd)) diff --git a/src/main/java/org/sablecc/sablecc/ResolveAltIds.java b/src/main/java/org/sablecc/sablecc/ResolveAltIds.java index 267de0ee0e9c39dade3855b81e7264c94d918dc9..13f9442bbf2afe2b74c03eefacab0dc60d576a72 100644 --- a/src/main/java/org/sablecc/sablecc/ResolveAltIds.java +++ b/src/main/java/org/sablecc/sablecc/ResolveAltIds.java @@ -69,6 +69,7 @@ public class ResolveAltIds extends DepthFirstAdapter * list of productions transformations elements */ + @Override public void caseAProd(AProd node) { AElem []temp = (AElem[]) node.getProdTransform().toArray(new AElem[0]); @@ -84,6 +85,7 @@ public class ResolveAltIds extends DepthFirstAdapter * Here, a map which associate the current alternative with the list of elems * is created. */ + @Override public void caseAAlt(AAlt alt) { //contains all the elements in the alternative, no matter if they are list or not @@ -108,6 +110,7 @@ public class ResolveAltIds extends DepthFirstAdapter alts_elems_list.put(currentAlt, listElemslist); } + @Override public void caseAElem(final AElem elem) { blist = false; @@ -132,9 +135,11 @@ public class ResolveAltIds extends DepthFirstAdapter //This method is overriding in order to not allow ASt traversal to visit //AST elements. + @Override public void caseAAst(AAst node) {} + @Override public String toString() { StringBuffer s = new StringBuffer(); diff --git a/src/main/java/org/sablecc/sablecc/ResolveAstIds.java b/src/main/java/org/sablecc/sablecc/ResolveAstIds.java index cea989a9bb987870d74abbffa2ea7b15a2e85a1a..63e1f6b275f6306b058516f5b7111540a303290b 100644 --- a/src/main/java/org/sablecc/sablecc/ResolveAstIds.java +++ b/src/main/java/org/sablecc/sablecc/ResolveAstIds.java @@ -65,6 +65,7 @@ public class ResolveAstIds extends DepthFirstAdapter return firstAstProduction; } + @Override public void inAAst(AAst node) { LinkedList listProds = node.getProds(); @@ -75,6 +76,7 @@ public class ResolveAstIds extends DepthFirstAdapter } } + @Override public void inAAstProd(AAstProd node) { currentProd = astIds.name(node.getId().getText()); @@ -88,6 +90,7 @@ public class ResolveAstIds extends DepthFirstAdapter ast_names.put(node, name); } + @Override public void inAAstAlt(final AAstAlt alt) { if(alt.getAltName() != null) @@ -116,9 +119,11 @@ public class ResolveAstIds extends DepthFirstAdapter } //Only Abstract Syntax Tree section is concerned by the visitor here. + @Override public void caseAProductions(AProductions node) {} + @Override public void caseAElem(final AElem elem) { String name; @@ -149,10 +154,12 @@ public class ResolveAstIds extends DepthFirstAdapter ast_names.put(elem, astIds.name(elem_name)); } + @Override public void outAAstProd(AAstProd prod) { prod.apply(new DepthFirstAdapter() { + @Override public void caseAElem(AElem node) { String name = astIds.name(node.getId().getText()); @@ -186,10 +193,12 @@ public class ResolveAstIds extends DepthFirstAdapter ); } + @Override public void outAAst(AAst prod) { prod.apply(new DepthFirstAdapter() { + @Override public void caseAElem(AElem node) { String name = astIds.name(node.getId().getText()); @@ -311,6 +320,7 @@ public class ResolveAstIds extends DepthFirstAdapter "class is an invalid element name."); } + @Override public String toString() { StringBuffer s = new StringBuffer(); diff --git a/src/main/java/org/sablecc/sablecc/ResolveIds.java b/src/main/java/org/sablecc/sablecc/ResolveIds.java index e37b86b872499b81cb4bc92cf612815d466afdb0..4f05c70801bf5c0c792d3ec824fcb3a6efb0efb6 100644 --- a/src/main/java/org/sablecc/sablecc/ResolveIds.java +++ b/src/main/java/org/sablecc/sablecc/ResolveIds.java @@ -55,6 +55,7 @@ public class ResolveIds extends DepthFirstAdapter pkgDir = currentDir; } + @Override public void inAGrammar(AGrammar node) { TPkgId[] temp = (TPkgId []) node.getPackage().toArray(new TPkgId[0]); @@ -79,6 +80,7 @@ public class ResolveIds extends DepthFirstAdapter } } + @Override public void caseAProd(AProd node) { //inAProd code. @@ -100,6 +102,7 @@ public class ResolveIds extends DepthFirstAdapter } } + @Override public void caseAIdBasic(AIdBasic node) { String name = node.getId().getText(); @@ -111,6 +114,7 @@ public class ResolveIds extends DepthFirstAdapter } } + @Override public void outAHelperDef(AHelperDef node) { String name = node.getId().getText(); @@ -125,6 +129,7 @@ public class ResolveIds extends DepthFirstAdapter names.put(node, name); } + @Override public void outATokenDef(ATokenDef node) { String name = "T" + name(node.getId().getText()); @@ -149,6 +154,7 @@ public class ResolveIds extends DepthFirstAdapter } } + @Override public void inAStates(AStates node) { Object [] list_id = (Object[]) node.getListId().toArray(); @@ -168,6 +174,7 @@ public class ResolveIds extends DepthFirstAdapter } } + @Override public void inAIgnTokens(AIgnTokens node) { Object [] list_id = (Object[]) node.getListId().toArray(); @@ -192,6 +199,7 @@ public class ResolveIds extends DepthFirstAdapter private Map<String, Node> stateMap; + @Override public void inAStateList(AStateList node) { stateMap = new TreeMap<>(); @@ -209,11 +217,13 @@ public class ResolveIds extends DepthFirstAdapter } } + @Override public void outAStateList(AStateList node) { stateMap = null; } + @Override public void inAStateListTail(AStateListTail node) { String name = node.getId().getText().toUpperCase(); @@ -229,6 +239,7 @@ public class ResolveIds extends DepthFirstAdapter } } + @Override public void inATransition(ATransition node) { String name = node.getId().getText().toUpperCase(); @@ -239,6 +250,7 @@ public class ResolveIds extends DepthFirstAdapter } } + @Override public void caseAAlt(final AAlt alt) { if(alt.getAltName() != null) @@ -285,9 +297,11 @@ public class ResolveIds extends DepthFirstAdapter } } + @Override public void caseAAst(AAst node) {} + @Override public void caseAElem(final AElem elem) { if(elem.getElemName() != null) @@ -326,10 +340,12 @@ public class ResolveIds extends DepthFirstAdapter } } + @Override public void outAProductions(AProductions prod) { prod.apply(new DepthFirstAdapter() { + @Override public void caseAProd(AProd node) { //inAProd code. @@ -343,6 +359,7 @@ public class ResolveIds extends DepthFirstAdapter } } + @Override public void caseAAlt(final AAlt alt) { if(alt.getAltName() != null) @@ -361,6 +378,7 @@ public class ResolveIds extends DepthFirstAdapter } } + @Override public void caseAElem(AElem node) { String name = name(node.getId().getText()); @@ -593,6 +611,7 @@ public class ResolveIds extends DepthFirstAdapter "class is an invalid element name."); } + @Override public String toString() { StringBuffer s = new StringBuffer(); diff --git a/src/main/java/org/sablecc/sablecc/ResolveProdTransformIds.java b/src/main/java/org/sablecc/sablecc/ResolveProdTransformIds.java index 79deaaab6e1537042283cc4e8eed8b784fab82c9..7a6f7a62fec8be3698e1781864a4bdf054bd3544 100644 --- a/src/main/java/org/sablecc/sablecc/ResolveProdTransformIds.java +++ b/src/main/java/org/sablecc/sablecc/ResolveProdTransformIds.java @@ -51,6 +51,7 @@ public class ResolveProdTransformIds extends DepthFirstAdapter transformIds = ids; } + @Override public void caseAProd(final AProd production) { prod_name = transformIds.astIds.names.get(production); @@ -71,6 +72,7 @@ public class ResolveProdTransformIds extends DepthFirstAdapter { ((PElem) temp[i]).apply(new DepthFirstAdapter() { + @Override public void caseAElem(AElem node) { String rname = node.getId().getText(); diff --git a/src/main/java/org/sablecc/sablecc/ResolveTransformIds.java b/src/main/java/org/sablecc/sablecc/ResolveTransformIds.java index df31e1f814814aee1e66824096f3bce78065aa1d..5af4b260d1fc1659d9056622b5eae97586929650 100644 --- a/src/main/java/org/sablecc/sablecc/ResolveTransformIds.java +++ b/src/main/java/org/sablecc/sablecc/ResolveTransformIds.java @@ -59,6 +59,7 @@ public class ResolveTransformIds extends DepthFirstAdapter return prodTransformIds; } + @Override public void inAProd(final AProd production) { nbTransformProd = 0; @@ -74,6 +75,7 @@ public class ResolveTransformIds extends DepthFirstAdapter private LinkedList listCurrentAlt; private LinkedList listOfListCurrentAlt; + @Override public void inAAlt(AAlt nodeAlt) { nbTransformAlt = 0; @@ -84,6 +86,7 @@ public class ResolveTransformIds extends DepthFirstAdapter listOfListCurrentAlt = (LinkedList)altIds.alts_elems_list.get(currentAlt).clone(); } + @Override public void inAAltTransform(AAltTransform node) { if(node.getTerms().size() == 0) @@ -96,6 +99,7 @@ public class ResolveTransformIds extends DepthFirstAdapter } } + @Override public void outAAltTransform(AAltTransform node) { if(nbTransformAlt != nbTransformProd) @@ -104,6 +108,7 @@ public class ResolveTransformIds extends DepthFirstAdapter } } + @Override public void outAAlt(AAlt node) { lastSimpleTerm = null; @@ -114,6 +119,7 @@ public class ResolveTransformIds extends DepthFirstAdapter mapSimpleTermProdTransformation.clear(); } + @Override public void outANewTerm(ANewTerm node) { AProdName prodNameNode = (AProdName)node.getProdName(); @@ -203,6 +209,7 @@ public class ResolveTransformIds extends DepthFirstAdapter } + @Override public void outANewListTerm(ANewListTerm node) { AProdName prodNameNode = (AProdName)node.getProdName(); @@ -292,6 +299,7 @@ public class ResolveTransformIds extends DepthFirstAdapter } } + @Override public void outAListTerm(AListTerm node) { if( (node.getListTerms() != null) && (node.getListTerms().size() != 0) ) @@ -336,6 +344,7 @@ public class ResolveTransformIds extends DepthFirstAdapter private LinkedList listP; private String lastSimpleTerm; + @Override public void inASimpleTerm(ASimpleTerm node) { String name = node.getId().getText(); @@ -557,11 +566,13 @@ public class ResolveTransformIds extends DepthFirstAdapter } } + @Override public void caseANullTerm(ANullTerm node) { altTransformElemTypes.put(node, "Null"); } + @Override public void inASimpleListTerm(ASimpleListTerm node) { String name = node.getId().getText(); @@ -790,6 +801,7 @@ public class ResolveTransformIds extends DepthFirstAdapter private boolean curr_prod_has_prodTransform; private boolean firstProduction = false; + @Override public void outAProductions(AProductions node) { LinkedList list = node.getProds(); @@ -807,6 +819,7 @@ public class ResolveTransformIds extends DepthFirstAdapter ((PProd) temp[i]).apply(new DepthFirstAdapter() { + @Override public void inAProd(AProd production) { LinkedList prodTransform = production.getProdTransform(); @@ -848,6 +861,7 @@ public class ResolveTransformIds extends DepthFirstAdapter } } + @Override public void inAAltTransform(AAltTransform node) { Object curr_altTransformTerms[] = node.getTerms().toArray(); @@ -1040,6 +1054,7 @@ public class ResolveTransformIds extends DepthFirstAdapter "The first production's transformation must be only one elements without an operator."); } + @Override public String toString() { StringBuffer s = new StringBuffer(); diff --git a/src/main/java/org/sablecc/sablecc/Symbol.java b/src/main/java/org/sablecc/sablecc/Symbol.java index 76c8e034fc9d324930b5dcb7d2b1bcc1dce9da04..b121b18d0d1d8e993fbd4526a5ea567ad17ba5ee 100644 --- a/src/main/java/org/sablecc/sablecc/Symbol.java +++ b/src/main/java/org/sablecc/sablecc/Symbol.java @@ -127,11 +127,13 @@ final class Symbol implements Comparable return nonterminals_; } + @Override public String toString() { return name; } + @Override public int compareTo(Object object) { Symbol symbol = (Symbol) object; diff --git a/src/main/java/org/sablecc/sablecc/SymbolSet.java b/src/main/java/org/sablecc/sablecc/SymbolSet.java index f46e113be2e0c43b7241def6cfe20bb747fb5b98..bb229d4c914852a0de8d369f4effd1a63f9bb674 100644 --- a/src/main/java/org/sablecc/sablecc/SymbolSet.java +++ b/src/main/java/org/sablecc/sablecc/SymbolSet.java @@ -130,11 +130,13 @@ final class SymbolSet implements Cloneable modified = true; } + @Override public int hashCode() { return terminals.hashCode() + nonterminals.hashCode() + new Boolean(empty).hashCode(); } + @Override public boolean equals(Object obj) { if((obj == null) || @@ -160,6 +162,7 @@ final class SymbolSet implements Cloneable return symbols; } + @Override public String toString() { StringBuffer result = new StringBuffer(); @@ -200,6 +203,7 @@ final class SymbolSet implements Cloneable return result.toString(); } + @Override public Object clone() { return new SymbolSet(this); diff --git a/src/main/java/org/sablecc/sablecc/Transitions.java b/src/main/java/org/sablecc/sablecc/Transitions.java index 699cb7ee4374bfeeaae3b50a15d1eaaf8bbe7e27..4720756f8334c926c1126a775ec8ebd8eb792322 100644 --- a/src/main/java/org/sablecc/sablecc/Transitions.java +++ b/src/main/java/org/sablecc/sablecc/Transitions.java @@ -19,6 +19,7 @@ public class Transitions extends DepthFirstAdapter private String transition; private Map<String, String> map; + @Override public void caseAStateList(AStateList node) { inAStateList(node); @@ -42,36 +43,43 @@ public class Transitions extends DepthFirstAdapter } } + @Override public void inATokenDef(ATokenDef node) { map = new TreeMap<>(); } + @Override public void inAStateList(AStateList node) { state = transition = node.getId().getText().toUpperCase(); } + @Override public void inAStateListTail(AStateListTail node) { state = transition = node.getId().getText().toUpperCase(); } + @Override public void outATransition(ATransition node) { transition = node.getId().getText().toUpperCase(); } + @Override public void outAStateList(AStateList node) { map.put(state, transition); } + @Override public void outAStateListTail(AStateListTail node) { map.put(state, transition); } + @Override public void outATokenDef(ATokenDef node) { tokenStates.put(node, map);