pub struct ArraySignals(pub HashMap<String, Vec<ArrayItem>>, _);Expand description
Reactive array store paired with Signals; ordered vectors of ArrayItem keyed by name.
Written through ScriptCommand::SetArray; the reconciler system spawns/despawns markup children to match the stored vector.
Wave-D follow-up: a future migration may collapse this into
PropertyValue::Custom(Arc<ArrayItems>) so the typed property store becomes
the single source of truth - left as a separate resource for now since the
record-shaped data model doesn’t map cleanly onto the scalar typed cells.
The second field records the arrays whose contents changed this tick, the
array counterpart of the PropertyStore dirty queue: a derived signal
that depends on an array reads it to know when to recompute. It is emptied
at the end of every tick by clear_array_signal_changes.
Tuple Fields§
§0: HashMap<String, Vec<ArrayItem>>Implementations§
Source§impl ArraySignals
impl ArraySignals
Sourcepub fn set(&mut self, name: impl Into<String>, items: Vec<ArrayItem>)
pub fn set(&mut self, name: impl Into<String>, items: Vec<ArrayItem>)
Replaces the contents of the named array with items. A write that
changes the contents records the name in Self::changed.
Sourcepub fn changed(&self) -> impl Iterator<Item = &str>
pub fn changed(&self) -> impl Iterator<Item = &str>
Names of the arrays whose contents changed this tick.
Trait Implementations§
Source§impl Clone for ArraySignals
impl Clone for ArraySignals
Source§fn clone(&self) -> ArraySignals
fn clone(&self) -> ArraySignals
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Component for ArraySignals
impl Component for ArraySignals
Source§const STORAGE_TYPE: StorageType = bevy_ecs::component::StorageType::SparseSet
const STORAGE_TYPE: StorageType = bevy_ecs::component::StorageType::SparseSet
Source§type Mutability = Mutable
type Mutability = Mutable
Component<Mutability = Mutable>,
while immutable components will instead have Component<Mutability = Immutable>. Read moreSource§fn register_required_components(
_requiree: ComponentId,
required_components: &mut RequiredComponentsRegistrator<'_, '_>,
)
fn register_required_components( _requiree: ComponentId, required_components: &mut RequiredComponentsRegistrator<'_, '_>, )
Source§fn clone_behavior() -> ComponentCloneBehavior
fn clone_behavior() -> ComponentCloneBehavior
Source§fn relationship_accessor() -> Option<ComponentRelationshipAccessor<Self>>
fn relationship_accessor() -> Option<ComponentRelationshipAccessor<Self>>
ComponentRelationshipAccessor] required for working with relationships in dynamic contexts. Read more§fn on_discard() -> Option<for<'w> fn(DeferredWorld<'w>, HookContext)>
fn on_discard() -> Option<for<'w> fn(DeferredWorld<'w>, HookContext)>
§fn on_despawn() -> Option<for<'w> fn(DeferredWorld<'w>, HookContext)>
fn on_despawn() -> Option<for<'w> fn(DeferredWorld<'w>, HookContext)>
§fn map_entities<E>(_this: &mut Self, _mapper: &mut E)where
E: EntityMapper,
fn map_entities<E>(_this: &mut Self, _mapper: &mut E)where
E: EntityMapper,
EntityMapper. This is used to remap entities in contexts like scenes and entity cloning.
When deriving Component, this is populated by annotating fields containing entities with #[entities] Read moreSource§impl Debug for ArraySignals
impl Debug for ArraySignals
Source§impl Default for ArraySignals
impl Default for ArraySignals
Source§fn default() -> ArraySignals
fn default() -> ArraySignals
impl Resource for ArraySignals
Auto Trait Implementations§
impl Freeze for ArraySignals
impl RefUnwindSafe for ArraySignals
impl Send for ArraySignals
impl Sync for ArraySignals
impl Unpin for ArraySignals
impl UnsafeUnpin for ArraySignals
impl UnwindSafe for ArraySignals
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
§impl<C> Bundle for Cwhere
C: Component,
impl<C> Bundle for Cwhere
C: Component,
fn component_ids( components: &mut ComponentsRegistrator<'_>, ) -> impl Iterator<Item = ComponentId> + use<C>
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<C> DynamicBundle for Cwhere
C: Component,
impl<C> DynamicBundle for Cwhere
C: Component,
§unsafe fn get_components(
ptr: MovingPtr<'_, C>,
func: &mut impl FnMut(StorageType, OwningPtr<'_>),
) -> <C as DynamicBundle>::Effect
unsafe fn get_components( ptr: MovingPtr<'_, C>, func: &mut impl FnMut(StorageType, OwningPtr<'_>), ) -> <C as DynamicBundle>::Effect
§unsafe fn apply_effect(
_ptr: MovingPtr<'_, MaybeUninit<C>>,
_entity: &mut EntityWorldMut<'_>,
)
unsafe fn apply_effect( _ptr: MovingPtr<'_, MaybeUninit<C>>, _entity: &mut EntityWorldMut<'_>, )
§impl<T> FromTemplate for T
impl<T> FromTemplate for T
§impl<T> FromWorld for Twhere
T: Default,
impl<T> FromWorld for Twhere
T: Default,
§fn from_world(_world: &mut World) -> T
fn from_world(_world: &mut World) -> T
Creates Self using default().
§impl<T> IntoResult<T> for T
impl<T> IntoResult<T> for T
§fn into_result(self) -> Result<T, RunSystemError>
fn into_result(self) -> Result<T, RunSystemError>
§impl<T> Template for T
impl<T> Template for T
§fn build_template(
&self,
_context: &mut TemplateContext<'_, '_>,
) -> Result<<T as Template>::Output, BevyError>
fn build_template( &self, _context: &mut TemplateContext<'_, '_>, ) -> Result<<T as Template>::Output, BevyError>
entity context to produce a Template::Output.§fn clone_template(&self) -> T
fn clone_template(&self) -> T
Clone.