def fadt.read

bend-osdev-acpi@0.1.1.0 · fadt.bend:87

import bend-osdev-acpi@0.1.1.0/fadt.bend as Fadt
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

87def fadt.read(ok: Bool, +h: H.AcpiHeader, +o: B.Octets) -> Result<&2, &2, E.AcpiError, AcpiFadt>:
88  match ok:
89    case False{}:
90      Fail{E.AcpiTooShort{116n, B.Octets.len(o)}}
91    case True{}:
92      +n = B.Octets.len(o)
93      Done{AcpiFadt{h, fadt.core(o), fadt.ext(Nat.is_le(244n, n), o), fadt.sleep(Nat.is_le(268n, n), o), fadt.hyp(Nat.is_le(276n, n), o)}}

Uses (12)

Used by (1)