diff options
| author | Ginger Bill <bill@gingerbill.org> | 2017-01-27 16:34:58 +0000 |
|---|---|---|
| committer | Ginger Bill <bill@gingerbill.org> | 2017-01-27 16:34:58 +0000 |
| commit | 832009f33acc573d44dd9dfb470ad8fef72216ff (patch) | |
| tree | b34120bf3d81739d7f516efb54235aaa2d15d04e /src/tokenizer.c | |
| parent | d3d3bfd4557c23da58a33066c4a7e5042435829d (diff) | |
`in` keyword for `for` and `match type`
Diffstat (limited to 'src/tokenizer.c')
| -rw-r--r-- | src/tokenizer.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/src/tokenizer.c b/src/tokenizer.c index 79cdda258..c21c09942 100644 --- a/src/tokenizer.c +++ b/src/tokenizer.c @@ -75,7 +75,7 @@ TOKEN_KIND(Token__ComparisonEnd, "_ComparisonEnd"), \ TOKEN_KIND(Token_Semicolon, ";"), \ TOKEN_KIND(Token_Period, "."), \ TOKEN_KIND(Token_Comma, ","), \ - TOKEN_KIND(Token_Ellipsis, "..."), \ + TOKEN_KIND(Token_Ellipsis, ".."), \ TOKEN_KIND(Token_HalfOpenRange, "..<"), \ TOKEN_KIND(Token__OperatorEnd, "_OperatorEnd"), \ \ @@ -94,6 +94,7 @@ TOKEN_KIND(Token__KeywordBegin, "_KeywordBegin"), \ TOKEN_KIND(Token_else, "else"), \ TOKEN_KIND(Token_while, "while"), \ TOKEN_KIND(Token_for, "for"), \ + TOKEN_KIND(Token_in, "in"), \ TOKEN_KIND(Token_when, "when"), \ TOKEN_KIND(Token_range, "range"), \ TOKEN_KIND(Token_defer, "defer"), \ @@ -845,14 +846,10 @@ Token tokenizer_get_token(Tokenizer *t) { case '.': token.kind = Token_Period; // Default - /* if (gb_is_between(t->curr_rune, '0', '9')) { // Might be a number - token = scan_number_to_token(t, true); - } else */ if (t->curr_rune == '.') { // Could be an ellipsis + if (t->curr_rune == '.') { // Could be an ellipsis advance_to_next_rune(t); - if (t->curr_rune == '.') { - advance_to_next_rune(t); - token.kind = Token_Ellipsis; - } else if (t->curr_rune == '<') { + token.kind = Token_Ellipsis; + if (t->curr_rune == '<') { advance_to_next_rune(t); token.kind = Token_HalfOpenRange; } |