From eb05c2dd956b7e991f52eb5c7f03a0f11b7f1f33 Mon Sep 17 00:00:00 2001 From: GeonoTRON2000 Date: Tue, 29 Apr 2014 07:13:20 -0700 Subject: Pushed existing work --- .../org/archphantom/shenanigans/Shenanigans.java | 55 ++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 Shenanigans/src/org/archphantom/shenanigans/Shenanigans.java (limited to 'Shenanigans/src/org/archphantom/shenanigans/Shenanigans.java') diff --git a/Shenanigans/src/org/archphantom/shenanigans/Shenanigans.java b/Shenanigans/src/org/archphantom/shenanigans/Shenanigans.java new file mode 100644 index 0000000..c516de0 --- /dev/null +++ b/Shenanigans/src/org/archphantom/shenanigans/Shenanigans.java @@ -0,0 +1,55 @@ +package org.archphantom.shenanigans; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.util.ArrayList; + +public class Shenanigans { + private static final String HELP_STRING = "############################### Shenanigans Help ###############################\r\n" + + "# #" + + "# : parse from standard input as Shenanigans code #" + + "# -h or --HELP: display this help message #" + + "# -f or --FILE : parse this file as Shenanigans code #" + + "# #" + + "################################################################################"; + + public static void main (String[] args) { + try { + boolean usefiles = false; + ArrayList streams = new ArrayList(); + for (int i = 0; i < args.length; i++) { + if (args[i].equals("-h") || args[i].equalsIgnoreCase("--help")) { + System.out.println(HELP_STRING); + return; + } + if ((args[i].equals("-f") || args[i].equalsIgnoreCase("--file")) && (i+1) < args.length) { + streams.add(new FileInputStream(args[i+1])); + usefiles = true; + } + } + if (usefiles) { + parse(streams.toArray(new InputStream[] {})); + } else { + parse(System.in); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + + public static void parse (InputStream[] streams) throws IOException { + for (InputStream stream : streams) { + parse(stream); + } + } + + public static void parse (InputStream stream) throws IOException { + String data = ""; + int b; + while ((b = stream.read()) != -1) { + data += (char) b; + } + //ShenaniganParser.parse(data); + } + +} -- cgit v1.2.3