def in.put.data
bend-osdev-acpi@0.1.1.0 · aml_interp.bend:706
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
import bend-osdev-acpi@0.1.1.0/aml_ns.bend as S
706
707def in.put.data(-H: Data, +w: AmlWorld<H>, l: V.AmlLoc, v: V.AmlValue) -> Result<&2, &2, E.AcpiError, AmlWorld<H>>:
708 match l:
709 case V.AmlLName{+p}:
710 Done{in.with_ns(H, w, S.AmlNs.set(AmlWorld.ns(H, w), in.unalias(AmlWorld.ns(H, w), p), S.AmlOData{v}))}
711 case V.AmlLLocal{i}:
712 Done{in.set.local(H, w, i, v)}
713 case V.AmlLArg{i}:
714 Done{in.set.arg(H, w, i, v)}
715 case _:
716 Fail{E.AcpiAmlUnsupported{"a buffer field of an element"}}