diff --git a/src/main/java/Main.java b/src/main/java/Main.java
index acea692..6f6517f 100644
--- a/src/main/java/Main.java
+++ b/src/main/java/Main.java
@@ -19,7 +19,7 @@ public class Main {
System.out.println("Main file has args: " + args[0]);
} else {
try {
- CharStream codeCharStream = CharStreams.fromPath(Paths.get("src/main/resources/CompilerInput.java"));
+ CharStream codeCharStream = CharStreams.fromPath(Paths.get("src/main/resources/input/CompilerInput.java"));
parseFile(codeCharStream);
} catch (IOException e) {
System.err.println("Error reading the file: " + e.getMessage());
@@ -78,7 +78,6 @@ public class Main {
ByteCodeGenerator byteCodeGenerator = new ByteCodeGenerator();
byteCodeGenerator.visit(typedAst);
System.out.println("Bytecode generated");
-
}
diff --git a/src/main/java/bytecode/ClassCodeGen.java b/src/main/java/bytecode/ClassCodeGen.java
index 6bddd61..d91b17b 100644
--- a/src/main/java/bytecode/ClassCodeGen.java
+++ b/src/main/java/bytecode/ClassCodeGen.java
@@ -52,7 +52,7 @@ public class ClassCodeGen implements ClassVisitor {
}
private void printIntoClassFile(byte[] byteCode, String name) {
- String directoryPath = "src/main/resources/classFileOutput";
+ String directoryPath = "src/main/resources/output";
File directory = new File(directoryPath);
if (!directory.exists()) {
directory.mkdirs();
diff --git a/src/main/resources/CompilerInput.java b/src/main/resources/input/CompilerInput.java
similarity index 100%
rename from src/main/resources/CompilerInput.java
rename to src/main/resources/input/CompilerInput.java
diff --git a/src/test/Makefile b/src/test/Makefile
index da39d6b..68b9dd2 100644
--- a/src/test/Makefile
+++ b/src/test/Makefile
@@ -5,7 +5,7 @@
all: delete compile-javac compile-raupenpiler
compile-javac:
- javac -d .\resources\output\javac .\resources\CompilerInput.java
+ javac -d .\resources\output\javac .\resources\input\CompilerInput.java
compile-raupenpiler:
## funktioniert bisher nicht, das will die Klasse nicht laden, der traditionelle Weg findet externe Libraries (antlr) nicht, maven hat andere Probleme
@@ -19,6 +19,5 @@ delete:
rm -f ./resources/output/javac/*.class
rm -f ./resources/output/raupenpiler/*.class
rm -f ./java/*.class
- rm -f ../main/resources/classFileOutput/*.class
-
+ rm -f ../main/resources/output/*.class
diff --git a/src/test/java/TestCompilerOutput.java b/src/test/java/TestCompilerOutput.java
index cf6aac0..567ebde 100644
--- a/src/test/java/TestCompilerOutput.java
+++ b/src/test/java/TestCompilerOutput.java
@@ -1,16 +1,18 @@
/**
* This class is used to test the output of the compiler.
- *
- * Im gleichen Ordner wie die diese Datei (TestCompilerOutput.java) muss die selbstkompilierte CompilerInput.java Datei sein.
- * --->>>> Diese muss man also vom Ordner classFileOutput in diesen ordner hier (test/java) rein kopieren. (bis es eine bessere Lösung gibt) <<<<---
- * Die selbstkompilierte .class Datei wird dann hier drin geladen und eine Instanz von ihr erstellt, es können auch Methoden aufgerufen werden.
- * Diese TestCompilerOutput.java Datei wird dann mit "javac .\TestCompilerOutput.java" kompiliert und mit "java TestCompilerOutput" ausgeführt.
+ *
+ *
Im gleichen Ordner wie diese Datei (TestCompilerOutput.java) muss die selbstkompilierte CompilerInput.java Datei sein.
+ *
Hinweis: Diese muss man also vom Ordner classFileOutput in diesen Ordner hier (test/java) rein kopieren. (bis es eine bessere Lösung gibt)
+ *
+ * Die selbstkompilierte .class Datei wird dann hier drin geladen und eine Instanz von ihr erstellt, es können auch Methoden aufgerufen werden.
+ *
Diese TestCompilerOutput.java Datei wird dann in \src\test\java>
mit javac .\TestCompilerOutput.java
kompiliert und mit java TestCompilerOutput
ausgeführt.
* Wenn unser Compiler funktioniert, sollten keine Errors kommen (sondern nur die Ausgaben, die wir in der CompilerInput.java Datei gemacht haben,
- * oder Methoden, die wir hier aufrufen).
- * PROBLEM: hier kommen errors, was eigentlich heißt, dass der Compiler nicht funktioniert, der der Test sollt eigentlich passen
+ * oder Methoden, die wir hier aufrufen).
+ *
+ * PROBLEM: Hier kommen Errors, was eigentlich heißt, dass der Compiler nicht funktioniert, der Test sollte eigentlich passen.
+ *
DENN: Wenn ich statt unserem CompilerInput.class die CompilerInput.class von javac verwende (aus src/test/resources/output/javac
), dann funktioniert es.
*/
public class TestCompilerOutput {
-
public static void main(String[] args) {
try {
// Try to load the class named "CompilerInput"
diff --git a/src/test/resources/AllFeaturesClassExample.java b/src/test/resources/input/AllFeaturesClassExample.java
similarity index 100%
rename from src/test/resources/AllFeaturesClassExample.java
rename to src/test/resources/input/AllFeaturesClassExample.java
diff --git a/src/test/resources/CombinedExample.java b/src/test/resources/input/CombinedExample.java
similarity index 100%
rename from src/test/resources/CombinedExample.java
rename to src/test/resources/input/CombinedExample.java
diff --git a/src/test/resources/CompilerInput.java b/src/test/resources/input/CompilerInput.java
similarity index 50%
rename from src/test/resources/CompilerInput.java
rename to src/test/resources/input/CompilerInput.java
index 91b2625..d850a3e 100644
--- a/src/test/resources/CompilerInput.java
+++ b/src/test/resources/input/CompilerInput.java
@@ -5,5 +5,12 @@ public class CompilerInput {
public static int testMethod(char x){
return 0;
}
+
+ public class Test {
+
+ public static int testMethod(char x, int a){
+ return 0;
+ }
+ }
}
diff --git a/src/test/resources/MoreFeaturesClassExample.java b/src/test/resources/input/MoreFeaturesClassExample.java
similarity index 100%
rename from src/test/resources/MoreFeaturesClassExample.java
rename to src/test/resources/input/MoreFeaturesClassExample.java
diff --git a/src/test/resources/failureTests/TestClass1.java b/src/test/resources/input/failureTests/TestClass1.java
similarity index 100%
rename from src/test/resources/failureTests/TestClass1.java
rename to src/test/resources/input/failureTests/TestClass1.java
diff --git a/src/test/resources/failureTests/TestClass10.java b/src/test/resources/input/failureTests/TestClass10.java
similarity index 100%
rename from src/test/resources/failureTests/TestClass10.java
rename to src/test/resources/input/failureTests/TestClass10.java
diff --git a/src/test/resources/failureTests/TestClass11.java b/src/test/resources/input/failureTests/TestClass11.java
similarity index 100%
rename from src/test/resources/failureTests/TestClass11.java
rename to src/test/resources/input/failureTests/TestClass11.java
diff --git a/src/test/resources/failureTests/TestClass2.java b/src/test/resources/input/failureTests/TestClass2.java
similarity index 100%
rename from src/test/resources/failureTests/TestClass2.java
rename to src/test/resources/input/failureTests/TestClass2.java
diff --git a/src/test/resources/failureTests/TestClass3.java b/src/test/resources/input/failureTests/TestClass3.java
similarity index 100%
rename from src/test/resources/failureTests/TestClass3.java
rename to src/test/resources/input/failureTests/TestClass3.java
diff --git a/src/test/resources/failureTests/TestClass4.java b/src/test/resources/input/failureTests/TestClass4.java
similarity index 100%
rename from src/test/resources/failureTests/TestClass4.java
rename to src/test/resources/input/failureTests/TestClass4.java
diff --git a/src/test/resources/failureTests/TestClass5.java b/src/test/resources/input/failureTests/TestClass5.java
similarity index 100%
rename from src/test/resources/failureTests/TestClass5.java
rename to src/test/resources/input/failureTests/TestClass5.java
diff --git a/src/test/resources/failureTests/TestClass6.java b/src/test/resources/input/failureTests/TestClass6.java
similarity index 100%
rename from src/test/resources/failureTests/TestClass6.java
rename to src/test/resources/input/failureTests/TestClass6.java
diff --git a/src/test/resources/failureTests/TestClass7.java b/src/test/resources/input/failureTests/TestClass7.java
similarity index 100%
rename from src/test/resources/failureTests/TestClass7.java
rename to src/test/resources/input/failureTests/TestClass7.java
diff --git a/src/test/resources/failureTests/TestClass8.java b/src/test/resources/input/failureTests/TestClass8.java
similarity index 100%
rename from src/test/resources/failureTests/TestClass8.java
rename to src/test/resources/input/failureTests/TestClass8.java
diff --git a/src/test/resources/failureTests/TestClass9.java b/src/test/resources/input/failureTests/TestClass9.java
similarity index 100%
rename from src/test/resources/failureTests/TestClass9.java
rename to src/test/resources/input/failureTests/TestClass9.java
diff --git a/src/test/resources/featureTests/BooleanOperations.java b/src/test/resources/input/featureTests/BooleanOperations.java
similarity index 100%
rename from src/test/resources/featureTests/BooleanOperations.java
rename to src/test/resources/input/featureTests/BooleanOperations.java
diff --git a/src/test/resources/featureTests/CharManipulation.java b/src/test/resources/input/featureTests/CharManipulation.java
similarity index 100%
rename from src/test/resources/featureTests/CharManipulation.java
rename to src/test/resources/input/featureTests/CharManipulation.java
diff --git a/src/test/resources/featureTests/ConditionalStatements.java b/src/test/resources/input/featureTests/ConditionalStatements.java
similarity index 100%
rename from src/test/resources/featureTests/ConditionalStatements.java
rename to src/test/resources/input/featureTests/ConditionalStatements.java
diff --git a/src/test/resources/featureTests/LoopExamples.java b/src/test/resources/input/featureTests/LoopExamples.java
similarity index 100%
rename from src/test/resources/featureTests/LoopExamples.java
rename to src/test/resources/input/featureTests/LoopExamples.java
diff --git a/src/test/resources/featureTests/MethodOverloading.java b/src/test/resources/input/featureTests/MethodOverloading.java
similarity index 100%
rename from src/test/resources/featureTests/MethodOverloading.java
rename to src/test/resources/input/featureTests/MethodOverloading.java