From 8f84c00978dc05007873a9fe1de6a18511dc3cf8 Mon Sep 17 00:00:00 2001 From: Jan Tuomi Date: Tue, 28 Jun 2016 21:09:43 +0300 Subject: Restructure project for use with maven --- main/Main.java | 86 ---------------------------------------------------------- 1 file changed, 86 deletions(-) delete mode 100644 main/Main.java (limited to 'main/Main.java') diff --git a/main/Main.java b/main/Main.java deleted file mode 100644 index 77c2f51..0000000 --- a/main/Main.java +++ /dev/null @@ -1,86 +0,0 @@ -package com.jantuomi.interpreter.main; - -import com.jantuomi.interpreter.main.core.CommandLineArgumentContainer; -import com.jantuomi.interpreter.main.core.parser.ASTGenerator; -import com.jantuomi.interpreter.main.core.parser.Parser; -import com.jantuomi.interpreter.main.core.parser.ast.ASTNode; -import com.jantuomi.interpreter.main.core.runtime.Interpreter; -import com.jantuomi.interpreter.main.core.tokenizer.Tokenizer; -import com.jantuomi.interpreter.main.core.tokenizer.token.Token; -import com.jantuomi.interpreter.main.exception.InterpreterException; -import org.kohsuke.args4j.CmdLineException; -import org.kohsuke.args4j.CmdLineParser; - -import java.util.Collections; -import java.util.List; -import java.util.Scanner; - -public class Main { - - public static void main(String[] args) throws Exception { - boolean parseSuccess = parseArguments(args); - if (!parseSuccess) { - throw new Exception("Argument files could not be parsed successfully."); - } - - if (CommandLineArgumentContainer.getInstance().isInteractive()) { - repl(); - } else { - String sourceFileContents = CommandLineArgumentContainer.getInstance().getSourceFileContents(); - run(sourceFileContents); - } - } - - public static void repl() { - Scanner scanner = new Scanner(System.in); - String input; - while (true) { - System.out.print(">> "); - input = scanner.nextLine(); - - try { - run(input); - } catch (InterpreterException e) { - e.printStackTrace(); - } - } - } - - public static void run(String input) throws InterpreterException { - Tokenizer tokenizer = Tokenizer.getInstance(); - List sequence = tokenizer.tokenize(input); - - Collections.reverse(sequence); - - List trees = Parser.getInstance().parse(sequence); - if (CommandLineArgumentContainer.getInstance().isDebugModeActive()) { - Parser.getInstance().printAllTrees(trees); - } - - List nodes = ASTGenerator.getInstance().generate(trees); - if (CommandLineArgumentContainer.getInstance().isDebugModeActive()) { - ASTGenerator.getInstance().printAllTrees(nodes); - } - - String output = Interpreter.execute(nodes); - - if (output.trim().length() > 0) { - System.out.println(output); - } - } - - public static boolean parseArguments(String[] args) { - CommandLineArgumentContainer container = CommandLineArgumentContainer.getInstance(); - CmdLineParser parser = new CmdLineParser(container); - - try { - parser.parseArgument(args); - } catch (CmdLineException e) { - System.err.println(e.getMessage()); - parser.printUsage(System.err); - return false; - } - - return true; - } -} -- cgit v1.3