@@ -39,6 +39,7 @@ pub const Token = struct {
3939 Keyword { .bytes = "noalias" , .id = Id .Keyword_noalias },
4040 Keyword { .bytes = "null" , .id = Id .Keyword_null },
4141 Keyword { .bytes = "or" , .id = Id .Keyword_or },
42+ Keyword { .bytes = "orelse" , .id = Id .Keyword_orelse },
4243 Keyword { .bytes = "packed" , .id = Id .Keyword_packed },
4344 Keyword { .bytes = "promise" , .id = Id .Keyword_promise },
4445 Keyword { .bytes = "pub" , .id = Id .Keyword_pub },
@@ -129,7 +130,6 @@ pub const Token = struct {
129130 Ampersand ,
130131 AmpersandEqual ,
131132 QuestionMark ,
132- QuestionMarkQuestionMark ,
133133 AngleBracketLeft ,
134134 AngleBracketLeftEqual ,
135135 AngleBracketAngleBracketLeft ,
@@ -171,6 +171,7 @@ pub const Token = struct {
171171 Keyword_noalias ,
172172 Keyword_null ,
173173 Keyword_or ,
174+ Keyword_orelse ,
174175 Keyword_packed ,
175176 Keyword_promise ,
176177 Keyword_pub ,
@@ -254,7 +255,6 @@ pub const Tokenizer = struct {
254255 Ampersand ,
255256 Caret ,
256257 Percent ,
257- QuestionMark ,
258258 Plus ,
259259 PlusPercent ,
260260 AngleBracketLeft ,
@@ -345,6 +345,11 @@ pub const Tokenizer = struct {
345345 self .index += 1 ;
346346 break ;
347347 },
348+ '?' = > {
349+ result .id = Token .Id .QuestionMark ;
350+ self .index += 1 ;
351+ break ;
352+ },
348353 ':' = > {
349354 result .id = Token .Id .Colon ;
350355 self .index += 1 ;
@@ -359,9 +364,6 @@ pub const Tokenizer = struct {
359364 '+' = > {
360365 state = State .Plus ;
361366 },
362- '?' = > {
363- state = State .QuestionMark ;
364- },
365367 '<' = > {
366368 state = State .AngleBracketLeft ;
367369 },
@@ -496,18 +498,6 @@ pub const Tokenizer = struct {
496498 },
497499 },
498500
499- State .QuestionMark = > switch (c ) {
500- '?' = > {
501- result .id = Token .Id .QuestionMarkQuestionMark ;
502- self .index += 1 ;
503- break ;
504- },
505- else = > {
506- result .id = Token .Id .QuestionMark ;
507- break ;
508- },
509- },
510-
511501 State .Percent = > switch (c ) {
512502 '=' = > {
513503 result .id = Token .Id .PercentEqual ;
@@ -1084,9 +1074,6 @@ pub const Tokenizer = struct {
10841074 State .Plus = > {
10851075 result .id = Token .Id .Plus ;
10861076 },
1087- State .QuestionMark = > {
1088- result .id = Token .Id .QuestionMark ;
1089- },
10901077 State .Percent = > {
10911078 result .id = Token .Id .Percent ;
10921079 },
0 commit comments