summaryrefslogtreecommitdiff
path: root/dice-lang/src/bjc/dicelang/CLIArgsParser.java
diff options
context:
space:
mode:
authorEVE <EVE@EVE-PC>2017-03-13 16:41:45 -0400
committerEVE <EVE@EVE-PC>2017-03-13 16:41:45 -0400
commit01136c6796e21f023713e026674576d8e623462d (patch)
treee77886fe0e0adaf3c0430fba9ce248ef83f74fe4 /dice-lang/src/bjc/dicelang/CLIArgsParser.java
parent870d769cfc152171d27b2331a7c590d0b307ad48 (diff)
Formatting
Diffstat (limited to 'dice-lang/src/bjc/dicelang/CLIArgsParser.java')
-rw-r--r--dice-lang/src/bjc/dicelang/CLIArgsParser.java141
1 files changed, 78 insertions, 63 deletions
diff --git a/dice-lang/src/bjc/dicelang/CLIArgsParser.java b/dice-lang/src/bjc/dicelang/CLIArgsParser.java
index de92ff1..702d20c 100644
--- a/dice-lang/src/bjc/dicelang/CLIArgsParser.java
+++ b/dice-lang/src/bjc/dicelang/CLIArgsParser.java
@@ -10,66 +10,77 @@ import static bjc.dicelang.Errors.ErrorKey.*;
public class CLIArgsParser {
public static boolean parseArgs(String[] args, DiceLangEngine eng) {
- if(args.length < 0) return true;
+ if (args.length < 0)
+ return true;
- if(args.length == 1 && (args[0].equals("--help") || args[0].equals("-h"))) {
+ if (args.length == 1 && (args[0].equals("--help") || args[0].equals("-h"))) {
/*
* @TODO show help
*/
System.exit(0);
}
- for(int i = 0; i < args.length; i++) {
+ for (int i = 0; i < args.length; i++) {
String arg = args[i];
boolean succ = true;
- switch(arg) {
- case "-d":
- case "--debug":
- if(!eng.toggleDebug()) eng.toggleDebug();
- break;
- case "-nd":
- case "--no-debug":
- if(eng.toggleDebug()) eng.toggleDebug();
- break;
- case "-po":
- case "--postfix":
- if(!eng.togglePostfix()) eng.togglePostfix();
- break;
- case "-npo":
- case "--no-postfix":
- if(eng.togglePostfix()) eng.togglePostfix();
- break;
- case "-pr":
- case "--prefix":
- if(!eng.togglePrefix()) eng.togglePrefix();
- break;
- case "-npr":
- case "--no-prefix":
- if(eng.togglePrefix()) eng.togglePrefix();
- break;
- case "-se":
- case "--stepeval":
- if(!eng.toggleStepEval()) eng.toggleStepEval();
- break;
- case "-nse":
- case "--no-stepeval":
- if(eng.toggleStepEval()) eng.toggleStepEval();
- break;
- case "-D":
- case "--define":
- i = simpleDefine(i, args, eng);
- if(i == -1) return false;
- break;
- case "-df":
- case "--define-file":
- i = defineFile(i, args, eng);
- if(i == -1) return false;
- break;
- default:
- Errors.inst.printError(EK_CLI_UNARG, arg);
+ switch (arg) {
+ case "-d":
+ case "--debug":
+ if (!eng.toggleDebug())
+ eng.toggleDebug();
+ break;
+ case "-nd":
+ case "--no-debug":
+ if (eng.toggleDebug())
+ eng.toggleDebug();
+ break;
+ case "-po":
+ case "--postfix":
+ if (!eng.togglePostfix())
+ eng.togglePostfix();
+ break;
+ case "-npo":
+ case "--no-postfix":
+ if (eng.togglePostfix())
+ eng.togglePostfix();
+ break;
+ case "-pr":
+ case "--prefix":
+ if (!eng.togglePrefix())
+ eng.togglePrefix();
+ break;
+ case "-npr":
+ case "--no-prefix":
+ if (eng.togglePrefix())
+ eng.togglePrefix();
+ break;
+ case "-se":
+ case "--stepeval":
+ if (!eng.toggleStepEval())
+ eng.toggleStepEval();
+ break;
+ case "-nse":
+ case "--no-stepeval":
+ if (eng.toggleStepEval())
+ eng.toggleStepEval();
+ break;
+ case "-D":
+ case "--define":
+ i = simpleDefine(i, args, eng);
+ if (i == -1)
return false;
+ break;
+ case "-df":
+ case "--define-file":
+ i = defineFile(i, args, eng);
+ if (i == -1)
+ return false;
+ break;
+ default:
+ Errors.inst.printError(EK_CLI_UNARG, arg);
+ return false;
}
}
@@ -77,47 +88,51 @@ public class CLIArgsParser {
}
private static int simpleDefine(int i, String[] args, DiceLangEngine eng) {
- if(i >= (args.length - 1)) {
+ if (i >= (args.length - 1)) {
Errors.inst.printError(EK_CLI_MISARG, "define");
return -1;
}
- if(i >= (args.length - 2)) {
+ if (i >= (args.length - 2)) {
Define dfn = new Define(5, false, false, false, null, args[i + 1], Arrays.asList(""));
-
- if(dfn.inError) return -1;
+
+ if (dfn.inError)
+ return -1;
eng.addLineDefine(dfn);
return i + 1;
}
Define dfn = new Define(5, false, false, false, null, args[i + 1], Arrays.asList(args[i + 2]));
- if(dfn.inError) return -1;
+ if (dfn.inError)
+ return -1;
eng.addLineDefine(dfn);
return i + 2;
}
private static int defineFile(int i, String[] args, DiceLangEngine eng) {
- if(i >= (args.length - 1)) {
+ if (i >= (args.length - 1)) {
Errors.inst.printError(EK_CLI_MISARG, "define-file");
return -1;
}
String fName = args[i + 1];
- try(FileInputStream fis = new FileInputStream(fName)) {
- try(Scanner scan = new Scanner(fis)) {
- while(scan.hasNextLine()) {
+ try (FileInputStream fis = new FileInputStream(fName)) {
+ try (Scanner scan = new Scanner(fis)) {
+ while (scan.hasNextLine()) {
String ln = scan.nextLine();
-
+
Define dfn = parseDefine(ln.substring(ln.indexOf(' ')));
- if(dfn == null || dfn.inError) return -1;
-
- if(ln.startsWith("line")) {
+ if (dfn == null || dfn.inError)
+ return -1;
+
+ if (ln.startsWith("line")) {
eng.addLineDefine(dfn);
- } else if(ln.startsWith("token")) {
+ } else if (ln.startsWith("token")) {
eng.addTokenDefine(dfn);
} else {
- Errors.inst.printError(EK_CLI_INVDFNTYPE, ln.substring(0, ln.indexOf(' ')));
+ Errors.inst.printError(EK_CLI_INVDFNTYPE,
+ ln.substring(0, ln.indexOf(' ')));
return -1;
}
}