diff options
author | Bad Diode <bd@badd10de.dev> | 2022-02-01 18:36:52 +0100 |
---|---|---|
committer | Bad Diode <bd@badd10de.dev> | 2022-02-01 18:36:52 +0100 |
commit | ee1a5de91c875fb66724dc21c02333bfebe2a812 (patch) | |
tree | d3eaa226816d295bb9dc48a2aed27044832ec413 /src/bytecode/errors.h | |
parent | 3156265c7b2da8cc43fee996c0518ea274d39c8a (diff) | |
download | bdl-ee1a5de91c875fb66724dc21c02333bfebe2a812.tar.gz bdl-ee1a5de91c875fb66724dc21c02333bfebe2a812.zip |
Add new syntax to lexer and prepare refactor
Diffstat (limited to 'src/bytecode/errors.h')
-rwxr-xr-x | src/bytecode/errors.h | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/src/bytecode/errors.h b/src/bytecode/errors.h deleted file mode 100755 index 8f4386e..0000000 --- a/src/bytecode/errors.h +++ /dev/null | |||
@@ -1,46 +0,0 @@ | |||
1 | #ifndef BDL_ERRORS_H | ||
2 | #define BDL_ERRORS_H | ||
3 | |||
4 | typedef enum ErrorType { | ||
5 | ERR_TYPE_OK, | ||
6 | ERR_TYPE_LEXER, | ||
7 | ERR_TYPE_PARSER, | ||
8 | ERR_TYPE_COMPILER, | ||
9 | ERR_TYPE_RUNTIME, | ||
10 | } ErrorType; | ||
11 | |||
12 | typedef enum ErrorValue { | ||
13 | ERR_UNKNOWN = 0, | ||
14 | ERR_UNMATCHED_STRING, | ||
15 | ERR_UNBALANCED_PAREN, | ||
16 | ERR_NOT_IMPLEMENTED, | ||
17 | ERR_EOF_REACHED, | ||
18 | ERR_UNKNOWN_TOKEN, | ||
19 | ERR_UNKNOWN_OBJ_TYPE, | ||
20 | ERR_NOT_A_SYMBOL, | ||
21 | ERR_SYMBOL_NOT_FOUND, | ||
22 | ERR_OBJ_NOT_CALLABLE, | ||
23 | ERR_NOT_ENOUGH_ARGS, | ||
24 | ERR_TOO_MANY_ARGS, | ||
25 | ERR_WRONG_ARG_TYPE, | ||
26 | ERR_DIVISION_BY_ZERO, | ||
27 | ERR_AMBIGUOUS_PARAMS, | ||
28 | |||
29 | // Bytecode interpreter. | ||
30 | ERR_PC_OOB, | ||
31 | ERR_EMPTY_CHUNK, | ||
32 | } ErrorValue; | ||
33 | |||
34 | typedef struct Error { | ||
35 | ErrorType type; | ||
36 | ErrorValue value; | ||
37 | size_t line; | ||
38 | size_t col; | ||
39 | } Error; | ||
40 | |||
41 | void error_push(Error error); | ||
42 | void report_errors(char *file_name); | ||
43 | |||
44 | #define ERR_MAX_NUMBER 16 | ||
45 | |||
46 | #endif // BDL_ERRORS_H | ||