pub struct Read<'a, T, F = DefaultProvider>where
T: 'a,{ /* private fields */ }
Expand description
Allows to fetch a resource in a system immutably.
If the resource isn’t strictly required, you should use Option<Read<T>>
.
§Type parameters
T
: The type of the resourceF
: The setup handler (default:DefaultProvider
)
Trait Implementations§
Source§impl<'a, 'b, T> Join for &'a Read<'b, T>
impl<'a, 'b, T> Join for &'a Read<'b, T>
Source§unsafe fn open(self) -> (Self::Mask, Self::Value)
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
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
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§impl<'a, 'b, T> LendJoin for &'a Read<'b, T>
impl<'a, 'b, T> LendJoin for &'a Read<'b, T>
Source§unsafe fn open(self) -> (Self::Mask, Self::Value)
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
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
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,
fn lend_join(self) -> JoinLendIter<Self>where
Self: Sized,
Create a joined lending iterator over the contents.
Source§impl<'a, 'b, T> ParJoin for &'a Read<'b, T>
impl<'a, 'b, T> ParJoin for &'a Read<'b, T>
Source§unsafe fn open(self) -> (Self::Mask, Self::Value)
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
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
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,
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 Read<'a, T, F>where
T: Resource,
F: SetupHandler<T>,
impl<'a, T, F> SystemData<'a> for Read<'a, T, F>where
T: Resource,
F: SetupHandler<T>,
Source§fn fetch(world: &'a World) -> Read<'a, T, F>
fn fetch(world: &'a World) -> Read<'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.impl<'a, 'b, T> RepeatableLendGet for &'a Read<'b, T>
Auto Trait Implementations§
impl<'a, T, F> Freeze for Read<'a, T, F>
impl<'a, T, F = DefaultProvider> !RefUnwindSafe for Read<'a, T, F>
impl<'a, T, F> Send for Read<'a, T, F>
impl<'a, T, F> Sync for Read<'a, T, F>
impl<'a, T, F> Unpin for Read<'a, T, F>where
F: Unpin,
impl<'a, T, F = DefaultProvider> !UnwindSafe for Read<'a, T, F>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<'a, T> DynamicSystemData<'a> for Twhere
T: SystemData<'a>,
impl<'a, T> DynamicSystemData<'a> for Twhere
T: SystemData<'a>,
Source§type Accessor = StaticAccessor<T>
type Accessor = StaticAccessor<T>
The accessor of the
SystemData
, which specifies the read and write
dependencies and does the fetching.Source§fn setup(_: &StaticAccessor<T>, world: &mut World)
fn setup(_: &StaticAccessor<T>, world: &mut World)
Sets up
World
for fetching this system data.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more