[][src]Trait bevy_ecs::FetchResource

pub trait FetchResource<'a>: Sized {
    type Item: UnsafeClone;
    fn access() -> TypeAccess;
fn borrow(resources: &Resources);
fn release(resources: &Resources);
unsafe fn get(
        resources: &'a Resources,
        system_id: Option<SystemId>
    ) -> Self::Item; unsafe fn is_some(
        _resources: &'a Resources,
        _system_id: Option<SystemId>
    ) -> bool { ... } }

Streaming iterators over contiguous homogeneous ranges of resources

Associated Types

type Item: UnsafeClone

Type of value to be fetched

Loading content...

Required methods

fn access() -> TypeAccess

fn borrow(resources: &Resources)

fn release(resources: &Resources)

unsafe fn get(
    resources: &'a Resources,
    system_id: Option<SystemId>
) -> Self::Item

Loading content...

Provided methods

unsafe fn is_some(
    _resources: &'a Resources,
    _system_id: Option<SystemId>
) -> bool

Loading content...

Implementations on Foreign Types

impl<'a, O: FetchResource<'a>, N: FetchResource<'a>, M: FetchResource<'a>, L: FetchResource<'a>, K: FetchResource<'a>, J: FetchResource<'a>, I: FetchResource<'a>, H: FetchResource<'a>, G: FetchResource<'a>, F: FetchResource<'a>, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for (O, N, M, L, K, J, I, H, G, F, E, D, C, B, A)[src]

type Item = (O::Item, N::Item, M::Item, L::Item, K::Item, J::Item, I::Item, H::Item, G::Item, F::Item, E::Item, D::Item, C::Item, B::Item, A::Item)

impl<'a, N: FetchResource<'a>, M: FetchResource<'a>, L: FetchResource<'a>, K: FetchResource<'a>, J: FetchResource<'a>, I: FetchResource<'a>, H: FetchResource<'a>, G: FetchResource<'a>, F: FetchResource<'a>, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for (N, M, L, K, J, I, H, G, F, E, D, C, B, A)[src]

type Item = (N::Item, M::Item, L::Item, K::Item, J::Item, I::Item, H::Item, G::Item, F::Item, E::Item, D::Item, C::Item, B::Item, A::Item)

impl<'a, M: FetchResource<'a>, L: FetchResource<'a>, K: FetchResource<'a>, J: FetchResource<'a>, I: FetchResource<'a>, H: FetchResource<'a>, G: FetchResource<'a>, F: FetchResource<'a>, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for (M, L, K, J, I, H, G, F, E, D, C, B, A)[src]

type Item = (M::Item, L::Item, K::Item, J::Item, I::Item, H::Item, G::Item, F::Item, E::Item, D::Item, C::Item, B::Item, A::Item)

impl<'a, L: FetchResource<'a>, K: FetchResource<'a>, J: FetchResource<'a>, I: FetchResource<'a>, H: FetchResource<'a>, G: FetchResource<'a>, F: FetchResource<'a>, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for (L, K, J, I, H, G, F, E, D, C, B, A)[src]

type Item = (L::Item, K::Item, J::Item, I::Item, H::Item, G::Item, F::Item, E::Item, D::Item, C::Item, B::Item, A::Item)

impl<'a, K: FetchResource<'a>, J: FetchResource<'a>, I: FetchResource<'a>, H: FetchResource<'a>, G: FetchResource<'a>, F: FetchResource<'a>, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for (K, J, I, H, G, F, E, D, C, B, A)[src]

type Item = (K::Item, J::Item, I::Item, H::Item, G::Item, F::Item, E::Item, D::Item, C::Item, B::Item, A::Item)

impl<'a, J: FetchResource<'a>, I: FetchResource<'a>, H: FetchResource<'a>, G: FetchResource<'a>, F: FetchResource<'a>, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for (J, I, H, G, F, E, D, C, B, A)[src]

