#[non_exhaustive]pub struct CarCall {
pub car: EntityId,
pub floor: EntityId,
pub press_tick: u64,
pub acknowledged_at: Option<u64>,
pub ack_latency_ticks: u32,
pub pending_riders: Vec<EntityId>,
}Expand description
A floor button press inside car requesting service to floor.
Stored as a list attached to each elevator. One CarCall per
(car, floor) pair — subsequent presses for the same floor increase
pending_riders rather than duplicating the call.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.car: EntityIdElevator the button was pressed inside.
floor: EntityIdStop the button requests.
press_tick: u64Tick the button was pressed.
acknowledged_at: Option<u64>Tick dispatch first sees this call (after ack latency).
None while still pending acknowledgement.
ack_latency_ticks: u32Ticks the controller takes to acknowledge this call. Populated
from the serving group’s ack_latency_ticks on first press.
pending_riders: Vec<EntityId>Riders who pressed the button (usually one; aggregated if multiple riders heading to the same floor board together).
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for CarCall
impl<'de> Deserialize<'de> for CarCall
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl StructuralPartialEq for CarCall
Auto Trait Implementations§
impl Freeze for CarCall
impl RefUnwindSafe for CarCall
impl Send for CarCall
impl Sync for CarCall
impl Unpin for CarCall
impl UnsafeUnpin for CarCall
impl UnwindSafe for CarCall
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
Mutably borrows from an owned value. Read more