diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 4e6db468b178c544c92c15ca2532577b9a5fecc6..dbab00d258c59d292362448046d8951377e8eeb0 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,4 +1,4 @@ -image: openjdk:8-jdk-slim +image: eclipse-temurin:8 stages: - test @@ -25,11 +25,11 @@ tests: tests:jdk-11: extends: tests - image: openjdk:11-jdk-slim + image: eclipse-temurin:11 tests:jdk-17: extends: tests - image: openjdk:17-jdk-slim + image: eclipse-temurin:17 publish: stage: deploy diff --git a/build.gradle b/build.gradle index fd5143c07a9038386135f8da1a2e4d80f35bbaaf..3c44cc91ff71ae41f89028dde206c8d3bb83150a 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ apply plugin: 'signing' allprojects { project.group = 'de.hhu.stups' - project.version = '3.4.1' + project.version = '3.5.0' project.ext.isSnapshot = project.version.endsWith("-SNAPSHOT") ext."signing.secretKeyRingFile" = rootProject.file("secring.gpg").absolutePath diff --git a/sablecc-runtime/src/main/java/de/hhu/stups/sablecc/patch/IParser.java b/sablecc-runtime/src/main/java/de/hhu/stups/sablecc/patch/IParser.java index 1dcb9585ca7d56d0f5352788fcb05cc1f424da6b..ba7e1bd73d5055549766b479c5f3f579965ee220 100644 --- a/sablecc-runtime/src/main/java/de/hhu/stups/sablecc/patch/IParser.java +++ b/sablecc-runtime/src/main/java/de/hhu/stups/sablecc/patch/IParser.java @@ -10,5 +10,10 @@ import java.util.Map; public interface IParser { + /** + * @deprecated All generated token classes store their own position info. + * Use the {@link PositionedNode} or {@link IToken} APIs to access the positions stored in the tokens. + */ + @Deprecated public Map<PositionedNode, SourcecodeRange> getMapping(); } diff --git a/sablecc-runtime/src/main/java/de/hhu/stups/sablecc/patch/ITokenListContainer.java b/sablecc-runtime/src/main/java/de/hhu/stups/sablecc/patch/ITokenListContainer.java index eb5eb885b4944beaa8dc15105ac33a0b8c2a7670..eb07fe5602f8b75df630419a334952d13cc5cf0d 100644 --- a/sablecc-runtime/src/main/java/de/hhu/stups/sablecc/patch/ITokenListContainer.java +++ b/sablecc-runtime/src/main/java/de/hhu/stups/sablecc/patch/ITokenListContainer.java @@ -8,6 +8,16 @@ package de.hhu.stups.sablecc.patch; import java.util.List; +/** + * @deprecated In the future, the generated lexers will not store all tokens anymore, because this leads to significant memory usage for large inputs. + * If you really need this list, please create it yourself, using a custom lexer subclass if necessary. + */ +@Deprecated public interface ITokenListContainer { + /** + * @deprecated In the future, the generated lexers will not store all tokens anymore, because this leads to significant memory usage for large inputs. + * If you really need this list, please create it yourself, using a custom lexer subclass if necessary. + */ + @Deprecated public List<IToken> getTokenList(); } diff --git a/sablecc-runtime/src/main/java/de/hhu/stups/sablecc/patch/SourcePositions.java b/sablecc-runtime/src/main/java/de/hhu/stups/sablecc/patch/SourcePositions.java index 0c30041a68683e38cffc6399ab07abad7f4a570f..7dc66fd2e9d77ca876b9fc7a2454656f4fecac34 100644 --- a/sablecc-runtime/src/main/java/de/hhu/stups/sablecc/patch/SourcePositions.java +++ b/sablecc-runtime/src/main/java/de/hhu/stups/sablecc/patch/SourcePositions.java @@ -10,6 +10,11 @@ import java.util.Iterator; import java.util.List; import java.util.Map; +/** + * @deprecated All generated token classes store their own position info. + * Use the {@link PositionedNode} or {@link IToken} APIs to access the positions stored in the tokens. + */ +@Deprecated public class SourcePositions { private final List<IToken> tokenList; private final Map<PositionedNode, SourcecodeRange> positions; diff --git a/sablecc-runtime/src/main/java/de/hhu/stups/sablecc/patch/SourcecodeRange.java b/sablecc-runtime/src/main/java/de/hhu/stups/sablecc/patch/SourcecodeRange.java index 7f25cd153241510857a2e3f7b3ae2681ab35e8c9..f447a79ece3d80c995d1201fb0a12d45c860e87f 100644 --- a/sablecc-runtime/src/main/java/de/hhu/stups/sablecc/patch/SourcecodeRange.java +++ b/sablecc-runtime/src/main/java/de/hhu/stups/sablecc/patch/SourcecodeRange.java @@ -6,6 +6,7 @@ package de.hhu.stups.sablecc.patch; +@Deprecated public class SourcecodeRange { private final int beginIndex; private final int endIndex; diff --git a/src/main/java/org/sablecc/sablecc/DisplayLicense.java b/src/main/java/org/sablecc/sablecc/DisplayLicense.java index 75452da78c7e11502f8a9185b05cf6c15a267a62..cc212c4dee299709c44052aed5a31b92163f5b24 100644 --- a/src/main/java/org/sablecc/sablecc/DisplayLicense.java +++ b/src/main/java/org/sablecc/sablecc/DisplayLicense.java @@ -10,6 +10,7 @@ package org.sablecc.sablecc; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; +import java.nio.charset.StandardCharsets; class DisplayLicense { @@ -20,7 +21,7 @@ class DisplayLicense BufferedReader in = new BufferedReader( new InputStreamReader( - getClass().getResourceAsStream("LICENSE"))); + getClass().getResourceAsStream("LICENSE"), StandardCharsets.UTF_8)); System.out.println("---- FILE: LICENSE ----"); String s; @@ -37,7 +38,7 @@ class DisplayLicense in = new BufferedReader( new InputStreamReader( - getClass().getResourceAsStream("AUTHORS"))); + getClass().getResourceAsStream("AUTHORS"), StandardCharsets.UTF_8)); while((s = in.readLine()) != null) { @@ -52,7 +53,7 @@ class DisplayLicense in = new BufferedReader( new InputStreamReader( - getClass().getResourceAsStream("COPYING-LESSER"))); + getClass().getResourceAsStream("COPYING-LESSER"), StandardCharsets.UTF_8)); while((s = in.readLine()) != null) { diff --git a/src/main/java/org/sablecc/sablecc/GenAlts.java b/src/main/java/org/sablecc/sablecc/GenAlts.java index e2e706c9ff3be96128ed017a05b2cfa30ee4cd5c..08864efe759a81602e872dfe01a14b37ab43151a 100644 --- a/src/main/java/org/sablecc/sablecc/GenAlts.java +++ b/src/main/java/org/sablecc/sablecc/GenAlts.java @@ -9,9 +9,10 @@ package org.sablecc.sablecc; import java.io.BufferedWriter; import java.io.File; -import java.io.FileWriter; import java.io.IOException; import java.io.InputStreamReader; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; import java.util.Iterator; import java.util.LinkedList; import java.util.List; @@ -24,7 +25,6 @@ public class GenAlts extends DepthFirstAdapter private MacroExpander macros; private ResolveAstIds ast_ids; private File pkgDir; - private String pkgName; private List<ElemInfo> elemList; private String currentProd; @@ -38,7 +38,7 @@ public class GenAlts extends DepthFirstAdapter { macros = new MacroExpander( new InputStreamReader( - getClass().getResourceAsStream("alternatives.txt"))); + getClass().getResourceAsStream("alternatives.txt"), StandardCharsets.UTF_8)); } catch(IOException e) { @@ -46,7 +46,6 @@ public class GenAlts extends DepthFirstAdapter } pkgDir = new File(ast_ids.astIds.pkgDir, "node"); - pkgName = ast_ids.astIds.pkgName.equals("") ? "node" : ast_ids.astIds.pkgName + ".node"; if(!pkgDir.exists()) { @@ -114,7 +113,7 @@ public class GenAlts extends DepthFirstAdapter { String name = ast_ids.ast_names.get(node); - try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, name + ".java")))) + try(BufferedWriter file = Files.newBufferedWriter(new File(pkgDir, name + ".java").toPath(), StandardCharsets.UTF_8)) { boolean hasOperator = false; boolean hasList = false; @@ -132,16 +131,14 @@ public class GenAlts extends DepthFirstAdapter } } - macros.apply(file, "AlternativeHeader1", new String[] {pkgName}); + macros.apply(file, "AlternativeHeader1", new String[] {ast_ids.astIds.pkgNameDot}); if(hasList) { macros.apply(file, "AlternativeHeaderList", new String[] {}); } - macros.apply(file, "AlternativeHeader2", new String[] { - ast_ids.astIds.pkgName.equals("") ? "analysis" : ast_ids.astIds.pkgName + ".analysis", - name, currentProd}); + macros.apply(file, "AlternativeHeader2", new String[] {ast_ids.astIds.pkgNameDot, name, currentProd}); for(ElemInfo info : elemList) { diff --git a/src/main/java/org/sablecc/sablecc/GenAnalyses.java b/src/main/java/org/sablecc/sablecc/GenAnalyses.java index 629a7f4db76bae1f6257787b7c816b0f28435690..f56b61eeaab136193646d12d4b66e8e0b5c37dfc 100644 --- a/src/main/java/org/sablecc/sablecc/GenAnalyses.java +++ b/src/main/java/org/sablecc/sablecc/GenAnalyses.java @@ -9,9 +9,10 @@ package org.sablecc.sablecc; import java.io.BufferedWriter; import java.io.File; -import java.io.FileWriter; import java.io.IOException; import java.io.InputStreamReader; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; import java.util.LinkedList; import java.util.List; import java.util.ListIterator; @@ -24,7 +25,6 @@ public class GenAnalyses extends DepthFirstAdapter private MacroExpander macros; private ResolveAstIds ast_ids; private File pkgDir; - private String pkgName; private List<ElemInfo> elemList; private List<AltInfo> altList = new LinkedList<>(); private List<String> tokenList = new LinkedList<>(); @@ -40,7 +40,7 @@ public class GenAnalyses extends DepthFirstAdapter { macros = new MacroExpander( new InputStreamReader( - getClass().getResourceAsStream("analyses.txt"))); + getClass().getResourceAsStream("analyses.txt"), StandardCharsets.UTF_8)); } catch(IOException e) { @@ -48,7 +48,6 @@ public class GenAnalyses extends DepthFirstAdapter } pkgDir = new File(ast_ids.astIds.pkgDir, "analysis"); - pkgName = ast_ids.astIds.pkgName.equals("") ? "analysis" : ast_ids.astIds.pkgName + ".analysis"; if(!pkgDir.exists()) { @@ -150,10 +149,9 @@ public class GenAnalyses extends DepthFirstAdapter public void createAnalysis() { - try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "Analysis.java")))) + try(BufferedWriter file = Files.newBufferedWriter(new File(pkgDir, "Analysis.java").toPath(), StandardCharsets.UTF_8)) { - macros.apply(file, "AnalysisHeader", new String[] {pkgName, - ast_ids.astIds.pkgName.equals("") ? "node" : ast_ids.astIds.pkgName + ".node"}); + macros.apply(file, "AnalysisHeader", new String[] {ast_ids.astIds.pkgNameDot}); if(mainProduction != null) { @@ -185,10 +183,9 @@ public class GenAnalyses extends DepthFirstAdapter public void createAnalysisAdapter() { - try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "AnalysisAdapter.java")))) + try(BufferedWriter file = Files.newBufferedWriter(new File(pkgDir, "AnalysisAdapter.java").toPath(), StandardCharsets.UTF_8)) { - macros.apply(file, "AnalysisAdapterHeader", new String[] {pkgName, - ast_ids.astIds.pkgName.equals("") ? "node" : ast_ids.astIds.pkgName + ".node"}); + macros.apply(file, "AnalysisAdapterHeader", new String[] {ast_ids.astIds.pkgNameDot}); if(mainProduction != null) { @@ -218,11 +215,9 @@ public class GenAnalyses extends DepthFirstAdapter public void createDepthFirstAdapter() { - try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "DepthFirstAdapter.java")))) + try(BufferedWriter file = Files.newBufferedWriter(new File(pkgDir, "DepthFirstAdapter.java").toPath(), StandardCharsets.UTF_8)) { - macros.apply(file, "DepthFirstAdapterHeader", new String[] {pkgName, - ast_ids.astIds.pkgName.equals("") ? "node" : ast_ids.astIds.pkgName + ".node", - mainProduction}); + macros.apply(file, "DepthFirstAdapterHeader", new String[] {ast_ids.astIds.pkgNameDot, mainProduction}); for(AltInfo info : altList) { @@ -269,11 +264,9 @@ public class GenAnalyses extends DepthFirstAdapter public void createReversedDepthFirstAdapter() { - try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "ReversedDepthFirstAdapter.java")))) + try(BufferedWriter file = Files.newBufferedWriter(new File(pkgDir, "ReversedDepthFirstAdapter.java").toPath(), StandardCharsets.UTF_8)) { - macros.apply(file, "ReversedDepthFirstAdapterHeader", new String[] {pkgName, - ast_ids.astIds.pkgName.equals("") ? "node" : ast_ids.astIds.pkgName + ".node", - mainProduction}); + macros.apply(file, "ReversedDepthFirstAdapterHeader", new String[] {ast_ids.astIds.pkgNameDot, mainProduction}); for(AltInfo info : altList) { diff --git a/src/main/java/org/sablecc/sablecc/GenLexer.java b/src/main/java/org/sablecc/sablecc/GenLexer.java index da9b0ca0ff96c6893c8c11b147735f062ff7d073..03f2e07418149e0cb8520354d93427c675bce1be 100644 --- a/src/main/java/org/sablecc/sablecc/GenLexer.java +++ b/src/main/java/org/sablecc/sablecc/GenLexer.java @@ -12,9 +12,10 @@ import java.io.BufferedWriter; import java.io.DataOutputStream; import java.io.File; import java.io.FileOutputStream; -import java.io.FileWriter; import java.io.IOException; import java.io.InputStreamReader; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; import java.util.ArrayList; import java.util.Iterator; import java.util.List; @@ -30,7 +31,6 @@ public class GenLexer extends AnalysisAdapter private MacroExpander macros; private ResolveIds ids; private File pkgDir; - private String pkgName; private AcceptStates[] acceptStatesArray; private Transitions transitions; @@ -42,7 +42,7 @@ public class GenLexer extends AnalysisAdapter { macros = new MacroExpander( new InputStreamReader( - getClass().getResourceAsStream("lexer.txt"))); + getClass().getResourceAsStream("lexer.txt"), StandardCharsets.UTF_8)); } catch(IOException e) { @@ -50,7 +50,6 @@ public class GenLexer extends AnalysisAdapter } pkgDir = new File(ids.pkgDir, "lexer"); - pkgName = ids.pkgName.equals("") ? "lexer" : ids.pkgName + ".lexer"; if(!pkgDir.exists()) { @@ -113,9 +112,9 @@ public class GenLexer extends AnalysisAdapter private void createLexerException() { - try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "LexerException.java")))) + try(BufferedWriter file = Files.newBufferedWriter(new File(pkgDir, "LexerException.java").toPath(), StandardCharsets.UTF_8)) { - macros.apply(file, "LexerException", new String[] {pkgName}); + macros.apply(file, "LexerException", new String[] {ids.pkgNameDot}); } catch(IOException e) { @@ -126,7 +125,7 @@ public class GenLexer extends AnalysisAdapter private void createLexer() { - try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "Lexer.java")))) + try(BufferedWriter file = Files.newBufferedWriter(new File(pkgDir, "Lexer.java").toPath(), StandardCharsets.UTF_8)) { String startState = "INITIAL"; if(ids.stateList.size() > 0) @@ -134,9 +133,7 @@ public class GenLexer extends AnalysisAdapter startState = ids.stateList.getFirst(); } - macros.apply(file, "LexerHeader", new String[] {pkgName, - ids.pkgName.equals("") ? "node" : ids.pkgName + ".node", - startState}); + macros.apply(file, "LexerHeader", new String[] {ids.pkgNameDot, startState}); for(ListIterator<String> i = ids.tokenList.listIterator(); i.hasNext();) { @@ -289,18 +286,14 @@ public class GenLexer extends AnalysisAdapter if(ids.stateList.size() > 0) { - for(ListIterator<String> i = ids.stateList.listIterator(); i.hasNext();) + for (String s : ids.stateList) { - String s = i.next(); - - macros.apply(file, "LexerStateBody", - new String[] {s, "" + i.previousIndex()}); + macros.apply(file, "LexerStateBody", new String[] {s}); } } else { - macros.apply(file, "LexerStateBody", - new String[] {"INITIAL", "" + 0}); + macros.apply(file, "LexerStateBody", new String[] {"INITIAL"}); } macros.apply(file, "LexerStateTail"); diff --git a/src/main/java/org/sablecc/sablecc/GenParser.java b/src/main/java/org/sablecc/sablecc/GenParser.java index a927be88d55818ec39027c90583d9f4bbf2c63d9..20592f25f0f079a03a58815281950c9aa3c77683 100644 --- a/src/main/java/org/sablecc/sablecc/GenParser.java +++ b/src/main/java/org/sablecc/sablecc/GenParser.java @@ -12,9 +12,10 @@ import java.io.BufferedWriter; import java.io.DataOutputStream; import java.io.File; import java.io.FileOutputStream; -import java.io.FileWriter; import java.io.IOException; import java.io.InputStreamReader; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; import java.util.ArrayList; import java.util.Deque; import java.util.HashMap; @@ -64,7 +65,6 @@ public class GenParser extends DepthFirstAdapter private ComputeSimpleTermPosition CTP; private File pkgDir; - private String pkgName; private boolean hasProductions; private String firstProductionName; private boolean processInlining; @@ -108,7 +108,7 @@ public class GenParser extends DepthFirstAdapter { macros = new MacroExpander( new InputStreamReader( - getClass().getResourceAsStream("parser.txt"))); + getClass().getResourceAsStream("parser.txt"), StandardCharsets.UTF_8)); } catch(IOException e) { @@ -116,7 +116,6 @@ public class GenParser extends DepthFirstAdapter } pkgDir = new File(ids.pkgDir, "parser"); - pkgName = ids.pkgName.equals("") ? "parser" : ids.pkgName + ".parser"; if(!pkgDir.exists()) { @@ -368,16 +367,13 @@ public class GenParser extends DepthFirstAdapter //Parser.java Generation private void createParser() { - try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "Parser.java")))) + try(BufferedWriter file = Files.newBufferedWriter(new File(pkgDir, "Parser.java").toPath(), StandardCharsets.UTF_8)) { Symbol[] terminals = Symbol.terminals(); Symbol[] nonterminals = Symbol.nonterminals(); Production[] productions = Production.productions(); - macros.apply(file, "ParserHeader", new String[] {pkgName, - ids.pkgName.equals("") ? "lexer" : ids.pkgName + ".lexer", - ids.pkgName.equals("") ? "node" : ids.pkgName + ".node", - ids.pkgName.equals("") ? "analysis" : ids.pkgName + ".analysis"}); + macros.apply(file, "ParserHeader", new String[] {ids.pkgNameDot}); if(activateFilter && !grammarHasTransformations) { @@ -731,13 +727,11 @@ public class GenParser extends DepthFirstAdapter private void createTokenIndex() { - try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "TokenIndex.java")))) + try(BufferedWriter file = Files.newBufferedWriter(new File(pkgDir, "TokenIndex.java").toPath(), StandardCharsets.UTF_8)) { Symbol[] terminals = Symbol.terminals(); - macros.apply(file, "TokenIndexHeader", new String[] {pkgName, - ids.pkgName.equals("") ? "node" : ids.pkgName + ".node", - ids.pkgName.equals("") ? "analysis" : ids.pkgName + ".analysis"}); + macros.apply(file, "TokenIndexHeader", new String[] {ids.pkgNameDot}); for(int i = 0; i < (terminals.length - 2); i++) { @@ -755,10 +749,9 @@ public class GenParser extends DepthFirstAdapter private void createParserException() { - try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "ParserException.java")))) + try(BufferedWriter file = Files.newBufferedWriter(new File(pkgDir, "ParserException.java").toPath(), StandardCharsets.UTF_8)) { - macros.apply(file, "ParserException", new String[] {pkgName, - ids.pkgName.equals("") ? "node" : ids.pkgName + ".node"}); + macros.apply(file, "ParserException", new String[] {ids.pkgNameDot}); } catch(IOException e) { @@ -769,9 +762,9 @@ public class GenParser extends DepthFirstAdapter private void createState() { - try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "State.java")))) + try(BufferedWriter file = Files.newBufferedWriter(new File(pkgDir, "State.java").toPath(), StandardCharsets.UTF_8)) { - macros.apply(file, "State", new String[] {pkgName}); + macros.apply(file, "State", new String[] {ids.pkgNameDot}); } catch(IOException e) { diff --git a/src/main/java/org/sablecc/sablecc/GenProds.java b/src/main/java/org/sablecc/sablecc/GenProds.java index a327e0a2ce7b0dadcd442a8582b506768c5ff1a8..aea041b29cf99fd7c825a6284be63219039d3d88 100644 --- a/src/main/java/org/sablecc/sablecc/GenProds.java +++ b/src/main/java/org/sablecc/sablecc/GenProds.java @@ -9,9 +9,10 @@ package org.sablecc.sablecc; import java.io.BufferedWriter; import java.io.File; -import java.io.FileWriter; import java.io.IOException; import java.io.InputStreamReader; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; import org.sablecc.sablecc.analysis.DepthFirstAdapter; import org.sablecc.sablecc.node.AAstProd; @@ -21,7 +22,6 @@ public class GenProds extends DepthFirstAdapter private MacroExpander macros; private ResolveAstIds ast_ids; private File pkgDir; - private String pkgName; public GenProds(ResolveAstIds ast_ids) { @@ -31,7 +31,7 @@ public class GenProds extends DepthFirstAdapter { macros = new MacroExpander( new InputStreamReader( - getClass().getResourceAsStream("productions.txt"))); + getClass().getResourceAsStream("productions.txt"), StandardCharsets.UTF_8)); } catch(IOException e) { @@ -39,7 +39,6 @@ public class GenProds extends DepthFirstAdapter } pkgDir = new File(ast_ids.astIds.pkgDir, "node"); - pkgName = ast_ids.astIds.pkgName.equals("") ? "node" : ast_ids.astIds.pkgName + ".node"; if(!pkgDir.exists()) { @@ -60,9 +59,9 @@ public class GenProds extends DepthFirstAdapter private void createProduction(String name) { - try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, name + ".java")))) + try(BufferedWriter file = Files.newBufferedWriter(new File(pkgDir, name + ".java").toPath(), StandardCharsets.UTF_8)) { - macros.apply(file, "Production", new String[] {pkgName, name}); + macros.apply(file, "Production", new String[] {ast_ids.astIds.pkgNameDot, name}); } catch(IOException e) { @@ -73,7 +72,7 @@ public class GenProds extends DepthFirstAdapter private void createAlternative(String name, String macro, String[] arg) { - try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, name + ".java")))) + try(BufferedWriter file = Files.newBufferedWriter(new File(pkgDir, name + ".java").toPath(), StandardCharsets.UTF_8)) { macros.apply(file, macro, arg); } diff --git a/src/main/java/org/sablecc/sablecc/GenTokens.java b/src/main/java/org/sablecc/sablecc/GenTokens.java index f5abfaaa7e74183283ad3ae9e1885e00a97a536e..364f79d2606e8b3ce2e83a5f74b9918e89851acf 100644 --- a/src/main/java/org/sablecc/sablecc/GenTokens.java +++ b/src/main/java/org/sablecc/sablecc/GenTokens.java @@ -9,9 +9,10 @@ package org.sablecc.sablecc; import java.io.BufferedWriter; import java.io.File; -import java.io.FileWriter; import java.io.IOException; import java.io.InputStreamReader; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; import java.util.List; import org.sablecc.sablecc.analysis.DepthFirstAdapter; @@ -22,7 +23,6 @@ public class GenTokens extends DepthFirstAdapter private MacroExpander macros; private ResolveIds ids; private File pkgDir; - private String pkgName; // final GenTokens instance = this; String text; @@ -35,7 +35,7 @@ public class GenTokens extends DepthFirstAdapter { macros = new MacroExpander( new InputStreamReader( - getClass().getResourceAsStream("tokens.txt"))); + getClass().getResourceAsStream("tokens.txt"), StandardCharsets.UTF_8)); } catch(IOException e) { @@ -43,7 +43,6 @@ public class GenTokens extends DepthFirstAdapter } pkgDir = new File(ids.pkgDir, "node"); - pkgName = ids.pkgName.equals("") ? "node" : ids.pkgName + ".node"; if(!pkgDir.exists()) { @@ -95,25 +94,24 @@ public class GenTokens extends DepthFirstAdapter } } - try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, name + ".java")))) + try(BufferedWriter file = Files.newBufferedWriter(new File(pkgDir, name + ".java").toPath(), StandardCharsets.UTF_8)) { if(text == null) { ids.fixedTokens.put(node, false); - macros.apply(file, "VariableTextToken", new String[] { pkgName, - ids.pkgName.equals("") ? "analysis" : ids.pkgName + ".analysis", - name}); + macros.apply(file, "VariableTextToken", new String[] {ids.pkgNameDot, name}); } else { ids.fixedTokens.put(node, true); - macros.apply(file, "FixedTextToken", new String[] { pkgName, - ids.pkgName.equals("") ? "analysis" : ids.pkgName + ".analysis", - name, processText(text)}); + macros.apply(file, "FixedTextToken", new String[] {ids.pkgNameDot, name, processText(text)}); - ids.errorNames.put(node, "'" + text + "'"); + // Workaround to not output the characters '*/' into comments in the generated code. + if (!text.contains("*/")) { + ids.errorNames.put(node, "'" + text + "'"); + } } } catch(IOException e) diff --git a/src/main/java/org/sablecc/sablecc/GenUtils.java b/src/main/java/org/sablecc/sablecc/GenUtils.java index 051ab0fccf9a18b90c52a94a82ebe9a7f841c07e..10eed4536850326d0c2ea22ecca92c5398b11c83 100644 --- a/src/main/java/org/sablecc/sablecc/GenUtils.java +++ b/src/main/java/org/sablecc/sablecc/GenUtils.java @@ -9,9 +9,10 @@ package org.sablecc.sablecc; import java.io.BufferedWriter; import java.io.File; -import java.io.FileWriter; import java.io.IOException; import java.io.InputStreamReader; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; import org.sablecc.sablecc.analysis.DepthFirstAdapter; import org.sablecc.sablecc.node.AAstProd; @@ -22,7 +23,6 @@ public class GenUtils extends DepthFirstAdapter private MacroExpander macros; private ResolveAstIds ast_ids; private File pkgDir; - private String pkgName; private String mainProduction; public GenUtils(ResolveAstIds ast_ids) @@ -33,7 +33,7 @@ public class GenUtils extends DepthFirstAdapter { macros = new MacroExpander( new InputStreamReader( - getClass().getResourceAsStream("utils.txt"))); + getClass().getResourceAsStream("utils.txt"), StandardCharsets.UTF_8)); } catch(IOException e) { @@ -41,7 +41,6 @@ public class GenUtils extends DepthFirstAdapter } pkgDir = new File(ast_ids.astIds.pkgDir, "node"); - pkgName = ast_ids.astIds.pkgName.equals("") ? "node" : ast_ids.astIds.pkgName + ".node"; if(!pkgDir.exists()) { @@ -90,11 +89,9 @@ public class GenUtils extends DepthFirstAdapter public void createStart() { - try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "Start.java")))) + try(BufferedWriter file = Files.newBufferedWriter(new File(pkgDir, "Start.java").toPath(), StandardCharsets.UTF_8)) { - macros.apply(file, "Start", new String[] {pkgName, - ast_ids.astIds.pkgName.equals("") ? "analysis" : ast_ids.astIds.pkgName + ".analysis", - mainProduction, GenAlts.nodeName(mainProduction)}); + macros.apply(file, "Start", new String[] {ast_ids.astIds.pkgNameDot, mainProduction, GenAlts.nodeName(mainProduction)}); } catch(IOException e) { @@ -105,10 +102,9 @@ public class GenUtils extends DepthFirstAdapter public void createEOF() { - try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "EOF.java")))) + try(BufferedWriter file = Files.newBufferedWriter(new File(pkgDir, "EOF.java").toPath(), StandardCharsets.UTF_8)) { - macros.apply(file, "EOF", new String[] {pkgName, - ast_ids.astIds.pkgName.equals("") ? "analysis" : ast_ids.astIds.pkgName + ".analysis"}); + macros.apply(file, "EOF", new String[] {ast_ids.astIds.pkgNameDot}); } catch(IOException e) { @@ -119,10 +115,9 @@ public class GenUtils extends DepthFirstAdapter public void createNode() { - try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "Node.java")))) + try(BufferedWriter file = Files.newBufferedWriter(new File(pkgDir, "Node.java").toPath(), StandardCharsets.UTF_8)) { - macros.apply(file, "Node", new String[] {pkgName, - ast_ids.astIds.pkgName.equals("") ? "analysis" : ast_ids.astIds.pkgName + ".analysis"}); + macros.apply(file, "Node", new String[] {ast_ids.astIds.pkgNameDot}); } catch(IOException e) { @@ -133,9 +128,9 @@ public class GenUtils extends DepthFirstAdapter public void createToken() { - try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "Token.java")))) + try(BufferedWriter file = Files.newBufferedWriter(new File(pkgDir, "Token.java").toPath(), StandardCharsets.UTF_8)) { - macros.apply(file, "Token", new String[] {pkgName}); + macros.apply(file, "Token", new String[] {ast_ids.astIds.pkgNameDot}); } catch(IOException e) { @@ -146,9 +141,9 @@ public class GenUtils extends DepthFirstAdapter public void create(String cls) { - try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, cls + ".java")))) + try(BufferedWriter file = Files.newBufferedWriter(new File(pkgDir, cls + ".java").toPath(), StandardCharsets.UTF_8)) { - macros.apply(file, cls, new String[] {pkgName}); + macros.apply(file, cls, new String[] {ast_ids.astIds.pkgNameDot}); } catch(IOException e) { diff --git a/src/main/java/org/sablecc/sablecc/ResolveIds.java b/src/main/java/org/sablecc/sablecc/ResolveIds.java index 27cc669d0488ebe74dfb267be19bc445166427a0..6b6c4d0e85518b6efe784971fd514612b8f221ed 100644 --- a/src/main/java/org/sablecc/sablecc/ResolveIds.java +++ b/src/main/java/org/sablecc/sablecc/ResolveIds.java @@ -46,6 +46,8 @@ public class ResolveIds extends DepthFirstAdapter public final LinkedList<String> stateList = new LinkedList<>(); public File pkgDir; public String pkgName = ""; + // pkgNameDot has a dot appended if non-empty. + public String pkgNameDot = ""; private boolean processingStates; private boolean processingIgnTokens; @@ -75,6 +77,8 @@ public class ResolveIds extends DepthFirstAdapter pkgDir = new File(pkgDir, temp[i].getText()); } + pkgNameDot = pkgName + "."; + if(!pkgDir.exists()) { if(!pkgDir.mkdirs()) diff --git a/src/main/java/org/sablecc/sablecc/SableCC.java b/src/main/java/org/sablecc/sablecc/SableCC.java index 2ed2bb3e4b9a89799401c4688217bc4d3f1f11b7..be66d8924e2b682897ad3c72e2e2fd6b5214631a 100644 --- a/src/main/java/org/sablecc/sablecc/SableCC.java +++ b/src/main/java/org/sablecc/sablecc/SableCC.java @@ -7,10 +7,12 @@ package org.sablecc.sablecc; +import java.io.BufferedReader; import java.io.File; -import java.io.FileReader; import java.io.IOException; import java.io.PushbackReader; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; import java.util.ArrayList; import java.util.List; @@ -186,13 +188,14 @@ public class SableCC { System.out.println("\n -- Generating parser for " + in.getName() + " in " + dir.getPath()); - FileReader temp = new FileReader(in); - // Build the AST - Start tree = new Parser(new Lexer(new PushbackReader( - temp = new FileReader(in), 1000))).parse(); - - temp.close(); + Start tree; + try ( + BufferedReader temp = Files.newBufferedReader(in.toPath(), StandardCharsets.UTF_8); + PushbackReader reader = new PushbackReader(temp, 1000); + ) { + tree = new Parser(new Lexer(reader)).parse(); + } boolean hasTransformations = false; diff --git a/src/main/java/org/sablecc/sablecc/analysis/Analysis.java b/src/main/java/org/sablecc/sablecc/analysis/Analysis.java index 999e37aa76d901764bba0d5d048dbe255ea3fadd..85fdad18cd97a8c34a5bde4b63275e119e532ac4 100644 --- a/src/main/java/org/sablecc/sablecc/analysis/Analysis.java +++ b/src/main/java/org/sablecc/sablecc/analysis/Analysis.java @@ -6,38 +6,6 @@ import org.sablecc.sablecc.node.*; public interface Analysis extends Switch { - /** - * @param node the node for which to look up the associated object - * @return the corresponding object previously associated using {@link #setIn(Node, Object)}, or {@code null} if there is none - * @deprecated If you need a map field, declare it yourself. - */ - @Deprecated - Object getIn(Node node); - - /** - * @param node the node with which to associate the given object - * @param o the object to associate with the node - * @deprecated If you need a map field, declare it yourself. - */ - @Deprecated - void setIn(Node node, Object o); - - /** - * @param node the node for which to look up the associated object - * @return the corresponding object previously associated using {@link #setOut(Node, Object)}, or {@code null} if there is none - * @deprecated If you need a map field, declare it yourself. - */ - @Deprecated - Object getOut(Node node); - - /** - * @param node the node with which to associate the given object - * @param o the object to associate with the node - * @deprecated If you need a map field, declare it yourself. - */ - @Deprecated - void setOut(Node node, Object o); - void caseStart(Start node); void caseAGrammar(AGrammar node); void caseAHelpers(AHelpers node); diff --git a/src/main/java/org/sablecc/sablecc/analysis/AnalysisAdapter.java b/src/main/java/org/sablecc/sablecc/analysis/AnalysisAdapter.java index c07b2600c60eb1a18f3fef46da7b244d42d8e74a..5dfa2cec56a25b4cbd219525f7e235f7811fe7dd 100644 --- a/src/main/java/org/sablecc/sablecc/analysis/AnalysisAdapter.java +++ b/src/main/java/org/sablecc/sablecc/analysis/AnalysisAdapter.java @@ -2,85 +2,10 @@ package org.sablecc.sablecc.analysis; -import java.util.*; import org.sablecc.sablecc.node.*; public class AnalysisAdapter implements Analysis { - /** - * @deprecated If you need a map field, declare it yourself. - */ - @Deprecated - private Hashtable<Node,Object> in; - - /** - * @deprecated If you need a map field, declare it yourself. - */ - @Deprecated - private Hashtable<Node,Object> out; - - @Deprecated - @Override - public Object getIn(Node node) - { - if(this.in == null) - { - return null; - } - - return this.in.get(node); - } - - @Deprecated - @Override - public void setIn(Node node, Object o) - { - if(this.in == null) - { - this.in = new Hashtable<Node,Object>(1); - } - - if(o != null) - { - this.in.put(node, o); - } - else - { - this.in.remove(node); - } - } - - @Deprecated - @Override - public Object getOut(Node node) - { - if(this.out == null) - { - return null; - } - - return this.out.get(node); - } - - @Deprecated - @Override - public void setOut(Node node, Object o) - { - if(this.out == null) - { - this.out = new Hashtable<Node,Object>(1); - } - - if(o != null) - { - this.out.put(node, o); - } - else - { - this.out.remove(node); - } - } - @Override public void caseStart(Start node) { diff --git a/src/main/java/org/sablecc/sablecc/analysis/DepthFirstAdapter.java b/src/main/java/org/sablecc/sablecc/analysis/DepthFirstAdapter.java index b90d621221adefe97b7f67bfa492400699e354e2..7132e6efa4369f2ac32663be65aa9a6cdb3cbc79 100644 --- a/src/main/java/org/sablecc/sablecc/analysis/DepthFirstAdapter.java +++ b/src/main/java/org/sablecc/sablecc/analysis/DepthFirstAdapter.java @@ -2,14 +2,13 @@ package org.sablecc.sablecc.analysis; -import java.util.*; +import java.util.ArrayList; +import java.util.List; + import org.sablecc.sablecc.node.*; public class DepthFirstAdapter extends AnalysisAdapter { - - final List<Void> dummy = new ArrayList<Void>(); - public void inStart(Start node) { defaultIn(node); diff --git a/src/main/java/org/sablecc/sablecc/analysis/ReversedDepthFirstAdapter.java b/src/main/java/org/sablecc/sablecc/analysis/ReversedDepthFirstAdapter.java index 64c1d6f43dd3fce4bdd3294fc526ad9e9ccbcd38..3f75d98fdf099be198e5d7af5da0ce395527916f 100644 --- a/src/main/java/org/sablecc/sablecc/analysis/ReversedDepthFirstAdapter.java +++ b/src/main/java/org/sablecc/sablecc/analysis/ReversedDepthFirstAdapter.java @@ -2,14 +2,14 @@ package org.sablecc.sablecc.analysis; -import java.util.*; -import org.sablecc.sablecc.node.*; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import org.sablecc.sablecc.node.*; public class ReversedDepthFirstAdapter extends AnalysisAdapter { - final List<Void> dummy = new ArrayList<Void>(); - public void inStart(Start node) { defaultIn(node); diff --git a/src/main/java/org/sablecc/sablecc/lexer/Lexer.java b/src/main/java/org/sablecc/sablecc/lexer/Lexer.java index 3eafaec1931e12d2f44e3aae8263f8295de4a35c..a582d499010aec9ae53f0529e766388864304d1a 100644 --- a/src/main/java/org/sablecc/sablecc/lexer/Lexer.java +++ b/src/main/java/org/sablecc/sablecc/lexer/Lexer.java @@ -2,14 +2,22 @@ package org.sablecc.sablecc.lexer; -import java.io.*; -import java.util.*; +import java.io.BufferedInputStream; +import java.io.DataInputStream; +import java.io.InputStream; +import java.io.IOException; +import java.io.PushbackReader; +import java.util.ArrayList; +import java.util.LinkedList; +import java.util.List; +import java.util.Queue; + +import de.hhu.stups.sablecc.patch.IToken; + import org.sablecc.sablecc.node.*; -import de.hhu.stups.sablecc.patch.*; -import java.util.concurrent.LinkedBlockingQueue; -@SuppressWarnings({"unused"}) -public class Lexer implements ITokenListContainer +@SuppressWarnings({"deprecation", "unused"}) // ITokenListContainer is deprecated, but the generated lexer still implements it for compatibility +public class Lexer implements de.hhu.stups.sablecc.patch.ITokenListContainer { protected Token token; protected State state = State.NORMAL; @@ -22,12 +30,17 @@ public class Lexer implements ITokenListContainer private final StringBuilder text = new StringBuilder(); private List<IToken> tokenList; - private final Queue<IToken> nextList = new LinkedBlockingQueue<IToken>(); + private final Queue<IToken> nextList = new LinkedList<IToken>(); public Queue<IToken> getNextList() { return nextList; } + /** + * @deprecated In the future, the generated lexers will not store all tokens anymore, because this leads to significant memory usage for large inputs. + * If you really need this list, please create it yourself, using a custom lexer subclass if necessary. + */ + @Deprecated @Override public List<IToken> getTokenList() { return tokenList; @@ -37,7 +50,11 @@ public class Lexer implements ITokenListContainer token = t; } - + /** + * @deprecated In the future, the generated lexers will not store all tokens anymore, because this leads to significant memory usage for large inputs. + * If you really need this list, please create it yourself, using a custom lexer subclass if necessary. + */ + @Deprecated public void setTokenList(final List<IToken> list) { tokenList = list; } @@ -101,8 +118,8 @@ public class Lexer implements ITokenListContainer int accept_pos = -1; int accept_line = -1; - int[][][] gotoTable = Lexer.gotoTable[this.state.id()]; - int[] accept = Lexer.accept[this.state.id()]; + int[][][] gotoTable = Lexer.gotoTable[this.state.ordinal()]; + int[] accept = Lexer.accept[this.state.ordinal()]; this.text.setLength(0); while(true) @@ -203,7 +220,7 @@ public class Lexer implements ITokenListContainer pushBack(accept_length); this.pos = accept_pos; this.line = accept_line; - switch(state.id()) + switch(state.ordinal()) { case 1: state = State.PACKAGE; break; } @@ -217,7 +234,7 @@ public class Lexer implements ITokenListContainer pushBack(accept_length); this.pos = accept_pos; this.line = accept_line; - switch(state.id()) + switch(state.ordinal()) { case 0: state = State.PACKAGE; break; } @@ -371,7 +388,7 @@ public class Lexer implements ITokenListContainer pushBack(accept_length); this.pos = accept_pos; this.line = accept_line; - switch(state.id()) + switch(state.ordinal()) { case 0: state = State.NORMAL; break; case 1: state = State.NORMAL; break; @@ -986,21 +1003,15 @@ public class Lexer implements ITokenListContainer };*/ - public static class State + public enum State { - public final static State NORMAL = new State(0); - public final static State PACKAGE = new State(1); - - private int id; - - private State(int id) - { - this.id = id; - } + NORMAL, + PACKAGE, + ; public int id() { - return this.id; + return this.ordinal(); } } diff --git a/src/main/java/org/sablecc/sablecc/node/AAlt.java b/src/main/java/org/sablecc/sablecc/node/AAlt.java index 144ab37c8b6026ac8124a54fcd0c01b4488abd2c..46fa13efb215524e39975d042ef80890130c29c6 100644 --- a/src/main/java/org/sablecc/sablecc/node/AAlt.java +++ b/src/main/java/org/sablecc/sablecc/node/AAlt.java @@ -2,9 +2,11 @@ package org.sablecc.sablecc.node; -import java.util.*; -import org.sablecc.sablecc.analysis.*; +import java.util.LinkedList; +import java.util.List; +import java.util.ListIterator; +import org.sablecc.sablecc.analysis.Analysis; public final class AAlt extends PAlt { diff --git a/src/main/java/org/sablecc/sablecc/node/AAltTransform.java b/src/main/java/org/sablecc/sablecc/node/AAltTransform.java index 16c9d4d0bd2a81f4c7a9eb46321a683afe78222a..40ae9973af24d27c45cd43fc02484dba18b09bbf 100644 --- a/src/main/java/org/sablecc/sablecc/node/AAltTransform.java +++ b/src/main/java/org/sablecc/sablecc/node/AAltTransform.java @@ -2,9 +2,11 @@ package org.sablecc.sablecc.node; -import java.util.*; -import org.sablecc.sablecc.analysis.*; +import java.util.LinkedList; +import java.util.List; +import java.util.ListIterator; +import org.sablecc.sablecc.analysis.Analysis; public final class AAltTransform extends PAltTransform { diff --git a/src/main/java/org/sablecc/sablecc/node/AAst.java b/src/main/java/org/sablecc/sablecc/node/AAst.java index c5002df4a52bc895fa0934205fe8c34aec79cafc..82a3c2876bc2907d96d2f6ffbdf1d0190e02adad 100644 --- a/src/main/java/org/sablecc/sablecc/node/AAst.java +++ b/src/main/java/org/sablecc/sablecc/node/AAst.java @@ -2,9 +2,11 @@ package org.sablecc.sablecc.node; -import java.util.*; -import org.sablecc.sablecc.analysis.*; +import java.util.LinkedList; +import java.util.List; +import java.util.ListIterator; +import org.sablecc.sablecc.analysis.Analysis; public final class AAst extends PAst { diff --git a/src/main/java/org/sablecc/sablecc/node/AAstAlt.java b/src/main/java/org/sablecc/sablecc/node/AAstAlt.java index ade7c7e1ed01917d3f843d4dedb37d88c0a8b277..57f8d822fb9c402b9490579d65dc7194b95e2307 100644 --- a/src/main/java/org/sablecc/sablecc/node/AAstAlt.java +++ b/src/main/java/org/sablecc/sablecc/node/AAstAlt.java @@ -2,9 +2,11 @@ package org.sablecc.sablecc.node; -import java.util.*; -import org.sablecc.sablecc.analysis.*; +import java.util.LinkedList; +import java.util.List; +import java.util.ListIterator; +import org.sablecc.sablecc.analysis.Analysis; public final class AAstAlt extends PAstAlt { diff --git a/src/main/java/org/sablecc/sablecc/node/AAstProd.java b/src/main/java/org/sablecc/sablecc/node/AAstProd.java index bf451c69cc0c9650809b694778c96d181ee0d73d..9548aa5c410d1b1c132f36901b7234623a328b9d 100644 --- a/src/main/java/org/sablecc/sablecc/node/AAstProd.java +++ b/src/main/java/org/sablecc/sablecc/node/AAstProd.java @@ -2,9 +2,11 @@ package org.sablecc.sablecc.node; -import java.util.*; -import org.sablecc.sablecc.analysis.*; +import java.util.LinkedList; +import java.util.List; +import java.util.ListIterator; +import org.sablecc.sablecc.analysis.Analysis; public final class AAstProd extends PAstProd { diff --git a/src/main/java/org/sablecc/sablecc/node/ACharBasic.java b/src/main/java/org/sablecc/sablecc/node/ACharBasic.java index e2c2c290835a2f9a2063c212bfd8ffc0fcf1e239..270a06ccf7ec1b69314995cab75ce6f938004850 100644 --- a/src/main/java/org/sablecc/sablecc/node/ACharBasic.java +++ b/src/main/java/org/sablecc/sablecc/node/ACharBasic.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class ACharBasic extends PBasic { diff --git a/src/main/java/org/sablecc/sablecc/node/ACharChar.java b/src/main/java/org/sablecc/sablecc/node/ACharChar.java index c843556274ff14ff8c5ed26eba4085bce641344a..0b11b64769f5fa9c142f2706d4b42d6130475707 100644 --- a/src/main/java/org/sablecc/sablecc/node/ACharChar.java +++ b/src/main/java/org/sablecc/sablecc/node/ACharChar.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class ACharChar extends PChar { diff --git a/src/main/java/org/sablecc/sablecc/node/AConcat.java b/src/main/java/org/sablecc/sablecc/node/AConcat.java index a3c666d899b9eba07d7f60c3d1dd7c14f86aefa7..76b5d87780c0df49b870396a3c78d555b2416c69 100644 --- a/src/main/java/org/sablecc/sablecc/node/AConcat.java +++ b/src/main/java/org/sablecc/sablecc/node/AConcat.java @@ -2,9 +2,11 @@ package org.sablecc.sablecc.node; -import java.util.*; -import org.sablecc.sablecc.analysis.*; +import java.util.LinkedList; +import java.util.List; +import java.util.ListIterator; +import org.sablecc.sablecc.analysis.Analysis; public final class AConcat extends PConcat { diff --git a/src/main/java/org/sablecc/sablecc/node/ADecChar.java b/src/main/java/org/sablecc/sablecc/node/ADecChar.java index 31c50336ad18ef60fe1ef63de05d70f27111b186..0778ae0ddededaffc90e221f3fb7e95999f2522a 100644 --- a/src/main/java/org/sablecc/sablecc/node/ADecChar.java +++ b/src/main/java/org/sablecc/sablecc/node/ADecChar.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class ADecChar extends PChar { diff --git a/src/main/java/org/sablecc/sablecc/node/AElem.java b/src/main/java/org/sablecc/sablecc/node/AElem.java index 70985fa2053b5bd3e69a3d48e2e7d94c07881e34..f961acc6ee47ccaf2b0f8321abaac9e5f086912a 100644 --- a/src/main/java/org/sablecc/sablecc/node/AElem.java +++ b/src/main/java/org/sablecc/sablecc/node/AElem.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class AElem extends PElem { diff --git a/src/main/java/org/sablecc/sablecc/node/AGrammar.java b/src/main/java/org/sablecc/sablecc/node/AGrammar.java index 1408be174f1495e9d50121985c3ab83e92401a2c..ef39aa3ef21844b05520fadbe17880fc8a2a9566 100644 --- a/src/main/java/org/sablecc/sablecc/node/AGrammar.java +++ b/src/main/java/org/sablecc/sablecc/node/AGrammar.java @@ -2,9 +2,11 @@ package org.sablecc.sablecc.node; -import java.util.*; -import org.sablecc.sablecc.analysis.*; +import java.util.LinkedList; +import java.util.List; +import java.util.ListIterator; +import org.sablecc.sablecc.analysis.Analysis; public final class AGrammar extends PGrammar { diff --git a/src/main/java/org/sablecc/sablecc/node/AHelperDef.java b/src/main/java/org/sablecc/sablecc/node/AHelperDef.java index 872f966d1c3f06975db23d335cc41d9ea212b2fa..93742b973d0c4212ec8f6ede8ef1bb440714c74a 100644 --- a/src/main/java/org/sablecc/sablecc/node/AHelperDef.java +++ b/src/main/java/org/sablecc/sablecc/node/AHelperDef.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class AHelperDef extends PHelperDef { diff --git a/src/main/java/org/sablecc/sablecc/node/AHelpers.java b/src/main/java/org/sablecc/sablecc/node/AHelpers.java index 5b5f96a2fc755b92da1c790d5ed37651689977a9..f083aeccd7c11cb2ccae6722e3a713eb739de4fa 100644 --- a/src/main/java/org/sablecc/sablecc/node/AHelpers.java +++ b/src/main/java/org/sablecc/sablecc/node/AHelpers.java @@ -2,9 +2,11 @@ package org.sablecc.sablecc.node; -import java.util.*; -import org.sablecc.sablecc.analysis.*; +import java.util.LinkedList; +import java.util.List; +import java.util.ListIterator; +import org.sablecc.sablecc.analysis.Analysis; public final class AHelpers extends PHelpers { diff --git a/src/main/java/org/sablecc/sablecc/node/AHexChar.java b/src/main/java/org/sablecc/sablecc/node/AHexChar.java index 03913724395d8f7bee061d6a68c0bb2d8c8a0f8d..ea2c910d1d49ce0f9e927ca69e814ddf7c571c71 100644 --- a/src/main/java/org/sablecc/sablecc/node/AHexChar.java +++ b/src/main/java/org/sablecc/sablecc/node/AHexChar.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class AHexChar extends PChar { diff --git a/src/main/java/org/sablecc/sablecc/node/AIdBasic.java b/src/main/java/org/sablecc/sablecc/node/AIdBasic.java index 8ce3a09337bf32bc4de18b083f419640490b6f4b..2089831188cb12dc623730ec625934679b13fe73 100644 --- a/src/main/java/org/sablecc/sablecc/node/AIdBasic.java +++ b/src/main/java/org/sablecc/sablecc/node/AIdBasic.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class AIdBasic extends PBasic { diff --git a/src/main/java/org/sablecc/sablecc/node/AIgnTokens.java b/src/main/java/org/sablecc/sablecc/node/AIgnTokens.java index 4e89102c1903fe8b3ccd83a88ae9a6d4ffdb3600..21caa3f72801410e9ea8f11c13f0e983c8c985aa 100644 --- a/src/main/java/org/sablecc/sablecc/node/AIgnTokens.java +++ b/src/main/java/org/sablecc/sablecc/node/AIgnTokens.java @@ -2,9 +2,11 @@ package org.sablecc.sablecc.node; -import java.util.*; -import org.sablecc.sablecc.analysis.*; +import java.util.LinkedList; +import java.util.List; +import java.util.ListIterator; +import org.sablecc.sablecc.analysis.Analysis; public final class AIgnTokens extends PIgnTokens { diff --git a/src/main/java/org/sablecc/sablecc/node/AIntervalSet.java b/src/main/java/org/sablecc/sablecc/node/AIntervalSet.java index dbd1b004938d96aba08682da410bcc1eb8e67293..aa6dcc6ab68b6d5744a714b694cef42c9855a0fb 100644 --- a/src/main/java/org/sablecc/sablecc/node/AIntervalSet.java +++ b/src/main/java/org/sablecc/sablecc/node/AIntervalSet.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class AIntervalSet extends PSet { diff --git a/src/main/java/org/sablecc/sablecc/node/AListTerm.java b/src/main/java/org/sablecc/sablecc/node/AListTerm.java index 33ef29cd0c671b9d752bbd7bb36b46c79a776b9d..d87e033f3da0e89daaac6f78d70067f30dfa5ac8 100644 --- a/src/main/java/org/sablecc/sablecc/node/AListTerm.java +++ b/src/main/java/org/sablecc/sablecc/node/AListTerm.java @@ -2,9 +2,11 @@ package org.sablecc.sablecc.node; -import java.util.*; -import org.sablecc.sablecc.analysis.*; +import java.util.LinkedList; +import java.util.List; +import java.util.ListIterator; +import org.sablecc.sablecc.analysis.Analysis; public final class AListTerm extends PTerm { diff --git a/src/main/java/org/sablecc/sablecc/node/AMinusBinOp.java b/src/main/java/org/sablecc/sablecc/node/AMinusBinOp.java index f83b25fd65f5487f1ec3b746148bafe2b0f221e5..d707ff0d2662fa874328e8dc072c94d7f50c1c31 100644 --- a/src/main/java/org/sablecc/sablecc/node/AMinusBinOp.java +++ b/src/main/java/org/sablecc/sablecc/node/AMinusBinOp.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class AMinusBinOp extends PBinOp { diff --git a/src/main/java/org/sablecc/sablecc/node/ANewListTerm.java b/src/main/java/org/sablecc/sablecc/node/ANewListTerm.java index d90bcba479d7d8106b4f28e99c5968397378a3b1..0d3d8341d0b3d7c516dd49709a293b771b7f63a2 100644 --- a/src/main/java/org/sablecc/sablecc/node/ANewListTerm.java +++ b/src/main/java/org/sablecc/sablecc/node/ANewListTerm.java @@ -2,9 +2,11 @@ package org.sablecc.sablecc.node; -import java.util.*; -import org.sablecc.sablecc.analysis.*; +import java.util.LinkedList; +import java.util.List; +import java.util.ListIterator; +import org.sablecc.sablecc.analysis.Analysis; public final class ANewListTerm extends PListTerm { diff --git a/src/main/java/org/sablecc/sablecc/node/ANewTerm.java b/src/main/java/org/sablecc/sablecc/node/ANewTerm.java index 5b15adbda881acec82476b5edbd11a88bbe8b15c..601f7923f6c48099cb2e481e81967218c5febde1 100644 --- a/src/main/java/org/sablecc/sablecc/node/ANewTerm.java +++ b/src/main/java/org/sablecc/sablecc/node/ANewTerm.java @@ -2,9 +2,11 @@ package org.sablecc.sablecc.node; -import java.util.*; -import org.sablecc.sablecc.analysis.*; +import java.util.LinkedList; +import java.util.List; +import java.util.ListIterator; +import org.sablecc.sablecc.analysis.Analysis; public final class ANewTerm extends PTerm { diff --git a/src/main/java/org/sablecc/sablecc/node/ANullTerm.java b/src/main/java/org/sablecc/sablecc/node/ANullTerm.java index 7054505a7a1ef9ae63394fc304f87c6f2ae981a6..dcd1f7f03016cf85edbe33a38932573e96e1328a 100644 --- a/src/main/java/org/sablecc/sablecc/node/ANullTerm.java +++ b/src/main/java/org/sablecc/sablecc/node/ANullTerm.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class ANullTerm extends PTerm { diff --git a/src/main/java/org/sablecc/sablecc/node/AOperationSet.java b/src/main/java/org/sablecc/sablecc/node/AOperationSet.java index d34ea9083b2320230c007b7ce205715ed0c1c8eb..0cd95937a665df7a27df7e5732e06737ada2b682 100644 --- a/src/main/java/org/sablecc/sablecc/node/AOperationSet.java +++ b/src/main/java/org/sablecc/sablecc/node/AOperationSet.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class AOperationSet extends PSet { diff --git a/src/main/java/org/sablecc/sablecc/node/APlusBinOp.java b/src/main/java/org/sablecc/sablecc/node/APlusBinOp.java index 37600cb7b4a975622dde5b3c3a7a6bc09daf3c9c..653ce61752c9e7dc3b91309ea7d3b7e1a9eba008 100644 --- a/src/main/java/org/sablecc/sablecc/node/APlusBinOp.java +++ b/src/main/java/org/sablecc/sablecc/node/APlusBinOp.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class APlusBinOp extends PBinOp { diff --git a/src/main/java/org/sablecc/sablecc/node/APlusUnOp.java b/src/main/java/org/sablecc/sablecc/node/APlusUnOp.java index d31ac09b57b26ae668c4f218bc75b23ef6061ec5..c18ef1bf8d4d78a3a2446c86fa48518a6df6995a 100644 --- a/src/main/java/org/sablecc/sablecc/node/APlusUnOp.java +++ b/src/main/java/org/sablecc/sablecc/node/APlusUnOp.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class APlusUnOp extends PUnOp { diff --git a/src/main/java/org/sablecc/sablecc/node/AProd.java b/src/main/java/org/sablecc/sablecc/node/AProd.java index d058034bd0aebeceeaef06d86c224e16a49bb50f..ffa7289bfcd677de1924216fcfefd6814d41f8aa 100644 --- a/src/main/java/org/sablecc/sablecc/node/AProd.java +++ b/src/main/java/org/sablecc/sablecc/node/AProd.java @@ -2,9 +2,11 @@ package org.sablecc.sablecc.node; -import java.util.*; -import org.sablecc.sablecc.analysis.*; +import java.util.LinkedList; +import java.util.List; +import java.util.ListIterator; +import org.sablecc.sablecc.analysis.Analysis; public final class AProd extends PProd { diff --git a/src/main/java/org/sablecc/sablecc/node/AProdName.java b/src/main/java/org/sablecc/sablecc/node/AProdName.java index 48d5ed27d687398584365e3eaec51a60f3897e83..f5be37eb0fc230b8a7f2e8ea97d6e1cab1659f59 100644 --- a/src/main/java/org/sablecc/sablecc/node/AProdName.java +++ b/src/main/java/org/sablecc/sablecc/node/AProdName.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class AProdName extends PProdName { diff --git a/src/main/java/org/sablecc/sablecc/node/AProductionSpecifier.java b/src/main/java/org/sablecc/sablecc/node/AProductionSpecifier.java index df84feb26a50114481a2831c23ce5703db629ebf..cccd16d36c56e44cec0f3b2f4e1d0c89f5ed859d 100644 --- a/src/main/java/org/sablecc/sablecc/node/AProductionSpecifier.java +++ b/src/main/java/org/sablecc/sablecc/node/AProductionSpecifier.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class AProductionSpecifier extends PSpecifier { diff --git a/src/main/java/org/sablecc/sablecc/node/AProductions.java b/src/main/java/org/sablecc/sablecc/node/AProductions.java index d5078d560f1fbbed861ba7fcd3a378bd2cb9f7db..f95ec5a099e09a9313a694432b1cc77957d6ccdf 100644 --- a/src/main/java/org/sablecc/sablecc/node/AProductions.java +++ b/src/main/java/org/sablecc/sablecc/node/AProductions.java @@ -2,9 +2,11 @@ package org.sablecc.sablecc.node; -import java.util.*; -import org.sablecc.sablecc.analysis.*; +import java.util.LinkedList; +import java.util.List; +import java.util.ListIterator; +import org.sablecc.sablecc.analysis.Analysis; public final class AProductions extends PProductions { diff --git a/src/main/java/org/sablecc/sablecc/node/AQMarkUnOp.java b/src/main/java/org/sablecc/sablecc/node/AQMarkUnOp.java index da78e8791a964e97e6b0ad7f2a4b67503a0d40ed..4eb1cc4b29b308c0134b3ecba3fbf68cbda994b0 100644 --- a/src/main/java/org/sablecc/sablecc/node/AQMarkUnOp.java +++ b/src/main/java/org/sablecc/sablecc/node/AQMarkUnOp.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class AQMarkUnOp extends PUnOp { diff --git a/src/main/java/org/sablecc/sablecc/node/ARegExp.java b/src/main/java/org/sablecc/sablecc/node/ARegExp.java index e9a9eedb3c25e100bf69f23d6e5147f1be40a3d8..ad35d8b27432e4a8df7c469cbf57c813aa1c6878 100644 --- a/src/main/java/org/sablecc/sablecc/node/ARegExp.java +++ b/src/main/java/org/sablecc/sablecc/node/ARegExp.java @@ -2,9 +2,11 @@ package org.sablecc.sablecc.node; -import java.util.*; -import org.sablecc.sablecc.analysis.*; +import java.util.LinkedList; +import java.util.List; +import java.util.ListIterator; +import org.sablecc.sablecc.analysis.Analysis; public final class ARegExp extends PRegExp { diff --git a/src/main/java/org/sablecc/sablecc/node/ARegExpBasic.java b/src/main/java/org/sablecc/sablecc/node/ARegExpBasic.java index 1c29eec74ef24927e70082fbd0062f8fff48b504..8169e64fb913c1eddd618056d78d2c40d5e621c6 100644 --- a/src/main/java/org/sablecc/sablecc/node/ARegExpBasic.java +++ b/src/main/java/org/sablecc/sablecc/node/ARegExpBasic.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class ARegExpBasic extends PBasic { diff --git a/src/main/java/org/sablecc/sablecc/node/ASetBasic.java b/src/main/java/org/sablecc/sablecc/node/ASetBasic.java index 9c26ab094894d9991f42894ccab765ae515d4d50..10040dd0a0f43b69962f15b84ca873de2ba22bfb 100644 --- a/src/main/java/org/sablecc/sablecc/node/ASetBasic.java +++ b/src/main/java/org/sablecc/sablecc/node/ASetBasic.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class ASetBasic extends PBasic { diff --git a/src/main/java/org/sablecc/sablecc/node/ASimpleListTerm.java b/src/main/java/org/sablecc/sablecc/node/ASimpleListTerm.java index 7821735cd82e0ac2cfd98073959ea2448ded3e47..2efef462828b5c08aeb359edd1b8b4555e2a1563 100644 --- a/src/main/java/org/sablecc/sablecc/node/ASimpleListTerm.java +++ b/src/main/java/org/sablecc/sablecc/node/ASimpleListTerm.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class ASimpleListTerm extends PListTerm { diff --git a/src/main/java/org/sablecc/sablecc/node/ASimpleTerm.java b/src/main/java/org/sablecc/sablecc/node/ASimpleTerm.java index 693bea1fb73a5b757e3d08436fc9d46d14b8d8d3..1138d998a1cff02691ef3bd0ef93db955fa7a55e 100644 --- a/src/main/java/org/sablecc/sablecc/node/ASimpleTerm.java +++ b/src/main/java/org/sablecc/sablecc/node/ASimpleTerm.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class ASimpleTerm extends PTerm { diff --git a/src/main/java/org/sablecc/sablecc/node/AStarUnOp.java b/src/main/java/org/sablecc/sablecc/node/AStarUnOp.java index 65146a48504d8ed4393b1648d5b9e97ca9006b22..9e6fa0d45701ebb7a8df44bd79112912bf7401f0 100644 --- a/src/main/java/org/sablecc/sablecc/node/AStarUnOp.java +++ b/src/main/java/org/sablecc/sablecc/node/AStarUnOp.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class AStarUnOp extends PUnOp { diff --git a/src/main/java/org/sablecc/sablecc/node/AStateList.java b/src/main/java/org/sablecc/sablecc/node/AStateList.java index f24a890d5701946bb38c36329b6e38697b9b8e95..7af91334ade49f4cd65670189bc7ae1e59bbc3e5 100644 --- a/src/main/java/org/sablecc/sablecc/node/AStateList.java +++ b/src/main/java/org/sablecc/sablecc/node/AStateList.java @@ -2,9 +2,11 @@ package org.sablecc.sablecc.node; -import java.util.*; -import org.sablecc.sablecc.analysis.*; +import java.util.LinkedList; +import java.util.List; +import java.util.ListIterator; +import org.sablecc.sablecc.analysis.Analysis; public final class AStateList extends PStateList { diff --git a/src/main/java/org/sablecc/sablecc/node/AStateListTail.java b/src/main/java/org/sablecc/sablecc/node/AStateListTail.java index b07fbfcc87000a2dd5447b1fa408324ac0189454..748b9dbc23cffba22b88fbe63e2fc9c1ccfc72e0 100644 --- a/src/main/java/org/sablecc/sablecc/node/AStateListTail.java +++ b/src/main/java/org/sablecc/sablecc/node/AStateListTail.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class AStateListTail extends PStateListTail { diff --git a/src/main/java/org/sablecc/sablecc/node/AStates.java b/src/main/java/org/sablecc/sablecc/node/AStates.java index 1c8e4eec6b5720a5b3ed770eda397c1f1a9e91ab..a191372642bbec5fbb06e9ff08165297dc33dddf 100644 --- a/src/main/java/org/sablecc/sablecc/node/AStates.java +++ b/src/main/java/org/sablecc/sablecc/node/AStates.java @@ -2,9 +2,11 @@ package org.sablecc.sablecc.node; -import java.util.*; -import org.sablecc.sablecc.analysis.*; +import java.util.LinkedList; +import java.util.List; +import java.util.ListIterator; +import org.sablecc.sablecc.analysis.Analysis; public final class AStates extends PStates { diff --git a/src/main/java/org/sablecc/sablecc/node/AStringBasic.java b/src/main/java/org/sablecc/sablecc/node/AStringBasic.java index 79963c2303490abda7f75c28d4befd4afe39b524..c52baeb47e15b7888ef5efd7a7a61330207613b1 100644 --- a/src/main/java/org/sablecc/sablecc/node/AStringBasic.java +++ b/src/main/java/org/sablecc/sablecc/node/AStringBasic.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class AStringBasic extends PBasic { diff --git a/src/main/java/org/sablecc/sablecc/node/ATokenDef.java b/src/main/java/org/sablecc/sablecc/node/ATokenDef.java index b2e423d3a805e98c22fa34324f1f0d8f73de1d21..21aa248d38b76ca0e804744122f3fd86e39bee7f 100644 --- a/src/main/java/org/sablecc/sablecc/node/ATokenDef.java +++ b/src/main/java/org/sablecc/sablecc/node/ATokenDef.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class ATokenDef extends PTokenDef { diff --git a/src/main/java/org/sablecc/sablecc/node/ATokenSpecifier.java b/src/main/java/org/sablecc/sablecc/node/ATokenSpecifier.java index 596e939289aa23f3a6dda76391f0258452049e66..4cabc05889acd10273cb4c0b519cf452a48b820d 100644 --- a/src/main/java/org/sablecc/sablecc/node/ATokenSpecifier.java +++ b/src/main/java/org/sablecc/sablecc/node/ATokenSpecifier.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class ATokenSpecifier extends PSpecifier { diff --git a/src/main/java/org/sablecc/sablecc/node/ATokens.java b/src/main/java/org/sablecc/sablecc/node/ATokens.java index 2ad3db72495dcb10f541587b3d10da2ea21f342b..d128831b37934f484e107628fdbaa0dee4726267 100644 --- a/src/main/java/org/sablecc/sablecc/node/ATokens.java +++ b/src/main/java/org/sablecc/sablecc/node/ATokens.java @@ -2,9 +2,11 @@ package org.sablecc.sablecc.node; -import java.util.*; -import org.sablecc.sablecc.analysis.*; +import java.util.LinkedList; +import java.util.List; +import java.util.ListIterator; +import org.sablecc.sablecc.analysis.Analysis; public final class ATokens extends PTokens { diff --git a/src/main/java/org/sablecc/sablecc/node/ATransition.java b/src/main/java/org/sablecc/sablecc/node/ATransition.java index e0c63282c9b02a058fac2f6e4cb6d636133d5e8c..efc2ecb8a722002ea320ef0a7b9e50dca51167cf 100644 --- a/src/main/java/org/sablecc/sablecc/node/ATransition.java +++ b/src/main/java/org/sablecc/sablecc/node/ATransition.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class ATransition extends PTransition { diff --git a/src/main/java/org/sablecc/sablecc/node/AUnExp.java b/src/main/java/org/sablecc/sablecc/node/AUnExp.java index ea2d1e39625a98a4d8b7c12bac7784127e3caf6e..30185f0ab743acb499845cb39bb5e8873b78e709 100644 --- a/src/main/java/org/sablecc/sablecc/node/AUnExp.java +++ b/src/main/java/org/sablecc/sablecc/node/AUnExp.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class AUnExp extends PUnExp { diff --git a/src/main/java/org/sablecc/sablecc/node/EOF.java b/src/main/java/org/sablecc/sablecc/node/EOF.java index 5097f39cd8213c78aa0567870c15183e3ece638d..8d7e017e119d18af04ebeca9e6e6f910dcd7a282 100644 --- a/src/main/java/org/sablecc/sablecc/node/EOF.java +++ b/src/main/java/org/sablecc/sablecc/node/EOF.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class EOF extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/Start.java b/src/main/java/org/sablecc/sablecc/node/Start.java index 0988c84f035f06138fea1ccbdf1097b123aa2a56..f9e230a62e8a6a7916ef4290b0f8aae8341c03bd 100644 --- a/src/main/java/org/sablecc/sablecc/node/Start.java +++ b/src/main/java/org/sablecc/sablecc/node/Start.java @@ -2,7 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; +import org.sablecc.sablecc.analysis.Analysis; public final class Start extends Node { diff --git a/src/main/java/org/sablecc/sablecc/node/TAbstract.java b/src/main/java/org/sablecc/sablecc/node/TAbstract.java index 8fc5a72b365fe61494c9fdfaab219458755ee22a..ba9a91097dae626ad254bf4d4e5d9b7f11885fa6 100644 --- a/src/main/java/org/sablecc/sablecc/node/TAbstract.java +++ b/src/main/java/org/sablecc/sablecc/node/TAbstract.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TAbstract extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TArrow.java b/src/main/java/org/sablecc/sablecc/node/TArrow.java index ac885099e845cb6a413aa715be5fddeb0d197760..9a2221108eff3e2ff7d6c4408d976f51f442fdb5 100644 --- a/src/main/java/org/sablecc/sablecc/node/TArrow.java +++ b/src/main/java/org/sablecc/sablecc/node/TArrow.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TArrow extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TBar.java b/src/main/java/org/sablecc/sablecc/node/TBar.java index 1fd5831e2d3da63e9bf44dcd4ba952d3689c2a72..36d967f0f6ad392ed88026d04571a2e369b8b088 100644 --- a/src/main/java/org/sablecc/sablecc/node/TBar.java +++ b/src/main/java/org/sablecc/sablecc/node/TBar.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TBar extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TBlank.java b/src/main/java/org/sablecc/sablecc/node/TBlank.java index 70b8ecf905be3f22432f256b9af5730ca4ccaa68..de51cb91f026c3706c08738e36dad023cca4f31c 100644 --- a/src/main/java/org/sablecc/sablecc/node/TBlank.java +++ b/src/main/java/org/sablecc/sablecc/node/TBlank.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TBlank extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TChar.java b/src/main/java/org/sablecc/sablecc/node/TChar.java index 6f70e04472fec0daf5c881dfa00395cd23804314..aecb775ca04dbf1cb0fa709c0c80c37adbdd289e 100644 --- a/src/main/java/org/sablecc/sablecc/node/TChar.java +++ b/src/main/java/org/sablecc/sablecc/node/TChar.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TChar extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TColon.java b/src/main/java/org/sablecc/sablecc/node/TColon.java index ac8d6aca2f401d5c5e0a42c9a6a6da557c3ef032..76e6ae69214ea2345d1683deb945ac071769d75f 100644 --- a/src/main/java/org/sablecc/sablecc/node/TColon.java +++ b/src/main/java/org/sablecc/sablecc/node/TColon.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TColon extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TComma.java b/src/main/java/org/sablecc/sablecc/node/TComma.java index 0905a298f6958cdbdc0543475ec90515512bd714..485b422a4c9a088306c527ebaab3286e13c1a010 100644 --- a/src/main/java/org/sablecc/sablecc/node/TComma.java +++ b/src/main/java/org/sablecc/sablecc/node/TComma.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TComma extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TComment.java b/src/main/java/org/sablecc/sablecc/node/TComment.java index 67275750b6300598089f24bbe9c1909553c9ea5e..9f9f1a52e64a25d5f27e6d676d6c53908a02f3eb 100644 --- a/src/main/java/org/sablecc/sablecc/node/TComment.java +++ b/src/main/java/org/sablecc/sablecc/node/TComment.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TComment extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TDDot.java b/src/main/java/org/sablecc/sablecc/node/TDDot.java index d650fed9dc243d1ea193c31edf1365beac8a9b07..0c2dd1f54cec3ca9429da62499093792f12fcec5 100644 --- a/src/main/java/org/sablecc/sablecc/node/TDDot.java +++ b/src/main/java/org/sablecc/sablecc/node/TDDot.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TDDot extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TDecChar.java b/src/main/java/org/sablecc/sablecc/node/TDecChar.java index 11fef1ec15e9712027b9143d86223cd97607c04e..22104e3f91115ac6cb8f78933abdab1619c149dd 100644 --- a/src/main/java/org/sablecc/sablecc/node/TDecChar.java +++ b/src/main/java/org/sablecc/sablecc/node/TDecChar.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TDecChar extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TDot.java b/src/main/java/org/sablecc/sablecc/node/TDot.java index 8606648faa48a431d52e2e793d5631387c4c1598..394e43fad398c48a2557843d1629672b62febd73 100644 --- a/src/main/java/org/sablecc/sablecc/node/TDot.java +++ b/src/main/java/org/sablecc/sablecc/node/TDot.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TDot extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TEqual.java b/src/main/java/org/sablecc/sablecc/node/TEqual.java index fc57280efbb718e118e6691530e99a55ffc2b7ec..c5b4c7c7ebfacb1cfb3fe71b159263b20eb0ad58 100644 --- a/src/main/java/org/sablecc/sablecc/node/TEqual.java +++ b/src/main/java/org/sablecc/sablecc/node/TEqual.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TEqual extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/THelpers.java b/src/main/java/org/sablecc/sablecc/node/THelpers.java index 01bf376ef0f2930fe8b085705f1ce94d35727616..27b296643b6d1d6a265ce6c282a7eaf899f833e5 100644 --- a/src/main/java/org/sablecc/sablecc/node/THelpers.java +++ b/src/main/java/org/sablecc/sablecc/node/THelpers.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class THelpers extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/THexChar.java b/src/main/java/org/sablecc/sablecc/node/THexChar.java index be72cbca158910c92060f95f0de855c5e90b3acd..2b09dc0d88ab19560397df0b41dbfab78b8c5ccc 100644 --- a/src/main/java/org/sablecc/sablecc/node/THexChar.java +++ b/src/main/java/org/sablecc/sablecc/node/THexChar.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class THexChar extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TId.java b/src/main/java/org/sablecc/sablecc/node/TId.java index 6ecb2e6e46e54fc9c703cfcbb94a1c7964ba833f..4323e68cb24f7454b0efae7c78019c850a5a2ea7 100644 --- a/src/main/java/org/sablecc/sablecc/node/TId.java +++ b/src/main/java/org/sablecc/sablecc/node/TId.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TId extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TIgnored.java b/src/main/java/org/sablecc/sablecc/node/TIgnored.java index 872e211f8f7b3c84889f2e1d6ded01dc450ac17c..3512dee9b0c0362c7c73071d6776b4aa7d20b318 100644 --- a/src/main/java/org/sablecc/sablecc/node/TIgnored.java +++ b/src/main/java/org/sablecc/sablecc/node/TIgnored.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TIgnored extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TLBkt.java b/src/main/java/org/sablecc/sablecc/node/TLBkt.java index 18e858af26c5285283cc3358a11b549c22382061..8e5a83766b396eb6532f5fc8d0f6f8a0c97fb9b2 100644 --- a/src/main/java/org/sablecc/sablecc/node/TLBkt.java +++ b/src/main/java/org/sablecc/sablecc/node/TLBkt.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TLBkt extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TLBrace.java b/src/main/java/org/sablecc/sablecc/node/TLBrace.java index ce2f4d2fdfc4b4cae4a6e5fcb21b8962a9405f1a..a3dcb1575de2416c633b7d8db73928ab2aa42c47 100644 --- a/src/main/java/org/sablecc/sablecc/node/TLBrace.java +++ b/src/main/java/org/sablecc/sablecc/node/TLBrace.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TLBrace extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TLPar.java b/src/main/java/org/sablecc/sablecc/node/TLPar.java index 411908f7500df45e288ca932660e9babc73570fe..8ba1e87a8b3fa02e5c843ad25c5ce11c91ab1b14 100644 --- a/src/main/java/org/sablecc/sablecc/node/TLPar.java +++ b/src/main/java/org/sablecc/sablecc/node/TLPar.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TLPar extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TMinus.java b/src/main/java/org/sablecc/sablecc/node/TMinus.java index 1894edab789708133f693902cf61ad598781a33b..044d65cb72357e26aff5acb55e533c398e16b61e 100644 --- a/src/main/java/org/sablecc/sablecc/node/TMinus.java +++ b/src/main/java/org/sablecc/sablecc/node/TMinus.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TMinus extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TNew.java b/src/main/java/org/sablecc/sablecc/node/TNew.java index 445cc6fc691ccee972228200d71c517e6dcf6bfa..fcbcd3051c396bbedb10d79dcaeeba73e9f77c2b 100644 --- a/src/main/java/org/sablecc/sablecc/node/TNew.java +++ b/src/main/java/org/sablecc/sablecc/node/TNew.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TNew extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TNull.java b/src/main/java/org/sablecc/sablecc/node/TNull.java index c41eea7f545d26d90ae0c3dd56f0123d6a6ab649..47800bb7583b204c45f4d5bca5239993d1678724 100644 --- a/src/main/java/org/sablecc/sablecc/node/TNull.java +++ b/src/main/java/org/sablecc/sablecc/node/TNull.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TNull extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TPackage.java b/src/main/java/org/sablecc/sablecc/node/TPackage.java index 9d0dce2619f3974934ab072eaa0009352343fe14..b2854d6dd99d1a3fc4ca87afcb3917aa14a52a5e 100644 --- a/src/main/java/org/sablecc/sablecc/node/TPackage.java +++ b/src/main/java/org/sablecc/sablecc/node/TPackage.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TPackage extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TPkgId.java b/src/main/java/org/sablecc/sablecc/node/TPkgId.java index 4a35d8f5f549c3c4a32bfae3cfc7d07d7a68ec75..63fd17a18c15cba74a84fd15acf5fb0993984f36 100644 --- a/src/main/java/org/sablecc/sablecc/node/TPkgId.java +++ b/src/main/java/org/sablecc/sablecc/node/TPkgId.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TPkgId extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TPlus.java b/src/main/java/org/sablecc/sablecc/node/TPlus.java index 72b8346a4e57954405b13894183e46b6e3d165d0..5098ea0560ef1e54035439e42cf132fcb4afcc76 100644 --- a/src/main/java/org/sablecc/sablecc/node/TPlus.java +++ b/src/main/java/org/sablecc/sablecc/node/TPlus.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TPlus extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TProductionSpecifier.java b/src/main/java/org/sablecc/sablecc/node/TProductionSpecifier.java index f392e9651087b846862ce8c2971a39af374a1f54..35a585fa6be8e2e87fc5f860682ba4b287f3b1ef 100644 --- a/src/main/java/org/sablecc/sablecc/node/TProductionSpecifier.java +++ b/src/main/java/org/sablecc/sablecc/node/TProductionSpecifier.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TProductionSpecifier extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TProductions.java b/src/main/java/org/sablecc/sablecc/node/TProductions.java index 0420f850b56cab9cf6fbe7c60b7213805ac971d2..7f402c305d92a37de0e92f4eabe7fb87c7626215 100644 --- a/src/main/java/org/sablecc/sablecc/node/TProductions.java +++ b/src/main/java/org/sablecc/sablecc/node/TProductions.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TProductions extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TQMark.java b/src/main/java/org/sablecc/sablecc/node/TQMark.java index c7db1cc7f75e7a8ec826622387d745d7b9e7f913..aebf492424c824f49c0e2c0d80dc133174d7d1e1 100644 --- a/src/main/java/org/sablecc/sablecc/node/TQMark.java +++ b/src/main/java/org/sablecc/sablecc/node/TQMark.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TQMark extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TRBkt.java b/src/main/java/org/sablecc/sablecc/node/TRBkt.java index 63f0c0e361bab2e54db2dbcdabff0bfa0902d6dc..30552da69e821b2614bd4c7e1ca175c4aeac9f2e 100644 --- a/src/main/java/org/sablecc/sablecc/node/TRBkt.java +++ b/src/main/java/org/sablecc/sablecc/node/TRBkt.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TRBkt extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TRBrace.java b/src/main/java/org/sablecc/sablecc/node/TRBrace.java index e90c27d6dee70dd075ca7844d602431aee26263d..04be2a1ce6914e3e527354e4998b865d82334a22 100644 --- a/src/main/java/org/sablecc/sablecc/node/TRBrace.java +++ b/src/main/java/org/sablecc/sablecc/node/TRBrace.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TRBrace extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TRPar.java b/src/main/java/org/sablecc/sablecc/node/TRPar.java index 0e29764edb7c57a09311e3f852f04f61f90baac9..c797774a6b97505a112fcae761b2c370b85d0253 100644 --- a/src/main/java/org/sablecc/sablecc/node/TRPar.java +++ b/src/main/java/org/sablecc/sablecc/node/TRPar.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TRPar extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TSemicolon.java b/src/main/java/org/sablecc/sablecc/node/TSemicolon.java index f8cfe4bad16641eb598b9d4752a7785aa8dcdfcf..144ab07845bd29b7997b497c862c3b5eaecfa03f 100644 --- a/src/main/java/org/sablecc/sablecc/node/TSemicolon.java +++ b/src/main/java/org/sablecc/sablecc/node/TSemicolon.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TSemicolon extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TSlash.java b/src/main/java/org/sablecc/sablecc/node/TSlash.java index a4ff8b0149081b01b05dd237c388b815714cb473..6b2fd73cabe1766d0ed39edc1709bf805171707e 100644 --- a/src/main/java/org/sablecc/sablecc/node/TSlash.java +++ b/src/main/java/org/sablecc/sablecc/node/TSlash.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TSlash extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TStar.java b/src/main/java/org/sablecc/sablecc/node/TStar.java index fc3d36be16a1aef6c4945072d9e2ebebdcc31832..c6835917372b09655346de4ac99dcb25049a9e9a 100644 --- a/src/main/java/org/sablecc/sablecc/node/TStar.java +++ b/src/main/java/org/sablecc/sablecc/node/TStar.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TStar extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TStates.java b/src/main/java/org/sablecc/sablecc/node/TStates.java index 4ae149afc9bf39a254172a291a6e875d03f06c16..45a75a7d67ae34613f9fef0e7097ae668e90b4b2 100644 --- a/src/main/java/org/sablecc/sablecc/node/TStates.java +++ b/src/main/java/org/sablecc/sablecc/node/TStates.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TStates extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TString.java b/src/main/java/org/sablecc/sablecc/node/TString.java index 74779c4e44efefd91718cf0712817f334f138fa0..452162ec67d17fcc5919c4dcf653914157854a8f 100644 --- a/src/main/java/org/sablecc/sablecc/node/TString.java +++ b/src/main/java/org/sablecc/sablecc/node/TString.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TString extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TSyntax.java b/src/main/java/org/sablecc/sablecc/node/TSyntax.java index 64e466c6da6b7cc22606f8df895a75d61e729e0e..4e7340f7cc74d3296083ecbf6b18d32ed6c93df2 100644 --- a/src/main/java/org/sablecc/sablecc/node/TSyntax.java +++ b/src/main/java/org/sablecc/sablecc/node/TSyntax.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TSyntax extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TTokenSpecifier.java b/src/main/java/org/sablecc/sablecc/node/TTokenSpecifier.java index 96a1eaa692c628fbc545cb4a377a7554ee2d1850..b37b101e402c4fa9ab8c59732cbdebfbf3d63945 100644 --- a/src/main/java/org/sablecc/sablecc/node/TTokenSpecifier.java +++ b/src/main/java/org/sablecc/sablecc/node/TTokenSpecifier.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TTokenSpecifier extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TTokens.java b/src/main/java/org/sablecc/sablecc/node/TTokens.java index 977178fd29dbccfdc151d6b09f6c0f07378e2660..fac6c7a7fa5c7d2d5aa8fe141bfe7efc54438817 100644 --- a/src/main/java/org/sablecc/sablecc/node/TTokens.java +++ b/src/main/java/org/sablecc/sablecc/node/TTokens.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TTokens extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/TTree.java b/src/main/java/org/sablecc/sablecc/node/TTree.java index f90670bac79ab701591ca9deb239ed1fee8415e2..91100d31f153e753b65ce43dc2265debaae123a4 100644 --- a/src/main/java/org/sablecc/sablecc/node/TTree.java +++ b/src/main/java/org/sablecc/sablecc/node/TTree.java @@ -2,8 +2,7 @@ package org.sablecc.sablecc.node; -import org.sablecc.sablecc.analysis.*; - +import org.sablecc.sablecc.analysis.Analysis; public final class TTree extends Token { diff --git a/src/main/java/org/sablecc/sablecc/node/Token.java b/src/main/java/org/sablecc/sablecc/node/Token.java index bc0376a9cfbf59aabfc228576aa2befa4d6f9914..628077f9e1f2c706c0bbed22a466a799d2ed5686 100644 --- a/src/main/java/org/sablecc/sablecc/node/Token.java +++ b/src/main/java/org/sablecc/sablecc/node/Token.java @@ -5,7 +5,6 @@ package org.sablecc.sablecc.node; import de.hhu.stups.sablecc.patch.IToken; import de.hhu.stups.sablecc.patch.SourcePosition; - public abstract class Token extends Node implements IToken { private String text; diff --git a/src/main/java/org/sablecc/sablecc/parser/Parser.java b/src/main/java/org/sablecc/sablecc/parser/Parser.java index c9535dfa6f49dd99abe9764e6e84e6094d3f2a5a..992afd4ecfdc014ed141f4c19f41e8e0aa3d1f0d 100644 --- a/src/main/java/org/sablecc/sablecc/parser/Parser.java +++ b/src/main/java/org/sablecc/sablecc/parser/Parser.java @@ -2,19 +2,26 @@ package org.sablecc.sablecc.parser; -import org.sablecc.sablecc.lexer.*; -import org.sablecc.sablecc.node.*; -import org.sablecc.sablecc.analysis.*; -import java.util.*; -import de.hhu.stups.sablecc.patch.*; - - import java.io.DataInputStream; import java.io.BufferedInputStream; import java.io.InputStream; import java.io.IOException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.LinkedList; +import java.util.List; +import java.util.ListIterator; +import java.util.Map; + +import de.hhu.stups.sablecc.patch.IParser; +import de.hhu.stups.sablecc.patch.IToken; +import de.hhu.stups.sablecc.patch.PositionedNode; + +import org.sablecc.sablecc.lexer.Lexer; +import org.sablecc.sablecc.lexer.LexerException; +import org.sablecc.sablecc.node.*; -@SuppressWarnings({"rawtypes","unchecked","unused"}) +@SuppressWarnings({"deprecation", "rawtypes", "unchecked", "unused"}) // getMapping() is deprecated, but the generated parser still populates it for compatibility public class Parser implements IParser { protected List<Object> nodeList; @@ -37,10 +44,15 @@ public class Parser implements IParser this.lexer = lexer; } - - private Map<PositionedNode, SourcecodeRange> mapping = new HashMap<PositionedNode, SourcecodeRange>(); + @Deprecated + private Map<PositionedNode, de.hhu.stups.sablecc.patch.SourcecodeRange> mapping = new HashMap<>(); + /** + * @deprecated All generated token classes store their own position info. + * Use the {@link PositionedNode} or {@link IToken} APIs to access the positions stored in the tokens. + */ + @Deprecated @Override - public Map<PositionedNode, SourcecodeRange> getMapping() { return this.mapping; } + public Map<PositionedNode, de.hhu.stups.sablecc.patch.SourcecodeRange> getMapping() { return this.mapping; } private void checkResult(Object elementToCheck, List<Object> beginNodeList, List<Object> endNodeList) { if (elementToCheck instanceof List<?>) { @@ -79,7 +91,7 @@ public class Parser implements IParser PositionedNode endNode = findEndNode(endNodeList); int end = findEndPos(endNode); if (end == -1) end = begin; - final SourcecodeRange range = new SourcecodeRange(begin, end); + final de.hhu.stups.sablecc.patch.SourcecodeRange range = new de.hhu.stups.sablecc.patch.SourcecodeRange(begin, end); this.getMapping().put(node, range); @@ -126,7 +138,7 @@ public class Parser implements IParser return findIndex((IToken) node); } - final SourcecodeRange item = this.getMapping().get(node); + final de.hhu.stups.sablecc.patch.SourcecodeRange item = this.getMapping().get(node); if (item == null) { return -1; } @@ -145,16 +157,6 @@ public class Parser implements IParser return -1; } - /** - * @param productionRuleAsString internal name of the production rule in question - * @return {@code false} if creation of a new list should be skipped, {@code true} for default behavior - * @deprecated Overriding this method no longer has any effect. This optimization is now applied automatically iff it is safe. - */ - @Deprecated - protected boolean addElementsFromListToNewList(String productionRuleAsString) { - return true; - } - private void push(int numstate, List<Object> listNode) throws ParserException, LexerException, IOException { this.nodeList = listNode; diff --git a/src/main/java/org/sablecc/sablecc/parser/TokenIndex.java b/src/main/java/org/sablecc/sablecc/parser/TokenIndex.java index 1876b21bd095f7f27fb0405c5c3efcb5a931ffa3..37018e91c4a005878bfef1e20be1bb24de9dfd76 100644 --- a/src/main/java/org/sablecc/sablecc/parser/TokenIndex.java +++ b/src/main/java/org/sablecc/sablecc/parser/TokenIndex.java @@ -2,8 +2,8 @@ package org.sablecc.sablecc.parser; +import org.sablecc.sablecc.analysis.AnalysisAdapter; import org.sablecc.sablecc.node.*; -import org.sablecc.sablecc.analysis.*; class TokenIndex extends AnalysisAdapter { diff --git a/src/main/resources/org/sablecc/sablecc/alternatives.txt b/src/main/resources/org/sablecc/sablecc/alternatives.txt index eb1569cd445760238f281c1b10430881090760ad..e5cd53d8497334fc0007e806b445a7ea5cf89158 100644 --- a/src/main/resources/org/sablecc/sablecc/alternatives.txt +++ b/src/main/resources/org/sablecc/sablecc/alternatives.txt @@ -8,19 +8,21 @@ Macro:AlternativeHeader1 /* This file was generated by SableCC (http://www.sablecc.org/). */ -package $0$; +package $0$node; $ Macro:AlternativeHeaderList -import java.util.*; +import java.util.LinkedList; +import java.util.List; +import java.util.ListIterator; + $ Macro:AlternativeHeader2 -import $0$.*; - +import $0$analysis.Analysis; public final class $1$ extends $2$ { diff --git a/src/main/resources/org/sablecc/sablecc/analyses.txt b/src/main/resources/org/sablecc/sablecc/analyses.txt index 4a316079af302c480ee5a8f21a58d2a4215dfb89..47b3d044d6006f8edbd4f73cb9ffc89daa4d06b8 100644 --- a/src/main/resources/org/sablecc/sablecc/analyses.txt +++ b/src/main/resources/org/sablecc/sablecc/analyses.txt @@ -8,44 +8,12 @@ Macro:AnalysisHeader /* This file was generated by SableCC (http://www.sablecc.org/). */ -package $0$; +package $0$analysis; -import $1$.*; +import $0$node.*; public interface Analysis extends Switch { - /** - * @param node the node for which to look up the associated object - * @return the corresponding object previously associated using {@link #setIn(Node, Object)}, or {@code null} if there is none - * @deprecated If you need a map field, declare it yourself. - */ - @Deprecated - Object getIn(Node node); - - /** - * @param node the node with which to associate the given object - * @param o the object to associate with the node - * @deprecated If you need a map field, declare it yourself. - */ - @Deprecated - void setIn(Node node, Object o); - - /** - * @param node the node for which to look up the associated object - * @return the corresponding object previously associated using {@link #setOut(Node, Object)}, or {@code null} if there is none - * @deprecated If you need a map field, declare it yourself. - */ - @Deprecated - Object getOut(Node node); - - /** - * @param node the node with which to associate the given object - * @param o the object to associate with the node - * @deprecated If you need a map field, declare it yourself. - */ - @Deprecated - void setOut(Node node, Object o); - $ Macro:AnalysisStart @@ -67,87 +35,12 @@ $ Macro:AnalysisAdapterHeader /* This file was generated by SableCC (http://www.sablecc.org/). */ -package $0$; +package $0$analysis; -import java.util.*; -import $1$.*; +import $0$node.*; public class AnalysisAdapter implements Analysis { - /** - * @deprecated If you need a map field, declare it yourself. - */ - @Deprecated - private Hashtable<Node,Object> in; - - /** - * @deprecated If you need a map field, declare it yourself. - */ - @Deprecated - private Hashtable<Node,Object> out; - - @Deprecated - @Override - public Object getIn(Node node) - { - if(this.in == null) - { - return null; - } - - return this.in.get(node); - } - - @Deprecated - @Override - public void setIn(Node node, Object o) - { - if(this.in == null) - { - this.in = new Hashtable<Node,Object>(1); - } - - if(o != null) - { - this.in.put(node, o); - } - else - { - this.in.remove(node); - } - } - - @Deprecated - @Override - public Object getOut(Node node) - { - if(this.out == null) - { - return null; - } - - return this.out.get(node); - } - - @Deprecated - @Override - public void setOut(Node node, Object o) - { - if(this.out == null) - { - this.out = new Hashtable<Node,Object>(1); - } - - if(o != null) - { - this.out.put(node, o); - } - else - { - this.out.remove(node); - } - } - $ Macro:AnalysisAdapterStart @@ -189,16 +82,15 @@ $ Macro:DepthFirstAdapterHeader /* This file was generated by SableCC (http://www.sablecc.org/). */ -package $0$; +package $0$analysis; + +import java.util.ArrayList; +import java.util.List; -import java.util.*; -import $1$.*; +import $0$node.*; public class DepthFirstAdapter extends AnalysisAdapter { - - final List<Void> dummy = new ArrayList<Void>(); - public void inStart(Start node) { defaultIn(node); @@ -223,7 +115,7 @@ public class DepthFirstAdapter extends AnalysisAdapter public void caseStart(Start node) { inStart(node); - node.get$2$().apply(this); + node.get$1$().apply(this); node.getEOF().apply(this); outStart(node); } @@ -233,16 +125,16 @@ $ Macro:ReversedDepthFirstAdapterHeader /* This file was generated by SableCC (http://www.sablecc.org/). */ -package $0$; +package $0$analysis; -import java.util.*; -import $1$.*; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import $0$node.*; public class ReversedDepthFirstAdapter extends AnalysisAdapter { - final List<Void> dummy = new ArrayList<Void>(); - public void inStart(Start node) { defaultIn(node); @@ -268,7 +160,7 @@ public class ReversedDepthFirstAdapter extends AnalysisAdapter { inStart(node); node.getEOF().apply(this); - node.get$2$().apply(this); + node.get$1$().apply(this); outStart(node); } diff --git a/src/main/resources/org/sablecc/sablecc/lexer.txt b/src/main/resources/org/sablecc/sablecc/lexer.txt index f9ccfb2dc96c980fd734deab2f20a2373e584280..f129be40152c9ae2562978e2e5d07a882943e241 100644 --- a/src/main/resources/org/sablecc/sablecc/lexer.txt +++ b/src/main/resources/org/sablecc/sablecc/lexer.txt @@ -8,7 +8,7 @@ Macro:LexerException /* This file was generated by SableCC (http://www.sablecc.org/). */ -package $0$; +package $0$lexer; @SuppressWarnings({"serial"}) public class LexerException extends Exception @@ -24,19 +24,27 @@ $ Macro:LexerHeader /* This file was generated by SableCC (http://www.sablecc.org/). */ -package $0$; +package $0$lexer; -import java.io.*; -import java.util.*; -import $1$.*; -import de.hhu.stups.sablecc.patch.*; -import java.util.concurrent.LinkedBlockingQueue; +import java.io.BufferedInputStream; +import java.io.DataInputStream; +import java.io.InputStream; +import java.io.IOException; +import java.io.PushbackReader; +import java.util.ArrayList; +import java.util.LinkedList; +import java.util.List; +import java.util.Queue; -@SuppressWarnings({"unused"}) -public class Lexer implements ITokenListContainer +import de.hhu.stups.sablecc.patch.IToken; + +import $0$node.*; + +@SuppressWarnings({"deprecation", "unused"}) // ITokenListContainer is deprecated, but the generated lexer still implements it for compatibility +public class Lexer implements de.hhu.stups.sablecc.patch.ITokenListContainer { protected Token token; - protected State state = State.$2$; + protected State state = State.$1$; private PushbackReader in; protected int line; @@ -46,12 +54,17 @@ public class Lexer implements ITokenListContainer private final StringBuilder text = new StringBuilder(); private List<IToken> tokenList; - private final Queue<IToken> nextList = new LinkedBlockingQueue<IToken>(); + private final Queue<IToken> nextList = new LinkedList<IToken>(); public Queue<IToken> getNextList() { return nextList; } + /** + * @deprecated In the future, the generated lexers will not store all tokens anymore, because this leads to significant memory usage for large inputs. + * If you really need this list, please create it yourself, using a custom lexer subclass if necessary. + */ + @Deprecated @Override public List<IToken> getTokenList() { return tokenList; @@ -61,7 +74,11 @@ public class Lexer implements ITokenListContainer token = t; } - + /** + * @deprecated In the future, the generated lexers will not store all tokens anymore, because this leads to significant memory usage for large inputs. + * If you really need this list, please create it yourself, using a custom lexer subclass if necessary. + */ + @Deprecated public void setTokenList(final List<IToken> list) { tokenList = list; } @@ -125,8 +142,8 @@ public class Lexer implements ITokenListContainer int accept_pos = -1; int accept_line = -1; - int[][][] gotoTable = Lexer.gotoTable[this.state.id()]; - int[] accept = Lexer.accept[this.state.id()]; + int[][][] gotoTable = Lexer.gotoTable[this.state.ordinal()]; + int[] accept = Lexer.accept[this.state.ordinal()]; this.text.setLength(0); while(true) @@ -247,7 +264,7 @@ Macro:LexerFixedToken $ Macro:TokenSwitchHeader - switch(state.id()) + switch(state.ordinal()) { $ @@ -373,28 +390,22 @@ Macro:LexerAcceptTail $ Macro:LexerStateHeader - public static class State + public enum State { $ Macro:LexerStateBody - public final static State $0$ = new State($1$); + $0$, $ Macro:LexerStateTail - - private int id; - - private State(int id) - { - this.id = id; - } + ; public int id() { - return this.id; + return this.ordinal(); } } diff --git a/src/main/resources/org/sablecc/sablecc/parser.txt b/src/main/resources/org/sablecc/sablecc/parser.txt index e24642dd9c693de1b61f505c08586fdaba81ff72..302d4d88448d65f0179d1bcf53bac5b21df2674d 100644 --- a/src/main/resources/org/sablecc/sablecc/parser.txt +++ b/src/main/resources/org/sablecc/sablecc/parser.txt @@ -8,21 +8,28 @@ Macro:ParserHeader /* This file was generated by SableCC (http://www.sablecc.org/). */ -package $0$; - -import $1$.*; -import $2$.*; -import $3$.*; -import java.util.*; -import de.hhu.stups.sablecc.patch.*; - +package $0$parser; import java.io.DataInputStream; import java.io.BufferedInputStream; import java.io.InputStream; import java.io.IOException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.LinkedList; +import java.util.List; +import java.util.ListIterator; +import java.util.Map; + +import de.hhu.stups.sablecc.patch.IParser; +import de.hhu.stups.sablecc.patch.IToken; +import de.hhu.stups.sablecc.patch.PositionedNode; -@SuppressWarnings({"rawtypes","unchecked","unused"}) +import $0$lexer.Lexer; +import $0$lexer.LexerException; +import $0$node.*; + +@SuppressWarnings({"deprecation", "rawtypes", "unchecked", "unused"}) // getMapping() is deprecated, but the generated parser still populates it for compatibility public class Parser implements IParser { protected List<Object> nodeList; @@ -45,10 +52,15 @@ public class Parser implements IParser this.lexer = lexer; } - - private Map<PositionedNode, SourcecodeRange> mapping = new HashMap<PositionedNode, SourcecodeRange>(); + @Deprecated + private Map<PositionedNode, de.hhu.stups.sablecc.patch.SourcecodeRange> mapping = new HashMap<>(); + /** + * @deprecated All generated token classes store their own position info. + * Use the {@link PositionedNode} or {@link IToken} APIs to access the positions stored in the tokens. + */ + @Deprecated @Override - public Map<PositionedNode, SourcecodeRange> getMapping() { return this.mapping; } + public Map<PositionedNode, de.hhu.stups.sablecc.patch.SourcecodeRange> getMapping() { return this.mapping; } private void checkResult(Object elementToCheck, List<Object> beginNodeList, List<Object> endNodeList) { if (elementToCheck instanceof List<?>) { @@ -87,7 +99,7 @@ public class Parser implements IParser PositionedNode endNode = findEndNode(endNodeList); int end = findEndPos(endNode); if (end == -1) end = begin; - final SourcecodeRange range = new SourcecodeRange(begin, end); + final de.hhu.stups.sablecc.patch.SourcecodeRange range = new de.hhu.stups.sablecc.patch.SourcecodeRange(begin, end); this.getMapping().put(node, range); @@ -134,7 +146,7 @@ public class Parser implements IParser return findIndex((IToken) node); } - final SourcecodeRange item = this.getMapping().get(node); + final de.hhu.stups.sablecc.patch.SourcecodeRange item = this.getMapping().get(node); if (item == null) { return -1; } @@ -153,16 +165,6 @@ public class Parser implements IParser return -1; } - /** - * @param productionRuleAsString internal name of the production rule in question - * @return {@code false} if creation of a new list should be skipped, {@code true} for default behavior - * @deprecated Overriding this method no longer has any effect. This optimization is now applied automatically iff it is safe. - */ - @Deprecated - protected boolean addElementsFromListToNewList(String productionRuleAsString) { - return true; - } - $ Macro:ParserInliningPushHeader @@ -583,10 +585,10 @@ $ Macro:TokenIndexHeader /* This file was generated by SableCC (http://www.sablecc.org/). */ -package $0$; +package $0$parser; -import $1$.*; -import $2$.*; +import $0$analysis.AnalysisAdapter; +import $0$node.*; class TokenIndex extends AnalysisAdapter { @@ -618,9 +620,9 @@ $ Macro:ParserException /* This file was generated by SableCC (http://www.sablecc.org/). */ -package $0$; +package $0$parser; -import $1$.*; +import $0$node.*; @SuppressWarnings("serial") public class ParserException extends Exception @@ -657,7 +659,7 @@ $ Macro:State /* This file was generated by SableCC (http://www.sablecc.org/). */ -package $0$; +package $0$parser; import java.util.List; diff --git a/src/main/resources/org/sablecc/sablecc/productions.txt b/src/main/resources/org/sablecc/sablecc/productions.txt index 90b681ff3c59ce77a23edec8d605ceb9eb5b5017..2957990e5c297ab2e0b5dbcb18131f2eaf47b8eb 100644 --- a/src/main/resources/org/sablecc/sablecc/productions.txt +++ b/src/main/resources/org/sablecc/sablecc/productions.txt @@ -8,7 +8,7 @@ Macro:Production /* This file was generated by SableCC (http://www.sablecc.org/). */ -package $0$; +package $0$node; public abstract class $1$ extends Node { diff --git a/src/main/resources/org/sablecc/sablecc/tokens.txt b/src/main/resources/org/sablecc/sablecc/tokens.txt index 28294f026b95ce442b5e3fa99f1966350feeaac3..ce4cfbc9f63af4e19bf0140f6e7030a1b4421c31 100644 --- a/src/main/resources/org/sablecc/sablecc/tokens.txt +++ b/src/main/resources/org/sablecc/sablecc/tokens.txt @@ -5,94 +5,85 @@ * modification of SableCC. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ -// 0 : xxx.node -// 1 : xxx.analysis -// 2 : Txxx Macro:VariableTextToken /* This file was generated by SableCC (http://www.sablecc.org/). */ -package $0$; +package $0$node; -import $1$.*; +import $0$analysis.Analysis; - -public final class $2$ extends Token +public final class $1$ extends Token { - public $2$(String text) + public $1$(String text) { super(text); } - public $2$(String text, int line, int pos) + public $1$(String text, int line, int pos) { super(text, line, pos); } - public $2$($2$ token) + public $1$($1$ token) { super(token); } @Override - public $2$ clone() + public $1$ clone() { - return new $2$(this); + return new $1$(this); } @Override public void apply(Switch sw) { - ((Analysis) sw).case$2$(this); + ((Analysis) sw).case$1$(this); } } $ -// 0 : xxx.node -// 1 : xxx.analysis -// 2 : Txxx -// 3 : xxx Macro:FixedTextToken /* This file was generated by SableCC (http://www.sablecc.org/). */ -package $0$; - -import $1$.*; +package $0$node; +import $0$analysis.Analysis; -public final class $2$ extends Token +public final class $1$ extends Token { - public $2$() + public $1$() { - super("$3$"); + super("$2$"); } - public $2$(int line, int pos) + public $1$(int line, int pos) { - super("$3$", line, pos); + super("$2$", line, pos); } - public $2$($2$ token) + public $1$($1$ token) { super(token); } @Override - public $2$ clone() + public $1$ clone() { - return new $2$(this); + return new $1$(this); } @Override public void apply(Switch sw) { - ((Analysis) sw).case$2$(this); + ((Analysis) sw).case$1$(this); } @Override public void setText(String text) { - throw new RuntimeException("Cannot change $2$ text."); + throw new RuntimeException("Cannot change $1$ text."); } } diff --git a/src/main/resources/org/sablecc/sablecc/utils.txt b/src/main/resources/org/sablecc/sablecc/utils.txt index 13ce65183810bdd68b5171378238c8e11090b6e0..92ce0860324b63443c648c2b78dfd8457799d02a 100644 --- a/src/main/resources/org/sablecc/sablecc/utils.txt +++ b/src/main/resources/org/sablecc/sablecc/utils.txt @@ -8,13 +8,13 @@ Macro:Start /* This file was generated by SableCC (http://www.sablecc.org/). */ -package $0$; +package $0$node; -import $1$.*; +import $0$analysis.Analysis; public final class Start extends Node { - private $2$ _$3$_; + private $1$ _$2$_; private EOF _eof_; public Start() @@ -23,17 +23,17 @@ public final class Start extends Node } public Start( - $2$ _$3$_, + $1$ _$2$_, EOF _eof_) { - set$2$(_$3$_); + set$1$(_$2$_); setEOF(_eof_); } public Start(Start node) { super(node); - set$2$(cloneNode(node._$3$_)); + set$1$(cloneNode(node._$2$_)); setEOF(cloneNode(node._eof_)); } @@ -49,16 +49,16 @@ public final class Start extends Node ((Analysis) sw).caseStart(this); } - public $2$ get$2$() + public $1$ get$1$() { - return this._$3$_; + return this._$2$_; } - public void set$2$($2$ node) + public void set$1$($1$ node) { - if(this._$3$_ != null) + if(this._$2$_ != null) { - this._$3$_.parent(null); + this._$2$_.parent(null); } if(node != null) @@ -71,7 +71,7 @@ public final class Start extends Node node.parent(this); } - this._$3$_ = node; + this._$2$_ = node; } public EOF getEOF() @@ -102,9 +102,9 @@ public final class Start extends Node @Override void removeChild(Node child) { - if(this._$3$_ == child) + if(this._$2$_ == child) { - this._$3$_ = null; + this._$2$_ = null; return; } @@ -120,9 +120,9 @@ public final class Start extends Node @Override void replaceChild(Node oldChild, Node newChild) { - if(this._$3$_ == oldChild) + if(this._$2$_ == oldChild) { - set$2$(($2$) newChild); + set$1$(($1$) newChild); return; } @@ -139,7 +139,7 @@ public final class Start extends Node public String toString() { return "" + - toString(this._$3$_) + + toString(this._$2$_) + toString(this._eof_); } } @@ -149,10 +149,9 @@ $ Macro:EOF /* This file was generated by SableCC (http://www.sablecc.org/). */ -package $0$; - -import $1$.*; +package $0$node; +import $0$analysis.Analysis; public final class EOF extends Token { @@ -189,12 +188,11 @@ $ Macro:Token /* This file was generated by SableCC (http://www.sablecc.org/). */ -package $0$; +package $0$node; import de.hhu.stups.sablecc.patch.IToken; import de.hhu.stups.sablecc.patch.SourcePosition; - public abstract class Token extends Node implements IToken { private String text; @@ -324,7 +322,7 @@ $ Macro:Node /* This file was generated by SableCC (http://www.sablecc.org/). */ -package $0$; +package $0$node; import java.util.LinkedList; import java.util.List; @@ -419,7 +417,7 @@ $ Macro:Switch /* This file was generated by SableCC (http://www.sablecc.org/). */ -package $0$; +package $0$node; public interface Switch { @@ -431,7 +429,7 @@ $ Macro:Switchable /* This file was generated by SableCC (http://www.sablecc.org/). */ -package $0$; +package $0$node; public interface Switchable {