Skip to content
Snippets Groups Projects
Commit caf79cd0 authored by dgelessus's avatar dgelessus
Browse files

Simplify handling of generated package names in templates

parent 94f4cc2a
No related branches found
No related tags found
No related merge requests found
Showing
with 25 additions and 56 deletions
...@@ -46,7 +46,7 @@ public class GenAlts extends DepthFirstAdapter ...@@ -46,7 +46,7 @@ public class GenAlts extends DepthFirstAdapter
} }
pkgDir = new File(ast_ids.astIds.pkgDir, "node"); pkgDir = new File(ast_ids.astIds.pkgDir, "node");
pkgName = ast_ids.astIds.pkgName.equals("") ? "node" : ast_ids.astIds.pkgName + ".node"; pkgName = ast_ids.astIds.pkgNameDot + "node";
if(!pkgDir.exists()) if(!pkgDir.exists())
{ {
...@@ -139,9 +139,7 @@ public class GenAlts extends DepthFirstAdapter ...@@ -139,9 +139,7 @@ public class GenAlts extends DepthFirstAdapter
macros.apply(file, "AlternativeHeaderList", new String[] {}); macros.apply(file, "AlternativeHeaderList", new String[] {});
} }
macros.apply(file, "AlternativeHeader2", new String[] { macros.apply(file, "AlternativeHeader2", new String[] {ast_ids.astIds.pkgNameDot, name, currentProd});
ast_ids.astIds.pkgName.equals("") ? "analysis" : ast_ids.astIds.pkgName + ".analysis",
name, currentProd});
for(ElemInfo info : elemList) for(ElemInfo info : elemList)
{ {
......
...@@ -48,7 +48,7 @@ public class GenAnalyses extends DepthFirstAdapter ...@@ -48,7 +48,7 @@ public class GenAnalyses extends DepthFirstAdapter
} }
pkgDir = new File(ast_ids.astIds.pkgDir, "analysis"); pkgDir = new File(ast_ids.astIds.pkgDir, "analysis");
pkgName = ast_ids.astIds.pkgName.equals("") ? "analysis" : ast_ids.astIds.pkgName + ".analysis"; pkgName = ast_ids.astIds.pkgNameDot + "analysis";
if(!pkgDir.exists()) if(!pkgDir.exists())
{ {
...@@ -152,8 +152,7 @@ public class GenAnalyses extends DepthFirstAdapter ...@@ -152,8 +152,7 @@ public class GenAnalyses extends DepthFirstAdapter
{ {
try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "Analysis.java")))) try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "Analysis.java"))))
{ {
macros.apply(file, "AnalysisHeader", new String[] {pkgName, macros.apply(file, "AnalysisHeader", new String[] {pkgName, ast_ids.astIds.pkgNameDot});
ast_ids.astIds.pkgName.equals("") ? "node" : ast_ids.astIds.pkgName + ".node"});
if(mainProduction != null) if(mainProduction != null)
{ {
...@@ -187,8 +186,7 @@ public class GenAnalyses extends DepthFirstAdapter ...@@ -187,8 +186,7 @@ public class GenAnalyses extends DepthFirstAdapter
{ {
try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "AnalysisAdapter.java")))) try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "AnalysisAdapter.java"))))
{ {
macros.apply(file, "AnalysisAdapterHeader", new String[] {pkgName, macros.apply(file, "AnalysisAdapterHeader", new String[] {pkgName, ast_ids.astIds.pkgNameDot});
ast_ids.astIds.pkgName.equals("") ? "node" : ast_ids.astIds.pkgName + ".node"});
if(mainProduction != null) if(mainProduction != null)
{ {
...@@ -220,9 +218,7 @@ public class GenAnalyses extends DepthFirstAdapter ...@@ -220,9 +218,7 @@ public class GenAnalyses extends DepthFirstAdapter
{ {
try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "DepthFirstAdapter.java")))) try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "DepthFirstAdapter.java"))))
{ {
macros.apply(file, "DepthFirstAdapterHeader", new String[] {pkgName, macros.apply(file, "DepthFirstAdapterHeader", new String[] {pkgName, ast_ids.astIds.pkgNameDot, mainProduction});
ast_ids.astIds.pkgName.equals("") ? "node" : ast_ids.astIds.pkgName + ".node",
mainProduction});
for(AltInfo info : altList) for(AltInfo info : altList)
{ {
...@@ -271,9 +267,7 @@ public class GenAnalyses extends DepthFirstAdapter ...@@ -271,9 +267,7 @@ public class GenAnalyses extends DepthFirstAdapter
{ {
try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "ReversedDepthFirstAdapter.java")))) try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "ReversedDepthFirstAdapter.java"))))
{ {
macros.apply(file, "ReversedDepthFirstAdapterHeader", new String[] {pkgName, macros.apply(file, "ReversedDepthFirstAdapterHeader", new String[] {pkgName, ast_ids.astIds.pkgNameDot, mainProduction});
ast_ids.astIds.pkgName.equals("") ? "node" : ast_ids.astIds.pkgName + ".node",
mainProduction});
for(AltInfo info : altList) for(AltInfo info : altList)
{ {
......
...@@ -50,7 +50,7 @@ public class GenLexer extends AnalysisAdapter ...@@ -50,7 +50,7 @@ public class GenLexer extends AnalysisAdapter
} }
pkgDir = new File(ids.pkgDir, "lexer"); pkgDir = new File(ids.pkgDir, "lexer");
pkgName = ids.pkgName.equals("") ? "lexer" : ids.pkgName + ".lexer"; pkgName = ids.pkgNameDot + "lexer";
if(!pkgDir.exists()) if(!pkgDir.exists())
{ {
...@@ -134,9 +134,7 @@ public class GenLexer extends AnalysisAdapter ...@@ -134,9 +134,7 @@ public class GenLexer extends AnalysisAdapter
startState = ids.stateList.getFirst(); startState = ids.stateList.getFirst();
} }
macros.apply(file, "LexerHeader", new String[] {pkgName, macros.apply(file, "LexerHeader", new String[] {pkgName, ids.pkgNameDot, startState});
ids.pkgName.equals("") ? "node" : ids.pkgName + ".node",
startState});
for(ListIterator<String> i = ids.tokenList.listIterator(); i.hasNext();) for(ListIterator<String> i = ids.tokenList.listIterator(); i.hasNext();)
{ {
......
...@@ -116,7 +116,7 @@ public class GenParser extends DepthFirstAdapter ...@@ -116,7 +116,7 @@ public class GenParser extends DepthFirstAdapter
} }
pkgDir = new File(ids.pkgDir, "parser"); pkgDir = new File(ids.pkgDir, "parser");
pkgName = ids.pkgName.equals("") ? "parser" : ids.pkgName + ".parser"; pkgName = ids.pkgNameDot + "parser";
if(!pkgDir.exists()) if(!pkgDir.exists())
{ {
...@@ -374,10 +374,7 @@ public class GenParser extends DepthFirstAdapter ...@@ -374,10 +374,7 @@ public class GenParser extends DepthFirstAdapter
Symbol[] nonterminals = Symbol.nonterminals(); Symbol[] nonterminals = Symbol.nonterminals();
Production[] productions = Production.productions(); Production[] productions = Production.productions();
macros.apply(file, "ParserHeader", new String[] {pkgName, macros.apply(file, "ParserHeader", new String[] {pkgName, ids.pkgNameDot});
ids.pkgName.equals("") ? "lexer" : ids.pkgName + ".lexer",
ids.pkgName.equals("") ? "node" : ids.pkgName + ".node",
});
if(activateFilter && !grammarHasTransformations) if(activateFilter && !grammarHasTransformations)
{ {
...@@ -735,9 +732,7 @@ public class GenParser extends DepthFirstAdapter ...@@ -735,9 +732,7 @@ public class GenParser extends DepthFirstAdapter
{ {
Symbol[] terminals = Symbol.terminals(); Symbol[] terminals = Symbol.terminals();
macros.apply(file, "TokenIndexHeader", new String[] {pkgName, macros.apply(file, "TokenIndexHeader", new String[] {pkgName, ids.pkgNameDot});
ids.pkgName.equals("") ? "node" : ids.pkgName + ".node",
ids.pkgName.equals("") ? "analysis" : ids.pkgName + ".analysis"});
for(int i = 0; i < (terminals.length - 2); i++) for(int i = 0; i < (terminals.length - 2); i++)
{ {
...@@ -757,8 +752,7 @@ public class GenParser extends DepthFirstAdapter ...@@ -757,8 +752,7 @@ public class GenParser extends DepthFirstAdapter
{ {
try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "ParserException.java")))) try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "ParserException.java"))))
{ {
macros.apply(file, "ParserException", new String[] {pkgName, macros.apply(file, "ParserException", new String[] {pkgName, ids.pkgNameDot});
ids.pkgName.equals("") ? "node" : ids.pkgName + ".node"});
} }
catch(IOException e) catch(IOException e)
{ {
......
...@@ -39,7 +39,7 @@ public class GenProds extends DepthFirstAdapter ...@@ -39,7 +39,7 @@ public class GenProds extends DepthFirstAdapter
} }
pkgDir = new File(ast_ids.astIds.pkgDir, "node"); pkgDir = new File(ast_ids.astIds.pkgDir, "node");
pkgName = ast_ids.astIds.pkgName.equals("") ? "node" : ast_ids.astIds.pkgName + ".node"; pkgName = ast_ids.astIds.pkgNameDot + "node";
if(!pkgDir.exists()) if(!pkgDir.exists())
{ {
......
...@@ -43,7 +43,7 @@ public class GenTokens extends DepthFirstAdapter ...@@ -43,7 +43,7 @@ public class GenTokens extends DepthFirstAdapter
} }
pkgDir = new File(ids.pkgDir, "node"); pkgDir = new File(ids.pkgDir, "node");
pkgName = ids.pkgName.equals("") ? "node" : ids.pkgName + ".node"; pkgName = ids.pkgNameDot + "node";
if(!pkgDir.exists()) if(!pkgDir.exists())
{ {
...@@ -101,17 +101,13 @@ public class GenTokens extends DepthFirstAdapter ...@@ -101,17 +101,13 @@ public class GenTokens extends DepthFirstAdapter
{ {
ids.fixedTokens.put(node, false); ids.fixedTokens.put(node, false);
macros.apply(file, "VariableTextToken", new String[] { pkgName, macros.apply(file, "VariableTextToken", new String[] {pkgName, ids.pkgNameDot, name});
ids.pkgName.equals("") ? "analysis" : ids.pkgName + ".analysis",
name});
} }
else else
{ {
ids.fixedTokens.put(node, true); ids.fixedTokens.put(node, true);
macros.apply(file, "FixedTextToken", new String[] { pkgName, macros.apply(file, "FixedTextToken", new String[] {pkgName, ids.pkgNameDot, name, processText(text)});
ids.pkgName.equals("") ? "analysis" : ids.pkgName + ".analysis",
name, processText(text)});
ids.errorNames.put(node, "'" + text + "'"); ids.errorNames.put(node, "'" + text + "'");
} }
......
...@@ -41,7 +41,7 @@ public class GenUtils extends DepthFirstAdapter ...@@ -41,7 +41,7 @@ public class GenUtils extends DepthFirstAdapter
} }
pkgDir = new File(ast_ids.astIds.pkgDir, "node"); pkgDir = new File(ast_ids.astIds.pkgDir, "node");
pkgName = ast_ids.astIds.pkgName.equals("") ? "node" : ast_ids.astIds.pkgName + ".node"; pkgName = ast_ids.astIds.pkgNameDot + "node";
if(!pkgDir.exists()) if(!pkgDir.exists())
{ {
...@@ -92,8 +92,7 @@ public class GenUtils extends DepthFirstAdapter ...@@ -92,8 +92,7 @@ public class GenUtils extends DepthFirstAdapter
{ {
try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "Start.java")))) try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "Start.java"))))
{ {
macros.apply(file, "Start", new String[] {pkgName, macros.apply(file, "Start", new String[] {pkgName, ast_ids.astIds.pkgNameDot,
ast_ids.astIds.pkgName.equals("") ? "analysis" : ast_ids.astIds.pkgName + ".analysis",
mainProduction, GenAlts.nodeName(mainProduction)}); mainProduction, GenAlts.nodeName(mainProduction)});
} }
catch(IOException e) catch(IOException e)
...@@ -107,8 +106,7 @@ public class GenUtils extends DepthFirstAdapter ...@@ -107,8 +106,7 @@ public class GenUtils extends DepthFirstAdapter
{ {
try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "EOF.java")))) try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "EOF.java"))))
{ {
macros.apply(file, "EOF", new String[] {pkgName, macros.apply(file, "EOF", new String[] {pkgName, ast_ids.astIds.pkgNameDot});
ast_ids.astIds.pkgName.equals("") ? "analysis" : ast_ids.astIds.pkgName + ".analysis"});
} }
catch(IOException e) catch(IOException e)
{ {
...@@ -121,8 +119,7 @@ public class GenUtils extends DepthFirstAdapter ...@@ -121,8 +119,7 @@ public class GenUtils extends DepthFirstAdapter
{ {
try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "Node.java")))) try(BufferedWriter file = new BufferedWriter(new FileWriter(new File(pkgDir, "Node.java"))))
{ {
macros.apply(file, "Node", new String[] {pkgName, macros.apply(file, "Node", new String[] {pkgName});
ast_ids.astIds.pkgName.equals("") ? "analysis" : ast_ids.astIds.pkgName + ".analysis"});
} }
catch(IOException e) catch(IOException e)
{ {
......
...@@ -46,6 +46,8 @@ public class ResolveIds extends DepthFirstAdapter ...@@ -46,6 +46,8 @@ public class ResolveIds extends DepthFirstAdapter
public final LinkedList<String> stateList = new LinkedList<>(); public final LinkedList<String> stateList = new LinkedList<>();
public File pkgDir; public File pkgDir;
public String pkgName = ""; public String pkgName = "";
// pkgNameDot has a dot appended if non-empty.
public String pkgNameDot = "";
private boolean processingStates; private boolean processingStates;
private boolean processingIgnTokens; private boolean processingIgnTokens;
...@@ -75,6 +77,8 @@ public class ResolveIds extends DepthFirstAdapter ...@@ -75,6 +77,8 @@ public class ResolveIds extends DepthFirstAdapter
pkgDir = new File(pkgDir, temp[i].getText()); pkgDir = new File(pkgDir, temp[i].getText());
} }
pkgNameDot = pkgName + ".";
if(!pkgDir.exists()) if(!pkgDir.exists())
{ {
if(!pkgDir.mkdirs()) if(!pkgDir.mkdirs())
......
...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node; ...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node;
import org.sablecc.sablecc.analysis.*; import org.sablecc.sablecc.analysis.*;
public final class EOF extends Token public final class EOF extends Token
{ {
public EOF() public EOF()
......
...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node; ...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node;
import org.sablecc.sablecc.analysis.*; import org.sablecc.sablecc.analysis.*;
public final class TAbstract extends Token public final class TAbstract extends Token
{ {
public TAbstract() public TAbstract()
......
...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node; ...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node;
import org.sablecc.sablecc.analysis.*; import org.sablecc.sablecc.analysis.*;
public final class TArrow extends Token public final class TArrow extends Token
{ {
public TArrow() public TArrow()
......
...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node; ...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node;
import org.sablecc.sablecc.analysis.*; import org.sablecc.sablecc.analysis.*;
public final class TBar extends Token public final class TBar extends Token
{ {
public TBar() public TBar()
......
...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node; ...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node;
import org.sablecc.sablecc.analysis.*; import org.sablecc.sablecc.analysis.*;
public final class TBlank extends Token public final class TBlank extends Token
{ {
public TBlank(String text) public TBlank(String text)
......
...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node; ...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node;
import org.sablecc.sablecc.analysis.*; import org.sablecc.sablecc.analysis.*;
public final class TChar extends Token public final class TChar extends Token
{ {
public TChar(String text) public TChar(String text)
......
...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node; ...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node;
import org.sablecc.sablecc.analysis.*; import org.sablecc.sablecc.analysis.*;
public final class TColon extends Token public final class TColon extends Token
{ {
public TColon() public TColon()
......
...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node; ...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node;
import org.sablecc.sablecc.analysis.*; import org.sablecc.sablecc.analysis.*;
public final class TComma extends Token public final class TComma extends Token
{ {
public TComma() public TComma()
......
...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node; ...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node;
import org.sablecc.sablecc.analysis.*; import org.sablecc.sablecc.analysis.*;
public final class TComment extends Token public final class TComment extends Token
{ {
public TComment(String text) public TComment(String text)
......
...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node; ...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node;
import org.sablecc.sablecc.analysis.*; import org.sablecc.sablecc.analysis.*;
public final class TDDot extends Token public final class TDDot extends Token
{ {
public TDDot() public TDDot()
......
...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node; ...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node;
import org.sablecc.sablecc.analysis.*; import org.sablecc.sablecc.analysis.*;
public final class TDecChar extends Token public final class TDecChar extends Token
{ {
public TDecChar(String text) public TDecChar(String text)
......
...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node; ...@@ -4,7 +4,6 @@ package org.sablecc.sablecc.node;
import org.sablecc.sablecc.analysis.*; import org.sablecc.sablecc.analysis.*;
public final class TDot extends Token public final class TDot extends Token
{ {
public TDot() public TDot()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment