Module event

Module event 

Source
Expand description

Event functionality.

Structs§

EntityComponentsTrigger
An EntityEvent Trigger that, in addition to behaving like a normal EntityTrigger, also runs observers that watch for components that match the slice of ComponentIds referenced in EntityComponentsTrigger. This includes both global observers of those components and “entity scoped” observers that watch the EntityEvent::event_target.
EntityTrigger
An EntityEvent Trigger that does two things:
EventKey
A unique identifier for an Event, used by observers.
GlobalTrigger
A Trigger that runs every “global” Observer (ex: registered via World::add_observer) that matches the given Event.
PropagateEntityTrigger
An EntityEvent Trigger that behaves like EntityTrigger, but “propagates” the event using an Entity Traversal. At each step in the propagation, the EntityTrigger logic will be run, until PropagateEntityTrigger::propagate is false, or there are no entities left to traverse.

Traits§

EntityEvent
An EntityEvent is an Event that is triggered for a specific EntityEvent::event_target entity:
Event
An Event is something that “happens” at a given moment.
Trigger
Trigger determines how an Event is triggered when World::trigger is called. This decides which Observers will run, what data gets passed to them, and the order they will be executed in.

Functions§

trigger_entity_internal
Trigger observers watching for the given entity event. The target_entity should match the EntityEvent::event_target on event for logical correctness.

Type Aliases§

EventCursorDeprecated
This is deprecated. See MessageCursor
EventIteratorDeprecated
This is deprecated. See MessageIterator
EventMutIteratorDeprecated
This is deprecated. See MessageMutIterator
EventMutatorDeprecated
This is deprecated. See MessageMutator
EventReaderDeprecated
This is deprecated. See MessageReader
EventWriterDeprecated
This is deprecated. See MessageWriter
EventsDeprecated
This is deprecated. See Messages

Derive Macros§

EntityEvent
Cheat sheet for derive syntax, see full explanation on EntityEvent trait docs.
Event
Implement the Event trait.