Struct map_model::MovementID
source · [−]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.
We don’t create movements for SharedSidewalkCorners.
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 moresourceimpl 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) -> Selfwhere
Self: PartialOrd<Self>,
fn clamp(self, min: Self, max: Self) -> Selfwhere
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
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>
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 moresourceimpl 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 Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
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 Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
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.