Struct amethyst::shred::Resources [−]
pub struct Resources { /* fields omitted */ }A resource container, which provides methods to access to the contained resources.
Resource Ids
Resources are identified by ResourceIds, which consist of a TypeId.
Methods
impl Resources
impl Resourcespub fn new() -> Resources
pub fn new() -> ResourcesCreates a new, empty resource container.
pub fn insert<R>(&mut self, r: R) where
R: Resource,
pub fn insert<R>(&mut self, r: R) where
R: Resource, Inserts a resource into this container. If the resource existed before, it will be overwritten.
Examples
Every type satisfying Any + Debug + Send + Sync automatically implements Resource,
thus can be added:
#[derive(Debug)] struct MyRes(i32);
When you have a resource, simply insert it like this:
use shred::Resources; let mut res = Resources::new(); res.insert(MyRes(5));
pub fn has_value<R>(&self) -> bool where
R: Resource,
pub fn has_value<R>(&self) -> bool where
R: Resource, Returns true if the specified resource type R exists in self.
pub fn has_value_raw(&self, id: ResourceId) -> bool
pub fn has_value_raw(&self, id: ResourceId) -> boolReturns true if the specified resource type exists in self.
pub fn entry<R>(&mut self) -> Entry<R> where
R: Resource,
pub fn entry<R>(&mut self) -> Entry<R> where
R: Resource, Returns an entry for the resource with type R.
pub fn fetch<T>(&self) -> Fetch<T> where
T: Resource,
pub fn fetch<T>(&self) -> Fetch<T> where
T: Resource, Fetches the resource with the specified type T or panics if it doesn't exist.
Panics
Panics if the resource doesn't exist. Panics if the resource is being accessed mutably.
pub fn try_fetch<T>(&self) -> Option<Fetch<T>> where
T: Resource,
pub fn try_fetch<T>(&self) -> Option<Fetch<T>> where
T: Resource, Like fetch, but returns an Option instead of inserting a default value
in case the resource does not exist.
pub fn fetch_mut<T>(&self) -> FetchMut<T> where
T: Resource,
pub fn fetch_mut<T>(&self) -> FetchMut<T> where
T: Resource, Fetches the resource with the specified type T mutably.
Please see fetch for details.
Panics
Panics if the resource doesn't exist. Panics if the resource is already being accessed.
pub fn try_fetch_mut<T>(&self) -> Option<FetchMut<T>> where
T: Resource,
pub fn try_fetch_mut<T>(&self) -> Option<FetchMut<T>> where
T: Resource, Like fetch_mut, but returns an Option instead of inserting a default value
in case the resource does not exist.
pub fn try_fetch_internal(
&self,
id: TypeId
) -> Option<&TrustCell<Box<Resource + 'static>>>
pub fn try_fetch_internal(
&self,
id: TypeId
) -> Option<&TrustCell<Box<Resource + 'static>>>Internal function for fetching resources, should only be used if you know what you're doing.
pub fn get_mut<T>(&mut self) -> Option<&mut T> where
T: Resource,
pub fn get_mut<T>(&mut self) -> Option<&mut T> where
T: Resource, Retrieves a resource without fetching, which is cheaper, but only available with
&mut self.
pub fn get_mut_raw(&mut self, id: TypeId) -> Option<&mut (Resource + 'static)>
pub fn get_mut_raw(&mut self, id: TypeId) -> Option<&mut (Resource + 'static)>Retrieves a resource without fetching, which is cheaper, but only available with
&mut self.