add undefined reserved word
This commit is contained in:
parent
b61406b607
commit
72fa03bada
@ -143,7 +143,7 @@ GotoExpression: "goto" "Symbol"
|
||||
|
||||
GroupedExpression : "(" Expression ")"
|
||||
|
||||
KeywordLiteral : "true" | "false" | "null" | "break" | "continue"
|
||||
KeywordLiteral : "true" | "false" | "null" | "break" | "continue" | "undefined"
|
||||
```
|
||||
|
||||
## Operator Precedence
|
||||
@ -216,10 +216,23 @@ A slice can be obtained with the slicing syntax: `array[start...end]`
|
||||
|
||||
Example: `"aoeu"[0...2]` has type `[]u8`.
|
||||
|
||||
### Struct Types
|
||||
### Struct Type
|
||||
TODO
|
||||
|
||||
### Pointer Types
|
||||
### Enum Type
|
||||
|
||||
TODO
|
||||
|
||||
### Maybe Type
|
||||
|
||||
TODO
|
||||
|
||||
### Error Type
|
||||
|
||||
TODO
|
||||
|
||||
### Pointer Type
|
||||
|
||||
TODO
|
||||
|
||||
### Unreachable Type
|
||||
|
@ -13,7 +13,7 @@ syn keyword zigStatement goto break return continue asm
|
||||
syn keyword zigConditional if else switch
|
||||
syn keyword zigRepeat while for
|
||||
|
||||
syn keyword zigConstant null
|
||||
syn keyword zigConstant null undefined
|
||||
syn keyword zigKeyword fn import
|
||||
syn keyword zigType bool i8 u8 i16 u16 i32 u32 i64 u64 isize usize f32 f64 f128 void unreachable type
|
||||
|
||||
|
@ -245,6 +245,8 @@ static void end_token(Tokenize *t) {
|
||||
t->cur_tok->id = TokenIdKeywordNoAlias;
|
||||
} else if (mem_eql_str(token_mem, token_len, "switch")) {
|
||||
t->cur_tok->id = TokenIdKeywordSwitch;
|
||||
} else if (mem_eql_str(token_mem, token_len, "undefined")) {
|
||||
t->cur_tok->id = TokenIdKeywordUndefined;
|
||||
}
|
||||
|
||||
t->cur_tok = nullptr;
|
||||
@ -1043,6 +1045,7 @@ const char * token_name(TokenId id) {
|
||||
case TokenIdKeywordNull: return "null";
|
||||
case TokenIdKeywordNoAlias: return "noalias";
|
||||
case TokenIdKeywordSwitch: return "switch";
|
||||
case TokenIdKeywordUndefined: return "undefined";
|
||||
case TokenIdLParen: return "(";
|
||||
case TokenIdRParen: return ")";
|
||||
case TokenIdComma: return ",";
|
||||
|
@ -37,6 +37,7 @@ enum TokenId {
|
||||
TokenIdKeywordNull,
|
||||
TokenIdKeywordNoAlias,
|
||||
TokenIdKeywordSwitch,
|
||||
TokenIdKeywordUndefined,
|
||||
TokenIdLParen,
|
||||
TokenIdRParen,
|
||||
TokenIdComma,
|
||||
|
Loading…
x
Reference in New Issue
Block a user