{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.EC2.Types.InstanceTypeInfo where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.EC2.Internal
import Amazonka.EC2.Types.BootModeType
import Amazonka.EC2.Types.EbsInfo
import Amazonka.EC2.Types.FpgaInfo
import Amazonka.EC2.Types.GpuInfo
import Amazonka.EC2.Types.InferenceAcceleratorInfo
import Amazonka.EC2.Types.InstanceStorageInfo
import Amazonka.EC2.Types.InstanceType
import Amazonka.EC2.Types.InstanceTypeHypervisor
import Amazonka.EC2.Types.MemoryInfo
import Amazonka.EC2.Types.NetworkInfo
import Amazonka.EC2.Types.PlacementGroupInfo
import Amazonka.EC2.Types.ProcessorInfo
import Amazonka.EC2.Types.RootDeviceType
import Amazonka.EC2.Types.UsageClassType
import Amazonka.EC2.Types.VCpuInfo
import Amazonka.EC2.Types.VirtualizationType
import qualified Amazonka.Prelude as Prelude
data InstanceTypeInfo = InstanceTypeInfo'
{
InstanceTypeInfo -> Maybe Bool
autoRecoverySupported :: Prelude.Maybe Prelude.Bool,
InstanceTypeInfo -> Maybe Bool
bareMetal :: Prelude.Maybe Prelude.Bool,
InstanceTypeInfo -> Maybe Bool
burstablePerformanceSupported :: Prelude.Maybe Prelude.Bool,
InstanceTypeInfo -> Maybe Bool
currentGeneration :: Prelude.Maybe Prelude.Bool,
InstanceTypeInfo -> Maybe Bool
dedicatedHostsSupported :: Prelude.Maybe Prelude.Bool,
InstanceTypeInfo -> Maybe EbsInfo
ebsInfo :: Prelude.Maybe EbsInfo,
InstanceTypeInfo -> Maybe FpgaInfo
fpgaInfo :: Prelude.Maybe FpgaInfo,
InstanceTypeInfo -> Maybe Bool
freeTierEligible :: Prelude.Maybe Prelude.Bool,
InstanceTypeInfo -> Maybe GpuInfo
gpuInfo :: Prelude.Maybe GpuInfo,
InstanceTypeInfo -> Maybe Bool
hibernationSupported :: Prelude.Maybe Prelude.Bool,
InstanceTypeInfo -> Maybe InstanceTypeHypervisor
hypervisor :: Prelude.Maybe InstanceTypeHypervisor,
InstanceTypeInfo -> Maybe InferenceAcceleratorInfo
inferenceAcceleratorInfo :: Prelude.Maybe InferenceAcceleratorInfo,
InstanceTypeInfo -> Maybe InstanceStorageInfo
instanceStorageInfo :: Prelude.Maybe InstanceStorageInfo,
InstanceTypeInfo -> Maybe Bool
instanceStorageSupported :: Prelude.Maybe Prelude.Bool,
InstanceTypeInfo -> Maybe InstanceType
instanceType :: Prelude.Maybe InstanceType,
InstanceTypeInfo -> Maybe MemoryInfo
memoryInfo :: Prelude.Maybe MemoryInfo,
InstanceTypeInfo -> Maybe NetworkInfo
networkInfo :: Prelude.Maybe NetworkInfo,
InstanceTypeInfo -> Maybe PlacementGroupInfo
placementGroupInfo :: Prelude.Maybe PlacementGroupInfo,
InstanceTypeInfo -> Maybe ProcessorInfo
processorInfo :: Prelude.Maybe ProcessorInfo,
InstanceTypeInfo -> Maybe [BootModeType]
supportedBootModes :: Prelude.Maybe [BootModeType],
InstanceTypeInfo -> Maybe [RootDeviceType]
supportedRootDeviceTypes :: Prelude.Maybe [RootDeviceType],
InstanceTypeInfo -> Maybe [UsageClassType]
supportedUsageClasses :: Prelude.Maybe [UsageClassType],
InstanceTypeInfo -> Maybe [VirtualizationType]
supportedVirtualizationTypes :: Prelude.Maybe [VirtualizationType],
InstanceTypeInfo -> Maybe VCpuInfo
vCpuInfo :: Prelude.Maybe VCpuInfo
}
deriving (InstanceTypeInfo -> InstanceTypeInfo -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: InstanceTypeInfo -> InstanceTypeInfo -> Bool
$c/= :: InstanceTypeInfo -> InstanceTypeInfo -> Bool
== :: InstanceTypeInfo -> InstanceTypeInfo -> Bool
$c== :: InstanceTypeInfo -> InstanceTypeInfo -> Bool
Prelude.Eq, ReadPrec [InstanceTypeInfo]
ReadPrec InstanceTypeInfo
Int -> ReadS InstanceTypeInfo
ReadS [InstanceTypeInfo]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [InstanceTypeInfo]
$creadListPrec :: ReadPrec [InstanceTypeInfo]
readPrec :: ReadPrec InstanceTypeInfo
$creadPrec :: ReadPrec InstanceTypeInfo
readList :: ReadS [InstanceTypeInfo]
$creadList :: ReadS [InstanceTypeInfo]
readsPrec :: Int -> ReadS InstanceTypeInfo
$creadsPrec :: Int -> ReadS InstanceTypeInfo
Prelude.Read, Int -> InstanceTypeInfo -> ShowS
[InstanceTypeInfo] -> ShowS
InstanceTypeInfo -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [InstanceTypeInfo] -> ShowS
$cshowList :: [InstanceTypeInfo] -> ShowS
show :: InstanceTypeInfo -> String
$cshow :: InstanceTypeInfo -> String
showsPrec :: Int -> InstanceTypeInfo -> ShowS
$cshowsPrec :: Int -> InstanceTypeInfo -> ShowS
Prelude.Show, forall x. Rep InstanceTypeInfo x -> InstanceTypeInfo
forall x. InstanceTypeInfo -> Rep InstanceTypeInfo x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep InstanceTypeInfo x -> InstanceTypeInfo
$cfrom :: forall x. InstanceTypeInfo -> Rep InstanceTypeInfo x
Prelude.Generic)
newInstanceTypeInfo ::
InstanceTypeInfo
newInstanceTypeInfo :: InstanceTypeInfo
newInstanceTypeInfo =
InstanceTypeInfo'
{ $sel:autoRecoverySupported:InstanceTypeInfo' :: Maybe Bool
autoRecoverySupported =
forall a. Maybe a
Prelude.Nothing,
$sel:bareMetal:InstanceTypeInfo' :: Maybe Bool
bareMetal = forall a. Maybe a
Prelude.Nothing,
$sel:burstablePerformanceSupported:InstanceTypeInfo' :: Maybe Bool
burstablePerformanceSupported = forall a. Maybe a
Prelude.Nothing,
$sel:currentGeneration:InstanceTypeInfo' :: Maybe Bool
currentGeneration = forall a. Maybe a
Prelude.Nothing,
$sel:dedicatedHostsSupported:InstanceTypeInfo' :: Maybe Bool
dedicatedHostsSupported = forall a. Maybe a
Prelude.Nothing,
$sel:ebsInfo:InstanceTypeInfo' :: Maybe EbsInfo
ebsInfo = forall a. Maybe a
Prelude.Nothing,
$sel:fpgaInfo:InstanceTypeInfo' :: Maybe FpgaInfo
fpgaInfo = forall a. Maybe a
Prelude.Nothing,
$sel:freeTierEligible:InstanceTypeInfo' :: Maybe Bool
freeTierEligible = forall a. Maybe a
Prelude.Nothing,
$sel:gpuInfo:InstanceTypeInfo' :: Maybe GpuInfo
gpuInfo = forall a. Maybe a
Prelude.Nothing,
$sel:hibernationSupported:InstanceTypeInfo' :: Maybe Bool
hibernationSupported = forall a. Maybe a
Prelude.Nothing,
$sel:hypervisor:InstanceTypeInfo' :: Maybe InstanceTypeHypervisor
hypervisor = forall a. Maybe a
Prelude.Nothing,
$sel:inferenceAcceleratorInfo:InstanceTypeInfo' :: Maybe InferenceAcceleratorInfo
inferenceAcceleratorInfo = forall a. Maybe a
Prelude.Nothing,
$sel:instanceStorageInfo:InstanceTypeInfo' :: Maybe InstanceStorageInfo
instanceStorageInfo = forall a. Maybe a
Prelude.Nothing,
$sel:instanceStorageSupported:InstanceTypeInfo' :: Maybe Bool
instanceStorageSupported = forall a. Maybe a
Prelude.Nothing,
$sel:instanceType:InstanceTypeInfo' :: Maybe InstanceType
instanceType = forall a. Maybe a
Prelude.Nothing,
$sel:memoryInfo:InstanceTypeInfo' :: Maybe MemoryInfo
memoryInfo = forall a. Maybe a
Prelude.Nothing,
$sel:networkInfo:InstanceTypeInfo' :: Maybe NetworkInfo
networkInfo = forall a. Maybe a
Prelude.Nothing,
$sel:placementGroupInfo:InstanceTypeInfo' :: Maybe PlacementGroupInfo
placementGroupInfo = forall a. Maybe a
Prelude.Nothing,
$sel:processorInfo:InstanceTypeInfo' :: Maybe ProcessorInfo
processorInfo = forall a. Maybe a
Prelude.Nothing,
$sel:supportedBootModes:InstanceTypeInfo' :: Maybe [BootModeType]
supportedBootModes = forall a. Maybe a
Prelude.Nothing,
$sel:supportedRootDeviceTypes:InstanceTypeInfo' :: Maybe [RootDeviceType]
supportedRootDeviceTypes = forall a. Maybe a
Prelude.Nothing,
$sel:supportedUsageClasses:InstanceTypeInfo' :: Maybe [UsageClassType]
supportedUsageClasses = forall a. Maybe a
Prelude.Nothing,
$sel:supportedVirtualizationTypes:InstanceTypeInfo' :: Maybe [VirtualizationType]
supportedVirtualizationTypes = forall a. Maybe a
Prelude.Nothing,
$sel:vCpuInfo:InstanceTypeInfo' :: Maybe VCpuInfo
vCpuInfo = forall a. Maybe a
Prelude.Nothing
}
instanceTypeInfo_autoRecoverySupported :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe Prelude.Bool)
instanceTypeInfo_autoRecoverySupported :: Lens' InstanceTypeInfo (Maybe Bool)
instanceTypeInfo_autoRecoverySupported = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe Bool
autoRecoverySupported :: Maybe Bool
$sel:autoRecoverySupported:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
autoRecoverySupported} -> Maybe Bool
autoRecoverySupported) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe Bool
a -> InstanceTypeInfo
s {$sel:autoRecoverySupported:InstanceTypeInfo' :: Maybe Bool
autoRecoverySupported = Maybe Bool
a} :: InstanceTypeInfo)
instanceTypeInfo_bareMetal :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe Prelude.Bool)
instanceTypeInfo_bareMetal :: Lens' InstanceTypeInfo (Maybe Bool)
instanceTypeInfo_bareMetal = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe Bool
bareMetal :: Maybe Bool
$sel:bareMetal:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
bareMetal} -> Maybe Bool
bareMetal) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe Bool
a -> InstanceTypeInfo
s {$sel:bareMetal:InstanceTypeInfo' :: Maybe Bool
bareMetal = Maybe Bool
a} :: InstanceTypeInfo)
instanceTypeInfo_burstablePerformanceSupported :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe Prelude.Bool)
instanceTypeInfo_burstablePerformanceSupported :: Lens' InstanceTypeInfo (Maybe Bool)
instanceTypeInfo_burstablePerformanceSupported = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe Bool
burstablePerformanceSupported :: Maybe Bool
$sel:burstablePerformanceSupported:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
burstablePerformanceSupported} -> Maybe Bool
burstablePerformanceSupported) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe Bool
a -> InstanceTypeInfo
s {$sel:burstablePerformanceSupported:InstanceTypeInfo' :: Maybe Bool
burstablePerformanceSupported = Maybe Bool
a} :: InstanceTypeInfo)
instanceTypeInfo_currentGeneration :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe Prelude.Bool)
instanceTypeInfo_currentGeneration :: Lens' InstanceTypeInfo (Maybe Bool)
instanceTypeInfo_currentGeneration = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe Bool
currentGeneration :: Maybe Bool
$sel:currentGeneration:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
currentGeneration} -> Maybe Bool
currentGeneration) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe Bool
a -> InstanceTypeInfo
s {$sel:currentGeneration:InstanceTypeInfo' :: Maybe Bool
currentGeneration = Maybe Bool
a} :: InstanceTypeInfo)
instanceTypeInfo_dedicatedHostsSupported :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe Prelude.Bool)
instanceTypeInfo_dedicatedHostsSupported :: Lens' InstanceTypeInfo (Maybe Bool)
instanceTypeInfo_dedicatedHostsSupported = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe Bool
dedicatedHostsSupported :: Maybe Bool
$sel:dedicatedHostsSupported:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
dedicatedHostsSupported} -> Maybe Bool
dedicatedHostsSupported) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe Bool
a -> InstanceTypeInfo
s {$sel:dedicatedHostsSupported:InstanceTypeInfo' :: Maybe Bool
dedicatedHostsSupported = Maybe Bool
a} :: InstanceTypeInfo)
instanceTypeInfo_ebsInfo :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe EbsInfo)
instanceTypeInfo_ebsInfo :: Lens' InstanceTypeInfo (Maybe EbsInfo)
instanceTypeInfo_ebsInfo = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe EbsInfo
ebsInfo :: Maybe EbsInfo
$sel:ebsInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe EbsInfo
ebsInfo} -> Maybe EbsInfo
ebsInfo) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe EbsInfo
a -> InstanceTypeInfo
s {$sel:ebsInfo:InstanceTypeInfo' :: Maybe EbsInfo
ebsInfo = Maybe EbsInfo
a} :: InstanceTypeInfo)
instanceTypeInfo_fpgaInfo :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe FpgaInfo)
instanceTypeInfo_fpgaInfo :: Lens' InstanceTypeInfo (Maybe FpgaInfo)
instanceTypeInfo_fpgaInfo = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe FpgaInfo
fpgaInfo :: Maybe FpgaInfo
$sel:fpgaInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe FpgaInfo
fpgaInfo} -> Maybe FpgaInfo
fpgaInfo) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe FpgaInfo
a -> InstanceTypeInfo
s {$sel:fpgaInfo:InstanceTypeInfo' :: Maybe FpgaInfo
fpgaInfo = Maybe FpgaInfo
a} :: InstanceTypeInfo)
instanceTypeInfo_freeTierEligible :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe Prelude.Bool)
instanceTypeInfo_freeTierEligible :: Lens' InstanceTypeInfo (Maybe Bool)
instanceTypeInfo_freeTierEligible = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe Bool
freeTierEligible :: Maybe Bool
$sel:freeTierEligible:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
freeTierEligible} -> Maybe Bool
freeTierEligible) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe Bool
a -> InstanceTypeInfo
s {$sel:freeTierEligible:InstanceTypeInfo' :: Maybe Bool
freeTierEligible = Maybe Bool
a} :: InstanceTypeInfo)
instanceTypeInfo_gpuInfo :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe GpuInfo)
instanceTypeInfo_gpuInfo :: Lens' InstanceTypeInfo (Maybe GpuInfo)
instanceTypeInfo_gpuInfo = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe GpuInfo
gpuInfo :: Maybe GpuInfo
$sel:gpuInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe GpuInfo
gpuInfo} -> Maybe GpuInfo
gpuInfo) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe GpuInfo
a -> InstanceTypeInfo
s {$sel:gpuInfo:InstanceTypeInfo' :: Maybe GpuInfo
gpuInfo = Maybe GpuInfo
a} :: InstanceTypeInfo)
instanceTypeInfo_hibernationSupported :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe Prelude.Bool)
instanceTypeInfo_hibernationSupported :: Lens' InstanceTypeInfo (Maybe Bool)
instanceTypeInfo_hibernationSupported = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe Bool
hibernationSupported :: Maybe Bool
$sel:hibernationSupported:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
hibernationSupported} -> Maybe Bool
hibernationSupported) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe Bool
a -> InstanceTypeInfo
s {$sel:hibernationSupported:InstanceTypeInfo' :: Maybe Bool
hibernationSupported = Maybe Bool
a} :: InstanceTypeInfo)
instanceTypeInfo_hypervisor :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe InstanceTypeHypervisor)
instanceTypeInfo_hypervisor :: Lens' InstanceTypeInfo (Maybe InstanceTypeHypervisor)
instanceTypeInfo_hypervisor = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe InstanceTypeHypervisor
hypervisor :: Maybe InstanceTypeHypervisor
$sel:hypervisor:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe InstanceTypeHypervisor
hypervisor} -> Maybe InstanceTypeHypervisor
hypervisor) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe InstanceTypeHypervisor
a -> InstanceTypeInfo
s {$sel:hypervisor:InstanceTypeInfo' :: Maybe InstanceTypeHypervisor
hypervisor = Maybe InstanceTypeHypervisor
a} :: InstanceTypeInfo)
instanceTypeInfo_inferenceAcceleratorInfo :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe InferenceAcceleratorInfo)
instanceTypeInfo_inferenceAcceleratorInfo :: Lens' InstanceTypeInfo (Maybe InferenceAcceleratorInfo)
instanceTypeInfo_inferenceAcceleratorInfo = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe InferenceAcceleratorInfo
inferenceAcceleratorInfo :: Maybe InferenceAcceleratorInfo
$sel:inferenceAcceleratorInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe InferenceAcceleratorInfo
inferenceAcceleratorInfo} -> Maybe InferenceAcceleratorInfo
inferenceAcceleratorInfo) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe InferenceAcceleratorInfo
a -> InstanceTypeInfo
s {$sel:inferenceAcceleratorInfo:InstanceTypeInfo' :: Maybe InferenceAcceleratorInfo
inferenceAcceleratorInfo = Maybe InferenceAcceleratorInfo
a} :: InstanceTypeInfo)
instanceTypeInfo_instanceStorageInfo :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe InstanceStorageInfo)
instanceTypeInfo_instanceStorageInfo :: Lens' InstanceTypeInfo (Maybe InstanceStorageInfo)
instanceTypeInfo_instanceStorageInfo = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe InstanceStorageInfo
instanceStorageInfo :: Maybe InstanceStorageInfo
$sel:instanceStorageInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe InstanceStorageInfo
instanceStorageInfo} -> Maybe InstanceStorageInfo
instanceStorageInfo) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe InstanceStorageInfo
a -> InstanceTypeInfo
s {$sel:instanceStorageInfo:InstanceTypeInfo' :: Maybe InstanceStorageInfo
instanceStorageInfo = Maybe InstanceStorageInfo
a} :: InstanceTypeInfo)
instanceTypeInfo_instanceStorageSupported :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe Prelude.Bool)
instanceTypeInfo_instanceStorageSupported :: Lens' InstanceTypeInfo (Maybe Bool)
instanceTypeInfo_instanceStorageSupported = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe Bool
instanceStorageSupported :: Maybe Bool
$sel:instanceStorageSupported:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
instanceStorageSupported} -> Maybe Bool
instanceStorageSupported) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe Bool
a -> InstanceTypeInfo
s {$sel:instanceStorageSupported:InstanceTypeInfo' :: Maybe Bool
instanceStorageSupported = Maybe Bool
a} :: InstanceTypeInfo)
instanceTypeInfo_instanceType :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe InstanceType)
instanceTypeInfo_instanceType :: Lens' InstanceTypeInfo (Maybe InstanceType)
instanceTypeInfo_instanceType = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe InstanceType
instanceType :: Maybe InstanceType
$sel:instanceType:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe InstanceType
instanceType} -> Maybe InstanceType
instanceType) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe InstanceType
a -> InstanceTypeInfo
s {$sel:instanceType:InstanceTypeInfo' :: Maybe InstanceType
instanceType = Maybe InstanceType
a} :: InstanceTypeInfo)
instanceTypeInfo_memoryInfo :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe MemoryInfo)
instanceTypeInfo_memoryInfo :: Lens' InstanceTypeInfo (Maybe MemoryInfo)
instanceTypeInfo_memoryInfo = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe MemoryInfo
memoryInfo :: Maybe MemoryInfo
$sel:memoryInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe MemoryInfo
memoryInfo} -> Maybe MemoryInfo
memoryInfo) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe MemoryInfo
a -> InstanceTypeInfo
s {$sel:memoryInfo:InstanceTypeInfo' :: Maybe MemoryInfo
memoryInfo = Maybe MemoryInfo
a} :: InstanceTypeInfo)
instanceTypeInfo_networkInfo :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe NetworkInfo)
instanceTypeInfo_networkInfo :: Lens' InstanceTypeInfo (Maybe NetworkInfo)
instanceTypeInfo_networkInfo = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe NetworkInfo
networkInfo :: Maybe NetworkInfo
$sel:networkInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe NetworkInfo
networkInfo} -> Maybe NetworkInfo
networkInfo) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe NetworkInfo
a -> InstanceTypeInfo
s {$sel:networkInfo:InstanceTypeInfo' :: Maybe NetworkInfo
networkInfo = Maybe NetworkInfo
a} :: InstanceTypeInfo)
instanceTypeInfo_placementGroupInfo :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe PlacementGroupInfo)
instanceTypeInfo_placementGroupInfo :: Lens' InstanceTypeInfo (Maybe PlacementGroupInfo)
instanceTypeInfo_placementGroupInfo = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe PlacementGroupInfo
placementGroupInfo :: Maybe PlacementGroupInfo
$sel:placementGroupInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe PlacementGroupInfo
placementGroupInfo} -> Maybe PlacementGroupInfo
placementGroupInfo) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe PlacementGroupInfo
a -> InstanceTypeInfo
s {$sel:placementGroupInfo:InstanceTypeInfo' :: Maybe PlacementGroupInfo
placementGroupInfo = Maybe PlacementGroupInfo
a} :: InstanceTypeInfo)
instanceTypeInfo_processorInfo :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe ProcessorInfo)
instanceTypeInfo_processorInfo :: Lens' InstanceTypeInfo (Maybe ProcessorInfo)
instanceTypeInfo_processorInfo = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe ProcessorInfo
processorInfo :: Maybe ProcessorInfo
$sel:processorInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe ProcessorInfo
processorInfo} -> Maybe ProcessorInfo
processorInfo) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe ProcessorInfo
a -> InstanceTypeInfo
s {$sel:processorInfo:InstanceTypeInfo' :: Maybe ProcessorInfo
processorInfo = Maybe ProcessorInfo
a} :: InstanceTypeInfo)
instanceTypeInfo_supportedBootModes :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe [BootModeType])
instanceTypeInfo_supportedBootModes :: Lens' InstanceTypeInfo (Maybe [BootModeType])
instanceTypeInfo_supportedBootModes = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe [BootModeType]
supportedBootModes :: Maybe [BootModeType]
$sel:supportedBootModes:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe [BootModeType]
supportedBootModes} -> Maybe [BootModeType]
supportedBootModes) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe [BootModeType]
a -> InstanceTypeInfo
s {$sel:supportedBootModes:InstanceTypeInfo' :: Maybe [BootModeType]
supportedBootModes = Maybe [BootModeType]
a} :: InstanceTypeInfo) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
instanceTypeInfo_supportedRootDeviceTypes :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe [RootDeviceType])
instanceTypeInfo_supportedRootDeviceTypes :: Lens' InstanceTypeInfo (Maybe [RootDeviceType])
instanceTypeInfo_supportedRootDeviceTypes = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe [RootDeviceType]
supportedRootDeviceTypes :: Maybe [RootDeviceType]
$sel:supportedRootDeviceTypes:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe [RootDeviceType]
supportedRootDeviceTypes} -> Maybe [RootDeviceType]
supportedRootDeviceTypes) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe [RootDeviceType]
a -> InstanceTypeInfo
s {$sel:supportedRootDeviceTypes:InstanceTypeInfo' :: Maybe [RootDeviceType]
supportedRootDeviceTypes = Maybe [RootDeviceType]
a} :: InstanceTypeInfo) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
instanceTypeInfo_supportedUsageClasses :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe [UsageClassType])
instanceTypeInfo_supportedUsageClasses :: Lens' InstanceTypeInfo (Maybe [UsageClassType])
instanceTypeInfo_supportedUsageClasses = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe [UsageClassType]
supportedUsageClasses :: Maybe [UsageClassType]
$sel:supportedUsageClasses:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe [UsageClassType]
supportedUsageClasses} -> Maybe [UsageClassType]
supportedUsageClasses) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe [UsageClassType]
a -> InstanceTypeInfo
s {$sel:supportedUsageClasses:InstanceTypeInfo' :: Maybe [UsageClassType]
supportedUsageClasses = Maybe [UsageClassType]
a} :: InstanceTypeInfo) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
instanceTypeInfo_supportedVirtualizationTypes :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe [VirtualizationType])
instanceTypeInfo_supportedVirtualizationTypes :: Lens' InstanceTypeInfo (Maybe [VirtualizationType])
instanceTypeInfo_supportedVirtualizationTypes = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe [VirtualizationType]
supportedVirtualizationTypes :: Maybe [VirtualizationType]
$sel:supportedVirtualizationTypes:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe [VirtualizationType]
supportedVirtualizationTypes} -> Maybe [VirtualizationType]
supportedVirtualizationTypes) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe [VirtualizationType]
a -> InstanceTypeInfo
s {$sel:supportedVirtualizationTypes:InstanceTypeInfo' :: Maybe [VirtualizationType]
supportedVirtualizationTypes = Maybe [VirtualizationType]
a} :: InstanceTypeInfo) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
instanceTypeInfo_vCpuInfo :: Lens.Lens' InstanceTypeInfo (Prelude.Maybe VCpuInfo)
instanceTypeInfo_vCpuInfo :: Lens' InstanceTypeInfo (Maybe VCpuInfo)
instanceTypeInfo_vCpuInfo = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\InstanceTypeInfo' {Maybe VCpuInfo
vCpuInfo :: Maybe VCpuInfo
$sel:vCpuInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe VCpuInfo
vCpuInfo} -> Maybe VCpuInfo
vCpuInfo) (\s :: InstanceTypeInfo
s@InstanceTypeInfo' {} Maybe VCpuInfo
a -> InstanceTypeInfo
s {$sel:vCpuInfo:InstanceTypeInfo' :: Maybe VCpuInfo
vCpuInfo = Maybe VCpuInfo
a} :: InstanceTypeInfo)
instance Data.FromXML InstanceTypeInfo where
parseXML :: [Node] -> Either String InstanceTypeInfo
parseXML [Node]
x =
Maybe Bool
-> Maybe Bool
-> Maybe Bool
-> Maybe Bool
-> Maybe Bool
-> Maybe EbsInfo
-> Maybe FpgaInfo
-> Maybe Bool
-> Maybe GpuInfo
-> Maybe Bool
-> Maybe InstanceTypeHypervisor
-> Maybe InferenceAcceleratorInfo
-> Maybe InstanceStorageInfo
-> Maybe Bool
-> Maybe InstanceType
-> Maybe MemoryInfo
-> Maybe NetworkInfo
-> Maybe PlacementGroupInfo
-> Maybe ProcessorInfo
-> Maybe [BootModeType]
-> Maybe [RootDeviceType]
-> Maybe [UsageClassType]
-> Maybe [VirtualizationType]
-> Maybe VCpuInfo
-> InstanceTypeInfo
InstanceTypeInfo'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"autoRecoverySupported")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"bareMetal")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"burstablePerformanceSupported")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"currentGeneration")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"dedicatedHostsSupported")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"ebsInfo")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"fpgaInfo")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"freeTierEligible")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"gpuInfo")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"hibernationSupported")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"hypervisor")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"inferenceAcceleratorInfo")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"instanceStorageInfo")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"instanceStorageSupported")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"instanceType")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"memoryInfo")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"networkInfo")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"placementGroupInfo")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"processorInfo")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( [Node]
x
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"supportedBootModes"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= forall (f :: * -> *) a b.
Applicative f =>
([a] -> f b) -> [a] -> f (Maybe b)
Core.may (forall a. FromXML a => Text -> [Node] -> Either String [a]
Data.parseXMLList Text
"item")
)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( [Node]
x
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"supportedRootDeviceTypes"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= forall (f :: * -> *) a b.
Applicative f =>
([a] -> f b) -> [a] -> f (Maybe b)
Core.may (forall a. FromXML a => Text -> [Node] -> Either String [a]
Data.parseXMLList Text
"item")
)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( [Node]
x
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"supportedUsageClasses"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= forall (f :: * -> *) a b.
Applicative f =>
([a] -> f b) -> [a] -> f (Maybe b)
Core.may (forall a. FromXML a => Text -> [Node] -> Either String [a]
Data.parseXMLList Text
"item")
)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( [Node]
x
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"supportedVirtualizationTypes"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= forall (f :: * -> *) a b.
Applicative f =>
([a] -> f b) -> [a] -> f (Maybe b)
Core.may (forall a. FromXML a => Text -> [Node] -> Either String [a]
Data.parseXMLList Text
"item")
)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"vCpuInfo")
instance Prelude.Hashable InstanceTypeInfo where
hashWithSalt :: Int -> InstanceTypeInfo -> Int
hashWithSalt Int
_salt InstanceTypeInfo' {Maybe Bool
Maybe [BootModeType]
Maybe [RootDeviceType]
Maybe [UsageClassType]
Maybe [VirtualizationType]
Maybe EbsInfo
Maybe FpgaInfo
Maybe GpuInfo
Maybe InferenceAcceleratorInfo
Maybe InstanceStorageInfo
Maybe InstanceType
Maybe InstanceTypeHypervisor
Maybe MemoryInfo
Maybe NetworkInfo
Maybe PlacementGroupInfo
Maybe ProcessorInfo
Maybe VCpuInfo
vCpuInfo :: Maybe VCpuInfo
supportedVirtualizationTypes :: Maybe [VirtualizationType]
supportedUsageClasses :: Maybe [UsageClassType]
supportedRootDeviceTypes :: Maybe [RootDeviceType]
supportedBootModes :: Maybe [BootModeType]
processorInfo :: Maybe ProcessorInfo
placementGroupInfo :: Maybe PlacementGroupInfo
networkInfo :: Maybe NetworkInfo
memoryInfo :: Maybe MemoryInfo
instanceType :: Maybe InstanceType
instanceStorageSupported :: Maybe Bool
instanceStorageInfo :: Maybe InstanceStorageInfo
inferenceAcceleratorInfo :: Maybe InferenceAcceleratorInfo
hypervisor :: Maybe InstanceTypeHypervisor
hibernationSupported :: Maybe Bool
gpuInfo :: Maybe GpuInfo
freeTierEligible :: Maybe Bool
fpgaInfo :: Maybe FpgaInfo
ebsInfo :: Maybe EbsInfo
dedicatedHostsSupported :: Maybe Bool
currentGeneration :: Maybe Bool
burstablePerformanceSupported :: Maybe Bool
bareMetal :: Maybe Bool
autoRecoverySupported :: Maybe Bool
$sel:vCpuInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe VCpuInfo
$sel:supportedVirtualizationTypes:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe [VirtualizationType]
$sel:supportedUsageClasses:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe [UsageClassType]
$sel:supportedRootDeviceTypes:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe [RootDeviceType]
$sel:supportedBootModes:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe [BootModeType]
$sel:processorInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe ProcessorInfo
$sel:placementGroupInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe PlacementGroupInfo
$sel:networkInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe NetworkInfo
$sel:memoryInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe MemoryInfo
$sel:instanceType:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe InstanceType
$sel:instanceStorageSupported:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
$sel:instanceStorageInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe InstanceStorageInfo
$sel:inferenceAcceleratorInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe InferenceAcceleratorInfo
$sel:hypervisor:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe InstanceTypeHypervisor
$sel:hibernationSupported:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
$sel:gpuInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe GpuInfo
$sel:freeTierEligible:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
$sel:fpgaInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe FpgaInfo
$sel:ebsInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe EbsInfo
$sel:dedicatedHostsSupported:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
$sel:currentGeneration:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
$sel:burstablePerformanceSupported:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
$sel:bareMetal:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
$sel:autoRecoverySupported:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
autoRecoverySupported
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
bareMetal
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
burstablePerformanceSupported
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
currentGeneration
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
dedicatedHostsSupported
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe EbsInfo
ebsInfo
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe FpgaInfo
fpgaInfo
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
freeTierEligible
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe GpuInfo
gpuInfo
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
hibernationSupported
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe InstanceTypeHypervisor
hypervisor
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe InferenceAcceleratorInfo
inferenceAcceleratorInfo
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe InstanceStorageInfo
instanceStorageInfo
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
instanceStorageSupported
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe InstanceType
instanceType
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe MemoryInfo
memoryInfo
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe NetworkInfo
networkInfo
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe PlacementGroupInfo
placementGroupInfo
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ProcessorInfo
processorInfo
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [BootModeType]
supportedBootModes
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [RootDeviceType]
supportedRootDeviceTypes
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [UsageClassType]
supportedUsageClasses
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [VirtualizationType]
supportedVirtualizationTypes
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe VCpuInfo
vCpuInfo
instance Prelude.NFData InstanceTypeInfo where
rnf :: InstanceTypeInfo -> ()
rnf InstanceTypeInfo' {Maybe Bool
Maybe [BootModeType]
Maybe [RootDeviceType]
Maybe [UsageClassType]
Maybe [VirtualizationType]
Maybe EbsInfo
Maybe FpgaInfo
Maybe GpuInfo
Maybe InferenceAcceleratorInfo
Maybe InstanceStorageInfo
Maybe InstanceType
Maybe InstanceTypeHypervisor
Maybe MemoryInfo
Maybe NetworkInfo
Maybe PlacementGroupInfo
Maybe ProcessorInfo
Maybe VCpuInfo
vCpuInfo :: Maybe VCpuInfo
supportedVirtualizationTypes :: Maybe [VirtualizationType]
supportedUsageClasses :: Maybe [UsageClassType]
supportedRootDeviceTypes :: Maybe [RootDeviceType]
supportedBootModes :: Maybe [BootModeType]
processorInfo :: Maybe ProcessorInfo
placementGroupInfo :: Maybe PlacementGroupInfo
networkInfo :: Maybe NetworkInfo
memoryInfo :: Maybe MemoryInfo
instanceType :: Maybe InstanceType
instanceStorageSupported :: Maybe Bool
instanceStorageInfo :: Maybe InstanceStorageInfo
inferenceAcceleratorInfo :: Maybe InferenceAcceleratorInfo
hypervisor :: Maybe InstanceTypeHypervisor
hibernationSupported :: Maybe Bool
gpuInfo :: Maybe GpuInfo
freeTierEligible :: Maybe Bool
fpgaInfo :: Maybe FpgaInfo
ebsInfo :: Maybe EbsInfo
dedicatedHostsSupported :: Maybe Bool
currentGeneration :: Maybe Bool
burstablePerformanceSupported :: Maybe Bool
bareMetal :: Maybe Bool
autoRecoverySupported :: Maybe Bool
$sel:vCpuInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe VCpuInfo
$sel:supportedVirtualizationTypes:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe [VirtualizationType]
$sel:supportedUsageClasses:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe [UsageClassType]
$sel:supportedRootDeviceTypes:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe [RootDeviceType]
$sel:supportedBootModes:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe [BootModeType]
$sel:processorInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe ProcessorInfo
$sel:placementGroupInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe PlacementGroupInfo
$sel:networkInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe NetworkInfo
$sel:memoryInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe MemoryInfo
$sel:instanceType:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe InstanceType
$sel:instanceStorageSupported:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
$sel:instanceStorageInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe InstanceStorageInfo
$sel:inferenceAcceleratorInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe InferenceAcceleratorInfo
$sel:hypervisor:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe InstanceTypeHypervisor
$sel:hibernationSupported:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
$sel:gpuInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe GpuInfo
$sel:freeTierEligible:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
$sel:fpgaInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe FpgaInfo
$sel:ebsInfo:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe EbsInfo
$sel:dedicatedHostsSupported:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
$sel:currentGeneration:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
$sel:burstablePerformanceSupported:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
$sel:bareMetal:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
$sel:autoRecoverySupported:InstanceTypeInfo' :: InstanceTypeInfo -> Maybe Bool
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
autoRecoverySupported
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
bareMetal
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
burstablePerformanceSupported
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
currentGeneration
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
dedicatedHostsSupported
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe EbsInfo
ebsInfo
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe FpgaInfo
fpgaInfo
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
freeTierEligible
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe GpuInfo
gpuInfo
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
hibernationSupported
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe InstanceTypeHypervisor
hypervisor
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe InferenceAcceleratorInfo
inferenceAcceleratorInfo
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe InstanceStorageInfo
instanceStorageInfo
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
instanceStorageSupported
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe InstanceType
instanceType
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe MemoryInfo
memoryInfo
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe NetworkInfo
networkInfo
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe PlacementGroupInfo
placementGroupInfo
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ProcessorInfo
processorInfo
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [BootModeType]
supportedBootModes
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
Maybe [RootDeviceType]
supportedRootDeviceTypes
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
Maybe [UsageClassType]
supportedUsageClasses
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
Maybe [VirtualizationType]
supportedVirtualizationTypes
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe VCpuInfo
vCpuInfo