#[non_exhaustive]pub struct CalculateRouteInput {Show 14 fields
pub calculator_name: Option<String>,
pub departure_position: Option<Vec<f64>>,
pub destination_position: Option<Vec<f64>>,
pub waypoint_positions: Option<Vec<Vec<f64>>>,
pub travel_mode: Option<TravelMode>,
pub departure_time: Option<DateTime>,
pub depart_now: Option<bool>,
pub distance_unit: Option<DistanceUnit>,
pub include_leg_geometry: Option<bool>,
pub car_mode_options: Option<CalculateRouteCarModeOptions>,
pub truck_mode_options: Option<CalculateRouteTruckModeOptions>,
pub arrival_time: Option<DateTime>,
pub optimize_for: Option<OptimizationMode>,
pub key: Option<String>,
}Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.calculator_name: Option<String>The name of the route calculator resource that you want to use to calculate the route.
departure_position: Option<Vec<f64>>The start position for the route. Defined in World Geodetic System (WGS 84) format: \[longitude, latitude\].
-
For example,
\[-123.115, 49.285\]
If you specify a departure that's not located on a road, Amazon Location moves the position to the nearest road. If Esri is the provider for your route calculator, specifying a route that is longer than 400 km returns a 400 RoutesValidationException error.
Valid Values: \[-180 to 180,-90 to 90\]
destination_position: Option<Vec<f64>>The finish position for the route. Defined in World Geodetic System (WGS 84) format: \[longitude, latitude\].
-
For example,
\[-122.339, 47.615\]
If you specify a destination that's not located on a road, Amazon Location moves the position to the nearest road.
Valid Values: \[-180 to 180,-90 to 90\]
waypoint_positions: Option<Vec<Vec<f64>>>Specifies an ordered list of up to 23 intermediate positions to include along a route between the departure position and destination position.
-
For example, from the
DeparturePosition\[-123.115, 49.285\], the route follows the order that the waypoint positions are given\[\[-122.757, 49.0021\],\[-122.349, 47.620\]\]
If you specify a waypoint position that's not located on a road, Amazon Location moves the position to the nearest road.
Specifying more than 23 waypoints returns a 400 ValidationException error.
If Esri is the provider for your route calculator, specifying a route that is longer than 400 km returns a 400 RoutesValidationException error.
Valid Values: \[-180 to 180,-90 to 90\]
travel_mode: Option<TravelMode>Specifies the mode of transport when calculating a route. Used in estimating the speed of travel and road compatibility. You can choose Car, Truck, Walking, Bicycle or Motorcycle as options for the TravelMode.
Bicycle and Motorcycle are only valid when using Grab as a data provider, and only within Southeast Asia.
Truck is not available for Grab.
For more details on the using Grab for routing, including areas of coverage, see GrabMaps in the Amazon Location Service Developer Guide.
The TravelMode you specify also determines how you specify route preferences:
-
If traveling by
Caruse theCarModeOptionsparameter. -
If traveling by
Truckuse theTruckModeOptionsparameter.
Default Value: Car
departure_time: Option<DateTime>Specifies the desired time of departure. Uses the given time to calculate the route. Otherwise, the best time of day to travel with the best traffic conditions is used to calculate the route.
-
In ISO 8601 format:
YYYY-MM-DDThh:mm:ss.sssZ. For example,2020–07-2T12:15:20.000Z+01:00
depart_now: Option<bool>Sets the time of departure as the current time. Uses the current time to calculate a route. Otherwise, the best time of day to travel with the best traffic conditions is used to calculate the route.
Default Value: false
Valid Values: false | true
distance_unit: Option<DistanceUnit>Set the unit system to specify the distance.
Default Value: Kilometers
include_leg_geometry: Option<bool>Set to include the geometry details in the result for each path between a pair of positions.
Default Value: false
Valid Values: false | true
car_mode_options: Option<CalculateRouteCarModeOptions>Specifies route preferences when traveling by Car, such as avoiding routes that use ferries or tolls.
Requirements: TravelMode must be specified as Car.
truck_mode_options: Option<CalculateRouteTruckModeOptions>Specifies route preferences when traveling by Truck, such as avoiding routes that use ferries or tolls, and truck specifications to consider when choosing an optimal road.
Requirements: TravelMode must be specified as Truck.
arrival_time: Option<DateTime>Specifies the desired time of arrival. Uses the given time to calculate the route. Otherwise, the best time of day to travel with the best traffic conditions is used to calculate the route.
ArrivalTime is not supported Esri.
optimize_for: Option<OptimizationMode>Specifies the distance to optimize for when calculating a route.
key: Option<String>The optional API key to authorize the request.
Implementations§
Source§impl CalculateRouteInput
impl CalculateRouteInput
Sourcepub fn calculator_name(&self) -> Option<&str>
pub fn calculator_name(&self) -> Option<&str>
The name of the route calculator resource that you want to use to calculate the route.
Sourcepub fn departure_position(&self) -> &[f64]
pub fn departure_position(&self) -> &[f64]
The start position for the route. Defined in World Geodetic System (WGS 84) format: \[longitude, latitude\].
-
For example,
\[-123.115, 49.285\]
If you specify a departure that's not located on a road, Amazon Location moves the position to the nearest road. If Esri is the provider for your route calculator, specifying a route that is longer than 400 km returns a 400 RoutesValidationException error.
Valid Values: \[-180 to 180,-90 to 90\]
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .departure_position.is_none().
Sourcepub fn destination_position(&self) -> &[f64]
pub fn destination_position(&self) -> &[f64]
The finish position for the route. Defined in World Geodetic System (WGS 84) format: \[longitude, latitude\].
-
For example,
\[-122.339, 47.615\]
If you specify a destination that's not located on a road, Amazon Location moves the position to the nearest road.
Valid Values: \[-180 to 180,-90 to 90\]
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .destination_position.is_none().
Sourcepub fn waypoint_positions(&self) -> &[Vec<f64>]
pub fn waypoint_positions(&self) -> &[Vec<f64>]
Specifies an ordered list of up to 23 intermediate positions to include along a route between the departure position and destination position.
-
For example, from the
DeparturePosition\[-123.115, 49.285\], the route follows the order that the waypoint positions are given\[\[-122.757, 49.0021\],\[-122.349, 47.620\]\]
If you specify a waypoint position that's not located on a road, Amazon Location moves the position to the nearest road.
Specifying more than 23 waypoints returns a 400 ValidationException error.
If Esri is the provider for your route calculator, specifying a route that is longer than 400 km returns a 400 RoutesValidationException error.
Valid Values: \[-180 to 180,-90 to 90\]
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .waypoint_positions.is_none().
Sourcepub fn travel_mode(&self) -> Option<&TravelMode>
pub fn travel_mode(&self) -> Option<&TravelMode>
Specifies the mode of transport when calculating a route. Used in estimating the speed of travel and road compatibility. You can choose Car, Truck, Walking, Bicycle or Motorcycle as options for the TravelMode.
Bicycle and Motorcycle are only valid when using Grab as a data provider, and only within Southeast Asia.
Truck is not available for Grab.
For more details on the using Grab for routing, including areas of coverage, see GrabMaps in the Amazon Location Service Developer Guide.
The TravelMode you specify also determines how you specify route preferences:
-
If traveling by
Caruse theCarModeOptionsparameter. -
If traveling by
Truckuse theTruckModeOptionsparameter.
Default Value: Car
Sourcepub fn departure_time(&self) -> Option<&DateTime>
pub fn departure_time(&self) -> Option<&DateTime>
Specifies the desired time of departure. Uses the given time to calculate the route. Otherwise, the best time of day to travel with the best traffic conditions is used to calculate the route.
-
In ISO 8601 format:
YYYY-MM-DDThh:mm:ss.sssZ. For example,2020–07-2T12:15:20.000Z+01:00
Sourcepub fn depart_now(&self) -> Option<bool>
pub fn depart_now(&self) -> Option<bool>
Sets the time of departure as the current time. Uses the current time to calculate a route. Otherwise, the best time of day to travel with the best traffic conditions is used to calculate the route.
Default Value: false
Valid Values: false | true
Sourcepub fn distance_unit(&self) -> Option<&DistanceUnit>
pub fn distance_unit(&self) -> Option<&DistanceUnit>
Set the unit system to specify the distance.
Default Value: Kilometers
Sourcepub fn include_leg_geometry(&self) -> Option<bool>
pub fn include_leg_geometry(&self) -> Option<bool>
Set to include the geometry details in the result for each path between a pair of positions.
Default Value: false
Valid Values: false | true
Sourcepub fn car_mode_options(&self) -> Option<&CalculateRouteCarModeOptions>
pub fn car_mode_options(&self) -> Option<&CalculateRouteCarModeOptions>
Specifies route preferences when traveling by Car, such as avoiding routes that use ferries or tolls.
Requirements: TravelMode must be specified as Car.
Sourcepub fn truck_mode_options(&self) -> Option<&CalculateRouteTruckModeOptions>
pub fn truck_mode_options(&self) -> Option<&CalculateRouteTruckModeOptions>
Specifies route preferences when traveling by Truck, such as avoiding routes that use ferries or tolls, and truck specifications to consider when choosing an optimal road.
Requirements: TravelMode must be specified as Truck.
Sourcepub fn arrival_time(&self) -> Option<&DateTime>
pub fn arrival_time(&self) -> Option<&DateTime>
Specifies the desired time of arrival. Uses the given time to calculate the route. Otherwise, the best time of day to travel with the best traffic conditions is used to calculate the route.
ArrivalTime is not supported Esri.
Sourcepub fn optimize_for(&self) -> Option<&OptimizationMode>
pub fn optimize_for(&self) -> Option<&OptimizationMode>
Specifies the distance to optimize for when calculating a route.
Source§impl CalculateRouteInput
impl CalculateRouteInput
Sourcepub fn builder() -> CalculateRouteInputBuilder
pub fn builder() -> CalculateRouteInputBuilder
Creates a new builder-style object to manufacture CalculateRouteInput.
Trait Implementations§
Source§impl Clone for CalculateRouteInput
impl Clone for CalculateRouteInput
Source§fn clone(&self) -> CalculateRouteInput
fn clone(&self) -> CalculateRouteInput
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for CalculateRouteInput
impl Debug for CalculateRouteInput
Source§impl PartialEq for CalculateRouteInput
impl PartialEq for CalculateRouteInput
impl StructuralPartialEq for CalculateRouteInput
Auto Trait Implementations§
impl Freeze for CalculateRouteInput
impl RefUnwindSafe for CalculateRouteInput
impl Send for CalculateRouteInput
impl Sync for CalculateRouteInput
impl Unpin for CalculateRouteInput
impl UnwindSafe for CalculateRouteInput
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<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the foreground set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red() and
green(), which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg():
use yansi::{Paint, Color};
painted.fg(Color::White);Set foreground color to white using white().
use yansi::Paint;
painted.white();Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the background set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red() and
on_green(), which have the same functionality but
are pithier.
§Example
Set background color to red using fg():
use yansi::{Paint, Color};
painted.bg(Color::Red);Set background color to red using on_red().
use yansi::Paint;
painted.on_red();Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute value.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold() and
underline(), which have the same functionality
but are pithier.
§Example
Make text bold using attr():
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);Make text bold using using bold().
use yansi::Paint;
painted.bold();Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi Quirk value.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask() and
wrap(), which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk():
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);Enable wrapping using wrap().
use yansi::Paint;
painted.wrap();Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted only when both stdout and stderr are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);