feat: lexer support for loops keywords

This commit is contained in:
Gu://em_ 2026-01-30 22:55:07 +01:00
parent d6e6bfacf2
commit 9e522b2a68

View file

@ -72,6 +72,16 @@ static void set_token_keyword(struct token *tok, char *begin, ssize_t size)
tok->type = TOKEN_ELSE; tok->type = TOKEN_ELSE;
else if (strncmp(begin, "elif", size) == 0 && size == 4) else if (strncmp(begin, "elif", size) == 0 && size == 4)
tok->type = TOKEN_ELIF; tok->type = TOKEN_ELIF;
else if (strncmp(begin, "for", size) == 0 && size == 3)
tok->type = TOKEN_FOR;
else if (strncmp(begin, "while", size) == 0 && size == 5)
tok->type = TOKEN_WHILE;
else if (strncmp(begin, "until", size) == 0 && size == 4)
tok->type = TOKEN_UNTIL;
else if (strncmp(begin, "do", size) == 0 && size == 2)
tok->type = TOKEN_DO;
else if (strncmp(begin, "done", size) == 0 && size == 4)
tok->type = TOKEN_DONE;
else if (strncmp(begin, "export", size) == 0 && size == 6) else if (strncmp(begin, "export", size) == 0 && size == 6)
tok->type = TOKEN_EXPORT; tok->type = TOKEN_EXPORT;