Trait Tag

Source
pub trait Tag: MaybeDynSized {
    type IDType: PartialEq + Eq;

    const ID: Self::IDType;
}
Expand description

Extension of MaybeDynSized for Tags.

Required Associated Constants§

Source

const ID: Self::IDType

The ID of this tag. This should be unique across all implementors.

Although the ID is not yet used in multiboot2-common, it ensures a consistent API in consumer crates.

Required Associated Types§

Source

type IDType: PartialEq + Eq

The ID type that identifies the tag.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl Tag for DummyDstTag

Source§

const ID: <DummyDstTag as Tag>::IDType = {transmute(0x0000002a): <multiboot2_common::test_utils::DummyDstTag as multiboot2_common::Tag>::IDType}

Source§

type IDType = u32

Source§

impl Tag for ApmTag

Source§

const ID: TagType = TagType::Apm

Source§

type IDType = TagType

Source§

impl Tag for BasicMemoryInfoTag

Source§

const ID: TagType = TagType::BasicMeminfo

Source§

type IDType = TagType

Source§

impl Tag for BootLoaderNameTag

Source§

const ID: TagType = TagType::BootLoaderName

Source§

type IDType = TagType

Source§

impl Tag for BootdevTag

Source§

const ID: TagType = TagType::Bootdev

Source§

type IDType = TagType

Source§

impl Tag for CommandLineTag

Source§

const ID: TagType = TagType::Cmdline

Source§

type IDType = TagType

Source§

impl Tag for EFIBootServicesNotExitedTag

Source§

const ID: TagType = TagType::EfiBs

Source§

type IDType = TagType

Source§

impl Tag for EFIImageHandle32Tag

Source§

const ID: TagType = TagType::Efi32Ih

Source§

type IDType = TagType

Source§

impl Tag for EFIImageHandle64Tag

Source§

const ID: TagType = TagType::Efi64Ih

Source§

type IDType = TagType

Source§

impl Tag for EFIMemoryMapTag

Source§

const ID: TagType = TagType::EfiMmap

Source§

type IDType = TagType

Source§

impl Tag for EFISdt32Tag

Source§

const ID: TagType = TagType::Efi32

Source§

type IDType = TagType

Source§

impl Tag for EFISdt64Tag

Source§

const ID: TagType = TagType::Efi64

Source§

type IDType = TagType

Source§

impl Tag for ElfSectionsTag

Source§

const ID: TagType = TagType::ElfSections

Source§

type IDType = TagType

Source§

impl Tag for EndTag

Source§

const ID: TagType = TagType::End

Source§

type IDType = TagType

Source§

impl Tag for FramebufferTag

Source§

const ID: TagType = TagType::Framebuffer

Source§

type IDType = TagType

Source§

impl Tag for ImageLoadPhysAddrTag

Source§

const ID: TagType = TagType::LoadBaseAddr

Source§

type IDType = TagType

Source§

impl Tag for MemoryMapTag

Source§

const ID: TagType = TagType::Mmap

Source§

type IDType = TagType

Source§

impl Tag for ModuleTag

Source§

const ID: TagType = TagType::Module

Source§

type IDType = TagType

Source§

impl Tag for NetworkTag

Source§

const ID: TagType = TagType::Network

Source§

type IDType = TagType

Source§

impl Tag for RsdpV1Tag

Source§

const ID: TagType = TagType::AcpiV1

Source§

type IDType = TagType

Source§

impl Tag for RsdpV2Tag

Source§

const ID: TagType = TagType::AcpiV2

Source§

type IDType = TagType

Source§

impl Tag for SmbiosTag

Source§

const ID: TagType = TagType::Smbios

Source§

type IDType = TagType

Source§

impl Tag for VBEInfoTag

Source§

const ID: TagType = TagType::Vbe

Source§

type IDType = TagType