ComponentTicks

Struct ComponentTicks 

Source
pub struct ComponentTicks {
    pub added: Tick,
    pub changed: Tick,
}
Expand description

Records when a component or resource was added and when it was last mutably dereferenced (or added).

Fields§

§added: Tick

Tick recording the time this component or resource was added.

§changed: Tick

Tick recording the time this component or resource was most recently changed.

Implementations§

Source§

impl ComponentTicks

Source

pub fn is_added(&self, last_run: Tick, this_run: Tick) -> bool

Returns true if the component or resource was added after the system last ran (or the system is running for the first time).

Source

pub fn is_changed(&self, last_run: Tick, this_run: Tick) -> bool

Returns true if the component or resource was added or mutably dereferenced after the system last ran (or the system is running for the first time).

Source

pub fn new(change_tick: Tick) -> Self

Creates a new instance with the same change tick for added and changed.

Source

pub fn set_changed(&mut self, change_tick: Tick)

Manually sets the change tick.

This is normally done automatically via the DerefMut implementation on Mut<T>, ResMut<T>, etc. However, components and resources that make use of interior mutability might require manual updates.

§Example
let world: World = unimplemented!();
let component_ticks: ComponentTicks = unimplemented!();

component_ticks.set_changed(world.read_change_tick());

Trait Implementations§

Source§

impl Clone for ComponentTicks

Source§

fn clone(&self) -> ComponentTicks

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ComponentTicks

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Copy for ComponentTicks

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

impl<T> IntoResult<T> for T

Source§

fn into_result(self) -> Result<T, RunSystemError>

Converts this type into the system output type.
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

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

fn clone_into(&self, target: &mut T)

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

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> ConditionalSend for T
where T: Send,