From e89bd4a3413c50423f8987d6244ef630fb5f9b8f Mon Sep 17 00:00:00 2001 From: Lukas Krickl Date: Mon, 16 Mar 2026 14:07:40 +0100 Subject: [PATCH] script: Added identifier name parser --- src/l_lsl.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/l_lsl.c b/src/l_lsl.c index 6b9ee4c..c6b8fc8 100644 --- a/src/l_lsl.c +++ b/src/l_lsl.c @@ -64,6 +64,12 @@ lrts_bool l_lsl_isoct(char c) { return c >= '0' && c <= '7'; } +lrts_bool l_lsl_isident(char c) { + return (c >= 'a' && c <= 'z') + || (c >= 'A' && c <= 'Z') + || c == '_' || l_lsl_isnum(c); +} + /* peeks current token */ #define l_lsl_lex_peek(v, code) \ (code)[v->lex_pos] @@ -143,6 +149,8 @@ struct l_lsl_value* l_lsl_next_token(struct l_lsl_vm *v, const char *code, value->data.int_val = u_strtol(tokbuf, LRTS_NULL, 10); } + } else if (l_lsl_isident(c)) { + /* identifier */ } else { l_lsl_err(v, L_LSL_ERR_LEX, "unknown char: %c\n", c); return LRTS_NULL; -- 2.30.2