def in.bf.rd
bend-osdev-acpi@0.1.1.0 · aml_interp.bend:578
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_value.bend as V
578def in.bf.rd(-H: Data, +wide: Bool, +w: AmlWorld<H>, r: Result<&2, &2, E.AcpiError, V.AmlValue>, +off: Nat, +bits: Nat) -> Result<&2, &2, E.AcpiError, AmlRead<H>>:
579 match r:
580 case Fail{e}:
581 Fail{e}
582 case Done{V.AmlBuf{+b}}:
583 in.bf.rd.pick(H, Nat.is_le(bits, 64n), wide, w, b, off, bits)
584 case Done{v}:
585 Fail{E.AcpiAmlBadType{"the source of a buffer field is not a buffer"}}