Struct ambient_api_core::ecs::UntrackedChangeQuery
source · pub struct UntrackedChangeQuery<Components: ComponentsTuple + Copy + Clone + 'static>(/* private fields */);
Expand description
An ECS query that will call a callback when entities containing components marked with Self::track_change have those components change. This type represents a query that has not had any components marked for tracking yet.
Note that this cannot be built without calling Self::track_change at least once.
Implementations§
source§impl<Components: ComponentsTuple + Copy + Clone + 'static> UntrackedChangeQuery<Components>
impl<Components: ComponentsTuple + Copy + Clone + 'static> UntrackedChangeQuery<Components>
sourcepub fn create(components: Components) -> Self
pub fn create(components: Components) -> Self
Creates a new query that will find entities that have the specified components
.
It will call its bound function when components marked by Self::track_change change.
sourcepub fn track_change(
self,
changes: impl ComponentsTuple
) -> ChangeQuery<Components>
pub fn track_change( self, changes: impl ComponentsTuple ) -> ChangeQuery<Components>
The query will return results when these components change values.
This converts this type to a ChangeQuery, which can be used to bind a callback.
Auto Trait Implementations§
impl<Components> RefUnwindSafe for UntrackedChangeQuery<Components>where
Components: RefUnwindSafe,
impl<Components> Send for UntrackedChangeQuery<Components>where
Components: Send,
impl<Components> Sync for UntrackedChangeQuery<Components>where
Components: Sync,
impl<Components> Unpin for UntrackedChangeQuery<Components>where
Components: Unpin,
impl<Components> UnwindSafe for UntrackedChangeQuery<Components>where
Components: UnwindSafe,
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