Trait shred::RunNow

source ·
pub trait RunNow<'a> {
    // Required methods
    fn run_now(&mut self, world: &'a World);
    fn setup(&mut self, world: &mut World);

    // Provided method
    fn dispose(self: Box<Self>, world: &mut World) { ... }
}
Expand description

Trait for fetching data and running systems. Automatically implemented for systems.

Required Methods§

source

fn run_now(&mut self, world: &'a World)

Runs the system now.

§Panics

Panics if the system tries to fetch resources which are borrowed in an incompatible way already (tries to read from a resource which is already written to or tries to write to a resource which is read from).

source

fn setup(&mut self, world: &mut World)

Sets up World for a later call to run_now.

Provided Methods§

source

fn dispose(self: Box<Self>, world: &mut World)

Performs clean up that requires resources from the World. This commonly removes components from world which depend on external resources.

Implementors§

source§

impl<'a, 'b> RunNow<'a> for SendDispatcher<'b>

source§

impl<'a, 'b, 'c> RunNow<'a> for Dispatcher<'b, 'c>

source§

impl<'a, P, T> RunNow<'a> for ParSeq<P, T>
where P: Borrow<ThreadPool>, T: for<'b> RunWithPool<'b>,

source§

impl<'a, T> RunNow<'a> for T
where T: System<'a>,