def AmlM.run.go
bend-osdev-acpi@0.1.1.0 · aml_interp.bend:2930
import bend-osdev-acpi@0.1.1.0/aml_interp.bend as AmlInterp
import Base
import bend-osdev-acpi@0.1.1.0/error.bend as E
import bend-osdev-acpi@0.1.1.0/aml_host.bend as Hs
2930
2931def AmlM.run.go(~H: Data, ~io: H -> Hs.AmlHostOp -> Result<&2, &2, E.AcpiError, Hs.AmlHostAns<H>>, n: Nat, h: Bool, m: AmlMachine<H>, used: Nat) -> AmlRun<H>:
2932 match n:
2933 case 0n:
2934 AmlRun{m, used}
2935 case 1n+p:
2936 match h:
2937 case True{}:
2938 AmlRun{m, used}
2939 case False{}:
2940 +m2 = AmlM.step(~H, ~io, m)
2941 AmlM.run.go(~H, ~io, p, AmlMachine.halted(H, m2), m2, 1n+used)