-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathBasicExpression.interp
More file actions
131 lines (127 loc) · 4.01 KB
/
BasicExpression.interp
File metadata and controls
131 lines (127 loc) · 4.01 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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
token literal names:
null
'*'
'/'
'DIV'
'+'
'-'
'^'
'MOD'
'<>'
'>='
'<='
'>'
'<'
'='
null
null
null
','
'('
')'
'['
']'
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
null
'$'
null
null
token symbolic names:
null
MUL
DIV
IDIV
ADD
SUB
EXP
MOD
NEQ
GTE
LTE
GT
LT
EQ
AND
OR
NOT
COMMA
LPAREN
RPAREN
LPARENSQ
RPARENSQ
LEN
VAL
ISNAN
RAND
SWAP
PRINT
INPUT
LET
DIM
INDEX
REM
IF
THEN
ELSE
END
SUBROUTINE
FOR
WHILE
REPEAT
UNTIL
STEP
NEXT
TO
CONTINUE
EXIT
COMMENT
ID
NUMBER
FLOAT
STRINGLITERAL
DOLLAR
NEWLINE
WS
rule names:
prog
stat
expression
func
string
number
float
id
lenfunc
valfunc
isnanfunc
randfunc
atn:
[4, 1, 54, 116, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4, 7, 4, 2, 5, 7, 5, 2, 6, 7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 2, 10, 7, 10, 2, 11, 7, 11, 1, 0, 4, 0, 26, 8, 0, 11, 0, 12, 0, 27, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 34, 8, 1, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 3, 2, 50, 8, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 5, 2, 75, 8, 2, 10, 2, 12, 2, 78, 9, 2, 1, 3, 1, 3, 1, 3, 1, 3, 3, 3, 84, 8, 3, 1, 4, 1, 4, 1, 5, 1, 5, 1, 6, 1, 6, 1, 7, 1, 7, 1, 8, 1, 8, 1, 8, 1, 8, 1, 8, 1, 9, 1, 9, 1, 9, 1, 9, 1, 9, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1, 11, 1, 11, 1, 11, 1, 11, 1, 11, 1, 11, 1, 11, 1, 11, 0, 1, 4, 12, 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 0, 3, 2, 0, 1, 3, 7, 7, 1, 0, 4, 5, 1, 0, 8, 13, 122, 0, 25, 1, 0, 0, 0, 2, 33, 1, 0, 0, 0, 4, 49, 1, 0, 0, 0, 6, 83, 1, 0, 0, 0, 8, 85, 1, 0, 0, 0, 10, 87, 1, 0, 0, 0, 12, 89, 1, 0, 0, 0, 14, 91, 1, 0, 0, 0, 16, 93, 1, 0, 0, 0, 18, 98, 1, 0, 0, 0, 20, 103, 1, 0, 0, 0, 22, 108, 1, 0, 0, 0, 24, 26, 3, 2, 1, 0, 25, 24, 1, 0, 0, 0, 26, 27, 1, 0, 0, 0, 27, 25, 1, 0, 0, 0, 27, 28, 1, 0, 0, 0, 28, 1, 1, 0, 0, 0, 29, 30, 3, 4, 2, 0, 30, 31, 5, 53, 0, 0, 31, 34, 1, 0, 0, 0, 32, 34, 5, 53, 0, 0, 33, 29, 1, 0, 0, 0, 33, 32, 1, 0, 0, 0, 34, 3, 1, 0, 0, 0, 35, 36, 6, 2, -1, 0, 36, 37, 5, 5, 0, 0, 37, 50, 3, 4, 2, 15, 38, 50, 3, 8, 4, 0, 39, 50, 3, 10, 5, 0, 40, 50, 3, 12, 6, 0, 41, 50, 3, 6, 3, 0, 42, 50, 3, 14, 7, 0, 43, 44, 5, 18, 0, 0, 44, 45, 3, 4, 2, 0, 45, 46, 5, 19, 0, 0, 46, 50, 1, 0, 0, 0, 47, 48, 5, 16, 0, 0, 48, 50, 3, 4, 2, 4, 49, 35, 1, 0, 0, 0, 49, 38, 1, 0, 0, 0, 49, 39, 1, 0, 0, 0, 49, 40, 1, 0, 0, 0, 49, 41, 1, 0, 0, 0, 49, 42, 1, 0, 0, 0, 49, 43, 1, 0, 0, 0, 49, 47, 1, 0, 0, 0, 50, 76, 1, 0, 0, 0, 51, 52, 10, 7, 0, 0, 52, 53, 7, 0, 0, 0, 53, 75, 3, 4, 2, 8, 54, 55, 10, 6, 0, 0, 55, 56, 7, 1, 0, 0, 56, 75, 3, 4, 2, 7, 57, 58, 10, 5, 0, 0, 58, 59, 7, 2, 0, 0, 59, 75, 3, 4, 2, 6, 60, 61, 10, 3, 0, 0, 61, 62, 5, 14, 0, 0, 62, 75, 3, 4, 2, 4, 63, 64, 10, 2, 0, 0, 64, 65, 5, 15, 0, 0, 65, 75, 3, 4, 2, 3, 66, 67, 10, 1, 0, 0, 67, 68, 5, 6, 0, 0, 68, 75, 3, 4, 2, 1, 69, 70, 10, 8, 0, 0, 70, 71, 5, 20, 0, 0, 71, 72, 3, 4, 2, 0, 72, 73, 5, 21, 0, 0, 73, 75, 1, 0, 0, 0, 74, 51, 1, 0, 0, 0, 74, 54, 1, 0, 0, 0, 74, 57, 1, 0, 0, 0, 74, 60, 1, 0, 0, 0, 74, 63, 1, 0, 0, 0, 74, 66, 1, 0, 0, 0, 74, 69, 1, 0, 0, 0, 75, 78, 1, 0, 0, 0, 76, 74, 1, 0, 0, 0, 76, 77, 1, 0, 0, 0, 77, 5, 1, 0, 0, 0, 78, 76, 1, 0, 0, 0, 79, 84, 3, 16, 8, 0, 80, 84, 3, 18, 9, 0, 81, 84, 3, 20, 10, 0, 82, 84, 3, 22, 11, 0, 83, 79, 1, 0, 0, 0, 83, 80, 1, 0, 0, 0, 83, 81, 1, 0, 0, 0, 83, 82, 1, 0, 0, 0, 84, 7, 1, 0, 0, 0, 85, 86, 5, 51, 0, 0, 86, 9, 1, 0, 0, 0, 87, 88, 5, 49, 0, 0, 88, 11, 1, 0, 0, 0, 89, 90, 5, 50, 0, 0, 90, 13, 1, 0, 0, 0, 91, 92, 5, 48, 0, 0, 92, 15, 1, 0, 0, 0, 93, 94, 5, 22, 0, 0, 94, 95, 5, 18, 0, 0, 95, 96, 3, 4, 2, 0, 96, 97, 5, 19, 0, 0, 97, 17, 1, 0, 0, 0, 98, 99, 5, 23, 0, 0, 99, 100, 5, 18, 0, 0, 100, 101, 3, 4, 2, 0, 101, 102, 5, 19, 0, 0, 102, 19, 1, 0, 0, 0, 103, 104, 5, 24, 0, 0, 104, 105, 5, 18, 0, 0, 105, 106, 3, 4, 2, 0, 106, 107, 5, 19, 0, 0, 107, 21, 1, 0, 0, 0, 108, 109, 5, 25, 0, 0, 109, 110, 5, 18, 0, 0, 110, 111, 3, 4, 2, 0, 111, 112, 5, 17, 0, 0, 112, 113, 3, 4, 2, 0, 113, 114, 5, 19, 0, 0, 114, 23, 1, 0, 0, 0, 6, 27, 33, 49, 74, 76, 83]