Struct google_api_proto::google::cloud::optimization::v1::vehicle::LoadLimit
source · pub struct LoadLimit {
pub max_load: Option<i64>,
pub soft_max_load: i64,
pub cost_per_unit_above_soft_max: f64,
pub start_load_interval: Option<Interval>,
pub end_load_interval: Option<Interval>,
}
Expand description
Defines a load limit applying to a vehicle, e.g. “this truck may only carry up to 3500 kg”. See [load_limits][google.cloud.optimization.v1.Vehicle.load_limits].
Fields§
§max_load: Option<i64>
The maximum acceptable amount of load.
soft_max_load: i64
A soft limit of the load. See [cost_per_unit_above_soft_max][google.cloud.optimization.v1.Vehicle.LoadLimit.cost_per_unit_above_soft_max].
cost_per_unit_above_soft_max: f64
If the load ever exceeds [soft_max_load][google.cloud.optimization.v1.Vehicle.LoadLimit.soft_max_load] along this vehicle’s route, the following cost penalty applies (only once per vehicle): (load - [soft_max_load][google.cloud.optimization.v1.Vehicle.LoadLimit.soft_max_load])
- [cost_per_unit_above_soft_max][google.cloud.optimization.v1.Vehicle.LoadLimit.cost_per_unit_above_soft_max]. All costs add up and must be in the same unit as [Shipment.penalty_cost][google.cloud.optimization.v1.Shipment.penalty_cost].
start_load_interval: Option<Interval>
The acceptable load interval of the vehicle at the start of the route.
end_load_interval: Option<Interval>
The acceptable load interval of the vehicle at the end of the route.
Implementations§
Trait Implementations§
source§impl Message for LoadLimit
impl Message for LoadLimit
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moresource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.source§impl PartialEq for LoadLimit
impl PartialEq for LoadLimit
impl Copy for LoadLimit
impl StructuralPartialEq for LoadLimit
Auto Trait Implementations§
impl Freeze for LoadLimit
impl RefUnwindSafe for LoadLimit
impl Send for LoadLimit
impl Sync for LoadLimit
impl Unpin for LoadLimit
impl UnwindSafe for LoadLimit
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request