source
prog
defn
TYP
1:1-1:3
typ
ID
1:5-1:6
id
EQUALS
1:8-1:8
=
type
HAT
1:10-1:10
^
type
HAT
1:11-1:11
^
type
HAT
1:12-1:12
^
type
HAT
1:13-1:13
^
type
HAT
1:14-1:14
^
type
HAT
1:15-1:15
^
type
HAT
1:16-1:16
^
type
HAT
1:17-1:17
^
type
HAT
1:18-1:18
^
type
HAT
1:19-1:19
^
type
HAT
1:20-1:20
^
type
HAT
1:21-1:21
^
type
HAT
1:22-1:22
^
type
HAT
1:23-1:23
^
type
VOID
1:24-1:27
void
defn
TYP
2:1-2:3
typ
ID
2:5-2:7
id2
EQUALS
2:9-2:9
=
type
LSQUARE
2:11-2:11
[
NUM
2:12-2:12
1
RSQUARE
2:13-2:13
]
type
LSQUARE
2:14-2:14
[
NUM
2:15-2:15
2
RSQUARE
2:16-2:16
]
type
LSQUARE
2:17-2:17
[
NUM
2:18-2:18
4
RSQUARE
2:19-2:19
]
type
BOOL
2:20-2:23
bool
defn
VAR
4:1-4:3
var
ID
4:5-4:7
id3
COLON
4:9-4:9
:
type
LBRACKET
4:11-4:11
(
ID
4:12-4:12
a
COLON
4:13-4:13
:
type
LSQUARE
4:14-4:14
[
NUM
4:15-4:15
1
RSQUARE
4:16-4:16
]
type
LSQUARE
4:17-4:17
[
NUM
4:18-4:18
2
RSQUARE
4:19-4:19
]
type
LSQUARE
4:20-4:20
[
NUM
4:21-4:21
4
RSQUARE
4:22-4:22
]
type
BOOL
4:23-4:26
bool
COMMA
4:27-4:27
,
ID
4:29-4:29
b
COLON
4:30-4:30
:
type
HAT
4:32-4:32
^
type
HAT
4:33-4:33
^
type
HAT
4:34-4:34
^
type
HAT
4:35-4:35
^
type
HAT
4:36-4:36
^
type
HAT
4:37-4:37
^
type
HAT
4:38-4:38
^
type
HAT
4:39-4:39
^
type
HAT
4:40-4:40
^
type
HAT
4:41-4:41
^
type
HAT
4:42-4:42
^
type
HAT
4:43-4:43
^
type
HAT
4:44-4:44
^
type
HAT
4:45-4:45
^
type
VOID
4:46-4:49
void
COMMA
4:50-4:50
,
ID
4:52-4:52
c
COLON
4:53-4:53
:
type
ID
4:55-4:62
randomid
COMMA
4:63-4:63
,
ID
4:65-4:65
d
COLON
4:67-4:67
:
type
INT
4:69-4:71
int
COMMA
4:72-4:72
,
ID
4:74-4:74
e
COLON
4:76-4:76
:
type
BOOL
4:78-4:81
bool
COMMA
4:82-4:82
,
ID
4:84-4:84
f
COLON
4:86-4:86
:
type
CHAR
4:88-4:91
char
COMMA
4:92-4:92
,
ID
4:94-4:94
g
COLON
4:96-4:96
:
type
LCURLY
4:98-4:98
{
ID
4:100-4:100
h
COLON
4:102-4:102
:
type
HAT
4:104-4:104
^
type
HAT
4:105-4:105
^
type
INT
4:106-4:108
int
COMMA
4:109-4:109
,
ID
4:111-4:111
i
COLON
4:112-4:112
:
type
VOID
4:114-4:117
void
RCURLY
4:118-4:118
}
RBRACKET
4:120-4:120
)
EOF