Struct multiboot2::ModuleTag
source · #[repr(C)]pub struct ModuleTag { /* private fields */ }
Expand description
The module tag can occur multiple times and specifies passed boot modules (blobs in memory). The tag itself doesn’t include the blog, but references its location.
Implementations§
source§impl ModuleTag
impl ModuleTag
pub fn new(start: u32, end: u32, cmdline: &str) -> BoxedDst<Self>
sourcepub fn cmdline(&self) -> Result<&str, Utf8Error>
pub fn cmdline(&self) -> Result<&str, Utf8Error>
Reads the command line of the boot module as Rust string slice without
the null-byte.
This is an null-terminated UTF-8 string. If this returns Err
then perhaps the memory
is invalid or the bootloader doesn’t follow the spec.
For example, this returns "--test cmdline-option"
.if the GRUB config
contains "module2 /some_boot_module --test cmdline-option"
.
If the function returns Err
then perhaps the memory is invalid.
sourcepub fn start_address(&self) -> u32
pub fn start_address(&self) -> u32
Start address of the module.
sourcepub fn end_address(&self) -> u32
pub fn end_address(&self) -> u32
End address of the module
sourcepub fn module_size(&self) -> u32
pub fn module_size(&self) -> u32
The size of the module/the BLOB in memory.
Trait Implementations§
source§impl PartialOrd for ModuleTag
impl PartialOrd for ModuleTag
source§impl TagTrait for ModuleTag
impl TagTrait for ModuleTag
source§fn dst_size(base_tag: &Tag) -> usize
fn dst_size(base_tag: &Tag) -> usize
Returns the amount of items in the dynamically sized portion of the
DST. Note that this is not the amount of bytes. So if the dynamically
sized portion is 16 bytes in size and each element is 4 bytes big, then
this function must return 4.
source§unsafe fn from_base_tag<'a>(tag: &Tag) -> &'a Self
unsafe fn from_base_tag<'a>(tag: &Tag) -> &'a Self
Creates a reference to a (dynamically sized) tag type in a safe way.
DST tags need to implement a proper
Self::dst_size
implementation. Read more