Module uefi::data_types
source · Expand description
Data type definitions
This module defines the basic data types that are used throughout uefi-rs
Re-exports§
Modules§
- UEFI character handling
Structs§
- A null-terminated Latin-1 string.
- An UCS-2 null-terminated string slice.
- CString16
alloc
An owned UCS-2 null-terminated string. - Handle to an event structure, guaranteed to be non-null.
- Globally-unique identifier.
- Opaque handle to an UEFI entity (protocol, image…), guaranteed to be non-null.
- Slice backed by a potentially-unaligned pointer.
Enums§
- Errors which can occur during checked
[uN]
->CStrN
conversions - FromStrError
alloc
Error returned byCString16::try_from::<&str>
. - Error returned by
CStr16::from_str_with_buf
. - Error returned by
CStr16::from_unaligned_slice
.
Traits§
- Trait for querying the alignment of a struct.
- The EqStrUntilNul trait helps to compare Rust strings against UEFI string types (UCS-2 strings). The given generic implementation of this trait enables us that we only have to implement one direction (
left.eq_str_until_nul(&right)
) for each UEFI string type and we get the other direction (right.eq_str_until_nul(&left)
) for free. Hence, the relation is reflexive. - Several entities in the UEFI specification can be referred to by their GUID, this trait is a building block to interface them in uefi-rs.
Type Aliases§
- Physical memory address. This is always a 64-bit value, regardless of target platform.
- Virtual memory address. This is always a 64-bit value, regardless of target platform.