pub trait ComponentId<const host: bool = true>: Debug + Copy + Eq + Ord + Hash + Send + Sync {
    // Required methods
    fn from_raw(raw: (usize, NonZeroUsize)) -> Self;
    fn into_raw(self) -> (usize, NonZeroUsize);
}
Expand description

An implementer of the ComponentId trait is a type behaves as Id.

Required Methods§

source

fn from_raw(raw: (usize, NonZeroUsize)) -> Self

Forms an id from the into_raw function result.

source

fn into_raw(self) -> (usize, NonZeroUsize)

Transforms the id to primitive-typed parts, which can be easily passed through FFI and stored in non-generic context.

Use from_raw to get the source id back.

Implementations on Foreign Types§

source§

impl<const host: bool = true> ComponentId<host> for usize

source§

impl<const host: bool = true> ComponentId<host> for (usize, NonZeroUsize)

source§

impl<const host: bool = true> ComponentId<host> for ()

Implementors§

§

impl<C: Component, const host: bool = true> ComponentId<host> for Id<C>