diff options
author | Carlos Maniero <carlosmaniero@gmail.com> | 2023-04-18 09:08:44 -0300 |
---|---|---|
committer | Johnny Richard <johnny@johnnyrichard.com> | 2023-04-18 17:07:07 +0200 |
commit | 4f85dcc986ffde45dda59ed0a64c075261ddbe07 (patch) | |
tree | b926009eb0686d9c87dfe5cce74a673ce3dfb0a0 /src/lexer.c | |
parent | e3761429de464c42cc2798dc858bf6b43883d9dc (diff) |
lexer: extract the lexer_drop_spaces
Extracted logic for skipping empty characters into a
separate function. No change in lexer behavior.
Signed-off-by: Carlos Maniero <carlosmaniero@gmail.com>
Reviewed-by: Johnny Richard <johnny@johnnyrichard.com>
Diffstat (limited to 'src/lexer.c')
-rw-r--r-- | src/lexer.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/lexer.c b/src/lexer.c index 00a186a..3e48fd5 100644 --- a/src/lexer.c +++ b/src/lexer.c @@ -46,7 +46,7 @@ lexer_define_literal_token_props(lexer_t *lexer, token_t *token, token_kind_t ki } void -lexer_next_token(lexer_t *lexer, token_t *token) +lexer_drop_spaces(lexer_t *lexer) { while (lexer_is_not_eof(lexer) && isspace(lexer_current_char(lexer))) { if (lexer_current_char(lexer) == '\n') { @@ -57,7 +57,12 @@ lexer_next_token(lexer_t *lexer, token_t *token) } lexer_drop_char(lexer); } +} +void +lexer_next_token(lexer_t *lexer, token_t *token) +{ + lexer_drop_spaces(lexer); if (lexer_is_not_eof(lexer) && isdigit(lexer_current_char(lexer))) { size_t begin = lexer->cur; |