law aml_round_trip

bend-osdev-acpi@0.1.1.0 · LAWS_tables.bend:160

import bend-osdev-acpi@0.1.1.0/LAWS_tables.bend as LAWSTables
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/dsdt.bend as Ds

160# A DSDT's or SSDT's definition block (the header's signature is kept, so
161# it too must have its size)
162law aml_round_trip:
163  for +h: H.AcpiHeader
164  for +h0: H.AcpiHeader
165  for +sig4b: {B.Octets.len(H.AcpiHeader.signature(h0)) == 4n : Nat}
166  for +oem6b: {B.Octets.len(H.AcpiHeader.oem_id(h0)) == 6n : Nat}
167  for +tid8b: {B.Octets.len(H.AcpiHeader.oem_table_id(h0)) == 8n : Nat}
168  for +cid4b: {B.Octets.len(H.AcpiHeader.creator_id(h0)) == 4n : Nat}
169  for +a: B.Octets
170  {Ds.AcpiAml.of_sdt(H.AcpiSdt{h, B.Octets.drop(36n, Ds.AcpiAml.build(Ds.AcpiAml{h0, a}))}) == Done{Ds.AcpiAml{h, a}} : Result<&2, &2, E.AcpiError, Ds.AcpiAml>}

Uses (16)

Used by (0)

No other definition uses this definition.