Skip to main content

Events

Struct Events 

Source
pub struct Events<E: Hash + Copy + Eq + Sync + Send> { /* private fields */ }
Expand description

All events produced in one frame: connections, entity lifecycle, component changes, messages, and errors.

Implementations§

Source§

impl<E: Hash + Copy + Eq + Sync + Send> Events<E>

Source

pub fn is_empty(&self) -> bool

Returns true if no events were queued this frame.

Source

pub fn read<V: WorldEvent<E>>(&mut self) -> V::Iter

Drains and returns an iterator over events of type V.

Source

pub fn has<V: WorldEvent<E>>(&self) -> bool

Returns true if at least one event of type V is queued.

Source

pub fn has_messages(&self) -> bool

Returns true if any messages are queued; prefer read::<MessageEvent<C, M>>() in application code.

Source

pub fn take_messages( &mut self, ) -> HashMap<ChannelKind, HashMap<MessageKind, Vec<MessageContainer>>>

Takes all queued messages, leaving the internal buffer empty; prefer read::<MessageEvent<C, M>>() in application code.

Source

pub fn has_requests(&self) -> bool

Returns true if any requests are queued; prefer read::<RequestEvent<C, Q>>() in application code.

Source

pub fn take_requests( &mut self, ) -> HashMap<ChannelKind, HashMap<MessageKind, Vec<(GlobalResponseId, MessageContainer)>>>

Takes all queued requests, leaving the internal buffer empty; prefer read::<RequestEvent<C, Q>>() in application code.

Source

pub fn has_inserts(&self) -> bool

Returns true if any component-insert events are queued; prefer read::<InsertComponentEvent<C>>() in application code.

Source

pub fn take_inserts(&mut self) -> Option<HashMap<ComponentKind, Vec<E>>>

Takes all queued component-insert events; prefer read::<InsertComponentEvent<C>>() in application code.

Source

pub fn has_updates(&self) -> bool

Returns true if any component-update events are queued; prefer read::<UpdateComponentEvent<C>>() in application code.

Source

pub fn take_updates(&mut self) -> Option<HashMap<ComponentKind, Vec<(Tick, E)>>>

Takes all queued component-update events; prefer read::<UpdateComponentEvent<C>>() in application code.

Source

pub fn has_removes(&self) -> bool

Returns true if any component-remove events are queued; prefer read::<RemoveComponentEvent<C>>() in application code.

Source

pub fn take_removes( &mut self, ) -> Option<HashMap<ComponentKind, Vec<(E, Box<dyn Replicate>)>>>

Takes all queued component-remove events; prefer read::<RemoveComponentEvent<C>>() in application code.

Trait Implementations§

Source§

impl<E: Hash + Copy + Eq + Sync + Send> Default for Events<E>

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

§

impl<E> Freeze for Events<E>

§

impl<E> !RefUnwindSafe for Events<E>

§

impl<E> Send for Events<E>

§

impl<E> Sync for Events<E>

§

impl<E> Unpin for Events<E>
where E: Unpin,

§

impl<E> UnsafeUnpin for Events<E>

§

impl<E> !UnwindSafe for Events<E>

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> 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, 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<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V