def fld.wr.unit
bend-osdev-acpi@0.1.1.0 · aml_field.bend:186
import bend-osdev-acpi@0.1.1.0/aml_field.bend as AmlField
import Base
import bend-osdev-word64@0.1.1.0/word64.bend as W
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
186def fld.wr.unit(~H: Data, ~io: H -> Hs.AmlHostOp -> Result<&2, &2, E.AcpiError, Hs.AmlHostAns<H>>, r: Result<&2, &2, E.AcpiError, Hs.AmlHostAns<H>>, +u: AmlUnit, +a: Hs.AmlAccess, +x: W.W64) -> Result<&2, &2, E.AcpiError, Hs.AmlHostAns<H>>:
187 match r:
188 case Fail{e}:
189 Fail{e}
190 case Done{Hs.AmlHostAns{h, +old}}:
191 io(h, Hs.AmlHWrite{a, W.W64.or(W.W64.and(old, W.W64.not(AmlUnit.hole(u))), AmlUnit.put(u, x))})