logo
pub struct Input<T> where
    T: Eq + Hash
{ /* private fields */ }
Expand description

A “press-able” input of type T.

This type can be used as a resource to keep the current state of an input, by reacting to events from the input. For a given input value:

In case multiple systems are checking for Input::just_pressed or Input::just_released but only one should react, for example in the case of triggering State change, you should consider clearing the input state, either by:

Notes when adding this resource for a new input type

When adding this resource for a new input type, you should:

Implementations

Register a press for input input.

Check if input has been pressed.

Check if any item in inputs has been pressed.

Register a release for input input.

Check if input has been just pressed.

Check if any item in inputs has just been pressed.

Clear the “just pressed” state of input. Future calls to Input::just_pressed for the given input will return false until a new press event occurs. Returns true if input is currently “just pressed”

Check if input has been just released.

Check if any item in inputs has just been released.

Clear the “just released” state of input. Future calls to Input::just_released for the given input will return false until a new release event occurs. Returns true if input is currently “just released”

Reset all status for input input.

Clear just pressed and just released information.

List all inputs that are pressed.

List all inputs that are just pressed.

List all inputs that are just released.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Returns the “default value” for a type. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. 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.

Creates Self using data from the given World

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.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

Uses borrowed data to replace owned data, usually by cloning. Read more

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