Type Alias specs::WriteExpect

source ·
pub type WriteExpect<'a, T> = Write<'a, T, PanicHandler>;
Expand description

Allows to fetch a resource in a system mutably. This will panic if the resource does not exist. Usage of Write or Option<Write> is therefore recommended.

Aliased Type§

struct WriteExpect<'a, T> { /* private fields */ }

Trait Implementations§

source§

impl<'a, T, F> Deref for Write<'a, T, F>where T: Resource,

§

type Target = T

The resulting type after dereferencing.
source§

fn deref(&self) -> &T

Dereferences the value.
source§

impl<'a, T, F> DerefMut for Write<'a, T, F>where T: Resource,

source§

fn deref_mut(&mut self) -> &mut T

Mutably dereferences the value.
source§

impl<'a, T, F> From<FetchMut<'a, T>> for Write<'a, T, F>

source§

fn from(inner: FetchMut<'a, T>) -> Write<'a, T, F>

Converts to this type from the input type.
source§

impl<'a, 'b, T> Join for &'a mut WriteExpect<'b, T>where &'a mut T: Join, T: Resource,

§

type Type = <&'a mut T as Join>::Type

Type of joined components.
§

type Value = <&'a mut T as Join>::Value

Type of joined storages.
§

type Mask = <&'a mut T as Join>::Mask

Type of joined bit mask.
source§

unsafe fn open(self) -> (Self::Mask, Self::Value)

Open this join by returning the mask and the storages. Read more
source§

unsafe fn get(v: &mut Self::Value, i: Index) -> Self::Type

Get a joined component value by a given index. Read more
source§

fn is_unconstrained() -> bool

If this Join typically returns all indices in the mask, then iterating over only it or combined with other joins that are also dangerous will cause the JoinIter to go through all indices which is usually not what is wanted and will kill performance.
source§

fn join(self) -> JoinIter<Self> where Self: Sized,

Create a joined iterator over the contents.
source§

impl<'a, 'b, T> LendJoin for &'a mut WriteExpect<'b, T>where &'a mut T: LendJoin, T: Resource,

§

type Value = <&'a mut T as LendJoin>::Value

Type of joined storages.
§

type Mask = <&'a mut T as LendJoin>::Mask

Type of joined bit mask.
source§

unsafe fn open(self) -> (Self::Mask, Self::Value)

Open this join by returning the mask and the storages. Read more
source§

unsafe fn get<'next>( v: &'next mut Self::Value, i: Index ) -> <Self as LendJoinඞType<'next>>::T

Get a joined component value by a given index. Read more
source§

fn is_unconstrained() -> bool

If this LendJoin typically returns all indices in the mask, then iterating over only it or combined with other joins that are also dangerous will cause the JoinLendIter to go through all indices which is usually not what is wanted and will kill performance.
source§

fn lend_join(self) -> JoinLendIter<Self>where Self: Sized,

Create a joined lending iterator over the contents.
source§

fn maybe(self) -> MaybeJoin<Self>where Self: Sized,

Returns a structure that implements Join/LendJoin/MaybeJoin if the contained T does and that yields all indices, returning None for all missing elements and Some(T) for found elements. Read more
source§

impl<'a, 'b, T> ParJoin for &'a mut WriteExpect<'b, T>where &'a mut T: ParJoin, T: Resource,

§

type Type = <&'a mut T as ParJoin>::Type

Type of joined components.
§

type Value = <&'a mut T as ParJoin>::Value

Type of joined storages.
§

type Mask = <&'a mut T as ParJoin>::Mask

Type of joined bit mask.
source§

unsafe fn open(self) -> (Self::Mask, Self::Value)

Open this join by returning the mask and the storages. Read more
source§

unsafe fn get(v: &Self::Value, i: Index) -> Self::Type

Get a joined component value by a given index. Read more
source§

fn is_unconstrained() -> bool

If this LendJoin typically returns all indices in the mask, then iterating over only it or combined with other joins that are also dangerous will cause the JoinLendIter to go through all indices which is usually not what is wanted and will kill performance.
source§

fn par_join(self) -> JoinParIter<Self>where Self: Sized,

Create a joined parallel iterator over the contents.
source§

impl<'a, T, F> SystemData<'a> for Write<'a, T, F>where T: Resource, F: SetupHandler<T>,

source§

fn setup(world: &mut World)

Sets up the system data for fetching it from the World.
source§

fn fetch(world: &'a World) -> Write<'a, T, F>

Fetches the system data from World. Note that this is only specified for one concrete lifetime 'a, you need to implement the SystemData trait for every possible lifetime.
source§

fn reads() -> Vec<ResourceId, Global>

Returns all read dependencies as fetched from Self::fetch. Read more
source§

fn writes() -> Vec<ResourceId, Global>

Returns all write dependencies as fetched from Self::fetch. Read more
source§

impl<'a, 'b, T> RepeatableLendGet for &'a mut WriteExpect<'b, T>where &'a mut T: RepeatableLendGet, T: Resource,