-
Notifications
You must be signed in to change notification settings - Fork 16
/
Copy pathtokens.ts
52 lines (49 loc) · 849 Bytes
/
tokens.ts
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
enum NumberToken {
ZERO = '0',
ONE = '1',
TWO = '2',
THREE = '3',
FOUR = '4',
FIVE = '5',
SIX = '6',
SEVEN = '7',
EIGHT = '8',
NINE = '9',
MINUS = '-',
DOT = '.',
SMALL_EXPONENT = 'e',
CAPITAL_EXPONENT = 'E',
PLUS = '+'
}
enum EscapeToken {
QUOTE = '"',
REVERSE_SOLIDUS = '\\',
SOLIDUS = '/',
BACKSPACE = 'b',
FORM_FEED = 'f',
LINE_FEED = 'n',
CAR_RETURN = 'r',
HORIZONTAL_TAB = 't',
HEX = 'u'
}
enum Token {
BEGIN_OBJECT = '{',
END_OBJECT = '}',
BEGIN_TRUE = 't',
BEGIN_FALSE = 'f',
BEGIN_NULL = 'n',
BEGIN_ARRAY = '[',
END_ARRAY = ']',
COMMA = ',',
QUOTE = '"',
MINUS = '-',
SEMI_COLON = ':',
ESCAPE = '\\',
BACKSPACE = '\b',
FORM_FEED = '\f',
LINE_FEED = '\n',
CAR_RETURN = '\r',
HORIZONTAL_TAB = '\t',
HEX = 'u'
}
export { Token, NumberToken, EscapeToken };