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"}}

Uses (9)

Used by (1)