summaryrefslogtreecommitdiff
path: root/dice-lang/src/bjc/dicelang/v2/Errors.java
diff options
context:
space:
mode:
authorbjculkin <bjculkin@WIT-136XG42.wvu-ad.wvu.edu>2017-03-01 10:13:41 -0500
committerbjculkin <bjculkin@WIT-136XG42.wvu-ad.wvu.edu>2017-03-01 10:13:41 -0500
commit36e0911c6ec27707a74f0b90b1052a16374243ea (patch)
tree08ca7723b0c0a6a7f3ce1830c59e5211e46168b8 /dice-lang/src/bjc/dicelang/v2/Errors.java
parent6ed83507953322c35a456d64d89f8f4f9cb0a6a1 (diff)
Package reorganization
Diffstat (limited to 'dice-lang/src/bjc/dicelang/v2/Errors.java')
-rw-r--r--dice-lang/src/bjc/dicelang/v2/Errors.java245
1 files changed, 0 insertions, 245 deletions
diff --git a/dice-lang/src/bjc/dicelang/v2/Errors.java b/dice-lang/src/bjc/dicelang/v2/Errors.java
deleted file mode 100644
index 6ad74ab..0000000
--- a/dice-lang/src/bjc/dicelang/v2/Errors.java
+++ /dev/null
@@ -1,245 +0,0 @@
-package bjc.dicelang.v2;
-
-public class Errors {
- public static enum ErrorKey {
- // Define Errors
- // Incorrect define guard syntax
- EK_DFN_PREDSYN,
- // Incorrect define search syntax
- EK_DFN_SRCSYN,
- // Recursive define recursed too many times
- EK_DFN_RECUR,
-
- // Console Errors
- // Unknown console pragma
- EK_CONS_INVPRAG,
- // Improperly formatted define
- EK_CONS_INVDEFINE,
-
- // Language Engine Errors
- // Found closing doublebrace w/out opening doublebrace
- EK_ENG_NOOPENING,
- // Reached end of command w/out balanced doublebraces
- EK_ENG_NOCLOSING,
-
- // Tokenizer Errors
- // Found an unexpected grouping token
- EK_TOK_UNGROUP,
- // Invalid base for a flexadecimal number
- EK_TOK_INVBASE,
- // Invalid flexadecimal number in a given base
- EK_TOK_INVFLEX,
-
- // Evaluator Errors
- // Unknown node type
- EK_EVAL_INVNODE,
- // Incorrect # of args to binary operator
- EK_EVAL_INVBIN,
- // Incorrect # of args to unary operator
- EK_EVAL_INVUNARY,
- // Unknown binary operator
- EK_EVAL_UNBIN,
- // Unknown unary operator
- EK_EVAL_UNUNARY,
- // Math on strings doesn't work
- EK_EVAL_STRINGMATH,
- // Attempted divide by zero
- EK_EVAL_DIVZERO,
- // Attempted to divide dice
- EK_EVAL_DIVDICE,
- // Unknown math operator
- EK_EVAL_UNMATH,
- // Unknown token reference
- EK_EVAL_UNTOK,
- // Unknown dice operator
- EK_EVAL_UNDICE,
- // Incorrect type to dice group operator
- EK_EVAL_INVDGROUP,
- // Incorrect type to other dice operator
- EK_EVAL_INVDICE,
- // Mismatched types to math operator
- EK_EVAL_MISMATH,
-
- // Parser Error
- // Group closing where there couldn't be an opener
- EK_PARSE_NOCLOSE,
- // Group closing without group opener
- EK_PARSE_UNCLOSE,
- // Incorrect # of arguments to binary operator
- EK_PARSE_BINARY,
- // Not enough operands to binary operator
- EK_PARSE_UNOPERAND,
- // Unrecognized token type
- EK_PARSE_INVTOKEN,
-
- // Shunter Error
- // Unary operator expected a operand, but got an operator
- EK_SHUNT_NOTADV,
- // Unary operator expected an operator, but got an operand
- EK_SHUNT_NOTADJ,
- // Unary operator expected an operator, but didn't find one
- EK_SHUNT_NOOP,
- // Asked for opening grouping operator, but couldn't find one
- EK_SHUNT_NOGROUP,
- // No group for group seperator to attach to
- EK_SHUNT_INVSEP,
-
- // Stream Errors
- // Attempted to switch to a non-existant stream
- EK_STRM_NONEX,
- // Can't delete the last stream
- EK_STRM_LAST,
- // Unknown stream command
- EK_STRM_INVCOM,
-
- }
-
- public static enum ErrorMode {
- WIZARD, DEV
- }
-
- private ErrorMode mode;
-
- public void printError(ErrorKey key, String... args) {
- switch(mode) {
- case WIZARD:
- System.out.println("\t? " + key.ordinal());
- break;
- case DEV:
- devError(key, args);
- break;
- default:
- System.out.println("\tERROR ERROR: Unknown error mode " + mode);
- }
- }
-
- private void devError(ErrorKey key, String[] args) {
- switch(key) {
- case EK_DFN_PREDSYN:
- System.out.printf("\tERROR: Incorrect define guard syntax %s\n", args[0]);
- break;
- case EK_DFN_SRCSYN:
- System.out.printf("\tERROR: Incorrect define match syntax %s\n", args[0]);
- break;
- case EK_DFN_RECUR:
- System.out.printf("\tERROR: Recursive define didn't converge after %s iterations."
- + " Original string was %s, last iteration was %s\n",
- args[0], args[1], args[2]);
- break;
- case EK_CONS_INVPRAG:
- System.out.printf("\tERROR: Unknown pragma %s\n", args[0]);
- break;
- case EK_CONS_INVDEFINE:
- System.out.printf("\tERROR: Improperly formatted define %s\n", args[0]);
- break;
- case EK_ENG_NOOPENING:
- System.out.printf("\tERROR: Encountered closing doublebrace without"
- + " matching opening doublebrace\n");
- break;
- case EK_ENG_NOCLOSING:
- System.out.printf("\tERROR: Reached end of string before closing doublebrace was found\n");
- break;
- case EK_TOK_UNGROUP:
- System.out.printf("\tERROR: Unrecognized grouping token %s\n", args[0]);
- break;
- case EK_TOK_INVBASE:
- System.out.printf("\tERROR: Invalid flexadecimal base %s\n", args[0]);
- break;
- case EK_TOK_INVFLEX:
- System.out.printf("\tERROR: Invalid flexadecimal number %s in base %s\n", args[0], args[1]);
- break;
- case EK_EVAL_INVNODE:
- System.out.printf("\tERROR: Unknown node in evaluator: %s\n", args[0]);
- break;
- case EK_EVAL_INVBIN:
- System.out.printf("\tERROR: Binary operators take 2 operand, not %s\n"
- + "\tProblem node is %s\n", args[0], args[1]);
- break;
- case EK_EVAL_UNBIN:
- System.out.printf("\tERROR: Unknown binary operator %s\n", args[0]);
- break;
- case EK_EVAL_STRINGMATH:
- System.out.printf("\tERROR: Math operators don't work on strings\n");
- break;
- case EK_EVAL_DIVZERO:
- System.out.printf("\tERROR: Attempted divide by zero\n");
- break;
- case EK_EVAL_DIVDICE:
- System.out.printf("\tERROR: Dice cannot be divided\n");
- break;
- case EK_EVAL_UNMATH:
- System.out.printf("\tERROR: Unknown math binary operator: %s\n", args[0]);
- break;
- case EK_EVAL_UNTOK:
- System.out.printf("\tERROR: Unknown token ref %s\n", args[0]);
- break;
- case EK_EVAL_UNDICE:
- System.out.printf("\tERROR: Unknown dice operator %s\n", args[0]);
- break;
- case EK_EVAL_INVDGROUP:
- System.out.printf("\tERROR: Dice group operator expects scalar dice or integers,"
- + " not %s\n", args[0]);
- break;
- case EK_EVAL_INVDICE:
- System.out.printf("\tERROR: Dice operators expect scalar dice, not %s\n", args[0]);
- break;
- case EK_EVAL_MISMATH:
- System.out.printf("\tERROR: Math operators expect two operands of the same type\n");
- break;
- case EK_PARSE_NOCLOSE:
- System.out.printf("\tERROR: Group closing with no possible group opener\n");
- break;
- case EK_PARSE_UNCLOSE:
- System.out.printf("\tERROR: Found group closer without opener: (closing was %s"
- + ", expected %s)\n", args[0], args[1]);
- break;
- case EK_PARSE_BINARY:
- System.out.printf("\tERROR: Expected at least two operands\n");
- break;
- case EK_PARSE_UNOPERAND:
- System.out.printf("\tERROR: Operator %s expected more operands than provided\n", args[0]);
- break;
- case EK_PARSE_INVTOKEN:
- System.out.printf("\tERROR: Unrecognized token type in parsing: %s\n", args[0]);
- break;
- case EK_SHUNT_NOTADV:
- System.out.printf("\tERROR: Unary operator %s is an adjective, not an adverb. It can't be"
- + " applied to the operator %s\n", args[0], args[1]);
- break;
- case EK_SHUNT_NOTADJ:
- System.out.printf("\tERROR: Unary operator %s is an adjective, not an adverb. It can't be"
- + " applied to the operator %s\n", args[0], args[1]);
- break;
- case EK_SHUNT_NOOP:
- System.out.printf("\tERROR: Unary operator %s is an adverb, but there is no operator"
- + " to apply it to\n", args[0]);
- break;
- case EK_SHUNT_NOGROUP:
- System.out.printf("\tERROR: Couldn't find matching grouping %s (expected %s)\n",
- args[0], args[1]);
- break;
- case EK_SHUNT_INVSEP:
- System.out.printf("\tERROR: Couldn't find grouper for group seperator to attach to\n");
- break;
- case EK_STRM_NONEX:
- System.out.printf("\tERROR: Attempted to switch to non-existent stream\n");
- break;
- case EK_STRM_LAST:
- System.out.printf("\tERROR: Cannot delete last stream\n");
- break;
- case EK_STRM_INVCOM:
- System.out.printf("\tERROR: Unknown stream control command %s\n", args[0]);
- break;
- default:
- System.out.printf("\tERROR ERROR: Unknown error key %s\n", key);
- }
- }
-
- public final static Errors inst;
-
- static {
- inst = new Errors();
-
- inst.mode = ErrorMode.DEV;
- }
-}