Struct google_maps::directions::response::leg::Leg
source · 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: 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§
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();