-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtoken_type.go
More file actions
53 lines (50 loc) · 1.33 KB
/
token_type.go
File metadata and controls
53 lines (50 loc) · 1.33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
package main
type TokenType string
const (
// Single-character tokens.
LEFT_PAREN TokenType = "LEFT_PAREN"
RIGHT_PAREN TokenType = "RIGHT_PAREN"
LEFT_BRACE TokenType = "LEFT_BRACE"
RIGHT_BRACE TokenType = "RIGHT_BRACE"
COMMA TokenType = "COMMA"
DOT TokenType = "DOT"
MINUS TokenType = "MINUS"
PLUS TokenType = "PLUS"
SEMICOLON TokenType = "SEMICOLON"
SLASH TokenType = "SLASH"
STAR TokenType = "STAR"
// One or two character tokens.
BANG TokenType = "BANG"
BANG_EQUAL TokenType = "BANG_EQUAL"
EQUAL TokenType = "EQUAL"
EQUAL_EQUAL TokenType = "EQUAL_EQUAL"
GREATER TokenType = "GREATER"
GREATER_EQUAL TokenType = "GREATER_EQUAL"
LESS TokenType = "LESS"
LESS_EQUAL TokenType = "LESS_EQUAL"
// Literals.
IDENTIFIER TokenType = "IDENTIFIER"
STRING TokenType = "STRING"
NUMBER TokenType = "NUMBER"
// Keywords.
AND TokenType = "AND"
CLASS TokenType = "CLASS"
ELSE TokenType = "ELSE"
FALSE TokenType = "FALSE"
FUN TokenType = "FUN"
FOR TokenType = "FOR"
IF TokenType = "IF"
NIL TokenType = "NIL"
OR TokenType = "OR"
PRINT TokenType = "PRINT"
RETURN TokenType = "RETURN"
SUPER TokenType = "SUPER"
THIS TokenType = "THIS"
TRUE TokenType = "TRUE"
VAR TokenType = "VAR"
WHILE TokenType = "WHILE"
EOF TokenType = "EOF"
)
func (t TokenType) String() string {
return string(t)
}