diff options
Diffstat (limited to 'asm/parser.h')
-rw-r--r-- | asm/parser.h | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/asm/parser.h b/asm/parser.h index 09a11d4..9da1117 100644 --- a/asm/parser.h +++ b/asm/parser.h @@ -17,7 +17,20 @@ #include <vm/inst.h> -inst_t parse_next_inst(token_stream_t *); -inst_t *parse_stream(token_stream_t *, size_t *); +typedef enum +{ + PERR_OK = 0, + PERR_INTEGER_OVERFLOW, + PERR_NOT_A_NUMBER, + PERR_EXPECTED_TYPE, + PERR_EXPECTED_SYMBOL, + PERR_EXPECTED_OPERAND, + PERR_UNKNOWN_OPERATOR, +} perr_t; + +const char *perr_as_cstr(perr_t); + +perr_t parse_next_inst(token_stream_t *, inst_t *); +perr_t parse_stream(token_stream_t *, inst_t **, size_t *); #endif |