ecs_iter_t

Struct ecs_iter_t 

Source
#[repr(C)]
pub struct ecs_iter_t {
Show 41 fields pub world: *mut ecs_world_t, pub real_world: *mut ecs_world_t, pub entities: *mut ecs_entity_t, pub ptrs: *mut *mut c_void, pub sizes: *mut ecs_size_t, pub table: *mut ecs_table_t, pub other_table: *mut ecs_table_t, pub ids: *mut ecs_id_t, pub variables: *mut ecs_var_t, pub columns: *mut i32, pub sources: *mut ecs_entity_t, pub match_indices: *mut i32, pub references: *mut ecs_ref_t, pub constrained_vars: ecs_flags64_t, pub group_id: u64, pub field_count: i32, pub system: ecs_entity_t, pub event: ecs_entity_t, pub event_id: ecs_id_t, pub terms: *mut ecs_term_t, pub table_count: i32, pub term_index: i32, pub variable_count: i32, pub variable_names: *mut *mut c_char, pub param: *mut c_void, pub ctx: *mut c_void, pub binding_ctx: *mut c_void, pub delta_time: f32, pub delta_system_time: f32, pub frame_offset: i32, pub offset: i32, pub count: i32, pub instance_count: i32, pub flags: ecs_flags32_t, pub interrupted_by: ecs_entity_t, pub priv_: ecs_iter_private_t, pub next: ecs_iter_next_action_t, pub callback: ecs_iter_action_t, pub set_var: ecs_iter_action_t, pub fini: ecs_iter_fini_action_t, pub chain_it: *mut ecs_iter_t,
}
Expand description

Iterator

Fields§

§world: *mut ecs_world_t

The world

§real_world: *mut ecs_world_t

Actual world. This differs from world when in readonly mode

§entities: *mut ecs_entity_t

Entity identifiers

§ptrs: *mut *mut c_void

Pointers to components. Array if from this, pointer if not.

§sizes: *mut ecs_size_t

Component sizes

§table: *mut ecs_table_t

Current table

§other_table: *mut ecs_table_t

Prev or next table when adding/removing

§ids: *mut ecs_id_t

(Component) ids

§variables: *mut ecs_var_t

Values of variables (if any)

§columns: *mut i32

Query term to table column mapping

§sources: *mut ecs_entity_t

Entity on which the id was matched (0 if same as entities)

§match_indices: *mut i32

Indices of current match for term. Allows an iterator to iterate all permutations of wildcards in query.

§references: *mut ecs_ref_t

Cached refs to components (if iterating a cache)

§constrained_vars: ecs_flags64_t

Bitset that marks constrained variables

§group_id: u64

Group id for table, if group_by is used

§field_count: i32

Number of fields in iterator

§system: ecs_entity_t

The system (if applicable)

§event: ecs_entity_t

The event (if applicable)

§event_id: ecs_id_t

The (component) id for the event

§terms: *mut ecs_term_t

Terms of query being evaluated

§table_count: i32

Active table count for query

§term_index: i32

Index of term that emitted an event. This field will be set to the ‘index’ field of an observer term.

§variable_count: i32

Number of variables for query

§variable_names: *mut *mut c_char

Names of variables (if any)

§param: *mut c_void

Param passed to ecs_run

§ctx: *mut c_void

System context

§binding_ctx: *mut c_void

Binding context

§delta_time: f32

Time elapsed since last frame

§delta_system_time: f32

Time elapsed since last system invocation

§frame_offset: i32

Offset relative to start of iteration

§offset: i32

Offset relative to current table

§count: i32

Number of entities to iterate

§instance_count: i32

Number of entities to iterate before next table

§flags: ecs_flags32_t

Iterator flags

§interrupted_by: ecs_entity_t

When set, system execution is interrupted

§priv_: ecs_iter_private_t

Private data

§next: ecs_iter_next_action_t

Function to progress iterator

§callback: ecs_iter_action_t

Callback of system or observer

§set_var: ecs_iter_action_t

Invoked after setting variable (optionally set)

§fini: ecs_iter_fini_action_t

Function to cleanup iterator resources

§chain_it: *mut ecs_iter_t

Optional, allows for creating iterator chains

Trait Implementations§

Source§

impl Clone for ecs_iter_t

Source§

fn clone(&self) -> ecs_iter_t

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 Copy for ecs_iter_t

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> 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.