pub struct Leg {
pub arrival_time: Option<TransitTime>,
pub departure_time: Option<TransitTime>,
pub distance: DirectionsDistance,
pub duration: DirectionsDuration,
pub duration_in_traffic: Option<DirectionsDuration>,
pub end_address: String,
pub end_location: LatLng,
pub start_address: String,
pub start_location: LatLng,
pub steps: Vec<Step>,
}Expand description
A single leg consisting of a set of steps in a DirectionsResult. Some fields
in the leg may not be returned for all requests. Note that though this
result is “JSON-like,” it is not strictly JSON, as it directly and
indirectly includes LatLng objects.
Fields§
§arrival_time: Option<TransitTime>An estimated arrival time for this leg. Only applicable for
TravelMode::Transit requests.
departure_time: Option<TransitTime>An estimated departure time for this leg. Only applicable for
TravelMode::Transit requests.
distance: DirectionsDistanceThe total distance covered by this leg. This property may be undefined as the distance may be unknown.
duration: DirectionsDurationThe total duration of this leg. This property may be undefined as the duration may be unknown.
duration_in_traffic: Option<DirectionsDuration>The total duration of this leg, taking into account the traffic
conditions indicated by the with_traffic_model() method. This property
may be undefined as the duration may be unknown. Only available to
Premium Plan customers.
end_address: StringThe address of the destination of this leg.
end_location: LatLngThe Directions Service calculates directions between locations by using
the nearest transportation option (usually a road) at the start and end
locations. end_location indicates the actual geocoded destination,
which may be different than the end_location of the last step if, for
example, the road is not near the destination of this leg.
start_address: StringThe address of the origin of this leg.
start_location: LatLngThe Directions Service calculates directions between locations by using
the nearest transportation option (usually a road) at the start and end
locations. start_location indicates the actual geocoded origin, which
may be different than the start_location of the first step if, for
example, the road is not near the origin of this leg.
steps: Vec<Step>An array of Steps, each of which contains information about the
individual steps in this leg.
Implementations§
Source§impl Leg
impl Leg
Sourcepub fn get_duration_in_traffic_text(&self) -> Option<&String>
pub fn get_duration_in_traffic_text(&self) -> Option<&String>
A helper function for destructuring (or serializing) the optional
duration_in_traffic field. If the Duration struct is populated, this
function will return the text field as a String. If the Duration
struct is empty, this function will return None.
let duration_in_traffic_text = leg.get_duration_in_traffic_text();Sourcepub fn get_duration_in_traffic_value(&self) -> Option<i64>
pub fn get_duration_in_traffic_value(&self) -> Option<i64>
A helper function for destructuring (or serializing) the optional
duration_in_traffic field. If the Duration struct is populated, this
function will return the value field as a time::Duration. If the
Duration struct is empty, this function will return None.
let duration_in_traffic_value = leg.get_duration_in_traffic_value();Sourcepub fn get_arrival_time_text(&self) -> Option<&String>
pub fn get_arrival_time_text(&self) -> Option<&String>
A helper function for destructuring (or serializing) the optional
arrival_time field. If the Time struct is populated, this function
will return the text field as a String. If the Time struct is
empty, this function will return None.
let arrival_time_text = leg.get_arrival_time_text();Sourcepub fn get_arrival_time_value(&self) -> Option<i64>
pub fn get_arrival_time_value(&self) -> Option<i64>
A helper function for destructuring (or serializing) the optional
arrival_time field. If the Time struct is populated, this function
will return the time_zone field as a String type. If the Time
struct is empty, this function will return None.
let arrival_time_zone = leg.arrival_time_zone();Sourcepub fn get_arrival_time_zone(&self) -> Option<String>
pub fn get_arrival_time_zone(&self) -> Option<String>
A helper function for destructuring (or serializing) the optional
arrival_time field. If the Time struct is populated, this function
will return the time field as a i64 UNIX timestamp. If the Time
struct is empty, this function will return None.
let arrival_time_zone = leg.arrival_time_zone();Sourcepub fn get_departure_time_text(&self) -> Option<&String>
pub fn get_departure_time_text(&self) -> Option<&String>
A helper function for destructuring (or serializing) the optional
departure_time field. If the Time struct is populated, this function
will return the text field as a String. If the Time struct is
empty, this function will return None.
let departure_time_text = leg.get_departure_time_text();Sourcepub fn get_departure_time_value(&self) -> Option<i64>
pub fn get_departure_time_value(&self) -> Option<i64>
A helper function for destructuring (or serializing) the optional
departure_time field. If the Time struct is populated, this function
will return the time_zone field as a String type. If the Time
struct is empty, this function will return None.
let departure_time_zone = leg.departure_time_zone();Sourcepub fn get_departure_time_zone(&self) -> Option<String>
pub fn get_departure_time_zone(&self) -> Option<String>
A helper function for destructuring (or serializing) the optional
departure_time field. If the Time struct is populated, this function
will return the time field as a i64 UNIX timestamp. If the Time
struct is empty, this function will return None.
let departure_time_zone = leg.departure_time_zone();Trait Implementations§
Source§impl<'de> Deserialize<'de> for Leg
impl<'de> Deserialize<'de> for Leg
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>,
impl Eq for Leg
impl StructuralPartialEq for Leg
Auto Trait Implementations§
impl Freeze for Leg
impl RefUnwindSafe for Leg
impl Send for Leg
impl Sync for Leg
impl Unpin for Leg
impl UnsafeUnpin for Leg
impl UnwindSafe for Leg
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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
key and return true if they are equal.