type Item = (J::Item, I::Item, H::Item, G::Item, F::Item, E::Item, D::Item, C::Item, B::Item, A::Item)

impl<'a, I: FetchResource<'a>, H: FetchResource<'a>, G: FetchResource<'a>, F: FetchResource<'a>, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for (I, H, G, F, E, D, C, B, A)[src]

type Item = (I::Item, H::Item, G::Item, F::Item, E::Item, D::Item, C::Item, B::Item, A::Item)

impl<'a, H: FetchResource<'a>, G: FetchResource<'a>, F: FetchResource<'a>, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for (H, G, F, E, D, C, B, A)[src]

type Item = (H::Item, G::Item, F::Item, E::Item, D::Item, C::Item, B::Item, A::Item)

impl<'a, G: FetchResource<'a>, F: FetchResource<'a>, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for (G, F, E, D, C, B, A)[src]

type Item = (G::Item, F::Item, E::Item, D::Item, C::Item, B::Item, A::Item)

impl<'a, F: FetchResource<'a>, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for (F, E, D, C, B, A)[src]

type Item = (F::Item, E::Item, D::Item, C::Item, B::Item, A::Item)

impl<'a, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for (E, D, C, B, A)[src]

type Item = (E::Item, D::Item, C::Item, B::Item, A::Item)

impl<'a, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for (D, C, B, A)[src]

type Item = (D::Item, C::Item, B::Item, A::Item)

impl<'a, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for (C, B, A)[src]

type Item = (C::Item, B::Item, A::Item)

impl<'a, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for (B, A)[src]

type Item = (B::Item, A::Item)

impl<'a, A: FetchResource<'a>> FetchResource<'a> for (A,)[src]

type Item = (A::Item,)

impl<'a> FetchResource<'a> for ()[src]

type Item = ()

Loading content...

Implementors

impl<'a> FetchResource<'a> for FetchResourceOr<()>[src]

type Item = OrRes<()>

impl<'a, A: FetchResource<'a>> FetchResource<'a> for FetchResourceOr<(A,)>[src]

type Item = OrRes<(A::Item,)>

impl<'a, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for FetchResourceOr<(B, A)>[src]

type Item = OrRes<(B::Item, A::Item)>

impl<'a, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for FetchResourceOr<(C, B, A)>[src]

type Item = OrRes<(C::Item, B::Item, A::Item)>

impl<'a, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for FetchResourceOr<(D, C, B, A)>[src]

type Item = OrRes<(D::Item, C::Item, B::Item, A::Item)>

impl<'a, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for FetchResourceOr<(E, D, C, B, A)>[src]

type Item = OrRes<(E::Item, D::Item, C::Item, B::Item, A::Item)>

impl<'a, F: FetchResource<'a>, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for FetchResourceOr<(F, E, D, C, B, A)>[src]

type Item = OrRes<(F::Item, E::Item, D::Item, C::Item, B::Item, A::Item)>

impl<'a, G: FetchResource<'a>, F: FetchResource<'a>, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for FetchResourceOr<(G, F, E, D, C, B, A)>[src]

type Item = OrRes<(G::Item, F::Item, E::Item, D::Item, C::Item, B::Item, A::Item)>

impl<'a, H: FetchResource<'a>, G: FetchResource<'a>, F: FetchResource<'a>, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for FetchResourceOr<(H, G, F, E, D, C, B, A)>[src]

type Item = OrRes<(H::Item, G::Item, F::Item, E::Item, D::Item, C::Item, B::Item, A::Item)>

impl<'a, I: FetchResource<'a>, H: FetchResource<'a>, G: FetchResource<'a>, F: FetchResource<'a>, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for FetchResourceOr<(I, H, G, F, E, D, C, B, A)>[src]

type Item = OrRes<(I::Item, H::Item, G::Item, F::Item, E::Item, D::Item, C::Item, B::Item, A::Item)>

