pub struct TurnID {
pub parent: IntersectionID,
pub src: LaneID,
pub dst: LaneID,
}
Expand description
Turns are uniquely identified by their (src, dst) lanes and their parent intersection. Intersection is needed to distinguish crosswalks that exist at two ends of a sidewalk.
Fields§
§parent: IntersectionID
§src: LaneID
src and dst must both belong to parent. No guarantees that src is incoming and dst is outgoing for turns between sidewalks.
dst: LaneID
Implementations§
source§impl TurnID
impl TurnID
pub fn to_movement(self, map: &Map) -> MovementID
Trait Implementations§
source§impl<'de> Deserialize<'de> for TurnID
impl<'de> Deserialize<'de> for TurnID
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
source§impl Ord for TurnID
impl Ord for TurnID
source§impl PartialEq for TurnID
impl PartialEq for TurnID
source§impl PartialOrd for TurnID
impl PartialOrd for TurnID
1.0.0 · source§fn 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 moreimpl Copy for TurnID
impl Eq for TurnID
impl StructuralPartialEq for TurnID
Auto Trait Implementations§
impl Freeze for TurnID
impl RefUnwindSafe for TurnID
impl Send for TurnID
impl Sync for TurnID
impl Unpin for TurnID
impl UnwindSafe for TurnID
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
§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.