Rsdp.rs.p5: def of bend-osdev-acpi@0.1.1.0 Import: import bend-osdev-acpi@0.1.1.0/rsdp.bend as Rsdp Lines 93-99 of bend-osdev-acpi@0.1.1.0/rsdp.bend: https://jend.leeeet.dev/read.txt?path=bend-osdev-acpi@0.1.1.0/rsdp.bend&start_line=93&end_line=99 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/fields.bend as F def rs.p5(ok: Bool, +o: B.Octets) -> Result<&2, &2, E.AcpiError, AcpiRsdp>: match ok: case False{}: Fail{E.AcpiTooShort{36n, B.Octets.len(o)}} case True{}: +l = F.AcpiF.u32(o, 20n) rs.p6(Bool.and(Nat.is_le(36n, U32.to_nat(l)), Nat.is_le(U32.to_nat(l), B.Octets.len(o))), l, o) Uses (11): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Bool https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Bool.and https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat.is_le https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Result https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.to_nat https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.1.0/error.bend&name=AcpiError https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.1.0/fields.bend&name=AcpiF.u32 https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.1.0/rsdp.bend&name=AcpiRsdp https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.1.0/rsdp.bend&name=rs.p6 https://jend.leeeet.dev/definition.txt?path=bend-osdev-bytes@0.1.1.0/bytes.bend&name=Octets https://jend.leeeet.dev/definition.txt?path=bend-osdev-bytes@0.1.1.0/bytes.bend&name=Octets.len