impl<'a, J: FetchResource<'a>, I: FetchResource<'a>, H: FetchResource<'a>, G: FetchResource<'a>, F: FetchResource<'a>, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for FetchResourceOr<(J, I, H, G, F, E, D, C, B, A)>[src]

type Item = OrRes<(J::Item, I::Item, H::Item, G::Item, F::Item, E::Item, D::Item, C::Item, B::Item, A::Item)>

impl<'a, K: FetchResource<'a>, J: FetchResource<'a>, I: FetchResource<'a>, H: FetchResource<'a>, G: FetchResource<'a>, F: FetchResource<'a>, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for FetchResourceOr<(K, J, I, H, G, F, E, D, C, B, A)>[src]

type Item = OrRes<(K::Item, J::Item, I::Item, H::Item, G::Item, F::Item, E::Item, D::Item, C::Item, B::Item, A::Item)>

impl<'a, L: FetchResource<'a>, K: FetchResource<'a>, J: FetchResource<'a>, I: FetchResource<'a>, H: FetchResource<'a>, G: FetchResource<'a>, F: FetchResource<'a>, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for FetchResourceOr<(L, K, J, I, H, G, F, E, D, C, B, A)>[src]

type Item = OrRes<(L::Item, K::Item, J::Item, I::Item, H::Item, G::Item, F::Item, E::Item, D::Item, C::Item, B::Item, A::Item)>

impl<'a, M: FetchResource<'a>, L: FetchResource<'a>, K: FetchResource<'a>, J: FetchResource<'a>, I: FetchResource<'a>, H: FetchResource<'a>, G: FetchResource<'a>, F: FetchResource<'a>, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for FetchResourceOr<(M, L, K, J, I, H, G, F, E, D, C, B, A)>[src]

type Item = OrRes<(M::Item, L::Item, K::Item, J::Item, I::Item, H::Item, G::Item, F::Item, E::Item, D::Item, C::Item, B::Item, A::Item)>

impl<'a, N: FetchResource<'a>, M: FetchResource<'a>, L: FetchResource<'a>, K: FetchResource<'a>, J: FetchResource<'a>, I: FetchResource<'a>, H: FetchResource<'a>, G: FetchResource<'a>, F: FetchResource<'a>, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for FetchResourceOr<(N, M, L, K, J, I, H, G, F, E, D, C, B, A)>[src]

type Item = OrRes<(N::Item, M::Item, L::Item, K::Item, J::Item, I::Item, H::Item, G::Item, F::Item, E::Item, D::Item, C::Item, B::Item, A::Item)>

impl<'a, O: FetchResource<'a>, N: FetchResource<'a>, M: FetchResource<'a>, L: FetchResource<'a>, K: FetchResource<'a>, J: FetchResource<'a>, I: FetchResource<'a>, H: FetchResource<'a>, G: FetchResource<'a>, F: FetchResource<'a>, E: FetchResource<'a>, D: FetchResource<'a>, C: FetchResource<'a>, B: FetchResource<'a>, A: FetchResource<'a>> FetchResource<'a> for FetchResourceOr<(O, N, M, L, K, J, I, H, G, F, E, D, C, B, A)>[src]

type Item = OrRes<(O::Item, N::Item, M::Item, L::Item, K::Item, J::Item, I::Item, H::Item, G::Item, F::Item, E::Item, D::Item, C::Item, B::Item, A::Item)>

impl<'a, T: Resource + FromResources> FetchResource<'a> for FetchResourceLocalMut<T>[src]

type Item = Local<'a, T>

impl<'a, T: Resource> FetchResource<'a> for FetchResourceChanged<T>[src]

type Item = ChangedRes<'a, T>

impl<'a, T: Resource> FetchResource<'a> for FetchResourceRead<T>[src]

type Item = Res<'a, T>

impl<'a, T: Resource> FetchResource<'a> for FetchResourceWrite<T>[src]

type Item = ResMut<'a, T>

Loading content...