def tm.field.enc
bend-osdev-acpi@0.1.1.0 · aml_term.bend:105
import bend-osdev-acpi@0.1.1.0/aml_term.bend as AmlTerm
import Base
import bend-osdev-bytes@0.1.1.0/bytes.bend as B
import bend-osdev-acpi@0.1.1.0/aml_pkglength.bend as K
105def tm.field.enc(es: List<&2, AmlFieldElem>) -> B.Octets:
106 match es:
107 case Nil{}:
108 B.Octets.empty()
109 case Con{AmlFNamed{s, n}, t}:
110 B.Octets.concat([s, K.AmlPkgLength.encode(n), tm.field.enc(t)])
111 case Con{AmlFReserved{n}, t}:
112 B.Octets.concat([tm.b([0]), K.AmlPkgLength.encode(n), tm.field.enc(t)])
113 case Con{AmlFAccess{a, b}, t}:
114 B.Octets.append(tm.b([1, a, b]), tm.field.enc(t))