[][src]Struct google_maps::directions::response::leg::Leg

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>,
}

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: DirectionsDistance

The total distance covered by this leg. This property may be undefined as the distance may be unknown.

duration: DirectionsDuration

The 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: String

The address of the destination of this leg.

end_location: LatLng

The 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: String

The address of the origin of this leg.

start_location: LatLng

The 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

impl Leg[src]

pub fn get_duration_in_traffic_text(&self) -> Option<&String>[src]

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();

pub fn get_duration_in_traffic_value(&self) -> Option<i64>[src]

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();

pub fn get_arrival_time_text(&self) -> Option<&String>[src]

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();

pub fn get_arrival_time_value(&self) -> Option<i64>[src]

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();

pub fn get_arrival_time_zone(&self) -> Option<String>[src]

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();

pub fn get_departure_time_text(&self) -> Option<&String>[src]

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();

pub fn get_departure_time_value(&self) -> Option<i64>[src]

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();

pub fn get_departure_time_zone(&self) -> Option<String>[src]

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

impl Clone for Leg[src]

impl Debug for Leg[src]

impl<'de> Deserialize<'de> for Leg[src]

impl Eq for Leg[src]

impl Hash for Leg[src]

impl PartialEq<Leg> for Leg[src]

impl Serialize for Leg[src]

impl StructuralEq for Leg[src]

impl StructuralPartialEq for Leg[src]

Auto Trait Implementations

impl RefUnwindSafe for Leg

impl Send for Leg

impl Sync for Leg

impl Unpin for Leg

impl UnwindSafe for Leg

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,