logo
pub struct FunctionSystem<In, Out, Param, Marker, F> where
    Param: SystemParam
{ /* private fields */ }
Expand description

The System counter part of an ordinary function.

You get this by calling IntoSystem::into_system on a function that only accepts SystemParams. The output of the system becomes the functions return type, while the input becomes the functions In tagged parameter or () if no such parameter exists.

FunctionSystem must be .initialized before they can be run.

Trait Implementations

The system’s input. See In for FunctionSystems. Read more

The system’s output.

Returns the system’s name.

Returns the system’s component Access.

Returns the system’s archetype component Access.

Returns true if the system is Send.

Runs the system with the given input in the world. Unlike System::run, this function takes a shared reference to World and may therefore break Rust’s aliasing rules, making it unsafe to call. Read more

Initialize the system.

Update the system’s archetype component Access.

The default labels for the system

Runs the system with the given input in the world.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Return the T ShaderType for self. When used in AsBindGroup derives, it is safe to assume that all images in self exist. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait. Read more

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait. Read more

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s. Read more

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s. Read more

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Chain this system A with another system B creating a new system that feeds system A’s output into system B, returning the output of system B. Read more

Turns this value into its corresponding System.

Assigns a run criteria to the system. Can be a new descriptor or a label of a run criteria defined elsewhere. Read more

Assigns a label to the system; there can be more than one, and it doesn’t have to be unique.

Specifies that the system should run before systems with the given label.

Specifies that the system should run after systems with the given label.

Specifies that the system is exempt from execution order ambiguity detection with other systems in this set. Read more

Assigns a label to the criteria. Must be unique.

Assigns a label to the criteria. If the given label is already in use, this criteria will be discarded before initialization. Read more

Specifies that this criteria must be evaluated before a criteria with the given label.

Specifies that this criteria must be evaluated after a criteria with the given label.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more