pub struct SystemFn<F, Params: Param, Marker = bool> { /* private fields */ }Expand description
Concrete system wrapper produced by IntoSystem.
Stores the function, pre-resolved parameter state, and a diagnostic
name. Users rarely name this type directly — use Box<dyn System>
for type-erased storage, or let inference handle the concrete type.
The Marker parameter distinguishes bool-returning systems from
void-returning ones, avoiding overlapping System impls.
Trait Implementations§
Source§impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static> System for SystemFn<F, (P0, P1)>
impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static> System for SystemFn<F, (P0, P1)>
Source§impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static> System for SystemFn<F, (P0, P1), ()>
impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static> System for SystemFn<F, (P0, P1), ()>
Source§impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static> System for SystemFn<F, (P0, P1, P2)>
impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static> System for SystemFn<F, (P0, P1, P2)>
Source§impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static> System for SystemFn<F, (P0, P1, P2), ()>
impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static> System for SystemFn<F, (P0, P1, P2), ()>
Source§impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static, P3: Param + 'static> System for SystemFn<F, (P0, P1, P2, P3)>
impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static, P3: Param + 'static> System for SystemFn<F, (P0, P1, P2, P3)>
Source§impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static, P3: Param + 'static> System for SystemFn<F, (P0, P1, P2, P3), ()>
impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static, P3: Param + 'static> System for SystemFn<F, (P0, P1, P2, P3), ()>
Source§impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static, P3: Param + 'static, P4: Param + 'static> System for SystemFn<F, (P0, P1, P2, P3, P4)>
impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static, P3: Param + 'static, P4: Param + 'static> System for SystemFn<F, (P0, P1, P2, P3, P4)>
Source§impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static, P3: Param + 'static, P4: Param + 'static> System for SystemFn<F, (P0, P1, P2, P3, P4), ()>
impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static, P3: Param + 'static, P4: Param + 'static> System for SystemFn<F, (P0, P1, P2, P3, P4), ()>
Source§impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static, P3: Param + 'static, P4: Param + 'static, P5: Param + 'static> System for SystemFn<F, (P0, P1, P2, P3, P4, P5)>
impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static, P3: Param + 'static, P4: Param + 'static, P5: Param + 'static> System for SystemFn<F, (P0, P1, P2, P3, P4, P5)>
Source§impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static, P3: Param + 'static, P4: Param + 'static, P5: Param + 'static> System for SystemFn<F, (P0, P1, P2, P3, P4, P5), ()>
impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static, P3: Param + 'static, P4: Param + 'static, P5: Param + 'static> System for SystemFn<F, (P0, P1, P2, P3, P4, P5), ()>
Source§impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static, P3: Param + 'static, P4: Param + 'static, P5: Param + 'static, P6: Param + 'static> System for SystemFn<F, (P0, P1, P2, P3, P4, P5, P6)>
impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static, P3: Param + 'static, P4: Param + 'static, P5: Param + 'static, P6: Param + 'static> System for SystemFn<F, (P0, P1, P2, P3, P4, P5, P6)>
Source§impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static, P3: Param + 'static, P4: Param + 'static, P5: Param + 'static, P6: Param + 'static> System for SystemFn<F, (P0, P1, P2, P3, P4, P5, P6), ()>
impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static, P3: Param + 'static, P4: Param + 'static, P5: Param + 'static, P6: Param + 'static> System for SystemFn<F, (P0, P1, P2, P3, P4, P5, P6), ()>
Source§impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static, P3: Param + 'static, P4: Param + 'static, P5: Param + 'static, P6: Param + 'static, P7: Param + 'static> System for SystemFn<F, (P0, P1, P2, P3, P4, P5, P6, P7)>
impl<F: Send + 'static, P0: Param + 'static, P1: Param + 'static, P2: Param + 'static, P3: Param + 'static, P4: Param + 'static, P5: Param + 'static, P6: Param + 'static, P7: Param + 'static> System for SystemFn<F, (P0, P1, P2, P3, P4, P5, P6, P7)>
Auto Trait Implementations§
impl<F, Params, Marker> Freeze for SystemFn<F, Params, Marker>
impl<F, Params, Marker> RefUnwindSafe for SystemFn<F, Params, Marker>
impl<F, Params, Marker> Send for SystemFn<F, Params, Marker>
impl<F, Params, Marker> Sync for SystemFn<F, Params, Marker>
impl<F, Params, Marker> Unpin for SystemFn<F, Params, Marker>
impl<F, Params, Marker> UnsafeUnpin for SystemFn<F, Params, Marker>
impl<F, Params, Marker> UnwindSafe for SystemFn<F, Params, Marker>
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