From d55d6734d9713ad76859aa9bc37244d8b47e71c3 Mon Sep 17 00:00:00 2001 From: Jakob Herrmann Date: Wed, 1 Feb 2017 12:32:20 +0100 Subject: [PATCH 1/2] JavaClassRegistry is now required for constructor. --- .../parser/SyntaxTreeGenerator.java | 20 ++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/src/de/dhbwstuttgart/parser/SyntaxTreeGenerator.java b/src/de/dhbwstuttgart/parser/SyntaxTreeGenerator.java index 8e01897e9..ee07357e0 100644 --- a/src/de/dhbwstuttgart/parser/SyntaxTreeGenerator.java +++ b/src/de/dhbwstuttgart/parser/SyntaxTreeGenerator.java @@ -10,18 +10,24 @@ import java.util.ArrayList; import java.util.List; import org.antlr.v4.runtime.tree.TerminalNode; public class SyntaxTreeGenerator{ - JavaClassRegistry reg = new JavaClassRegistry(); - String pkgName = null; - List imports = null; + private JavaClassRegistry reg; + private String pkgName = ""; + List imports = new ArrayList(); - public void getNames(Java8Parser.CompilationUnitContext ctx){ + public SyntaxTreeGenerator(JavaClassRegistry reg){ + this.reg = reg; + } + + public void setPackageName(Java8Parser.CompilationUnitContext ctx){ if(ctx.packageDeclaration() != null){ - this.pkgName = ""; for(TerminalNode t : ctx.packageDeclaration().Identifier()){ this.pkgName = this.pkgName + "." + t.toString(); } this.pkgName = this.pkgName.substring(1); } + } + + public void getNames(Java8Parser.CompilationUnitContext ctx){ String nameString = ""; for (Java8Parser.TypeDeclarationContext typeDecl : ctx.typeDeclaration()){ if(typeDecl.interfaceDeclaration() != null){ @@ -48,6 +54,10 @@ public class SyntaxTreeGenerator{ } } } + + public JavaClassRegistry getReg{ + return this.reg; + } public SourceFile convert(Java8Parser.CompilationUnitContext ctx){ List classes = new ArrayList<>(); From ade687483ccbeff4b20a9c792642595dfc8e4130 Mon Sep 17 00:00:00 2001 From: Jakob Herrmann Date: Wed, 1 Feb 2017 12:36:23 +0100 Subject: [PATCH 2/2] Fixed RunParser according to new constructor. --- src/de/dhbwstuttgart/parser/RunParser.java | 2 +- src/de/dhbwstuttgart/parser/SyntaxTreeGenerator.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/de/dhbwstuttgart/parser/RunParser.java b/src/de/dhbwstuttgart/parser/RunParser.java index b5118a92a..157857351 100644 --- a/src/de/dhbwstuttgart/parser/RunParser.java +++ b/src/de/dhbwstuttgart/parser/RunParser.java @@ -25,7 +25,7 @@ public class RunParser{ CommonTokenStream tokens = new CommonTokenStream(lexer); Java8Parser parser = new Java8Parser(tokens); Java8Parser.CompilationUnitContext tree = parser.compilationUnit(); - SyntaxTreeGenerator generator = new SyntaxTreeGenerator(); + SyntaxTreeGenerator generator = new SyntaxTreeGenerator(new JavaClassRegistry()); SourceFile f = generator.convert((Java8Parser.CompilationUnitContext) tree); String pkgName = f.getPkgName(); System.out.println(pkgName); diff --git a/src/de/dhbwstuttgart/parser/SyntaxTreeGenerator.java b/src/de/dhbwstuttgart/parser/SyntaxTreeGenerator.java index ee07357e0..ad8659ffb 100644 --- a/src/de/dhbwstuttgart/parser/SyntaxTreeGenerator.java +++ b/src/de/dhbwstuttgart/parser/SyntaxTreeGenerator.java @@ -55,7 +55,7 @@ public class SyntaxTreeGenerator{ } } - public JavaClassRegistry getReg{ + public JavaClassRegistry getReg(){ return this.reg; }