def bgrt.read
bend-osdev-acpi@0.1.1.0 · bgrt.bend:22
import bend-osdev-acpi@0.1.1.0/bgrt.bend as Bgrt
import Base
import bend-osdev-bytes@0.1.1.0/bytes.bend as B
import bend-osdev-acpi@0.1.1.0/error.bend as E
import bend-osdev-acpi@0.1.1.0/header.bend as H
import bend-osdev-acpi@0.1.1.0/fields.bend as F
22def bgrt.read(ok: Bool, +h: H.AcpiHeader, +o: B.Octets) -> Result<&2, &2, E.AcpiError, AcpiBgrt>:
23 match ok:
24 case False{}:
25 Fail{E.AcpiTooShort{56n, B.Octets.len(o)}}
26 case True{}:
27 Done{AcpiBgrt{h, F.AcpiF.u16(o, 36n), F.AcpiF.u8(o, 38n), F.AcpiF.u8(o, 39n), F.AcpiF.u64(o, 40n), F.AcpiF.u32(o, 48n), F.AcpiF.u32(o, 52n)}}