nomo/tests/cases/3-instructions@simple_for.snap
Marcel Müller 42e0056374 Add for loop
Signed-off-by: Marcel Müller <neikos@neikos.email>
2026-03-11 18:09:58 +01:00

87 lines
1.9 KiB
Text

---
source: tests/file_tests.rs
expression: emit
info:
context:
values:
- one
- two
input_file: tests/cases/simple_for.nomo
---
VMInstructions {
labels: {
LabelSlot {
index: 0,
}: 10,
LabelSlot {
index: 1,
}: 10,
LabelSlot {
index: 2,
}: 4,
},
instructions: [
PushScope {
inherit_parent: true,
},
LoadFromContextToSlot {
name: "values" (16..22),
slot: VariableSlot {
index: 4,
},
},
CreateIteratorFromSlotToSlot {
iterator_slot: VariableSlot {
index: 5,
},
iterator_source_slot: VariableSlot {
index: 4,
},
},
GetIteratorEmptyOrJump {
iterator_slot: VariableSlot {
index: 5,
},
jump: LabelSlot {
index: 0,
},
},
AdvanceIteratorOrJump {
iterator_slot: VariableSlot {
index: 5,
},
value_slot: VariableSlot {
index: 3,
},
jump: LabelSlot {
index: 1,
},
},
LoadFromSlotToContext {
value_ident: "value" (7..12),
value_slot: VariableSlot {
index: 3,
},
},
LoadFromContextToSlot {
name: "value" (36..41),
slot: VariableSlot {
index: 6,
},
},
EmitFromSlot {
slot: VariableSlot {
index: 6,
},
},
AppendContent {
content: "\n" (44..45),
},
Jump {
jump: LabelSlot {
index: 2,
},
},
PopScope,
],
}