1#[allow(missing_docs)] #[non_exhaustive]
110#[derive(
111 ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::Ord, ::std::cmp::PartialEq, ::std::cmp::PartialOrd, ::std::fmt::Debug, ::std::hash::Hash,
112)]
113pub enum ExportableInstanceField {
114 #[allow(missing_docs)] AccountId,
116 #[allow(missing_docs)] CurrentInstanceGpuInfo,
118 #[allow(missing_docs)] CurrentInstanceType,
120 #[allow(missing_docs)] CurrentMemory,
122 #[allow(missing_docs)] CurrentNetwork,
124 #[allow(missing_docs)] CurrentOnDemandPrice,
126 #[allow(missing_docs)] CurrentPerformanceRisk,
128 #[allow(missing_docs)] CurrentStandardOneYearNoUpfrontReservedPrice,
130 #[allow(missing_docs)] CurrentStandardThreeYearNoUpfrontReservedPrice,
132 #[allow(missing_docs)] CurrentStorage,
134 #[allow(missing_docs)] CurrentVcpus,
136 #[allow(missing_docs)] EffectiveRecommendationPreferencesCpuVendorArchitectures,
138 #[allow(missing_docs)] EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics,
140 #[allow(missing_docs)] EffectiveRecommendationPreferencesExternalMetricsSource,
142 #[allow(missing_docs)] EffectiveRecommendationPreferencesInferredWorkloadTypes,
144 #[allow(missing_docs)] EffectiveRecommendationPreferencesLookbackPeriod,
146 #[allow(missing_docs)] EffectiveRecommendationPreferencesPreferredResources,
148 #[allow(missing_docs)] EffectiveRecommendationPreferencesSavingsEstimationMode,
150 #[allow(missing_docs)] EffectiveRecommendationPreferencesUtilizationPreferences,
152 #[allow(missing_docs)] ExternalMetricStatusCode,
154 #[allow(missing_docs)] ExternalMetricStatusReason,
156 #[allow(missing_docs)] Finding,
158 #[allow(missing_docs)] FindingReasonCodes,
160 #[allow(missing_docs)] Idle,
162 #[allow(missing_docs)] InferredWorkloadTypes,
164 #[allow(missing_docs)] InstanceArn,
166 #[allow(missing_docs)] InstanceName,
168 #[allow(missing_docs)] InstanceState,
170 #[allow(missing_docs)] LastRefreshTimestamp,
172 #[allow(missing_docs)] LookbackPeriodInDays,
174 #[allow(missing_docs)] RecommendationOptionsEstimatedMonthlySavingsCurrency,
176 #[allow(missing_docs)] RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts,
178 #[allow(missing_docs)] RecommendationOptionsEstimatedMonthlySavingsValue,
180 #[allow(missing_docs)] RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts,
182 #[allow(missing_docs)] RecommendationOptionsInstanceGpuInfo,
184 #[allow(missing_docs)] RecommendationOptionsInstanceType,
186 #[allow(missing_docs)] RecommendationOptionsMemory,
188 #[allow(missing_docs)] RecommendationOptionsMigrationEffort,
190 #[allow(missing_docs)] RecommendationOptionsNetwork,
192 #[allow(missing_docs)] RecommendationOptionsOnDemandPrice,
194 #[allow(missing_docs)] RecommendationOptionsPerformanceRisk,
196 #[allow(missing_docs)] RecommendationOptionsPlatformDifferences,
198 #[allow(missing_docs)] RecommendationOptionsProjectedUtilizationMetricsCpuMaximum,
200 #[allow(missing_docs)] RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum,
202 #[allow(missing_docs)] RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum,
204 #[allow(missing_docs)] RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum,
206 #[allow(missing_docs)] RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage,
208 #[allow(missing_docs)] RecommendationOptionsSavingsOpportunityPercentage,
210 #[allow(missing_docs)] RecommendationOptionsStandardOneYearNoUpfrontReservedPrice,
212 #[allow(missing_docs)] RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice,
214 #[allow(missing_docs)] RecommendationOptionsStorage,
216 #[allow(missing_docs)] RecommendationOptionsVcpus,
218 #[allow(missing_docs)] RecommendationsSourcesRecommendationSourceArn,
220 #[allow(missing_docs)] RecommendationsSourcesRecommendationSourceType,
222 #[allow(missing_docs)] Tags,
224 #[allow(missing_docs)] UtilizationMetricsCpuMaximum,
226 #[allow(missing_docs)] UtilizationMetricsDiskReadBytesPerSecondMaximum,
228 #[allow(missing_docs)] UtilizationMetricsDiskReadOpsPerSecondMaximum,
230 #[allow(missing_docs)] UtilizationMetricsDiskWriteBytesPerSecondMaximum,
232 #[allow(missing_docs)] UtilizationMetricsDiskWriteOpsPerSecondMaximum,
234 #[allow(missing_docs)] UtilizationMetricsEbsReadBytesPerSecondMaximum,
236 #[allow(missing_docs)] UtilizationMetricsEbsReadOpsPerSecondMaximum,
238 #[allow(missing_docs)] UtilizationMetricsEbsWriteBytesPerSecondMaximum,
240 #[allow(missing_docs)] UtilizationMetricsEbsWriteOpsPerSecondMaximum,
242 #[allow(missing_docs)] UtilizationMetricsGpuMemoryPercentageMaximum,
244 #[allow(missing_docs)] UtilizationMetricsGpuPercentageMaximum,
246 #[allow(missing_docs)] UtilizationMetricsMemoryMaximum,
248 #[allow(missing_docs)] UtilizationMetricsNetworkInBytesPerSecondMaximum,
250 #[allow(missing_docs)] UtilizationMetricsNetworkOutBytesPerSecondMaximum,
252 #[allow(missing_docs)] UtilizationMetricsNetworkPacketsInPerSecondMaximum,
254 #[allow(missing_docs)] UtilizationMetricsNetworkPacketsOutPerSecondMaximum,
256 #[deprecated(note = "Don't directly match on `Unknown`. See the docs on this enum for the correct way to handle unknown variants.")]
258 Unknown(crate::primitives::sealed_enum_unknown::UnknownVariantValue),
259}
260impl ::std::convert::From<&str> for ExportableInstanceField {
261 fn from(s: &str) -> Self {
262 match s {
263 "AccountId" => ExportableInstanceField::AccountId,
264 "CurrentInstanceGpuInfo" => ExportableInstanceField::CurrentInstanceGpuInfo,
265 "CurrentInstanceType" => ExportableInstanceField::CurrentInstanceType,
266 "CurrentMemory" => ExportableInstanceField::CurrentMemory,
267 "CurrentNetwork" => ExportableInstanceField::CurrentNetwork,
268 "CurrentOnDemandPrice" => ExportableInstanceField::CurrentOnDemandPrice,
269 "CurrentPerformanceRisk" => ExportableInstanceField::CurrentPerformanceRisk,
270 "CurrentStandardOneYearNoUpfrontReservedPrice" => ExportableInstanceField::CurrentStandardOneYearNoUpfrontReservedPrice,
271 "CurrentStandardThreeYearNoUpfrontReservedPrice" => ExportableInstanceField::CurrentStandardThreeYearNoUpfrontReservedPrice,
272 "CurrentStorage" => ExportableInstanceField::CurrentStorage,
273 "CurrentVCpus" => ExportableInstanceField::CurrentVcpus,
274 "EffectiveRecommendationPreferencesCpuVendorArchitectures" => {
275 ExportableInstanceField::EffectiveRecommendationPreferencesCpuVendorArchitectures
276 }
277 "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics" => {
278 ExportableInstanceField::EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics
279 }
280 "EffectiveRecommendationPreferencesExternalMetricsSource" => {
281 ExportableInstanceField::EffectiveRecommendationPreferencesExternalMetricsSource
282 }
283 "EffectiveRecommendationPreferencesInferredWorkloadTypes" => {
284 ExportableInstanceField::EffectiveRecommendationPreferencesInferredWorkloadTypes
285 }
286 "EffectiveRecommendationPreferencesLookBackPeriod" => ExportableInstanceField::EffectiveRecommendationPreferencesLookbackPeriod,
287 "EffectiveRecommendationPreferencesPreferredResources" => ExportableInstanceField::EffectiveRecommendationPreferencesPreferredResources,
288 "EffectiveRecommendationPreferencesSavingsEstimationMode" => {
289 ExportableInstanceField::EffectiveRecommendationPreferencesSavingsEstimationMode
290 }
291 "EffectiveRecommendationPreferencesUtilizationPreferences" => {
292 ExportableInstanceField::EffectiveRecommendationPreferencesUtilizationPreferences
293 }
294 "ExternalMetricStatusCode" => ExportableInstanceField::ExternalMetricStatusCode,
295 "ExternalMetricStatusReason" => ExportableInstanceField::ExternalMetricStatusReason,
296 "Finding" => ExportableInstanceField::Finding,
297 "FindingReasonCodes" => ExportableInstanceField::FindingReasonCodes,
298 "Idle" => ExportableInstanceField::Idle,
299 "InferredWorkloadTypes" => ExportableInstanceField::InferredWorkloadTypes,
300 "InstanceArn" => ExportableInstanceField::InstanceArn,
301 "InstanceName" => ExportableInstanceField::InstanceName,
302 "InstanceState" => ExportableInstanceField::InstanceState,
303 "LastRefreshTimestamp" => ExportableInstanceField::LastRefreshTimestamp,
304 "LookbackPeriodInDays" => ExportableInstanceField::LookbackPeriodInDays,
305 "RecommendationOptionsEstimatedMonthlySavingsCurrency" => ExportableInstanceField::RecommendationOptionsEstimatedMonthlySavingsCurrency,
306 "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts" => {
307 ExportableInstanceField::RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts
308 }
309 "RecommendationOptionsEstimatedMonthlySavingsValue" => ExportableInstanceField::RecommendationOptionsEstimatedMonthlySavingsValue,
310 "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts" => {
311 ExportableInstanceField::RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts
312 }
313 "RecommendationOptionsInstanceGpuInfo" => ExportableInstanceField::RecommendationOptionsInstanceGpuInfo,
314 "RecommendationOptionsInstanceType" => ExportableInstanceField::RecommendationOptionsInstanceType,
315 "RecommendationOptionsMemory" => ExportableInstanceField::RecommendationOptionsMemory,
316 "RecommendationOptionsMigrationEffort" => ExportableInstanceField::RecommendationOptionsMigrationEffort,
317 "RecommendationOptionsNetwork" => ExportableInstanceField::RecommendationOptionsNetwork,
318 "RecommendationOptionsOnDemandPrice" => ExportableInstanceField::RecommendationOptionsOnDemandPrice,
319 "RecommendationOptionsPerformanceRisk" => ExportableInstanceField::RecommendationOptionsPerformanceRisk,
320 "RecommendationOptionsPlatformDifferences" => ExportableInstanceField::RecommendationOptionsPlatformDifferences,
321 "RecommendationOptionsProjectedUtilizationMetricsCpuMaximum" => {
322 ExportableInstanceField::RecommendationOptionsProjectedUtilizationMetricsCpuMaximum
323 }
324 "RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum" => {
325 ExportableInstanceField::RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum
326 }
327 "RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum" => {
328 ExportableInstanceField::RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum
329 }
330 "RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum" => {
331 ExportableInstanceField::RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum
332 }
333 "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage" => {
334 ExportableInstanceField::RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage
335 }
336 "RecommendationOptionsSavingsOpportunityPercentage" => ExportableInstanceField::RecommendationOptionsSavingsOpportunityPercentage,
337 "RecommendationOptionsStandardOneYearNoUpfrontReservedPrice" => {
338 ExportableInstanceField::RecommendationOptionsStandardOneYearNoUpfrontReservedPrice
339 }
340 "RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice" => {
341 ExportableInstanceField::RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice
342 }
343 "RecommendationOptionsStorage" => ExportableInstanceField::RecommendationOptionsStorage,
344 "RecommendationOptionsVcpus" => ExportableInstanceField::RecommendationOptionsVcpus,
345 "RecommendationsSourcesRecommendationSourceArn" => ExportableInstanceField::RecommendationsSourcesRecommendationSourceArn,
346 "RecommendationsSourcesRecommendationSourceType" => ExportableInstanceField::RecommendationsSourcesRecommendationSourceType,
347 "Tags" => ExportableInstanceField::Tags,
348 "UtilizationMetricsCpuMaximum" => ExportableInstanceField::UtilizationMetricsCpuMaximum,
349 "UtilizationMetricsDiskReadBytesPerSecondMaximum" => ExportableInstanceField::UtilizationMetricsDiskReadBytesPerSecondMaximum,
350 "UtilizationMetricsDiskReadOpsPerSecondMaximum" => ExportableInstanceField::UtilizationMetricsDiskReadOpsPerSecondMaximum,
351 "UtilizationMetricsDiskWriteBytesPerSecondMaximum" => ExportableInstanceField::UtilizationMetricsDiskWriteBytesPerSecondMaximum,
352 "UtilizationMetricsDiskWriteOpsPerSecondMaximum" => ExportableInstanceField::UtilizationMetricsDiskWriteOpsPerSecondMaximum,
353 "UtilizationMetricsEbsReadBytesPerSecondMaximum" => ExportableInstanceField::UtilizationMetricsEbsReadBytesPerSecondMaximum,
354 "UtilizationMetricsEbsReadOpsPerSecondMaximum" => ExportableInstanceField::UtilizationMetricsEbsReadOpsPerSecondMaximum,
355 "UtilizationMetricsEbsWriteBytesPerSecondMaximum" => ExportableInstanceField::UtilizationMetricsEbsWriteBytesPerSecondMaximum,
356 "UtilizationMetricsEbsWriteOpsPerSecondMaximum" => ExportableInstanceField::UtilizationMetricsEbsWriteOpsPerSecondMaximum,
357 "UtilizationMetricsGpuMemoryPercentageMaximum" => ExportableInstanceField::UtilizationMetricsGpuMemoryPercentageMaximum,
358 "UtilizationMetricsGpuPercentageMaximum" => ExportableInstanceField::UtilizationMetricsGpuPercentageMaximum,
359 "UtilizationMetricsMemoryMaximum" => ExportableInstanceField::UtilizationMetricsMemoryMaximum,
360 "UtilizationMetricsNetworkInBytesPerSecondMaximum" => ExportableInstanceField::UtilizationMetricsNetworkInBytesPerSecondMaximum,
361 "UtilizationMetricsNetworkOutBytesPerSecondMaximum" => ExportableInstanceField::UtilizationMetricsNetworkOutBytesPerSecondMaximum,
362 "UtilizationMetricsNetworkPacketsInPerSecondMaximum" => ExportableInstanceField::UtilizationMetricsNetworkPacketsInPerSecondMaximum,
363 "UtilizationMetricsNetworkPacketsOutPerSecondMaximum" => ExportableInstanceField::UtilizationMetricsNetworkPacketsOutPerSecondMaximum,
364 other => ExportableInstanceField::Unknown(crate::primitives::sealed_enum_unknown::UnknownVariantValue(other.to_owned())),
365 }
366 }
367}
368impl ::std::str::FromStr for ExportableInstanceField {
369 type Err = ::std::convert::Infallible;
370
371 fn from_str(s: &str) -> ::std::result::Result<Self, <Self as ::std::str::FromStr>::Err> {
372 ::std::result::Result::Ok(ExportableInstanceField::from(s))
373 }
374}
375impl ExportableInstanceField {
376 pub fn as_str(&self) -> &str {
378 match self {
379 ExportableInstanceField::AccountId => "AccountId",
380 ExportableInstanceField::CurrentInstanceGpuInfo => "CurrentInstanceGpuInfo",
381 ExportableInstanceField::CurrentInstanceType => "CurrentInstanceType",
382 ExportableInstanceField::CurrentMemory => "CurrentMemory",
383 ExportableInstanceField::CurrentNetwork => "CurrentNetwork",
384 ExportableInstanceField::CurrentOnDemandPrice => "CurrentOnDemandPrice",
385 ExportableInstanceField::CurrentPerformanceRisk => "CurrentPerformanceRisk",
386 ExportableInstanceField::CurrentStandardOneYearNoUpfrontReservedPrice => "CurrentStandardOneYearNoUpfrontReservedPrice",
387 ExportableInstanceField::CurrentStandardThreeYearNoUpfrontReservedPrice => "CurrentStandardThreeYearNoUpfrontReservedPrice",
388 ExportableInstanceField::CurrentStorage => "CurrentStorage",
389 ExportableInstanceField::CurrentVcpus => "CurrentVCpus",
390 ExportableInstanceField::EffectiveRecommendationPreferencesCpuVendorArchitectures => {
391 "EffectiveRecommendationPreferencesCpuVendorArchitectures"
392 }
393 ExportableInstanceField::EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics => {
394 "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics"
395 }
396 ExportableInstanceField::EffectiveRecommendationPreferencesExternalMetricsSource => {
397 "EffectiveRecommendationPreferencesExternalMetricsSource"
398 }
399 ExportableInstanceField::EffectiveRecommendationPreferencesInferredWorkloadTypes => {
400 "EffectiveRecommendationPreferencesInferredWorkloadTypes"
401 }
402 ExportableInstanceField::EffectiveRecommendationPreferencesLookbackPeriod => "EffectiveRecommendationPreferencesLookBackPeriod",
403 ExportableInstanceField::EffectiveRecommendationPreferencesPreferredResources => "EffectiveRecommendationPreferencesPreferredResources",
404 ExportableInstanceField::EffectiveRecommendationPreferencesSavingsEstimationMode => {
405 "EffectiveRecommendationPreferencesSavingsEstimationMode"
406 }
407 ExportableInstanceField::EffectiveRecommendationPreferencesUtilizationPreferences => {
408 "EffectiveRecommendationPreferencesUtilizationPreferences"
409 }
410 ExportableInstanceField::ExternalMetricStatusCode => "ExternalMetricStatusCode",
411 ExportableInstanceField::ExternalMetricStatusReason => "ExternalMetricStatusReason",
412 ExportableInstanceField::Finding => "Finding",
413 ExportableInstanceField::FindingReasonCodes => "FindingReasonCodes",
414 ExportableInstanceField::Idle => "Idle",
415 ExportableInstanceField::InferredWorkloadTypes => "InferredWorkloadTypes",
416 ExportableInstanceField::InstanceArn => "InstanceArn",
417 ExportableInstanceField::InstanceName => "InstanceName",
418 ExportableInstanceField::InstanceState => "InstanceState",
419 ExportableInstanceField::LastRefreshTimestamp => "LastRefreshTimestamp",
420 ExportableInstanceField::LookbackPeriodInDays => "LookbackPeriodInDays",
421 ExportableInstanceField::RecommendationOptionsEstimatedMonthlySavingsCurrency => "RecommendationOptionsEstimatedMonthlySavingsCurrency",
422 ExportableInstanceField::RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts => {
423 "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts"
424 }
425 ExportableInstanceField::RecommendationOptionsEstimatedMonthlySavingsValue => "RecommendationOptionsEstimatedMonthlySavingsValue",
426 ExportableInstanceField::RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts => {
427 "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts"
428 }
429 ExportableInstanceField::RecommendationOptionsInstanceGpuInfo => "RecommendationOptionsInstanceGpuInfo",
430 ExportableInstanceField::RecommendationOptionsInstanceType => "RecommendationOptionsInstanceType",
431 ExportableInstanceField::RecommendationOptionsMemory => "RecommendationOptionsMemory",
432 ExportableInstanceField::RecommendationOptionsMigrationEffort => "RecommendationOptionsMigrationEffort",
433 ExportableInstanceField::RecommendationOptionsNetwork => "RecommendationOptionsNetwork",
434 ExportableInstanceField::RecommendationOptionsOnDemandPrice => "RecommendationOptionsOnDemandPrice",
435 ExportableInstanceField::RecommendationOptionsPerformanceRisk => "RecommendationOptionsPerformanceRisk",
436 ExportableInstanceField::RecommendationOptionsPlatformDifferences => "RecommendationOptionsPlatformDifferences",
437 ExportableInstanceField::RecommendationOptionsProjectedUtilizationMetricsCpuMaximum => {
438 "RecommendationOptionsProjectedUtilizationMetricsCpuMaximum"
439 }
440 ExportableInstanceField::RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum => {
441 "RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum"
442 }
443 ExportableInstanceField::RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum => {
444 "RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum"
445 }
446 ExportableInstanceField::RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum => {
447 "RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum"
448 }
449 ExportableInstanceField::RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage => {
450 "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage"
451 }
452 ExportableInstanceField::RecommendationOptionsSavingsOpportunityPercentage => "RecommendationOptionsSavingsOpportunityPercentage",
453 ExportableInstanceField::RecommendationOptionsStandardOneYearNoUpfrontReservedPrice => {
454 "RecommendationOptionsStandardOneYearNoUpfrontReservedPrice"
455 }
456 ExportableInstanceField::RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice => {
457 "RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice"
458 }
459 ExportableInstanceField::RecommendationOptionsStorage => "RecommendationOptionsStorage",
460 ExportableInstanceField::RecommendationOptionsVcpus => "RecommendationOptionsVcpus",
461 ExportableInstanceField::RecommendationsSourcesRecommendationSourceArn => "RecommendationsSourcesRecommendationSourceArn",
462 ExportableInstanceField::RecommendationsSourcesRecommendationSourceType => "RecommendationsSourcesRecommendationSourceType",
463 ExportableInstanceField::Tags => "Tags",
464 ExportableInstanceField::UtilizationMetricsCpuMaximum => "UtilizationMetricsCpuMaximum",
465 ExportableInstanceField::UtilizationMetricsDiskReadBytesPerSecondMaximum => "UtilizationMetricsDiskReadBytesPerSecondMaximum",
466 ExportableInstanceField::UtilizationMetricsDiskReadOpsPerSecondMaximum => "UtilizationMetricsDiskReadOpsPerSecondMaximum",
467 ExportableInstanceField::UtilizationMetricsDiskWriteBytesPerSecondMaximum => "UtilizationMetricsDiskWriteBytesPerSecondMaximum",
468 ExportableInstanceField::UtilizationMetricsDiskWriteOpsPerSecondMaximum => "UtilizationMetricsDiskWriteOpsPerSecondMaximum",
469 ExportableInstanceField::UtilizationMetricsEbsReadBytesPerSecondMaximum => "UtilizationMetricsEbsReadBytesPerSecondMaximum",
470 ExportableInstanceField::UtilizationMetricsEbsReadOpsPerSecondMaximum => "UtilizationMetricsEbsReadOpsPerSecondMaximum",
471 ExportableInstanceField::UtilizationMetricsEbsWriteBytesPerSecondMaximum => "UtilizationMetricsEbsWriteBytesPerSecondMaximum",
472 ExportableInstanceField::UtilizationMetricsEbsWriteOpsPerSecondMaximum => "UtilizationMetricsEbsWriteOpsPerSecondMaximum",
473 ExportableInstanceField::UtilizationMetricsGpuMemoryPercentageMaximum => "UtilizationMetricsGpuMemoryPercentageMaximum",
474 ExportableInstanceField::UtilizationMetricsGpuPercentageMaximum => "UtilizationMetricsGpuPercentageMaximum",
475 ExportableInstanceField::UtilizationMetricsMemoryMaximum => "UtilizationMetricsMemoryMaximum",
476 ExportableInstanceField::UtilizationMetricsNetworkInBytesPerSecondMaximum => "UtilizationMetricsNetworkInBytesPerSecondMaximum",
477 ExportableInstanceField::UtilizationMetricsNetworkOutBytesPerSecondMaximum => "UtilizationMetricsNetworkOutBytesPerSecondMaximum",
478 ExportableInstanceField::UtilizationMetricsNetworkPacketsInPerSecondMaximum => "UtilizationMetricsNetworkPacketsInPerSecondMaximum",
479 ExportableInstanceField::UtilizationMetricsNetworkPacketsOutPerSecondMaximum => "UtilizationMetricsNetworkPacketsOutPerSecondMaximum",
480 ExportableInstanceField::Unknown(value) => value.as_str(),
481 }
482 }
483 pub const fn values() -> &'static [&'static str] {
485 &[
486 "AccountId",
487 "CurrentInstanceGpuInfo",
488 "CurrentInstanceType",
489 "CurrentMemory",
490 "CurrentNetwork",
491 "CurrentOnDemandPrice",
492 "CurrentPerformanceRisk",
493 "CurrentStandardOneYearNoUpfrontReservedPrice",
494 "CurrentStandardThreeYearNoUpfrontReservedPrice",
495 "CurrentStorage",
496 "CurrentVCpus",
497 "EffectiveRecommendationPreferencesCpuVendorArchitectures",
498 "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics",
499 "EffectiveRecommendationPreferencesExternalMetricsSource",
500 "EffectiveRecommendationPreferencesInferredWorkloadTypes",
501 "EffectiveRecommendationPreferencesLookBackPeriod",
502 "EffectiveRecommendationPreferencesPreferredResources",
503 "EffectiveRecommendationPreferencesSavingsEstimationMode",
504 "EffectiveRecommendationPreferencesUtilizationPreferences",
505 "ExternalMetricStatusCode",
506 "ExternalMetricStatusReason",
507 "Finding",
508 "FindingReasonCodes",
509 "Idle",
510 "InferredWorkloadTypes",
511 "InstanceArn",
512 "InstanceName",
513 "InstanceState",
514 "LastRefreshTimestamp",
515 "LookbackPeriodInDays",
516 "RecommendationOptionsEstimatedMonthlySavingsCurrency",
517 "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts",
518 "RecommendationOptionsEstimatedMonthlySavingsValue",
519 "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts",
520 "RecommendationOptionsInstanceGpuInfo",
521 "RecommendationOptionsInstanceType",
522 "RecommendationOptionsMemory",
523 "RecommendationOptionsMigrationEffort",
524 "RecommendationOptionsNetwork",
525 "RecommendationOptionsOnDemandPrice",
526 "RecommendationOptionsPerformanceRisk",
527 "RecommendationOptionsPlatformDifferences",
528 "RecommendationOptionsProjectedUtilizationMetricsCpuMaximum",
529 "RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum",
530 "RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum",
531 "RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum",
532 "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage",
533 "RecommendationOptionsSavingsOpportunityPercentage",
534 "RecommendationOptionsStandardOneYearNoUpfrontReservedPrice",
535 "RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice",
536 "RecommendationOptionsStorage",
537 "RecommendationOptionsVcpus",
538 "RecommendationsSourcesRecommendationSourceArn",
539 "RecommendationsSourcesRecommendationSourceType",
540 "Tags",
541 "UtilizationMetricsCpuMaximum",
542 "UtilizationMetricsDiskReadBytesPerSecondMaximum",
543 "UtilizationMetricsDiskReadOpsPerSecondMaximum",
544 "UtilizationMetricsDiskWriteBytesPerSecondMaximum",
545 "UtilizationMetricsDiskWriteOpsPerSecondMaximum",
546 "UtilizationMetricsEbsReadBytesPerSecondMaximum",
547 "UtilizationMetricsEbsReadOpsPerSecondMaximum",
548 "UtilizationMetricsEbsWriteBytesPerSecondMaximum",
549 "UtilizationMetricsEbsWriteOpsPerSecondMaximum",
550 "UtilizationMetricsGpuMemoryPercentageMaximum",
551 "UtilizationMetricsGpuPercentageMaximum",
552 "UtilizationMetricsMemoryMaximum",
553 "UtilizationMetricsNetworkInBytesPerSecondMaximum",
554 "UtilizationMetricsNetworkOutBytesPerSecondMaximum",
555 "UtilizationMetricsNetworkPacketsInPerSecondMaximum",
556 "UtilizationMetricsNetworkPacketsOutPerSecondMaximum",
557 ]
558 }
559}
560impl ::std::convert::AsRef<str> for ExportableInstanceField {
561 fn as_ref(&self) -> &str {
562 self.as_str()
563 }
564}
565impl ExportableInstanceField {
566 pub fn try_parse(value: &str) -> ::std::result::Result<Self, crate::error::UnknownVariantError> {
570 match Self::from(value) {
571 #[allow(deprecated)]
572 Self::Unknown(_) => ::std::result::Result::Err(crate::error::UnknownVariantError::new(value)),
573 known => Ok(known),
574 }
575 }
576}
577impl ::std::fmt::Display for ExportableInstanceField {
578 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
579 match self {
580 ExportableInstanceField::AccountId => write!(f, "AccountId"),
581 ExportableInstanceField::CurrentInstanceGpuInfo => write!(f, "CurrentInstanceGpuInfo"),
582 ExportableInstanceField::CurrentInstanceType => write!(f, "CurrentInstanceType"),
583 ExportableInstanceField::CurrentMemory => write!(f, "CurrentMemory"),
584 ExportableInstanceField::CurrentNetwork => write!(f, "CurrentNetwork"),
585 ExportableInstanceField::CurrentOnDemandPrice => write!(f, "CurrentOnDemandPrice"),
586 ExportableInstanceField::CurrentPerformanceRisk => write!(f, "CurrentPerformanceRisk"),
587 ExportableInstanceField::CurrentStandardOneYearNoUpfrontReservedPrice => write!(f, "CurrentStandardOneYearNoUpfrontReservedPrice"),
588 ExportableInstanceField::CurrentStandardThreeYearNoUpfrontReservedPrice => write!(f, "CurrentStandardThreeYearNoUpfrontReservedPrice"),
589 ExportableInstanceField::CurrentStorage => write!(f, "CurrentStorage"),
590 ExportableInstanceField::CurrentVcpus => write!(f, "CurrentVCpus"),
591 ExportableInstanceField::EffectiveRecommendationPreferencesCpuVendorArchitectures => {
592 write!(f, "EffectiveRecommendationPreferencesCpuVendorArchitectures")
593 }
594 ExportableInstanceField::EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics => {
595 write!(f, "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics")
596 }
597 ExportableInstanceField::EffectiveRecommendationPreferencesExternalMetricsSource => {
598 write!(f, "EffectiveRecommendationPreferencesExternalMetricsSource")
599 }
600 ExportableInstanceField::EffectiveRecommendationPreferencesInferredWorkloadTypes => {
601 write!(f, "EffectiveRecommendationPreferencesInferredWorkloadTypes")
602 }
603 ExportableInstanceField::EffectiveRecommendationPreferencesLookbackPeriod => {
604 write!(f, "EffectiveRecommendationPreferencesLookBackPeriod")
605 }
606 ExportableInstanceField::EffectiveRecommendationPreferencesPreferredResources => {
607 write!(f, "EffectiveRecommendationPreferencesPreferredResources")
608 }
609 ExportableInstanceField::EffectiveRecommendationPreferencesSavingsEstimationMode => {
610 write!(f, "EffectiveRecommendationPreferencesSavingsEstimationMode")
611 }
612 ExportableInstanceField::EffectiveRecommendationPreferencesUtilizationPreferences => {
613 write!(f, "EffectiveRecommendationPreferencesUtilizationPreferences")
614 }
615 ExportableInstanceField::ExternalMetricStatusCode => write!(f, "ExternalMetricStatusCode"),
616 ExportableInstanceField::ExternalMetricStatusReason => write!(f, "ExternalMetricStatusReason"),
617 ExportableInstanceField::Finding => write!(f, "Finding"),
618 ExportableInstanceField::FindingReasonCodes => write!(f, "FindingReasonCodes"),
619 ExportableInstanceField::Idle => write!(f, "Idle"),
620 ExportableInstanceField::InferredWorkloadTypes => write!(f, "InferredWorkloadTypes"),
621 ExportableInstanceField::InstanceArn => write!(f, "InstanceArn"),
622 ExportableInstanceField::InstanceName => write!(f, "InstanceName"),
623 ExportableInstanceField::InstanceState => write!(f, "InstanceState"),
624 ExportableInstanceField::LastRefreshTimestamp => write!(f, "LastRefreshTimestamp"),
625 ExportableInstanceField::LookbackPeriodInDays => write!(f, "LookbackPeriodInDays"),
626 ExportableInstanceField::RecommendationOptionsEstimatedMonthlySavingsCurrency => {
627 write!(f, "RecommendationOptionsEstimatedMonthlySavingsCurrency")
628 }
629 ExportableInstanceField::RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts => {
630 write!(f, "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts")
631 }
632 ExportableInstanceField::RecommendationOptionsEstimatedMonthlySavingsValue => {
633 write!(f, "RecommendationOptionsEstimatedMonthlySavingsValue")
634 }
635 ExportableInstanceField::RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts => {
636 write!(f, "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts")
637 }
638 ExportableInstanceField::RecommendationOptionsInstanceGpuInfo => write!(f, "RecommendationOptionsInstanceGpuInfo"),
639 ExportableInstanceField::RecommendationOptionsInstanceType => write!(f, "RecommendationOptionsInstanceType"),
640 ExportableInstanceField::RecommendationOptionsMemory => write!(f, "RecommendationOptionsMemory"),
641 ExportableInstanceField::RecommendationOptionsMigrationEffort => write!(f, "RecommendationOptionsMigrationEffort"),
642 ExportableInstanceField::RecommendationOptionsNetwork => write!(f, "RecommendationOptionsNetwork"),
643 ExportableInstanceField::RecommendationOptionsOnDemandPrice => write!(f, "RecommendationOptionsOnDemandPrice"),
644 ExportableInstanceField::RecommendationOptionsPerformanceRisk => write!(f, "RecommendationOptionsPerformanceRisk"),
645 ExportableInstanceField::RecommendationOptionsPlatformDifferences => write!(f, "RecommendationOptionsPlatformDifferences"),
646 ExportableInstanceField::RecommendationOptionsProjectedUtilizationMetricsCpuMaximum => {
647 write!(f, "RecommendationOptionsProjectedUtilizationMetricsCpuMaximum")
648 }
649 ExportableInstanceField::RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum => {
650 write!(f, "RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum")
651 }
652 ExportableInstanceField::RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum => {
653 write!(f, "RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum")
654 }
655 ExportableInstanceField::RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum => {
656 write!(f, "RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum")
657 }
658 ExportableInstanceField::RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage => {
659 write!(f, "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage")
660 }
661 ExportableInstanceField::RecommendationOptionsSavingsOpportunityPercentage => {
662 write!(f, "RecommendationOptionsSavingsOpportunityPercentage")
663 }
664 ExportableInstanceField::RecommendationOptionsStandardOneYearNoUpfrontReservedPrice => {
665 write!(f, "RecommendationOptionsStandardOneYearNoUpfrontReservedPrice")
666 }
667 ExportableInstanceField::RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice => {
668 write!(f, "RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice")
669 }
670 ExportableInstanceField::RecommendationOptionsStorage => write!(f, "RecommendationOptionsStorage"),
671 ExportableInstanceField::RecommendationOptionsVcpus => write!(f, "RecommendationOptionsVcpus"),
672 ExportableInstanceField::RecommendationsSourcesRecommendationSourceArn => write!(f, "RecommendationsSourcesRecommendationSourceArn"),
673 ExportableInstanceField::RecommendationsSourcesRecommendationSourceType => write!(f, "RecommendationsSourcesRecommendationSourceType"),
674 ExportableInstanceField::Tags => write!(f, "Tags"),
675 ExportableInstanceField::UtilizationMetricsCpuMaximum => write!(f, "UtilizationMetricsCpuMaximum"),
676 ExportableInstanceField::UtilizationMetricsDiskReadBytesPerSecondMaximum => write!(f, "UtilizationMetricsDiskReadBytesPerSecondMaximum"),
677 ExportableInstanceField::UtilizationMetricsDiskReadOpsPerSecondMaximum => write!(f, "UtilizationMetricsDiskReadOpsPerSecondMaximum"),
678 ExportableInstanceField::UtilizationMetricsDiskWriteBytesPerSecondMaximum => {
679 write!(f, "UtilizationMetricsDiskWriteBytesPerSecondMaximum")
680 }
681 ExportableInstanceField::UtilizationMetricsDiskWriteOpsPerSecondMaximum => write!(f, "UtilizationMetricsDiskWriteOpsPerSecondMaximum"),
682 ExportableInstanceField::UtilizationMetricsEbsReadBytesPerSecondMaximum => write!(f, "UtilizationMetricsEbsReadBytesPerSecondMaximum"),
683 ExportableInstanceField::UtilizationMetricsEbsReadOpsPerSecondMaximum => write!(f, "UtilizationMetricsEbsReadOpsPerSecondMaximum"),
684 ExportableInstanceField::UtilizationMetricsEbsWriteBytesPerSecondMaximum => write!(f, "UtilizationMetricsEbsWriteBytesPerSecondMaximum"),
685 ExportableInstanceField::UtilizationMetricsEbsWriteOpsPerSecondMaximum => write!(f, "UtilizationMetricsEbsWriteOpsPerSecondMaximum"),
686 ExportableInstanceField::UtilizationMetricsGpuMemoryPercentageMaximum => write!(f, "UtilizationMetricsGpuMemoryPercentageMaximum"),
687 ExportableInstanceField::UtilizationMetricsGpuPercentageMaximum => write!(f, "UtilizationMetricsGpuPercentageMaximum"),
688 ExportableInstanceField::UtilizationMetricsMemoryMaximum => write!(f, "UtilizationMetricsMemoryMaximum"),
689 ExportableInstanceField::UtilizationMetricsNetworkInBytesPerSecondMaximum => {
690 write!(f, "UtilizationMetricsNetworkInBytesPerSecondMaximum")
691 }
692 ExportableInstanceField::UtilizationMetricsNetworkOutBytesPerSecondMaximum => {
693 write!(f, "UtilizationMetricsNetworkOutBytesPerSecondMaximum")
694 }
695 ExportableInstanceField::UtilizationMetricsNetworkPacketsInPerSecondMaximum => {
696 write!(f, "UtilizationMetricsNetworkPacketsInPerSecondMaximum")
697 }
698 ExportableInstanceField::UtilizationMetricsNetworkPacketsOutPerSecondMaximum => {
699 write!(f, "UtilizationMetricsNetworkPacketsOutPerSecondMaximum")
700 }
701 ExportableInstanceField::Unknown(value) => write!(f, "{}", value),
702 }
703 }
704}