#[non_exhaustive]pub struct Systems {
pub state: Option<(State, Box<dyn Fn(&mut World, State, State)>)>,
pub start: Vec<Box<dyn FnOnce(&mut World)>>,
pub update: Vec<Box<dyn Fn(&mut World)>>,
pub keyboard: Vec<Box<dyn Fn(&mut World, KeyCode, bool)>>,
pub mouse_position: Vec<Box<dyn Fn(&mut World, PhysicalPosition<f64>)>>,
pub mouse_button: Vec<Box<dyn Fn(&mut World, MouseButton, bool)>>,
pub mouse_wheel: Vec<Box<dyn Fn(&mut World, f32, f32)>>,
pub event: Vec<Box<dyn Fn(&mut World, WindowEvent)>>,
}Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.state: Option<(State, Box<dyn Fn(&mut World, State, State)>)>§start: Vec<Box<dyn FnOnce(&mut World)>>§update: Vec<Box<dyn Fn(&mut World)>>§keyboard: Vec<Box<dyn Fn(&mut World, KeyCode, bool)>>§mouse_position: Vec<Box<dyn Fn(&mut World, PhysicalPosition<f64>)>>§mouse_wheel: Vec<Box<dyn Fn(&mut World, f32, f32)>>§event: Vec<Box<dyn Fn(&mut World, WindowEvent)>>Implementations§
Auto Trait Implementations§
impl Freeze for Systems
impl !RefUnwindSafe for Systems
impl !Send for Systems
impl !Sync for Systems
impl Unpin for Systems
impl !UnwindSafe for Systems
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
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.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.