diff options
author | Ian Moffett <ian@osmora.org> | 2025-09-30 23:21:18 -0400 |
---|---|---|
committer | Ian Moffett <ian@osmora.org> | 2025-09-30 23:21:18 -0400 |
commit | 9745e110b69bcf7e32896c444ddc4acd9ed0f8bf (patch) | |
tree | a7831c2e55463fc438cd0b036803491993452dae /src/sys/np | |
parent | 2cf918c3e20164559f1bae5fbd83fb7a40e2190a (diff) |
lex: np: Add lexer arithmetic operators
Signed-off-by: Ian Moffett <ian@osmora.org>
Diffstat (limited to 'src/sys/np')
-rw-r--r-- | src/sys/np/core/np_lex.c | 18 | ||||
-rw-r--r-- | src/sys/np/core/np_parse.c | 6 |
2 files changed, 24 insertions, 0 deletions
diff --git a/src/sys/np/core/np_lex.c b/src/sys/np/core/np_lex.c index f870c0c..6e252a3 100644 --- a/src/sys/np/core/np_lex.c +++ b/src/sys/np/core/np_lex.c @@ -197,6 +197,24 @@ lex_nom(struct np_work *work, struct lex_token *res) case '*': res->token = TT_STAR; break; + case '-': + res->token = TT_MINUS; + break; + case '+': + res->token = TT_PLUS; + break; + case '/': + res->token = TT_SLASH; + break; + case '=': + res->token = TT_EQUALS; + break; + case '>': + res->token = TT_GT; + break; + case '<': + res->token = TT_LT; + break; default: /* Stuff like '1var_name' is invalid */ if (!is_alpha(c)) { diff --git a/src/sys/np/core/np_parse.c b/src/sys/np/core/np_parse.c index 1959b1b..165fed5 100644 --- a/src/sys/np/core/np_parse.c +++ b/src/sys/np/core/np_parse.c @@ -46,6 +46,12 @@ static const char *stoktab[] = { [TT_IDENT] = "<IDENTIFIER>", [TT_COMMA] = "<TT_COMMA>", [TT_STAR] = "<TT_STAR>", + [TT_MINUS] = "<TT_MINUS>", + [TT_PLUS] = "<TT_PLUS>", + [TT_SLASH] = "<TT_SLASH>", + [TT_EQUALS] = "<TT_EQUALS>", + [TT_GT] = "<TT_GREATER>", + [TT_LT] = "<TT_LESSTHAN>", /* Types */ [TT_U8] = "<TT_U8>", |