pub struct MovementID {
pub from: DirectedRoadID,
pub to: DirectedRoadID,
pub parent: IntersectionID,
pub crosswalk: bool,
}
Expand description
A movement is like a turn, but with less detail – it identifies a movement from one directed road to another. One road usually has 4 crosswalks, each a singleton Movement. We need all of the information here to keep each crosswalk separate.
Fields
from: DirectedRoadID
to: DirectedRoadID
parent: IntersectionID
crosswalk: bool
Could be a Crosswalk or UnmarkedCrossing
Implementations
sourceimpl MovementID
impl MovementID
pub fn to_permanent(&self, map: &Map) -> Turn
pub fn from_permanent(id: Turn, map: &Map) -> Result<MovementID>
Trait Implementations
sourceimpl Clone for MovementID
impl Clone for MovementID
sourcefn clone(&self) -> MovementID
fn clone(&self) -> MovementID
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for MovementID
impl Debug for MovementID
sourceimpl<'de> Deserialize<'de> for MovementID
impl<'de> Deserialize<'de> for MovementID
sourcefn 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
sourceimpl Hash for MovementID
impl Hash for MovementID
sourceimpl Ord for MovementID
impl Ord for MovementID
sourcefn cmp(&self, other: &MovementID) -> Ordering
fn cmp(&self, other: &MovementID) -> Ordering
1.21.0 · sourcefn max(self, other: Self) -> Self
fn max(self, other: Self) -> Self
Compares and returns the maximum of two values. Read more
1.21.0 · sourcefn min(self, other: Self) -> Self
fn min(self, other: Self) -> Self
Compares and returns the minimum of two values. Read more
1.50.0 · sourcefn clamp(self, min: Self, max: Self) -> Self where
Self: PartialOrd<Self>,
fn clamp(self, min: Self, max: Self) -> Self where
Self: PartialOrd<Self>,
Restrict a value to a certain interval. Read more
sourceimpl PartialEq<MovementID> for MovementID
impl PartialEq<MovementID> for MovementID
sourcefn eq(&self, other: &MovementID) -> bool
fn eq(&self, other: &MovementID) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &MovementID) -> bool
fn ne(&self, other: &MovementID) -> bool
This method tests for !=
.
sourceimpl PartialOrd<MovementID> for MovementID
impl PartialOrd<MovementID> for MovementID
sourcefn partial_cmp(&self, other: &MovementID) -> Option<Ordering>
fn partial_cmp(&self, other: &MovementID) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
sourceimpl Serialize for MovementID
impl Serialize for MovementID
impl Copy for MovementID
impl Eq for MovementID
impl StructuralEq for MovementID
impl StructuralPartialEq for MovementID
Auto Trait Implementations
impl RefUnwindSafe for MovementID
impl Send for MovementID
impl Sync for MovementID
impl Unpin for MovementID
impl UnwindSafe for MovementID
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to key
and return true
if they are equal.
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more