Skip to main content

DepsTuple

Trait DepsTuple 

Source
pub trait DepsTuple: Sized {
    // Required methods
    fn resolve(store: &Store) -> Result<Self, AppError>;
    fn dep_type_ids() -> Vec<TypeId>;
}
Expand description

依赖元组 trait — 用宏为不同元数自动实现

从 Store 解析所有依赖,返回元组。

Required Methods§

Source

fn resolve(store: &Store) -> Result<Self, AppError>

从 Store 解析所有依赖

Source

fn dep_type_ids() -> Vec<TypeId>

返回依赖的 TypeId 列表(用于拓扑排序)

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl DepsTuple for ()

Source§

fn resolve(_store: &Store) -> RIE<Self>

Source§

fn dep_type_ids() -> Vec<TypeId>

Source§

impl<A: Component, B: Component, C: Component, D: Component, E: Component, F: Component, G: Component, H: Component, I: Component, J: Component, K: Component, L: Component, M: Component, N: Component, O: Component, P: Component> DepsTuple for (Arc<A>, Arc<B>, Arc<C>, Arc<D>, Arc<E>, Arc<F>, Arc<G>, Arc<H>, Arc<I>, Arc<J>, Arc<K>, Arc<L>, Arc<M>, Arc<N>, Arc<O>, Arc<P>)

Source§

impl<A: Component, B: Component, C: Component, D: Component, E: Component, F: Component, G: Component, H: Component, I: Component, J: Component, K: Component, L: Component, M: Component, N: Component, O: Component> DepsTuple for (Arc<A>, Arc<B>, Arc<C>, Arc<D>, Arc<E>, Arc<F>, Arc<G>, Arc<H>, Arc<I>, Arc<J>, Arc<K>, Arc<L>, Arc<M>, Arc<N>, Arc<O>)

Source§

impl<A: Component, B: Component, C: Component, D: Component, E: Component, F: Component, G: Component, H: Component, I: Component, J: Component, K: Component, L: Component, M: Component, N: Component> DepsTuple for (Arc<A>, Arc<B>, Arc<C>, Arc<D>, Arc<E>, Arc<F>, Arc<G>, Arc<H>, Arc<I>, Arc<J>, Arc<K>, Arc<L>, Arc<M>, Arc<N>)

Source§

impl<A: Component, B: Component, C: Component, D: Component, E: Component, F: Component, G: Component, H: Component, I: Component, J: Component, K: Component, L: Component, M: Component> DepsTuple for (Arc<A>, Arc<B>, Arc<C>, Arc<D>, Arc<E>, Arc<F>, Arc<G>, Arc<H>, Arc<I>, Arc<J>, Arc<K>, Arc<L>, Arc<M>)

Source§

impl<A: Component, B: Component, C: Component, D: Component, E: Component, F: Component, G: Component, H: Component, I: Component, J: Component, K: Component, L: Component> DepsTuple for (Arc<A>, Arc<B>, Arc<C>, Arc<D>, Arc<E>, Arc<F>, Arc<G>, Arc<H>, Arc<I>, Arc<J>, Arc<K>, Arc<L>)

Source§

impl<A: Component, B: Component, C: Component, D: Component, E: Component, F: Component, G: Component, H: Component, I: Component, J: Component, K: Component> DepsTuple for (Arc<A>, Arc<B>, Arc<C>, Arc<D>, Arc<E>, Arc<F>, Arc<G>, Arc<H>, Arc<I>, Arc<J>, Arc<K>)

Source§

impl<A: Component, B: Component, C: Component, D: Component, E: Component, F: Component, G: Component, H: Component, I: Component, J: Component> DepsTuple for (Arc<A>, Arc<B>, Arc<C>, Arc<D>, Arc<E>, Arc<F>, Arc<G>, Arc<H>, Arc<I>, Arc<J>)

Source§

impl<A: Component, B: Component, C: Component, D: Component, E: Component, F: Component, G: Component, H: Component, I: Component> DepsTuple for (Arc<A>, Arc<B>, Arc<C>, Arc<D>, Arc<E>, Arc<F>, Arc<G>, Arc<H>, Arc<I>)

Source§

impl<A: Component, B: Component, C: Component, D: Component, E: Component, F: Component, G: Component, H: Component> DepsTuple for (Arc<A>, Arc<B>, Arc<C>, Arc<D>, Arc<E>, Arc<F>, Arc<G>, Arc<H>)

Source§

impl<A: Component, B: Component, C: Component, D: Component, E: Component, F: Component, G: Component> DepsTuple for (Arc<A>, Arc<B>, Arc<C>, Arc<D>, Arc<E>, Arc<F>, Arc<G>)

Source§

impl<A: Component, B: Component, C: Component, D: Component, E: Component, F: Component> DepsTuple for (Arc<A>, Arc<B>, Arc<C>, Arc<D>, Arc<E>, Arc<F>)

Source§

impl<A: Component, B: Component, C: Component, D: Component, E: Component> DepsTuple for (Arc<A>, Arc<B>, Arc<C>, Arc<D>, Arc<E>)

Source§

impl<A: Component, B: Component, C: Component, D: Component> DepsTuple for (Arc<A>, Arc<B>, Arc<C>, Arc<D>)

Source§

impl<A: Component, B: Component, C: Component> DepsTuple for (Arc<A>, Arc<B>, Arc<C>)

Source§

impl<A: Component, B: Component> DepsTuple for (Arc<A>, Arc<B>)

Source§

impl<A: Component> DepsTuple for (Arc<A>,)

Implementors§