source
prog
defn
FUN
1:1-1:3
fun
ID
1:5-1:5
f
LBRACKET
1:6-1:6
(
ID
1:7-1:7
a
COLON
1:9-1:9
:
type
INT
1:11-1:13
int
COMMA
1:14-1:14
,
ID
1:16-1:16
b
COLON
1:18-1:18
:
type
INT
1:20-1:22
int
COMMA
1:23-1:23
,
ID
1:25-1:25
c
COLON
1:27-1:27
:
type
INT
1:29-1:31
int
RBRACKET
1:32-1:32
)
COLON
1:34-1:34
:
type
BOOL
1:36-1:39
bool
EQUALS
1:41-1:41
=
expr
expr
expr
expr
expr
NOT
1:43-1:45
not
expr
ID
1:47-1:47
a
PLUS
1:48-1:48
+
expr
expr
ID
1:49-1:49
b
ASTERISK
1:50-1:50
*
expr
ID
1:51-1:51
b
PLUS
1:52-1:52
+
expr
ID
1:53-1:53
a
MINUS
1:54-1:54
-
expr
expr
ID
1:55-1:55
c
PERCENT
1:57-1:57
%
expr
NUM
1:59-1:60
10
AS
1:62-1:63
as
type
INT
1:65-1:67
int
EOF