aws_sdk_computeoptimizer/types/
_exportable_instance_field.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2
3/// When writing a match expression against `ExportableInstanceField`, it is important to ensure
4/// your code is forward-compatible. That is, if a match arm handles a case for a
5/// feature that is supported by the service but has not been represented as an enum
6/// variant in a current version of SDK, your code should continue to work when you
7/// upgrade SDK to a future version in which the enum does include a variant for that
8/// feature.
9///
10/// Here is an example of how you can make a match expression forward-compatible:
11///
12/// ```text
13/// # let exportableinstancefield = unimplemented!();
14/// match exportableinstancefield {
15///     ExportableInstanceField::AccountId => { /* ... */ },
16///     ExportableInstanceField::CurrentInstanceGpuInfo => { /* ... */ },
17///     ExportableInstanceField::CurrentInstanceType => { /* ... */ },
18///     ExportableInstanceField::CurrentMemory => { /* ... */ },
19///     ExportableInstanceField::CurrentNetwork => { /* ... */ },
20///     ExportableInstanceField::CurrentOnDemandPrice => { /* ... */ },
21///     ExportableInstanceField::CurrentPerformanceRisk => { /* ... */ },
22///     ExportableInstanceField::CurrentStandardOneYearNoUpfrontReservedPrice => { /* ... */ },
23///     ExportableInstanceField::CurrentStandardThreeYearNoUpfrontReservedPrice => { /* ... */ },
24///     ExportableInstanceField::CurrentStorage => { /* ... */ },
25///     ExportableInstanceField::CurrentVcpus => { /* ... */ },
26///     ExportableInstanceField::EffectiveRecommendationPreferencesCpuVendorArchitectures => { /* ... */ },
27///     ExportableInstanceField::EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics => { /* ... */ },
28///     ExportableInstanceField::EffectiveRecommendationPreferencesExternalMetricsSource => { /* ... */ },
29///     ExportableInstanceField::EffectiveRecommendationPreferencesInferredWorkloadTypes => { /* ... */ },
30///     ExportableInstanceField::EffectiveRecommendationPreferencesLookbackPeriod => { /* ... */ },
31///     ExportableInstanceField::EffectiveRecommendationPreferencesPreferredResources => { /* ... */ },
32///     ExportableInstanceField::EffectiveRecommendationPreferencesSavingsEstimationMode => { /* ... */ },
33///     ExportableInstanceField::EffectiveRecommendationPreferencesUtilizationPreferences => { /* ... */ },
34///     ExportableInstanceField::ExternalMetricStatusCode => { /* ... */ },
35///     ExportableInstanceField::ExternalMetricStatusReason => { /* ... */ },
36///     ExportableInstanceField::Finding => { /* ... */ },
37///     ExportableInstanceField::FindingReasonCodes => { /* ... */ },
38///     ExportableInstanceField::Idle => { /* ... */ },
39///     ExportableInstanceField::InferredWorkloadTypes => { /* ... */ },
40///     ExportableInstanceField::InstanceArn => { /* ... */ },
41///     ExportableInstanceField::InstanceName => { /* ... */ },
42///     ExportableInstanceField::InstanceState => { /* ... */ },
43///     ExportableInstanceField::LastRefreshTimestamp => { /* ... */ },
44///     ExportableInstanceField::LookbackPeriodInDays => { /* ... */ },
45///     ExportableInstanceField::RecommendationOptionsEstimatedMonthlySavingsCurrency => { /* ... */ },
46///     ExportableInstanceField::RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts => { /* ... */ },
47///     ExportableInstanceField::RecommendationOptionsEstimatedMonthlySavingsValue => { /* ... */ },
48///     ExportableInstanceField::RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts => { /* ... */ },
49///     ExportableInstanceField::RecommendationOptionsInstanceGpuInfo => { /* ... */ },
50///     ExportableInstanceField::RecommendationOptionsInstanceType => { /* ... */ },
51///     ExportableInstanceField::RecommendationOptionsMemory => { /* ... */ },
52///     ExportableInstanceField::RecommendationOptionsMigrationEffort => { /* ... */ },
53///     ExportableInstanceField::RecommendationOptionsNetwork => { /* ... */ },
54///     ExportableInstanceField::RecommendationOptionsOnDemandPrice => { /* ... */ },
55///     ExportableInstanceField::RecommendationOptionsPerformanceRisk => { /* ... */ },
56///     ExportableInstanceField::RecommendationOptionsPlatformDifferences => { /* ... */ },
57///     ExportableInstanceField::RecommendationOptionsProjectedUtilizationMetricsCpuMaximum => { /* ... */ },
58///     ExportableInstanceField::RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum => { /* ... */ },
59///     ExportableInstanceField::RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum => { /* ... */ },
60///     ExportableInstanceField::RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum => { /* ... */ },
61///     ExportableInstanceField::RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage => { /* ... */ },
62///     ExportableInstanceField::RecommendationOptionsSavingsOpportunityPercentage => { /* ... */ },
63///     ExportableInstanceField::RecommendationOptionsStandardOneYearNoUpfrontReservedPrice => { /* ... */ },
64///     ExportableInstanceField::RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice => { /* ... */ },
65///     ExportableInstanceField::RecommendationOptionsStorage => { /* ... */ },
66///     ExportableInstanceField::RecommendationOptionsVcpus => { /* ... */ },
67///     ExportableInstanceField::RecommendationsSourcesRecommendationSourceArn => { /* ... */ },
68///     ExportableInstanceField::RecommendationsSourcesRecommendationSourceType => { /* ... */ },
69///     ExportableInstanceField::Tags => { /* ... */ },
70///     ExportableInstanceField::UtilizationMetricsCpuMaximum => { /* ... */ },
71///     ExportableInstanceField::UtilizationMetricsDiskReadBytesPerSecondMaximum => { /* ... */ },
72///     ExportableInstanceField::UtilizationMetricsDiskReadOpsPerSecondMaximum => { /* ... */ },
73///     ExportableInstanceField::UtilizationMetricsDiskWriteBytesPerSecondMaximum => { /* ... */ },
74///     ExportableInstanceField::UtilizationMetricsDiskWriteOpsPerSecondMaximum => { /* ... */ },
75///     ExportableInstanceField::UtilizationMetricsEbsReadBytesPerSecondMaximum => { /* ... */ },
76///     ExportableInstanceField::UtilizationMetricsEbsReadOpsPerSecondMaximum => { /* ... */ },
77///     ExportableInstanceField::UtilizationMetricsEbsWriteBytesPerSecondMaximum => { /* ... */ },
78///     ExportableInstanceField::UtilizationMetricsEbsWriteOpsPerSecondMaximum => { /* ... */ },
79///     ExportableInstanceField::UtilizationMetricsGpuMemoryPercentageMaximum => { /* ... */ },
80///     ExportableInstanceField::UtilizationMetricsGpuPercentageMaximum => { /* ... */ },
81///     ExportableInstanceField::UtilizationMetricsMemoryMaximum => { /* ... */ },
82///     ExportableInstanceField::UtilizationMetricsNetworkInBytesPerSecondMaximum => { /* ... */ },
83///     ExportableInstanceField::UtilizationMetricsNetworkOutBytesPerSecondMaximum => { /* ... */ },
84///     ExportableInstanceField::UtilizationMetricsNetworkPacketsInPerSecondMaximum => { /* ... */ },
85///     ExportableInstanceField::UtilizationMetricsNetworkPacketsOutPerSecondMaximum => { /* ... */ },
86///     other @ _ if other.as_str() == "NewFeature" => { /* handles a case for `NewFeature` */ },
87///     _ => { /* ... */ },
88/// }
89/// ```
90/// The above code demonstrates that when `exportableinstancefield` represents
91/// `NewFeature`, the execution path will lead to the second last match arm,
92/// even though the enum does not contain a variant `ExportableInstanceField::NewFeature`
93/// in the current version of SDK. The reason is that the variable `other`,
94/// created by the `@` operator, is bound to
95/// `ExportableInstanceField::Unknown(UnknownVariantValue("NewFeature".to_owned()))`
96/// and calling `as_str` on it yields `"NewFeature"`.
97/// This match expression is forward-compatible when executed with a newer
98/// version of SDK where the variant `ExportableInstanceField::NewFeature` is defined.
99/// Specifically, when `exportableinstancefield` represents `NewFeature`,
100/// the execution path will hit the second last match arm as before by virtue of
101/// calling `as_str` on `ExportableInstanceField::NewFeature` also yielding `"NewFeature"`.
102///
103/// Explicitly matching on the `Unknown` variant should
104/// be avoided for two reasons:
105/// - The inner data `UnknownVariantValue` is opaque, and no further information can be extracted.
106/// - It might inadvertently shadow other intended match arms.
107///
108#[allow(missing_docs)] // documentation missing in model
109#[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)] // documentation missing in model
115    AccountId,
116    #[allow(missing_docs)] // documentation missing in model
117    CurrentInstanceGpuInfo,
118    #[allow(missing_docs)] // documentation missing in model
119    CurrentInstanceType,
120    #[allow(missing_docs)] // documentation missing in model
121    CurrentMemory,
122    #[allow(missing_docs)] // documentation missing in model
123    CurrentNetwork,
124    #[allow(missing_docs)] // documentation missing in model
125    CurrentOnDemandPrice,
126    #[allow(missing_docs)] // documentation missing in model
127    CurrentPerformanceRisk,
128    #[allow(missing_docs)] // documentation missing in model
129    CurrentStandardOneYearNoUpfrontReservedPrice,
130    #[allow(missing_docs)] // documentation missing in model
131    CurrentStandardThreeYearNoUpfrontReservedPrice,
132    #[allow(missing_docs)] // documentation missing in model
133    CurrentStorage,
134    #[allow(missing_docs)] // documentation missing in model
135    CurrentVcpus,
136    #[allow(missing_docs)] // documentation missing in model
137    EffectiveRecommendationPreferencesCpuVendorArchitectures,
138    #[allow(missing_docs)] // documentation missing in model
139    EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics,
140    #[allow(missing_docs)] // documentation missing in model
141    EffectiveRecommendationPreferencesExternalMetricsSource,
142    #[allow(missing_docs)] // documentation missing in model
143    EffectiveRecommendationPreferencesInferredWorkloadTypes,
144    #[allow(missing_docs)] // documentation missing in model
145    EffectiveRecommendationPreferencesLookbackPeriod,
146    #[allow(missing_docs)] // documentation missing in model
147    EffectiveRecommendationPreferencesPreferredResources,
148    #[allow(missing_docs)] // documentation missing in model
149    EffectiveRecommendationPreferencesSavingsEstimationMode,
150    #[allow(missing_docs)] // documentation missing in model
151    EffectiveRecommendationPreferencesUtilizationPreferences,
152    #[allow(missing_docs)] // documentation missing in model
153    ExternalMetricStatusCode,
154    #[allow(missing_docs)] // documentation missing in model
155    ExternalMetricStatusReason,
156    #[allow(missing_docs)] // documentation missing in model
157    Finding,
158    #[allow(missing_docs)] // documentation missing in model
159    FindingReasonCodes,
160    #[allow(missing_docs)] // documentation missing in model
161    Idle,
162    #[allow(missing_docs)] // documentation missing in model
163    InferredWorkloadTypes,
164    #[allow(missing_docs)] // documentation missing in model
165    InstanceArn,
166    #[allow(missing_docs)] // documentation missing in model
167    InstanceName,
168    #[allow(missing_docs)] // documentation missing in model
169    InstanceState,
170    #[allow(missing_docs)] // documentation missing in model
171    LastRefreshTimestamp,
172    #[allow(missing_docs)] // documentation missing in model
173    LookbackPeriodInDays,
174    #[allow(missing_docs)] // documentation missing in model
175    RecommendationOptionsEstimatedMonthlySavingsCurrency,
176    #[allow(missing_docs)] // documentation missing in model
177    RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts,
178    #[allow(missing_docs)] // documentation missing in model
179    RecommendationOptionsEstimatedMonthlySavingsValue,
180    #[allow(missing_docs)] // documentation missing in model
181    RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts,
182    #[allow(missing_docs)] // documentation missing in model
183    RecommendationOptionsInstanceGpuInfo,
184    #[allow(missing_docs)] // documentation missing in model
185    RecommendationOptionsInstanceType,
186    #[allow(missing_docs)] // documentation missing in model
187    RecommendationOptionsMemory,
188    #[allow(missing_docs)] // documentation missing in model
189    RecommendationOptionsMigrationEffort,
190    #[allow(missing_docs)] // documentation missing in model
191    RecommendationOptionsNetwork,
192    #[allow(missing_docs)] // documentation missing in model
193    RecommendationOptionsOnDemandPrice,
194    #[allow(missing_docs)] // documentation missing in model
195    RecommendationOptionsPerformanceRisk,
196    #[allow(missing_docs)] // documentation missing in model
197    RecommendationOptionsPlatformDifferences,
198    #[allow(missing_docs)] // documentation missing in model
199    RecommendationOptionsProjectedUtilizationMetricsCpuMaximum,
200    #[allow(missing_docs)] // documentation missing in model
201    RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum,
202    #[allow(missing_docs)] // documentation missing in model
203    RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum,
204    #[allow(missing_docs)] // documentation missing in model
205    RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum,
206    #[allow(missing_docs)] // documentation missing in model
207    RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage,
208    #[allow(missing_docs)] // documentation missing in model
209    RecommendationOptionsSavingsOpportunityPercentage,
210    #[allow(missing_docs)] // documentation missing in model
211    RecommendationOptionsStandardOneYearNoUpfrontReservedPrice,
212    #[allow(missing_docs)] // documentation missing in model
213    RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice,
214    #[allow(missing_docs)] // documentation missing in model
215    RecommendationOptionsStorage,
216    #[allow(missing_docs)] // documentation missing in model
217    RecommendationOptionsVcpus,
218    #[allow(missing_docs)] // documentation missing in model
219    RecommendationsSourcesRecommendationSourceArn,
220    #[allow(missing_docs)] // documentation missing in model
221    RecommendationsSourcesRecommendationSourceType,
222    #[allow(missing_docs)] // documentation missing in model
223    Tags,
224    #[allow(missing_docs)] // documentation missing in model
225    UtilizationMetricsCpuMaximum,
226    #[allow(missing_docs)] // documentation missing in model
227    UtilizationMetricsDiskReadBytesPerSecondMaximum,
228    #[allow(missing_docs)] // documentation missing in model
229    UtilizationMetricsDiskReadOpsPerSecondMaximum,
230    #[allow(missing_docs)] // documentation missing in model
231    UtilizationMetricsDiskWriteBytesPerSecondMaximum,
232    #[allow(missing_docs)] // documentation missing in model
233    UtilizationMetricsDiskWriteOpsPerSecondMaximum,
234    #[allow(missing_docs)] // documentation missing in model
235    UtilizationMetricsEbsReadBytesPerSecondMaximum,
236    #[allow(missing_docs)] // documentation missing in model
237    UtilizationMetricsEbsReadOpsPerSecondMaximum,
238    #[allow(missing_docs)] // documentation missing in model
239    UtilizationMetricsEbsWriteBytesPerSecondMaximum,
240    #[allow(missing_docs)] // documentation missing in model
241    UtilizationMetricsEbsWriteOpsPerSecondMaximum,
242    #[allow(missing_docs)] // documentation missing in model
243    UtilizationMetricsGpuMemoryPercentageMaximum,
244    #[allow(missing_docs)] // documentation missing in model
245    UtilizationMetricsGpuPercentageMaximum,
246    #[allow(missing_docs)] // documentation missing in model
247    UtilizationMetricsMemoryMaximum,
248    #[allow(missing_docs)] // documentation missing in model
249    UtilizationMetricsNetworkInBytesPerSecondMaximum,
250    #[allow(missing_docs)] // documentation missing in model
251    UtilizationMetricsNetworkOutBytesPerSecondMaximum,
252    #[allow(missing_docs)] // documentation missing in model
253    UtilizationMetricsNetworkPacketsInPerSecondMaximum,
254    #[allow(missing_docs)] // documentation missing in model
255    UtilizationMetricsNetworkPacketsOutPerSecondMaximum,
256    /// `Unknown` contains new variants that have been added since this code was generated.
257    #[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    /// Returns the `&str` value of the enum member.
377    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    /// Returns all the `&str` representations of the enum members.
484    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    /// Parses the enum value while disallowing unknown variants.
567    ///
568    /// Unknown variants will result in an error.
569    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}