def fl.loop
bend-osdev-acpi@0.1.1.0 · aml_interp.bend:2450
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
2450
2451def fl.loop(-H: Data, fuel: Nat, +k: AmlFk, r: Result<&2, &2, E.AcpiError, AmlFlNext<H>>) -> Result<&2, &2, E.AcpiError, AmlWorld<H>>:
2452 match fuel:
2453 case 0n:
2454 match r:
2455 case Fail{e}:
2456 Fail{e}
2457 case Done{AmlFlEnd{w}}:
2458 Done{w}
2459 case Done{AmlFlMore{st}}:
2460 Fail{E.AcpiAmlTruncated{}}
2461 case 1n+p:
2462 match r:
2463 case Fail{e}:
2464 Fail{e}
2465 case Done{AmlFlEnd{w}}:
2466 Done{w}
2467 case Done{AmlFlMore{st}}:
2468 fl.loop(H, p, k, fl.step(H, k, st))