#[allow(missing_docs)] #[non_exhaustive]
#[derive(
::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::Ord, ::std::cmp::PartialEq, ::std::cmp::PartialOrd, ::std::fmt::Debug, ::std::hash::Hash,
)]
pub enum Metric {
#[allow(missing_docs)] ReservationAvgCommittedSizeInst,
#[allow(missing_docs)] ReservationAvgCommittedSizeVcpu,
#[allow(missing_docs)] ReservationAvgFutureSizeInst,
#[allow(missing_docs)] ReservationAvgFutureSizeVcpu,
#[allow(missing_docs)] ReservationAvgUtilizationInst,
#[allow(missing_docs)] ReservationAvgUtilizationVcpu,
#[allow(missing_docs)] ReservationMaxCommittedSizeInst,
#[allow(missing_docs)] ReservationMaxCommittedSizeVcpu,
#[allow(missing_docs)] ReservationMaxFutureSizeInst,
#[allow(missing_docs)] ReservationMaxFutureSizeVcpu,
#[allow(missing_docs)] ReservationMaxSizeInst,
#[allow(missing_docs)] ReservationMaxSizeVcpu,
#[allow(missing_docs)] ReservationMaxUnusedSizeInst,
#[allow(missing_docs)] ReservationMaxUnusedSizeVcpu,
#[allow(missing_docs)] ReservationMaxUtilization,
#[allow(missing_docs)] ReservationMinCommittedSizeInst,
#[allow(missing_docs)] ReservationMinCommittedSizeVcpu,
#[allow(missing_docs)] ReservationMinFutureSizeInst,
#[allow(missing_docs)] ReservationMinFutureSizeVcpu,
#[allow(missing_docs)] ReservationMinSizeInst,
#[allow(missing_docs)] ReservationMinSizeVcpu,
#[allow(missing_docs)] ReservationMinUnusedSizeInst,
#[allow(missing_docs)] ReservationMinUnusedSizeVcpu,
#[allow(missing_docs)] ReservationMinUtilization,
#[allow(missing_docs)] ReservationTotalCapacityHrsInst,
#[allow(missing_docs)] ReservationTotalCapacityHrsVcpu,
#[allow(missing_docs)] ReservationTotalCount,
#[allow(missing_docs)] ReservationTotalEstimatedCost,
#[allow(missing_docs)] ReservationUnusedTotalCapacityHrsInst,
#[allow(missing_docs)] ReservationUnusedTotalCapacityHrsVcpu,
#[allow(missing_docs)] ReservationUnusedTotalEstimatedCost,
#[allow(missing_docs)] ReservedTotalEstimatedCost,
#[allow(missing_docs)] ReservedTotalUsageHrsInst,
#[allow(missing_docs)] ReservedTotalUsageHrsVcpu,
#[allow(missing_docs)] SpotAvgRunTimeBeforeInterruptionInst,
#[allow(missing_docs)] SpotInterruptionRateInst,
#[allow(missing_docs)] SpotInterruptionRateVcpu,
#[allow(missing_docs)] SpotMaxRunTimeBeforeInterruptionInst,
#[allow(missing_docs)] SpotMinRunTimeBeforeInterruptionInst,
#[allow(missing_docs)] SpotTotalCountInst,
#[allow(missing_docs)] SpotTotalCountVcpu,
#[allow(missing_docs)] SpotTotalEstimatedCost,
#[allow(missing_docs)] SpotTotalInterruptionsInst,
#[allow(missing_docs)] SpotTotalInterruptionsVcpu,
#[allow(missing_docs)] SpotTotalUsageHrsInst,
#[allow(missing_docs)] SpotTotalUsageHrsVcpu,
#[allow(missing_docs)] UnreservedTotalEstimatedCost,
#[allow(missing_docs)] UnreservedTotalUsageHrsInst,
#[allow(missing_docs)] UnreservedTotalUsageHrsVcpu,
#[deprecated(note = "Don't directly match on `Unknown`. See the docs on this enum for the correct way to handle unknown variants.")]
Unknown(crate::primitives::sealed_enum_unknown::UnknownVariantValue),
}
impl ::std::convert::From<&str> for Metric {
fn from(s: &str) -> Self {
match s {
"reservation-avg-committed-size-inst" => Metric::ReservationAvgCommittedSizeInst,
"reservation-avg-committed-size-vcpu" => Metric::ReservationAvgCommittedSizeVcpu,
"reservation-avg-future-size-inst" => Metric::ReservationAvgFutureSizeInst,
"reservation-avg-future-size-vcpu" => Metric::ReservationAvgFutureSizeVcpu,
"reservation-avg-utilization-inst" => Metric::ReservationAvgUtilizationInst,
"reservation-avg-utilization-vcpu" => Metric::ReservationAvgUtilizationVcpu,
"reservation-max-committed-size-inst" => Metric::ReservationMaxCommittedSizeInst,
"reservation-max-committed-size-vcpu" => Metric::ReservationMaxCommittedSizeVcpu,
"reservation-max-future-size-inst" => Metric::ReservationMaxFutureSizeInst,
"reservation-max-future-size-vcpu" => Metric::ReservationMaxFutureSizeVcpu,
"reservation-max-size-inst" => Metric::ReservationMaxSizeInst,
"reservation-max-size-vcpu" => Metric::ReservationMaxSizeVcpu,
"reservation-max-unused-size-inst" => Metric::ReservationMaxUnusedSizeInst,
"reservation-max-unused-size-vcpu" => Metric::ReservationMaxUnusedSizeVcpu,
"reservation-max-utilization" => Metric::ReservationMaxUtilization,
"reservation-min-committed-size-inst" => Metric::ReservationMinCommittedSizeInst,
"reservation-min-committed-size-vcpu" => Metric::ReservationMinCommittedSizeVcpu,
"reservation-min-future-size-inst" => Metric::ReservationMinFutureSizeInst,
"reservation-min-future-size-vcpu" => Metric::ReservationMinFutureSizeVcpu,
"reservation-min-size-inst" => Metric::ReservationMinSizeInst,
"reservation-min-size-vcpu" => Metric::ReservationMinSizeVcpu,
"reservation-min-unused-size-inst" => Metric::ReservationMinUnusedSizeInst,
"reservation-min-unused-size-vcpu" => Metric::ReservationMinUnusedSizeVcpu,
"reservation-min-utilization" => Metric::ReservationMinUtilization,
"reservation-total-capacity-hrs-inst" => Metric::ReservationTotalCapacityHrsInst,
"reservation-total-capacity-hrs-vcpu" => Metric::ReservationTotalCapacityHrsVcpu,
"reservation-total-count" => Metric::ReservationTotalCount,
"reservation-total-estimated-cost" => Metric::ReservationTotalEstimatedCost,
"reservation-unused-total-capacity-hrs-inst" => Metric::ReservationUnusedTotalCapacityHrsInst,
"reservation-unused-total-capacity-hrs-vcpu" => Metric::ReservationUnusedTotalCapacityHrsVcpu,
"reservation-unused-total-estimated-cost" => Metric::ReservationUnusedTotalEstimatedCost,
"reserved-total-estimated-cost" => Metric::ReservedTotalEstimatedCost,
"reserved-total-usage-hrs-inst" => Metric::ReservedTotalUsageHrsInst,
"reserved-total-usage-hrs-vcpu" => Metric::ReservedTotalUsageHrsVcpu,
"spot-avg-run-time-before-interruption-inst" => Metric::SpotAvgRunTimeBeforeInterruptionInst,
"spot-interruption-rate-inst" => Metric::SpotInterruptionRateInst,
"spot-interruption-rate-vcpu" => Metric::SpotInterruptionRateVcpu,
"spot-max-run-time-before-interruption-inst" => Metric::SpotMaxRunTimeBeforeInterruptionInst,
"spot-min-run-time-before-interruption-inst" => Metric::SpotMinRunTimeBeforeInterruptionInst,
"spot-total-count-inst" => Metric::SpotTotalCountInst,
"spot-total-count-vcpu" => Metric::SpotTotalCountVcpu,
"spot-total-estimated-cost" => Metric::SpotTotalEstimatedCost,
"spot-total-interruptions-inst" => Metric::SpotTotalInterruptionsInst,
"spot-total-interruptions-vcpu" => Metric::SpotTotalInterruptionsVcpu,
"spot-total-usage-hrs-inst" => Metric::SpotTotalUsageHrsInst,
"spot-total-usage-hrs-vcpu" => Metric::SpotTotalUsageHrsVcpu,
"unreserved-total-estimated-cost" => Metric::UnreservedTotalEstimatedCost,
"unreserved-total-usage-hrs-inst" => Metric::UnreservedTotalUsageHrsInst,
"unreserved-total-usage-hrs-vcpu" => Metric::UnreservedTotalUsageHrsVcpu,
other => Metric::Unknown(crate::primitives::sealed_enum_unknown::UnknownVariantValue(other.to_owned())),
}
}
}
impl ::std::str::FromStr for Metric {
type Err = ::std::convert::Infallible;
fn from_str(s: &str) -> ::std::result::Result<Self, <Self as ::std::str::FromStr>::Err> {
::std::result::Result::Ok(Metric::from(s))
}
}
impl Metric {
pub fn as_str(&self) -> &str {
match self {
Metric::ReservationAvgCommittedSizeInst => "reservation-avg-committed-size-inst",
Metric::ReservationAvgCommittedSizeVcpu => "reservation-avg-committed-size-vcpu",
Metric::ReservationAvgFutureSizeInst => "reservation-avg-future-size-inst",
Metric::ReservationAvgFutureSizeVcpu => "reservation-avg-future-size-vcpu",
Metric::ReservationAvgUtilizationInst => "reservation-avg-utilization-inst",
Metric::ReservationAvgUtilizationVcpu => "reservation-avg-utilization-vcpu",
Metric::ReservationMaxCommittedSizeInst => "reservation-max-committed-size-inst",
Metric::ReservationMaxCommittedSizeVcpu => "reservation-max-committed-size-vcpu",
Metric::ReservationMaxFutureSizeInst => "reservation-max-future-size-inst",
Metric::ReservationMaxFutureSizeVcpu => "reservation-max-future-size-vcpu",
Metric::ReservationMaxSizeInst => "reservation-max-size-inst",
Metric::ReservationMaxSizeVcpu => "reservation-max-size-vcpu",
Metric::ReservationMaxUnusedSizeInst => "reservation-max-unused-size-inst",
Metric::ReservationMaxUnusedSizeVcpu => "reservation-max-unused-size-vcpu",
Metric::ReservationMaxUtilization => "reservation-max-utilization",
Metric::ReservationMinCommittedSizeInst => "reservation-min-committed-size-inst",
Metric::ReservationMinCommittedSizeVcpu => "reservation-min-committed-size-vcpu",
Metric::ReservationMinFutureSizeInst => "reservation-min-future-size-inst",
Metric::ReservationMinFutureSizeVcpu => "reservation-min-future-size-vcpu",
Metric::ReservationMinSizeInst => "reservation-min-size-inst",
Metric::ReservationMinSizeVcpu => "reservation-min-size-vcpu",
Metric::ReservationMinUnusedSizeInst => "reservation-min-unused-size-inst",
Metric::ReservationMinUnusedSizeVcpu => "reservation-min-unused-size-vcpu",
Metric::ReservationMinUtilization => "reservation-min-utilization",
Metric::ReservationTotalCapacityHrsInst => "reservation-total-capacity-hrs-inst",
Metric::ReservationTotalCapacityHrsVcpu => "reservation-total-capacity-hrs-vcpu",
Metric::ReservationTotalCount => "reservation-total-count",
Metric::ReservationTotalEstimatedCost => "reservation-total-estimated-cost",
Metric::ReservationUnusedTotalCapacityHrsInst => "reservation-unused-total-capacity-hrs-inst",
Metric::ReservationUnusedTotalCapacityHrsVcpu => "reservation-unused-total-capacity-hrs-vcpu",
Metric::ReservationUnusedTotalEstimatedCost => "reservation-unused-total-estimated-cost",
Metric::ReservedTotalEstimatedCost => "reserved-total-estimated-cost",
Metric::ReservedTotalUsageHrsInst => "reserved-total-usage-hrs-inst",
Metric::ReservedTotalUsageHrsVcpu => "reserved-total-usage-hrs-vcpu",
Metric::SpotAvgRunTimeBeforeInterruptionInst => "spot-avg-run-time-before-interruption-inst",
Metric::SpotInterruptionRateInst => "spot-interruption-rate-inst",
Metric::SpotInterruptionRateVcpu => "spot-interruption-rate-vcpu",
Metric::SpotMaxRunTimeBeforeInterruptionInst => "spot-max-run-time-before-interruption-inst",
Metric::SpotMinRunTimeBeforeInterruptionInst => "spot-min-run-time-before-interruption-inst",
Metric::SpotTotalCountInst => "spot-total-count-inst",
Metric::SpotTotalCountVcpu => "spot-total-count-vcpu",
Metric::SpotTotalEstimatedCost => "spot-total-estimated-cost",
Metric::SpotTotalInterruptionsInst => "spot-total-interruptions-inst",
Metric::SpotTotalInterruptionsVcpu => "spot-total-interruptions-vcpu",
Metric::SpotTotalUsageHrsInst => "spot-total-usage-hrs-inst",
Metric::SpotTotalUsageHrsVcpu => "spot-total-usage-hrs-vcpu",
Metric::UnreservedTotalEstimatedCost => "unreserved-total-estimated-cost",
Metric::UnreservedTotalUsageHrsInst => "unreserved-total-usage-hrs-inst",
Metric::UnreservedTotalUsageHrsVcpu => "unreserved-total-usage-hrs-vcpu",
Metric::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&[
"reservation-avg-committed-size-inst",
"reservation-avg-committed-size-vcpu",
"reservation-avg-future-size-inst",
"reservation-avg-future-size-vcpu",
"reservation-avg-utilization-inst",
"reservation-avg-utilization-vcpu",
"reservation-max-committed-size-inst",
"reservation-max-committed-size-vcpu",
"reservation-max-future-size-inst",
"reservation-max-future-size-vcpu",
"reservation-max-size-inst",
"reservation-max-size-vcpu",
"reservation-max-unused-size-inst",
"reservation-max-unused-size-vcpu",
"reservation-max-utilization",
"reservation-min-committed-size-inst",
"reservation-min-committed-size-vcpu",
"reservation-min-future-size-inst",
"reservation-min-future-size-vcpu",
"reservation-min-size-inst",
"reservation-min-size-vcpu",
"reservation-min-unused-size-inst",
"reservation-min-unused-size-vcpu",
"reservation-min-utilization",
"reservation-total-capacity-hrs-inst",
"reservation-total-capacity-hrs-vcpu",
"reservation-total-count",
"reservation-total-estimated-cost",
"reservation-unused-total-capacity-hrs-inst",
"reservation-unused-total-capacity-hrs-vcpu",
"reservation-unused-total-estimated-cost",
"reserved-total-estimated-cost",
"reserved-total-usage-hrs-inst",
"reserved-total-usage-hrs-vcpu",
"spot-avg-run-time-before-interruption-inst",
"spot-interruption-rate-inst",
"spot-interruption-rate-vcpu",
"spot-max-run-time-before-interruption-inst",
"spot-min-run-time-before-interruption-inst",
"spot-total-count-inst",
"spot-total-count-vcpu",
"spot-total-estimated-cost",
"spot-total-interruptions-inst",
"spot-total-interruptions-vcpu",
"spot-total-usage-hrs-inst",
"spot-total-usage-hrs-vcpu",
"unreserved-total-estimated-cost",
"unreserved-total-usage-hrs-inst",
"unreserved-total-usage-hrs-vcpu",
]
}
}
impl ::std::convert::AsRef<str> for Metric {
fn as_ref(&self) -> &str {
self.as_str()
}
}
impl Metric {
pub fn try_parse(value: &str) -> ::std::result::Result<Self, crate::error::UnknownVariantError> {
match Self::from(value) {
#[allow(deprecated)]
Self::Unknown(_) => ::std::result::Result::Err(crate::error::UnknownVariantError::new(value)),
known => Ok(known),
}
}
}
impl ::std::fmt::Display for Metric {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
match self {
Metric::ReservationAvgCommittedSizeInst => write!(f, "reservation-avg-committed-size-inst"),
Metric::ReservationAvgCommittedSizeVcpu => write!(f, "reservation-avg-committed-size-vcpu"),
Metric::ReservationAvgFutureSizeInst => write!(f, "reservation-avg-future-size-inst"),
Metric::ReservationAvgFutureSizeVcpu => write!(f, "reservation-avg-future-size-vcpu"),
Metric::ReservationAvgUtilizationInst => write!(f, "reservation-avg-utilization-inst"),
Metric::ReservationAvgUtilizationVcpu => write!(f, "reservation-avg-utilization-vcpu"),
Metric::ReservationMaxCommittedSizeInst => write!(f, "reservation-max-committed-size-inst"),
Metric::ReservationMaxCommittedSizeVcpu => write!(f, "reservation-max-committed-size-vcpu"),
Metric::ReservationMaxFutureSizeInst => write!(f, "reservation-max-future-size-inst"),
Metric::ReservationMaxFutureSizeVcpu => write!(f, "reservation-max-future-size-vcpu"),
Metric::ReservationMaxSizeInst => write!(f, "reservation-max-size-inst"),
Metric::ReservationMaxSizeVcpu => write!(f, "reservation-max-size-vcpu"),
Metric::ReservationMaxUnusedSizeInst => write!(f, "reservation-max-unused-size-inst"),
Metric::ReservationMaxUnusedSizeVcpu => write!(f, "reservation-max-unused-size-vcpu"),
Metric::ReservationMaxUtilization => write!(f, "reservation-max-utilization"),
Metric::ReservationMinCommittedSizeInst => write!(f, "reservation-min-committed-size-inst"),
Metric::ReservationMinCommittedSizeVcpu => write!(f, "reservation-min-committed-size-vcpu"),
Metric::ReservationMinFutureSizeInst => write!(f, "reservation-min-future-size-inst"),
Metric::ReservationMinFutureSizeVcpu => write!(f, "reservation-min-future-size-vcpu"),
Metric::ReservationMinSizeInst => write!(f, "reservation-min-size-inst"),
Metric::ReservationMinSizeVcpu => write!(f, "reservation-min-size-vcpu"),
Metric::ReservationMinUnusedSizeInst => write!(f, "reservation-min-unused-size-inst"),
Metric::ReservationMinUnusedSizeVcpu => write!(f, "reservation-min-unused-size-vcpu"),
Metric::ReservationMinUtilization => write!(f, "reservation-min-utilization"),
Metric::ReservationTotalCapacityHrsInst => write!(f, "reservation-total-capacity-hrs-inst"),
Metric::ReservationTotalCapacityHrsVcpu => write!(f, "reservation-total-capacity-hrs-vcpu"),
Metric::ReservationTotalCount => write!(f, "reservation-total-count"),
Metric::ReservationTotalEstimatedCost => write!(f, "reservation-total-estimated-cost"),
Metric::ReservationUnusedTotalCapacityHrsInst => write!(f, "reservation-unused-total-capacity-hrs-inst"),
Metric::ReservationUnusedTotalCapacityHrsVcpu => write!(f, "reservation-unused-total-capacity-hrs-vcpu"),
Metric::ReservationUnusedTotalEstimatedCost => write!(f, "reservation-unused-total-estimated-cost"),
Metric::ReservedTotalEstimatedCost => write!(f, "reserved-total-estimated-cost"),
Metric::ReservedTotalUsageHrsInst => write!(f, "reserved-total-usage-hrs-inst"),
Metric::ReservedTotalUsageHrsVcpu => write!(f, "reserved-total-usage-hrs-vcpu"),
Metric::SpotAvgRunTimeBeforeInterruptionInst => write!(f, "spot-avg-run-time-before-interruption-inst"),
Metric::SpotInterruptionRateInst => write!(f, "spot-interruption-rate-inst"),
Metric::SpotInterruptionRateVcpu => write!(f, "spot-interruption-rate-vcpu"),
Metric::SpotMaxRunTimeBeforeInterruptionInst => write!(f, "spot-max-run-time-before-interruption-inst"),
Metric::SpotMinRunTimeBeforeInterruptionInst => write!(f, "spot-min-run-time-before-interruption-inst"),
Metric::SpotTotalCountInst => write!(f, "spot-total-count-inst"),
Metric::SpotTotalCountVcpu => write!(f, "spot-total-count-vcpu"),
Metric::SpotTotalEstimatedCost => write!(f, "spot-total-estimated-cost"),
Metric::SpotTotalInterruptionsInst => write!(f, "spot-total-interruptions-inst"),
Metric::SpotTotalInterruptionsVcpu => write!(f, "spot-total-interruptions-vcpu"),
Metric::SpotTotalUsageHrsInst => write!(f, "spot-total-usage-hrs-inst"),
Metric::SpotTotalUsageHrsVcpu => write!(f, "spot-total-usage-hrs-vcpu"),
Metric::UnreservedTotalEstimatedCost => write!(f, "unreserved-total-estimated-cost"),
Metric::UnreservedTotalUsageHrsInst => write!(f, "unreserved-total-usage-hrs-inst"),
Metric::UnreservedTotalUsageHrsVcpu => write!(f, "unreserved-total-usage-hrs-vcpu"),
Metric::Unknown(value) => write!(f, "{value}"),
}
}
}