Expand description
Rusty wrapper for the Unified Extensible Firmware Interface.
Crate organisation
The top-level module contains some of the most used types, such as the result and error types, or other common data structures such as GUIDs and handles.
Tables and protocols
The table
module contains definitions of the UEFI tables,
which are structures containing some basic functions and references to other tables.
Most importantly, the boot services table also provides a way to obtain protocol handles.
The proto
module contains the standard UEFI protocols, which are normally provided
by the various UEFI drivers and firmware layers.
Adapting to local conditions
Unlike system tables, which are present on all UEFI implementations, protocols may or may not be present on a certain system.
For example, a PC with no network card might not contain a network driver, therefore all the network protocols will be unavailable.
Re-exports
pub use self::data_types::Char16;
pub use self::data_types::Char8;
pub use self::data_types::Event;
pub use self::data_types::Handle;
Modules
alloc
logger
log
crate, providing
a custom logger implementation which writes to a UEFI text output protocol.Macros
Guid
at compile time.Structs
exts
Traits
Type Definitions
Attribute Macros
unsafe_guid
attribute macro, implements the Identify
trait for any type
(mostly works like a custom derive, but also supports type aliases)