Skip to main content

Chain

Trait Chain 

Source
pub trait Chain<Marker> {
    // Required method
    fn chain(self) -> SystemChain;
}
Expand description

Lets .chain() be called on a tuple of 2 or more systems to force them to run in that exact relative order within a Schedule, regardless of the order they (or other unrelated systems) are added in:

schedule.add_systems(
    (spawn_enemies, move_enemies, render)
        .chain()
        .after(setup)
        .priority(10),
);

Required Methods§

Dyn Compatibility§

This trait is dyn compatible.

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

Implementations on Foreign Types§

Source§

impl<A, PA, B, PB, C, PC, D, PD, E, PE, F, PF, G, PG, H, PH, I, PI, J, PJ, K, PK, L, PL> Chain<(PA, PB, PC, PD, PE, PF, PG, PH, PI, PJ, PK, PL)> for (A, B, C, D, E, F, G, H, I, J, K, L)
where A: IntoSystem<PA> + 'static, B: IntoSystem<PB> + 'static, C: IntoSystem<PC> + 'static, D: IntoSystem<PD> + 'static, E: IntoSystem<PE> + 'static, F: IntoSystem<PF> + 'static, G: IntoSystem<PG> + 'static, H: IntoSystem<PH> + 'static, I: IntoSystem<PI> + 'static, J: IntoSystem<PJ> + 'static, K: IntoSystem<PK> + 'static, L: IntoSystem<PL> + 'static,

Source§

impl<A, PA, B, PB, C, PC, D, PD, E, PE, F, PF, G, PG, H, PH, I, PI, J, PJ, K, PK> Chain<(PA, PB, PC, PD, PE, PF, PG, PH, PI, PJ, PK)> for (A, B, C, D, E, F, G, H, I, J, K)
where A: IntoSystem<PA> + 'static, B: IntoSystem<PB> + 'static, C: IntoSystem<PC> + 'static, D: IntoSystem<PD> + 'static, E: IntoSystem<PE> + 'static, F: IntoSystem<PF> + 'static, G: IntoSystem<PG> + 'static, H: IntoSystem<PH> + 'static, I: IntoSystem<PI> + 'static, J: IntoSystem<PJ> + 'static, K: IntoSystem<PK> + 'static,

Source§

impl<A, PA, B, PB, C, PC, D, PD, E, PE, F, PF, G, PG, H, PH, I, PI, J, PJ> Chain<(PA, PB, PC, PD, PE, PF, PG, PH, PI, PJ)> for (A, B, C, D, E, F, G, H, I, J)
where A: IntoSystem<PA> + 'static, B: IntoSystem<PB> + 'static, C: IntoSystem<PC> + 'static, D: IntoSystem<PD> + 'static, E: IntoSystem<PE> + 'static, F: IntoSystem<PF> + 'static, G: IntoSystem<PG> + 'static, H: IntoSystem<PH> + 'static, I: IntoSystem<PI> + 'static, J: IntoSystem<PJ> + 'static,

Source§

impl<A, PA, B, PB, C, PC, D, PD, E, PE, F, PF, G, PG, H, PH, I, PI> Chain<(PA, PB, PC, PD, PE, PF, PG, PH, PI)> for (A, B, C, D, E, F, G, H, I)
where A: IntoSystem<PA> + 'static, B: IntoSystem<PB> + 'static, C: IntoSystem<PC> + 'static, D: IntoSystem<PD> + 'static, E: IntoSystem<PE> + 'static, F: IntoSystem<PF> + 'static, G: IntoSystem<PG> + 'static, H: IntoSystem<PH> + 'static, I: IntoSystem<PI> + 'static,

Source§

impl<A, PA, B, PB, C, PC, D, PD, E, PE, F, PF, G, PG, H, PH> Chain<(PA, PB, PC, PD, PE, PF, PG, PH)> for (A, B, C, D, E, F, G, H)
where A: IntoSystem<PA> + 'static, B: IntoSystem<PB> + 'static, C: IntoSystem<PC> + 'static, D: IntoSystem<PD> + 'static, E: IntoSystem<PE> + 'static, F: IntoSystem<PF> + 'static, G: IntoSystem<PG> + 'static, H: IntoSystem<PH> + 'static,

Source§

impl<A, PA, B, PB, C, PC, D, PD, E, PE, F, PF, G, PG> Chain<(PA, PB, PC, PD, PE, PF, PG)> for (A, B, C, D, E, F, G)
where A: IntoSystem<PA> + 'static, B: IntoSystem<PB> + 'static, C: IntoSystem<PC> + 'static, D: IntoSystem<PD> + 'static, E: IntoSystem<PE> + 'static, F: IntoSystem<PF> + 'static, G: IntoSystem<PG> + 'static,

Source§

impl<A, PA, B, PB, C, PC, D, PD, E, PE, F, PF> Chain<(PA, PB, PC, PD, PE, PF)> for (A, B, C, D, E, F)
where A: IntoSystem<PA> + 'static, B: IntoSystem<PB> + 'static, C: IntoSystem<PC> + 'static, D: IntoSystem<PD> + 'static, E: IntoSystem<PE> + 'static, F: IntoSystem<PF> + 'static,

Source§

impl<A, PA, B, PB, C, PC, D, PD, E, PE> Chain<(PA, PB, PC, PD, PE)> for (A, B, C, D, E)
where A: IntoSystem<PA> + 'static, B: IntoSystem<PB> + 'static, C: IntoSystem<PC> + 'static, D: IntoSystem<PD> + 'static, E: IntoSystem<PE> + 'static,

Source§

impl<A, PA, B, PB, C, PC, D, PD> Chain<(PA, PB, PC, PD)> for (A, B, C, D)
where A: IntoSystem<PA> + 'static, B: IntoSystem<PB> + 'static, C: IntoSystem<PC> + 'static, D: IntoSystem<PD> + 'static,

Source§

impl<A, PA, B, PB, C, PC> Chain<(PA, PB, PC)> for (A, B, C)
where A: IntoSystem<PA> + 'static, B: IntoSystem<PB> + 'static, C: IntoSystem<PC> + 'static,

Source§

impl<A, PA, B, PB> Chain<(PA, PB)> for (A, B)
where A: IntoSystem<PA> + 'static, B: IntoSystem<PB> + 'static,

Implementors§