def AmlM.step
bend-osdev-acpi@0.1.1.0 · aml_interp.bend:2899
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
2899
2900def AmlM.step(~H: Data, ~io: H -> Hs.AmlHostOp -> Result<&2, &2, E.AcpiError, Hs.AmlHostAns<H>>, m: AmlMachine<H>) -> AmlMachine<H>:
2901 match m:
2902 case AmlMachine{md, +c, fs, +w}:
2903 match md:
2904 case AmlMExec{}:
2905 in.exec(~H, ~io, cur.at_end(c), c, fs, w)
2906 case AmlMEval{k}:
2907 in.eval(~H, ~io, k, c, fs, w)
2908 case AmlMGive{v}:
2909 in.give.to(~H, ~io, fs, v, c, w)
2910 case AmlMDone{v}:
2911 AmlMachine{AmlMDone{v}, c, fs, w}
2912 case AmlMFail{e}:
2913 AmlMachine{AmlMFail{e}, c, fs, w}