summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'ast-to-instr/src')
-rw-r--r--ast-to-instr/src/Main.java11
-rw-r--r--ast-to-instr/src/OutputFile.java8
-rw-r--r--ast-to-instr/src/Parameters.java18
3 files changed, 24 insertions, 13 deletions
diff --git a/ast-to-instr/src/Main.java b/ast-to-instr/src/Main.java
index 0e24f57..4f33ae1 100644
--- a/ast-to-instr/src/Main.java
+++ b/ast-to-instr/src/Main.java
@@ -55,11 +55,7 @@ public class Main
return;
}
- MAIN_OUTPUT =
- OutputFile.new_output_file
- (
- PARAMETERS.get_main_output_filename()
- );
+ MAIN_OUTPUT = OutputFile.new_output_file("structural.mod");
try
{
@@ -176,4 +172,9 @@ public class Main
{
return MAIN_OUTPUT;
}
+
+ public static Parameters get_parameters ()
+ {
+ return PARAMETERS;
+ }
}
diff --git a/ast-to-instr/src/OutputFile.java b/ast-to-instr/src/OutputFile.java
index 42a6ad5..201ca2b 100644
--- a/ast-to-instr/src/OutputFile.java
+++ b/ast-to-instr/src/OutputFile.java
@@ -26,7 +26,13 @@ public class OutputFile
{
final OutputFile result;
- result = new OutputFile(filename);
+ result =
+ new OutputFile
+ (
+ Main.get_parameters().get_output_directory()
+ + "/"
+ + filename
+ );
ALL_OUTPUT_FILES.add(result);
diff --git a/ast-to-instr/src/Parameters.java b/ast-to-instr/src/Parameters.java
index 0407bb4..a7552d8 100644
--- a/ast-to-instr/src/Parameters.java
+++ b/ast-to-instr/src/Parameters.java
@@ -4,6 +4,7 @@ import java.util.ArrayList;
public class Parameters
{
private final String xml_file;
+ private final String output_dir;
private final boolean are_valid;
@@ -13,27 +14,30 @@ public class Parameters
(
"AST-to-Instr\n"
+ "USAGE:\n"
- + "\tjava Main <XML_FILE>\n"
+ + "\tjava Main <XML_FILE> <OUTPUT_DIR>\n"
+ "PARAMETERS:\n"
- + "\t- <XML_FILE>\tThe AST (XML format)."
+ + "\t- <XML_FILE>\tThe AST (XML format).\n"
+ + "\t- <OUTPUT_DIR>\tThe output directory (must already exist)."
);
}
public Parameters (String... args)
{
- if (args.length != 1)
+ if (args.length != 2)
{
print_usage();
xml_file = new String();
+ output_dir = new String();
are_valid = false;
return;
}
- are_valid = true;
-
xml_file = args[0];
+ output_dir = args[1];
+
+ are_valid = true;
}
public String get_xml_file ()
@@ -41,9 +45,9 @@ public class Parameters
return xml_file;
}
- public String get_main_output_filename()
+ public String get_output_directory ()
{
- return "structural.mod";
+ return output_dir;
}
public boolean are_valid ()