Trait shipyard::Borrow[][src]

pub trait Borrow<'a> {
    type View;
    fn borrow(world: &'a World) -> Result<Self::View, GetStorage>;
}

Allows a type to be borrowed by World::borrow, World::run and worklaods.

Associated Types

Loading content...

Required methods

fn borrow(world: &'a World) -> Result<Self::View, GetStorage>[src]

This function is where the actual borrowing happens.

Loading content...

Implementations on Foreign Types

impl<'a, T: Borrow<'a>> Borrow<'a> for Option<T>[src]

type View = Option<T::View>

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

type View = (A::View,)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Loading content...

Implementors

impl<'a> Borrow<'a> for AllStoragesMutBorrower[src]

type View = AllStoragesViewMut<'a>

impl<'a> Borrow<'a> for EntitiesBorrower[src]

type View = EntitiesView<'a>

impl<'a> Borrow<'a> for EntitiesMutBorrower[src]

type View = EntitiesViewMut<'a>

impl<'a> Borrow<'a> for UnitBorrower[src]

type View = ()

impl<'a, T: 'static + Send + Sync> Borrow<'a> for UniqueViewBorrower<T>[src]

type View = UniqueView<'a, T>

impl<'a, T: 'static + Send + Sync> Borrow<'a> for UniqueViewMutBorrower<T>[src]

type View = UniqueViewMut<'a, T>

impl<'a, T: 'static + Send + Sync> Borrow<'a> for ViewBorrower<T>[src]

type View = View<'a, T>

impl<'a, T: 'static + Send + Sync> Borrow<'a> for ViewMutBorrower<T>[src]

type View = ViewMut<'a, T>

impl<'a, T: 'static + Send> Borrow<'a> for NonSync<UniqueViewBorrower<T>>[src]

type View = NonSync<UniqueView<'a, T>>

impl<'a, T: 'static + Send> Borrow<'a> for NonSync<UniqueViewMutBorrower<T>>[src]

type View = NonSync<UniqueViewMut<'a, T>>

impl<'a, T: 'static + Send> Borrow<'a> for NonSync<ViewBorrower<T>>[src]

type View = NonSync<View<'a, T>>

impl<'a, T: 'static + Send> Borrow<'a> for NonSync<ViewMutBorrower<T>>[src]

type View = NonSync<ViewMut<'a, T>>

impl<'a, T: 'static + Sync> Borrow<'a> for NonSend<UniqueViewBorrower<T>>[src]

type View = NonSend<UniqueView<'a, T>>

impl<'a, T: 'static + Sync> Borrow<'a> for NonSend<UniqueViewMutBorrower<T>>[src]

type View = NonSend<UniqueViewMut<'a, T>>

impl<'a, T: 'static + Sync> Borrow<'a> for NonSend<ViewBorrower<T>>[src]

type View = NonSend<View<'a, T>>

impl<'a, T: 'static + Sync> Borrow<'a> for NonSend<ViewMutBorrower<T>>[src]

type View = NonSend<ViewMut<'a, T>>

impl<'a, T: 'static> Borrow<'a> for NonSendSync<UniqueViewBorrower<T>>[src]

type View = NonSendSync<UniqueView<'a, T>>

impl<'a, T: 'static> Borrow<'a> for NonSendSync<UniqueViewMutBorrower<T>>[src]

type View = NonSendSync<UniqueViewMut<'a, T>>

impl<'a, T: 'static> Borrow<'a> for NonSendSync<ViewBorrower<T>>[src]

type View = NonSendSync<View<'a, T>>

impl<'a, T: 'static> Borrow<'a> for NonSendSync<ViewMutBorrower<T>>[src]

type View = NonSendSync<ViewMut<'a, T>>

Loading content...