law bgrt_whole

bend-osdev-acpi@0.1.2.0 · LAWS_whole.bend:71

import bend-osdev-acpi@0.1.2.0/LAWS_whole.bend as LAWSWhole
import Base
import bend-osdev-word64@0.1.1.1/word64.bend as W
import bend-osdev-bytes@0.1.1.1/bytes.bend as B
import bend-osdev-acpi@0.1.2.0/error.bend as E
import bend-osdev-acpi@0.1.2.0/header.bend as H
import bend-osdev-acpi@0.1.2.0/bgrt.bend as Bg

71# The BGRT table
72law bgrt_whole:
73  for +h0: H.AcpiHeader
74  for +oem6b: {B.Octets.len(H.AcpiHeader.oem_id(h0)) == 6n : Nat}
75  for +tid8b: {B.Octets.len(H.AcpiHeader.oem_table_id(h0)) == 8n : Nat}
76  for +cid4b: {B.Octets.len(H.AcpiHeader.creator_id(h0)) == 4n : Nat}
77  for +rev8b: {B.byte(H.AcpiHeader.revision(h0)) == H.AcpiHeader.revision(h0) : U32}
78  for +v: U32
79  for +st: U32
80  for +it: U32
81  for +a: W.W64
82  for +x: U32
83  for +y: U32
84  for +v16: {B.low16(v) == v : U32}
85  for +st8: {B.byte(st) == st : U32}
86  for +it8: {B.byte(it) == it : U32}
87  {Bg.AcpiBgrt.parse(Bg.AcpiBgrt.build(Bg.AcpiBgrt{h0, v, st, it, a, x, y})) == Done{Bg.AcpiBgrt{acpilaw.written(B.Octets.of_string("BGRT"), h0, Bg.AcpiBgrt.build(Bg.AcpiBgrt{h0, v, st, it, a, x, y})), v, st, it, a, x, y}} : Result<&2, &2, E.AcpiError, Bg.AcpiBgrt>}

Uses (40)

Used by (0)

No other definition uses this definition.