2024-12-21 03:10:03 +00:00
|
|
|
Program {
|
|
|
|
ast: Block(
|
2024-12-21 21:09:10 +00:00
|
|
|
[
|
2024-12-22 00:01:04 +00:00
|
|
|
Statement(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Let {
|
|
|
|
name: Ident(
|
|
|
|
"a",
|
2024-12-21 21:09:10 +00:00
|
|
|
),
|
2024-12-22 00:01:04 +00:00
|
|
|
typ: None,
|
|
|
|
val: Some(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: BinOp {
|
|
|
|
typ: EqEq,
|
2024-12-22 00:17:43 +00:00
|
|
|
left: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: BinOp {
|
|
|
|
typ: Star,
|
2024-12-22 00:17:43 +00:00
|
|
|
left: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Literal(
|
|
|
|
Number(
|
|
|
|
Number {
|
|
|
|
val: 1,
|
|
|
|
base: 10,
|
|
|
|
signed: false,
|
|
|
|
},
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 1,
|
|
|
|
col: 10,
|
|
|
|
},
|
|
|
|
},
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Literal(
|
|
|
|
Number(
|
|
|
|
Number {
|
|
|
|
val: 3,
|
|
|
|
base: 10,
|
|
|
|
signed: false,
|
|
|
|
},
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 1,
|
|
|
|
col: 14,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 1,
|
|
|
|
col: 12,
|
|
|
|
},
|
|
|
|
},
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Literal(
|
|
|
|
Number(
|
|
|
|
Number {
|
|
|
|
val: 4,
|
|
|
|
base: 10,
|
|
|
|
signed: false,
|
|
|
|
},
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 1,
|
|
|
|
col: 18,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 1,
|
|
|
|
col: 16,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 1,
|
|
|
|
col: 4,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
|
|
|
Statement(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Let {
|
|
|
|
name: Ident(
|
|
|
|
"b",
|
|
|
|
),
|
|
|
|
typ: None,
|
|
|
|
val: Some(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: BinOp {
|
|
|
|
typ: EqEq,
|
2024-12-22 00:17:43 +00:00
|
|
|
left: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: BinOp {
|
|
|
|
typ: Div,
|
2024-12-22 00:17:43 +00:00
|
|
|
left: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Literal(
|
|
|
|
Number(
|
|
|
|
Number {
|
|
|
|
val: 3,
|
|
|
|
base: 10,
|
|
|
|
signed: false,
|
|
|
|
},
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 2,
|
|
|
|
col: 10,
|
|
|
|
},
|
|
|
|
},
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Literal(
|
|
|
|
Number(
|
|
|
|
Number {
|
|
|
|
val: 4,
|
|
|
|
base: 10,
|
|
|
|
signed: false,
|
|
|
|
},
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 2,
|
|
|
|
col: 12,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 2,
|
|
|
|
col: 11,
|
|
|
|
},
|
|
|
|
},
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: UnOp {
|
|
|
|
typ: Star,
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Path(
|
|
|
|
Path(
|
|
|
|
[
|
|
|
|
Ident(
|
|
|
|
"a",
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 2,
|
|
|
|
col: 17,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 2,
|
|
|
|
col: 16,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 2,
|
|
|
|
col: 14,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 2,
|
|
|
|
col: 4,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
|
|
|
Statement(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Let {
|
|
|
|
name: Ident(
|
|
|
|
"c",
|
|
|
|
),
|
|
|
|
typ: None,
|
|
|
|
val: Some(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: BinOp {
|
|
|
|
typ: Div,
|
2024-12-22 00:17:43 +00:00
|
|
|
left: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Group(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: PtrFieldAccess {
|
|
|
|
left: Some(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Path(
|
|
|
|
Path(
|
|
|
|
[
|
|
|
|
Ident(
|
|
|
|
"a",
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 3,
|
|
|
|
col: 11,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: FieldAccess {
|
|
|
|
left: Some(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Path(
|
|
|
|
Path(
|
|
|
|
[
|
|
|
|
Ident(
|
|
|
|
"b",
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 3,
|
|
|
|
col: 13,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: PtrFieldAccess {
|
|
|
|
left: Some(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Path(
|
|
|
|
Path(
|
|
|
|
[
|
|
|
|
Ident(
|
|
|
|
"c",
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 3,
|
|
|
|
col: 15,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Path(
|
|
|
|
Path(
|
|
|
|
[
|
|
|
|
Ident(
|
|
|
|
"d",
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 3,
|
|
|
|
col: 17,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 3,
|
|
|
|
col: 16,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 3,
|
|
|
|
col: 14,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 3,
|
|
|
|
col: 12,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 3,
|
|
|
|
col: 10,
|
|
|
|
},
|
|
|
|
},
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Literal(
|
|
|
|
Number(
|
|
|
|
Number {
|
|
|
|
val: 2,
|
|
|
|
base: 10,
|
|
|
|
signed: false,
|
|
|
|
},
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 3,
|
|
|
|
col: 22,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 3,
|
|
|
|
col: 20,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 3,
|
|
|
|
col: 4,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
|
|
|
Statement(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Let {
|
|
|
|
name: Ident(
|
|
|
|
"d",
|
|
|
|
),
|
|
|
|
typ: None,
|
|
|
|
val: Some(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: BinOp {
|
|
|
|
typ: Div,
|
2024-12-22 00:17:43 +00:00
|
|
|
left: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Literal(
|
|
|
|
Number(
|
|
|
|
Number {
|
|
|
|
val: 2,
|
|
|
|
base: 10,
|
|
|
|
signed: false,
|
|
|
|
},
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 4,
|
|
|
|
col: 10,
|
|
|
|
},
|
|
|
|
},
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: PtrFieldAccess {
|
|
|
|
left: Some(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Path(
|
|
|
|
Path(
|
|
|
|
[
|
|
|
|
Ident(
|
|
|
|
"a",
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 4,
|
|
|
|
col: 14,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: FieldAccess {
|
|
|
|
left: Some(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Path(
|
|
|
|
Path(
|
|
|
|
[
|
|
|
|
Ident(
|
|
|
|
"b",
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 4,
|
|
|
|
col: 16,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: PtrFieldAccess {
|
|
|
|
left: Some(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Path(
|
|
|
|
Path(
|
|
|
|
[
|
|
|
|
Ident(
|
|
|
|
"c",
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 4,
|
|
|
|
col: 18,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Path(
|
|
|
|
Path(
|
|
|
|
[
|
|
|
|
Ident(
|
|
|
|
"d",
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 4,
|
|
|
|
col: 20,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 4,
|
|
|
|
col: 19,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 4,
|
|
|
|
col: 17,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 4,
|
|
|
|
col: 15,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 4,
|
|
|
|
col: 12,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 4,
|
|
|
|
col: 4,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
|
|
|
Statement(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Let {
|
|
|
|
name: Ident(
|
|
|
|
"e",
|
|
|
|
),
|
|
|
|
typ: None,
|
|
|
|
val: Some(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: BinOp {
|
|
|
|
typ: Div,
|
2024-12-22 00:17:43 +00:00
|
|
|
left: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: PtrFieldAccess {
|
|
|
|
left: Some(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Path(
|
|
|
|
Path(
|
|
|
|
[
|
|
|
|
Ident(
|
|
|
|
"a",
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 5,
|
|
|
|
col: 10,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: FieldAccess {
|
|
|
|
left: Some(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Path(
|
|
|
|
Path(
|
|
|
|
[
|
|
|
|
Ident(
|
|
|
|
"b",
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 5,
|
|
|
|
col: 12,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: PtrFieldAccess {
|
|
|
|
left: Some(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Path(
|
|
|
|
Path(
|
|
|
|
[
|
|
|
|
Ident(
|
|
|
|
"c",
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 5,
|
|
|
|
col: 14,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Path(
|
|
|
|
Path(
|
|
|
|
[
|
|
|
|
Ident(
|
|
|
|
"d",
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 5,
|
|
|
|
col: 16,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 5,
|
|
|
|
col: 15,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 5,
|
|
|
|
col: 13,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 5,
|
|
|
|
col: 11,
|
|
|
|
},
|
|
|
|
},
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Literal(
|
|
|
|
Number(
|
|
|
|
Number {
|
|
|
|
val: 2,
|
|
|
|
base: 10,
|
|
|
|
signed: false,
|
|
|
|
},
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 5,
|
|
|
|
col: 20,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 5,
|
|
|
|
col: 18,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 5,
|
|
|
|
col: 4,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
|
|
|
Statement(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Let {
|
|
|
|
name: Ident(
|
|
|
|
"f",
|
|
|
|
),
|
|
|
|
typ: None,
|
|
|
|
val: Some(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: BinOp {
|
|
|
|
typ: Div,
|
2024-12-22 00:17:43 +00:00
|
|
|
left: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: FieldAccess {
|
|
|
|
left: Some(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Path(
|
|
|
|
Path(
|
|
|
|
[
|
|
|
|
Ident(
|
|
|
|
"a",
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 6,
|
|
|
|
col: 10,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: FieldAccess {
|
|
|
|
left: Some(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Path(
|
|
|
|
Path(
|
|
|
|
[
|
|
|
|
Ident(
|
|
|
|
"b",
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 6,
|
|
|
|
col: 12,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: FieldAccess {
|
|
|
|
left: Some(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Path(
|
|
|
|
Path(
|
|
|
|
[
|
|
|
|
Ident(
|
|
|
|
"c",
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 6,
|
|
|
|
col: 14,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Path(
|
|
|
|
Path(
|
|
|
|
[
|
|
|
|
Ident(
|
|
|
|
"d",
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 6,
|
|
|
|
col: 16,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 6,
|
|
|
|
col: 15,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 6,
|
|
|
|
col: 13,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 6,
|
|
|
|
col: 11,
|
|
|
|
},
|
|
|
|
},
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Literal(
|
|
|
|
Number(
|
|
|
|
Number {
|
|
|
|
val: 2,
|
|
|
|
base: 10,
|
|
|
|
signed: false,
|
|
|
|
},
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 6,
|
|
|
|
col: 20,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 6,
|
|
|
|
col: 18,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 6,
|
|
|
|
col: 4,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
|
|
|
Statement(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Let {
|
|
|
|
name: Ident(
|
|
|
|
"g",
|
|
|
|
),
|
|
|
|
typ: None,
|
|
|
|
val: Some(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: BinOp {
|
|
|
|
typ: Star,
|
2024-12-22 00:17:43 +00:00
|
|
|
left: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: ArrayIndex {
|
2024-12-22 00:17:43 +00:00
|
|
|
name: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: FieldAccess {
|
|
|
|
left: Some(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Path(
|
|
|
|
Path(
|
|
|
|
[
|
|
|
|
Ident(
|
|
|
|
"a",
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 7,
|
|
|
|
col: 10,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Path(
|
|
|
|
Path(
|
|
|
|
[
|
|
|
|
Ident(
|
|
|
|
"b",
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 7,
|
|
|
|
col: 12,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 7,
|
|
|
|
col: 11,
|
|
|
|
},
|
|
|
|
},
|
2024-12-22 00:17:43 +00:00
|
|
|
index: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: UnOp {
|
|
|
|
typ: Star,
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: FieldAccess {
|
|
|
|
left: Some(
|
2024-12-22 00:17:43 +00:00
|
|
|
LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Path(
|
|
|
|
Path(
|
|
|
|
[
|
|
|
|
Ident(
|
|
|
|
"a",
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 7,
|
|
|
|
col: 15,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Path(
|
|
|
|
Path(
|
|
|
|
[
|
|
|
|
Ident(
|
|
|
|
"c",
|
|
|
|
),
|
|
|
|
],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 7,
|
|
|
|
col: 17,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 7,
|
|
|
|
col: 16,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 7,
|
|
|
|
col: 14,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 7,
|
|
|
|
col: 13,
|
|
|
|
},
|
|
|
|
},
|
2024-12-22 00:17:43 +00:00
|
|
|
right: LocBox {
|
2024-12-22 00:01:04 +00:00
|
|
|
inner: Literal(
|
|
|
|
Number(
|
|
|
|
Number {
|
|
|
|
val: 5,
|
|
|
|
base: 10,
|
|
|
|
signed: false,
|
|
|
|
},
|
|
|
|
),
|
|
|
|
),
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 7,
|
|
|
|
col: 22,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 7,
|
|
|
|
col: 20,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
|
|
|
},
|
|
|
|
loc: Loc {
|
|
|
|
file: "parser/expressions.mcl",
|
|
|
|
line: 7,
|
|
|
|
col: 4,
|
2024-12-21 21:09:10 +00:00
|
|
|
},
|
|
|
|
},
|
|
|
|
),
|
|
|
|
],
|
2024-12-21 03:10:03 +00:00
|
|
|
),
|
|
|
|
structs: {},
|
|
|
|
enums: {},
|
|
|
|
types: {},
|
|
|
|
functions: {},
|
|
|
|
member_functions: {},
|
|
|
|
}
|