[][src]Struct specs::prelude::ResourceId

pub struct ResourceId { /* fields omitted */ }

The id of a Resource, which simply wraps a type id and a "dynamic ID". The "dynamic ID" is usually just left 0, and, unless such documentation says otherwise, other libraries will assume that it is always 0; non-zero IDs are only used for special resource types that are specifically defined in a more dynamic way, such that resource types can essentially be created at run time, without having different static types.

Methods

impl ResourceId[src]

pub fn new<T>() -> ResourceId where
    T: Resource
[src]

Creates a new resource id from a given type.

pub fn from_type_id(type_id: TypeId) -> ResourceId[src]

Create a new resource id from a raw type ID.

pub fn new_with_dynamic_id<T>(dynamic_id: u64) -> ResourceId where
    T: Resource
[src]

Creates a new resource id from a given type and a dynamic_id.

This is usually not what you want (unless you're implementing scripting with shred or some similar mechanism to define resources at run-time).

Creating resource IDs with a dynamic_id unequal to 0 is only recommended for special types that are specifically defined for scripting; most libraries will just assume that resources are identified only by their type.

pub fn from_type_id_and_dynamic_id(
    type_id: TypeId,
    dynamic_id: u64
) -> ResourceId
[src]

Create a new resource id from a raw type ID and a "dynamic ID" (see type documentation).

Trait Implementations

impl Clone for ResourceId[src]

impl Debug for ResourceId[src]

impl Eq for ResourceId[src]

impl Hash for ResourceId[src]

impl Ord for ResourceId[src]

impl PartialEq<ResourceId> for ResourceId[src]

impl PartialOrd<ResourceId> for ResourceId[src]

impl StructuralEq for ResourceId[src]

impl StructuralPartialEq for ResourceId[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Any for T where
    T: Any

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Event for T where
    T: Send + Sync + 'static, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Resource for T where
    T: Any + Send + Sync
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,