Struct rin::ecs::Write [−][src]
pub struct Write<'a, T> where
T: Component,
<T as Component>::Storage: for<'s> Storage<'s, T>, { /* fields omitted */ }
Operator that matches all entity’s that contain this component for read and write access
for pos in entities.iter_for_mut::<Write<Position>>(){ //... }
Will iterate over all position components
Trait Implementations
impl<'a, T> ChangesData<'a> for Write<'a, T> where
T: ComponentSend,
<T as Component>::Storage: for<'b> Storage<'b, T>,
WriteGuardRef<'b, <T as Component>::Storage, <T as Component>::MutStorageCacheGuard>: for<'b> IntoIterMut,
WriteGuardRef<'a, <T as Component>::Storage, <T as Component>::MutStorageCacheGuard>: IntoChangesIter<'a, T>,
<WriteGuardRef<'a, <T as Component>::Storage, <T as Component>::MutStorageCacheGuard> as IntoChangesIter<'a, T>>::ChangesItem == <<T as Component>::Storage as Storage<'a, T>>::GetMut,
[src]
impl<'a, T> ChangesData<'a> for Write<'a, T> where
T: ComponentSend,
<T as Component>::Storage: for<'b> Storage<'b, T>,
WriteGuardRef<'b, <T as Component>::Storage, <T as Component>::MutStorageCacheGuard>: for<'b> IntoIterMut,
WriteGuardRef<'a, <T as Component>::Storage, <T as Component>::MutStorageCacheGuard>: IntoChangesIter<'a, T>,
<WriteGuardRef<'a, <T as Component>::Storage, <T as Component>::MutStorageCacheGuard> as IntoChangesIter<'a, T>>::ChangesItem == <<T as Component>::Storage as Storage<'a, T>>::GetMut,
[src]type SubStorage = StorageWrite<'a, <WriteGuardRef<'a, <T as Component>::Storage, <T as Component>::MutStorageCacheGuard> as IntoChangesIter<'a, T>>::RawSubStorage, <Write<'a, T> as UnorderedData<'a>>::Components, <WriteGuardRef<'a, <T as Component>::Storage, <T as Component>::MutStorageCacheGuard> as IntoChangesIter<'a, T>>::SubStorage>
pub fn extend_changes<F>(entities: &'a Entities<'_>, f: F) where
F: FnMut(<Write<'a, T> as UnorderedData<'a>>::ComponentsRef) -> bool,
[src]
F: FnMut(<Write<'a, T> as UnorderedData<'a>>::ComponentsRef) -> bool,
pub unsafe fn storage_and_changes(
entities: &'a Entities<'_>
) -> Option<(<Write<'a, T> as ChangesData<'a>>::SubStorage, &'a mut HashSet<usize, RandomState>)>
[src]
entities: &'a Entities<'_>
) -> Option<(<Write<'a, T> as ChangesData<'a>>::SubStorage, &'a mut HashSet<usize, RandomState>)>
impl<'a, T> DataAccesses for Write<'a, T> where
T: Component,
<T as Component>::Storage: for<'s> Storage<'s, T>,
[src]
impl<'a, T> DataAccesses for Write<'a, T> where
T: Component,
<T as Component>::Storage: for<'s> Storage<'s, T>,
[src]impl<'a, T> Deref for Write<'a, T> where
T: Component,
<<T as Component>::Storage as Storage<'a, T>>::GetMut: Borrow<<<T as Component>::Storage as Storage<'a, T>>::DerefTarget>,
<T as Component>::Storage: for<'s> Storage<'s, T>,
[src]
impl<'a, T> Deref for Write<'a, T> where
T: Component,
<<T as Component>::Storage as Storage<'a, T>>::GetMut: Borrow<<<T as Component>::Storage as Storage<'a, T>>::DerefTarget>,
<T as Component>::Storage: for<'s> Storage<'s, T>,
[src]impl<'a, T> DerefMut for Write<'a, T> where
T: Component,
<<T as Component>::Storage as Storage<'a, T>>::GetMut: BorrowMut<<<T as Component>::Storage as Storage<'a, T>>::DerefTarget>,
<T as Component>::Storage: for<'s> Storage<'s, T>,
[src]
impl<'a, T> DerefMut for Write<'a, T> where
T: Component,
<<T as Component>::Storage as Storage<'a, T>>::GetMut: BorrowMut<<<T as Component>::Storage as Storage<'a, T>>::DerefTarget>,
<T as Component>::Storage: for<'s> Storage<'s, T>,
[src]impl<'a, T> FromComponent<'a, <<T as Component>::Storage as Storage<'a, T>>::GetMut> for Write<'a, T> where
T: Component,
<T as Component>::Storage: for<'s> Storage<'s, T>,
[src]
impl<'a, T> FromComponent<'a, <<T as Component>::Storage as Storage<'a, T>>::GetMut> for Write<'a, T> where
T: Component,
<T as Component>::Storage: for<'s> Storage<'s, T>,
[src]impl<'r, 'a, C> StorageEntitiesExt<'a, Write<'a, C>> for &'r mut CreationSto<'a, C> where
C: Component,
<C as Component>::Storage: for<'s> Storage<'s, C>,
[src]
impl<'r, 'a, C> StorageEntitiesExt<'a, Write<'a, C>> for &'r mut CreationSto<'a, C> where
C: Component,
<C as Component>::Storage: for<'s> Storage<'s, C>,
[src]type Component = <<C as Component>::Storage as Storage<'r, C>>::GetMut
type IntoStorage = StorageWrite<'a, <C as Component>::Storage, C, &'r mut <C as Component>::Storage>
pub fn into_storage(
self
) -> Option<<&'r mut CreationSto<'a, C> as StorageEntitiesExt<'a, Write<'a, C>>>::IntoStorage>
[src]
self
) -> Option<<&'r mut CreationSto<'a, C> as StorageEntitiesExt<'a, Write<'a, C>>>::IntoStorage>
pub fn entities(&self) -> &Entities<'a>
[src]
pub fn get(
self,
entity: &Entity
) -> Option<<&'r mut CreationSto<'a, C> as StorageEntitiesExt<'a, Write<'a, C>>>::Component>
[src]
self,
entity: &Entity
) -> Option<<&'r mut CreationSto<'a, C> as StorageEntitiesExt<'a, Write<'a, C>>>::Component>
impl<'a, T> UnorderedData<'a> for Write<'a, T> where
T: Component,
WriteGuardRef<'a, <T as Component>::Storage, <T as Component>::MutStorageCacheGuard>: IntoIterMut,
<T as Component>::Storage: for<'s> Storage<'s, T>,
[src]
impl<'a, T> UnorderedData<'a> for Write<'a, T> where
T: Component,
WriteGuardRef<'a, <T as Component>::Storage, <T as Component>::MutStorageCacheGuard>: IntoIterMut,
<T as Component>::Storage: for<'s> Storage<'s, T>,
[src]type Iter = IterOptionWrapper<<WriteGuardRef<'a, <T as Component>::Storage, <T as Component>::MutStorageCacheGuard> as IntoIterMut>::IterMut>
type IterMut = IterOptionWrapper<<WriteGuardRef<'a, <T as Component>::Storage, <T as Component>::MutStorageCacheGuard> as IntoIterMut>::IterMut>
type Components = T
type ComponentsRef = <<T as Component>::Storage as Storage<'a, T>>::GetMut
type Storage = StorageWrite<'a, <T as Component>::Storage, <Write<'a, T> as UnorderedData<'a>>::Components, WriteGuardRef<'a, <T as Component>::Storage, <T as Component>::MutStorageCacheGuard>>
pub fn query_mask<E>(entities: &E) -> Bitmask where
E: EntitiesStorage,
[src]
E: EntitiesStorage,
pub fn into_iter<E>(
entities: &'a E
) -> <Write<'a, T> as UnorderedData<'a>>::Iter where
E: EntitiesStorage,
[src]
entities: &'a E
) -> <Write<'a, T> as UnorderedData<'a>>::Iter where
E: EntitiesStorage,
pub fn into_iter_mut<E>(
entities: &'a E
) -> <Write<'a, T> as UnorderedData<'a>>::Iter where
E: EntitiesStorage,
[src]
entities: &'a E
) -> <Write<'a, T> as UnorderedData<'a>>::Iter where
E: EntitiesStorage,
pub fn storage<E>(
entities: &'a E
) -> Option<<Write<'a, T> as UnorderedData<'a>>::Storage> where
E: EntitiesStorage,
[src]
entities: &'a E
) -> Option<<Write<'a, T> as UnorderedData<'a>>::Storage> where
E: EntitiesStorage,
impl<'_, '_, T> SafeIter<'_> for Write<'_, T> where
T: Component,
<T as Component>::Storage: for<'s> Storage<'s, T>,
[src]
T: Component,
<T as Component>::Storage: for<'s> Storage<'s, T>,
Auto Trait Implementations
impl<'a, T> RefUnwindSafe for Write<'a, T> where
<<T as Component>::Storage as Storage<'a, T>>::GetMut: RefUnwindSafe,
<<T as Component>::Storage as Storage<'a, T>>::GetMut: RefUnwindSafe,
impl<'a, T> Send for Write<'a, T> where
<<T as Component>::Storage as Storage<'a, T>>::GetMut: Send,
<<T as Component>::Storage as Storage<'a, T>>::GetMut: Send,
impl<'a, T> Sync for Write<'a, T> where
<<T as Component>::Storage as Storage<'a, T>>::GetMut: Sync,
<<T as Component>::Storage as Storage<'a, T>>::GetMut: Sync,
impl<'a, T> Unpin for Write<'a, T> where
<<T as Component>::Storage as Storage<'a, T>>::GetMut: Unpin,
<<T as Component>::Storage as Storage<'a, T>>::GetMut: Unpin,
impl<'a, T> UnwindSafe for Write<'a, T> where
<<T as Component>::Storage as Storage<'a, T>>::GetMut: UnwindSafe,
<<T as Component>::Storage as Storage<'a, T>>::GetMut: UnwindSafe,
Blanket Implementations
impl<U, T> AsUniform<dyn Deref<Target = [[f32; 3]; 3]> + 'static> for U where
T: AsUniform<[[f32; 3]; 3]>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = [[f32; 3]; 3]> + 'static> for U where
T: AsUniform<[[f32; 3]; 3]>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = [[f32; 4]; 4]> + 'static> for U where
T: AsUniform<[[f32; 4]; 4]>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = [[f32; 4]; 4]> + 'static> for U where
T: AsUniform<[[f32; 4]; 4]>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = [f32; 2]> + 'static> for U where
T: AsUniform<[f32; 2]>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = [f32; 2]> + 'static> for U where
T: AsUniform<[f32; 2]>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = [f32; 3]> + 'static> for U where
T: AsUniform<[f32; 3]>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = [f32; 3]> + 'static> for U where
T: AsUniform<[f32; 3]>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = [f32; 4]> + 'static> for U where
T: AsUniform<dyn AsRef<[f32; 4]> + 'static>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = [f32; 4]> + 'static> for U where
T: AsUniform<dyn AsRef<[f32; 4]> + 'static>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = [i32; 2]> + 'static> for U where
T: AsUniform<[i32; 2]>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = [i32; 2]> + 'static> for U where
T: AsUniform<[i32; 2]>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = [i32; 3]> + 'static> for U where
T: AsUniform<[i32; 3]>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = [i32; 3]> + 'static> for U where
T: AsUniform<[i32; 3]>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = [i32; 4]> + 'static> for U where
T: AsUniform<dyn AsRef<[i32; 4]> + 'static>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = [i32; 4]> + 'static> for U where
T: AsUniform<dyn AsRef<[i32; 4]> + 'static>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = [u32; 2]> + 'static> for U where
T: AsUniform<[u32; 2]>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = [u32; 2]> + 'static> for U where
T: AsUniform<[u32; 2]>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = [u32; 3]> + 'static> for U where
T: AsUniform<[u32; 3]>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = [u32; 3]> + 'static> for U where
T: AsUniform<[u32; 3]>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = [u32; 4]> + 'static> for U where
T: AsUniform<dyn AsRef<[u32; 4]> + 'static>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = [u32; 4]> + 'static> for U where
T: AsUniform<dyn AsRef<[u32; 4]> + 'static>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<[[f32; 3]; 3]> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<[[f32; 3]; 3]> + 'static>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<[[f32; 3]; 3]> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<[[f32; 3]; 3]> + 'static>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<[[f32; 4]; 4]> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<[[f32; 4]; 4]> + 'static>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<[[f32; 4]; 4]> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<[[f32; 4]; 4]> + 'static>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<[f32; 2]> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<[f32; 2]> + 'static>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<[f32; 2]> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<[f32; 2]> + 'static>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<[f32; 3]> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<[f32; 3]> + 'static>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<[f32; 3]> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<[f32; 3]> + 'static>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<[i32; 2]> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<[i32; 2]> + 'static>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<[i32; 2]> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<[i32; 2]> + 'static>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<[i32; 3]> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<[i32; 3]> + 'static>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<[i32; 3]> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<[i32; 3]> + 'static>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<[u32; 2]> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<[u32; 2]> + 'static>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<[u32; 2]> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<[u32; 2]> + 'static>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<[u32; 3]> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<[u32; 3]> + 'static>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<[u32; 3]> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<[u32; 3]> + 'static>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<f32> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<f32> + 'static>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<f32> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<f32> + 'static>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<i32> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<i32> + 'static>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<i32> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<i32> + 'static>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<u32> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<u32> + 'static>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = dyn AsRef<u32> + 'static> + 'static> for U where
T: AsUniform<dyn AsRef<u32> + 'static>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = i32> + 'static> for U where
T: AsUniform<i32>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = i32> + 'static> for U where
T: AsUniform<i32>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<U, T> AsUniform<dyn Deref<Target = u32> + 'static> for U where
T: AsUniform<u32>,
U: Deref<Target = T>,
[src]
impl<U, T> AsUniform<dyn Deref<Target = u32> + 'static> for U where
T: AsUniform<u32>,
U: Deref<Target = T>,
[src]pub fn as_uniform(&self) -> UniformValue
[src]
impl<T> DowncastSync for T where
T: Any + Send + Sync,
[src]
impl<T> DowncastSync for T where
T: Any + Send + Sync,
[src]impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
[src]
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
[src]pub fn to_subset(&self) -> Option<SS>
[src]
pub fn is_in_subset(&self) -> bool
[src]
pub fn to_subset_unchecked(&self) -> SS
[src]
pub fn from_subset(element: &SS) -> SP
[src]
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
[src]
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
[src]