{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DerivingStrategies #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
module Amazonka.Organizations.Types.EffectivePolicyType
( EffectivePolicyType
( ..,
EffectivePolicyType_AISERVICES_OPT_OUT_POLICY,
EffectivePolicyType_BACKUP_POLICY,
EffectivePolicyType_TAG_POLICY
),
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Prelude as Prelude
newtype EffectivePolicyType = EffectivePolicyType'
{ EffectivePolicyType -> Text
fromEffectivePolicyType ::
Core.Text
}
deriving stock
( Int -> EffectivePolicyType -> ShowS
[EffectivePolicyType] -> ShowS
EffectivePolicyType -> String
(Int -> EffectivePolicyType -> ShowS)
-> (EffectivePolicyType -> String)
-> ([EffectivePolicyType] -> ShowS)
-> Show EffectivePolicyType
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EffectivePolicyType] -> ShowS
$cshowList :: [EffectivePolicyType] -> ShowS
show :: EffectivePolicyType -> String
$cshow :: EffectivePolicyType -> String
showsPrec :: Int -> EffectivePolicyType -> ShowS
$cshowsPrec :: Int -> EffectivePolicyType -> ShowS
Prelude.Show,
ReadPrec [EffectivePolicyType]
ReadPrec EffectivePolicyType
Int -> ReadS EffectivePolicyType
ReadS [EffectivePolicyType]
(Int -> ReadS EffectivePolicyType)
-> ReadS [EffectivePolicyType]
-> ReadPrec EffectivePolicyType
-> ReadPrec [EffectivePolicyType]
-> Read EffectivePolicyType
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [EffectivePolicyType]
$creadListPrec :: ReadPrec [EffectivePolicyType]
readPrec :: ReadPrec EffectivePolicyType
$creadPrec :: ReadPrec EffectivePolicyType
readList :: ReadS [EffectivePolicyType]
$creadList :: ReadS [EffectivePolicyType]
readsPrec :: Int -> ReadS EffectivePolicyType
$creadsPrec :: Int -> ReadS EffectivePolicyType
Prelude.Read,
EffectivePolicyType -> EffectivePolicyType -> Bool
(EffectivePolicyType -> EffectivePolicyType -> Bool)
-> (EffectivePolicyType -> EffectivePolicyType -> Bool)
-> Eq EffectivePolicyType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EffectivePolicyType -> EffectivePolicyType -> Bool
$c/= :: EffectivePolicyType -> EffectivePolicyType -> Bool
== :: EffectivePolicyType -> EffectivePolicyType -> Bool
$c== :: EffectivePolicyType -> EffectivePolicyType -> Bool
Prelude.Eq,
Eq EffectivePolicyType
Eq EffectivePolicyType
-> (EffectivePolicyType -> EffectivePolicyType -> Ordering)
-> (EffectivePolicyType -> EffectivePolicyType -> Bool)
-> (EffectivePolicyType -> EffectivePolicyType -> Bool)
-> (EffectivePolicyType -> EffectivePolicyType -> Bool)
-> (EffectivePolicyType -> EffectivePolicyType -> Bool)
-> (EffectivePolicyType
-> EffectivePolicyType -> EffectivePolicyType)
-> (EffectivePolicyType
-> EffectivePolicyType -> EffectivePolicyType)
-> Ord EffectivePolicyType
EffectivePolicyType -> EffectivePolicyType -> Bool
EffectivePolicyType -> EffectivePolicyType -> Ordering
EffectivePolicyType -> EffectivePolicyType -> EffectivePolicyType
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: EffectivePolicyType -> EffectivePolicyType -> EffectivePolicyType
$cmin :: EffectivePolicyType -> EffectivePolicyType -> EffectivePolicyType
max :: EffectivePolicyType -> EffectivePolicyType -> EffectivePolicyType
$cmax :: EffectivePolicyType -> EffectivePolicyType -> EffectivePolicyType
>= :: EffectivePolicyType -> EffectivePolicyType -> Bool
$c>= :: EffectivePolicyType -> EffectivePolicyType -> Bool
> :: EffectivePolicyType -> EffectivePolicyType -> Bool
$c> :: EffectivePolicyType -> EffectivePolicyType -> Bool
<= :: EffectivePolicyType -> EffectivePolicyType -> Bool
$c<= :: EffectivePolicyType -> EffectivePolicyType -> Bool
< :: EffectivePolicyType -> EffectivePolicyType -> Bool
$c< :: EffectivePolicyType -> EffectivePolicyType -> Bool
compare :: EffectivePolicyType -> EffectivePolicyType -> Ordering
$ccompare :: EffectivePolicyType -> EffectivePolicyType -> Ordering
$cp1Ord :: Eq EffectivePolicyType
Prelude.Ord,
(forall x. EffectivePolicyType -> Rep EffectivePolicyType x)
-> (forall x. Rep EffectivePolicyType x -> EffectivePolicyType)
-> Generic EffectivePolicyType
forall x. Rep EffectivePolicyType x -> EffectivePolicyType
forall x. EffectivePolicyType -> Rep EffectivePolicyType x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep EffectivePolicyType x -> EffectivePolicyType
$cfrom :: forall x. EffectivePolicyType -> Rep EffectivePolicyType x
Prelude.Generic
)
deriving newtype
( Int -> EffectivePolicyType -> Int
EffectivePolicyType -> Int
(Int -> EffectivePolicyType -> Int)
-> (EffectivePolicyType -> Int) -> Hashable EffectivePolicyType
forall a. (Int -> a -> Int) -> (a -> Int) -> Hashable a
hash :: EffectivePolicyType -> Int
$chash :: EffectivePolicyType -> Int
hashWithSalt :: Int -> EffectivePolicyType -> Int
$chashWithSalt :: Int -> EffectivePolicyType -> Int
Prelude.Hashable,
EffectivePolicyType -> ()
(EffectivePolicyType -> ()) -> NFData EffectivePolicyType
forall a. (a -> ()) -> NFData a
rnf :: EffectivePolicyType -> ()
$crnf :: EffectivePolicyType -> ()
Prelude.NFData,
Text -> Either String EffectivePolicyType
(Text -> Either String EffectivePolicyType)
-> FromText EffectivePolicyType
forall a. (Text -> Either String a) -> FromText a
fromText :: Text -> Either String EffectivePolicyType
$cfromText :: Text -> Either String EffectivePolicyType
Core.FromText,
EffectivePolicyType -> Text
(EffectivePolicyType -> Text) -> ToText EffectivePolicyType
forall a. (a -> Text) -> ToText a
toText :: EffectivePolicyType -> Text
$ctoText :: EffectivePolicyType -> Text
Core.ToText,
EffectivePolicyType -> ByteString
(EffectivePolicyType -> ByteString)
-> ToByteString EffectivePolicyType
forall a. (a -> ByteString) -> ToByteString a
toBS :: EffectivePolicyType -> ByteString
$ctoBS :: EffectivePolicyType -> ByteString
Core.ToByteString,
EffectivePolicyType -> ByteStringBuilder
(EffectivePolicyType -> ByteStringBuilder)
-> ToLog EffectivePolicyType
forall a. (a -> ByteStringBuilder) -> ToLog a
build :: EffectivePolicyType -> ByteStringBuilder
$cbuild :: EffectivePolicyType -> ByteStringBuilder
Core.ToLog,
HeaderName -> EffectivePolicyType -> [Header]
(HeaderName -> EffectivePolicyType -> [Header])
-> ToHeader EffectivePolicyType
forall a. (HeaderName -> a -> [Header]) -> ToHeader a
toHeader :: HeaderName -> EffectivePolicyType -> [Header]
$ctoHeader :: HeaderName -> EffectivePolicyType -> [Header]
Core.ToHeader,
EffectivePolicyType -> QueryString
(EffectivePolicyType -> QueryString) -> ToQuery EffectivePolicyType
forall a. (a -> QueryString) -> ToQuery a
toQuery :: EffectivePolicyType -> QueryString
$ctoQuery :: EffectivePolicyType -> QueryString
Core.ToQuery,
Value -> Parser [EffectivePolicyType]
Value -> Parser EffectivePolicyType
(Value -> Parser EffectivePolicyType)
-> (Value -> Parser [EffectivePolicyType])
-> FromJSON EffectivePolicyType
forall a.
(Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a
parseJSONList :: Value -> Parser [EffectivePolicyType]
$cparseJSONList :: Value -> Parser [EffectivePolicyType]
parseJSON :: Value -> Parser EffectivePolicyType
$cparseJSON :: Value -> Parser EffectivePolicyType
Core.FromJSON,
FromJSONKeyFunction [EffectivePolicyType]
FromJSONKeyFunction EffectivePolicyType
FromJSONKeyFunction EffectivePolicyType
-> FromJSONKeyFunction [EffectivePolicyType]
-> FromJSONKey EffectivePolicyType
forall a.
FromJSONKeyFunction a -> FromJSONKeyFunction [a] -> FromJSONKey a
fromJSONKeyList :: FromJSONKeyFunction [EffectivePolicyType]
$cfromJSONKeyList :: FromJSONKeyFunction [EffectivePolicyType]
fromJSONKey :: FromJSONKeyFunction EffectivePolicyType
$cfromJSONKey :: FromJSONKeyFunction EffectivePolicyType
Core.FromJSONKey,
[EffectivePolicyType] -> Encoding
[EffectivePolicyType] -> Value
EffectivePolicyType -> Encoding
EffectivePolicyType -> Value
(EffectivePolicyType -> Value)
-> (EffectivePolicyType -> Encoding)
-> ([EffectivePolicyType] -> Value)
-> ([EffectivePolicyType] -> Encoding)
-> ToJSON EffectivePolicyType
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> ToJSON a
toEncodingList :: [EffectivePolicyType] -> Encoding
$ctoEncodingList :: [EffectivePolicyType] -> Encoding
toJSONList :: [EffectivePolicyType] -> Value
$ctoJSONList :: [EffectivePolicyType] -> Value
toEncoding :: EffectivePolicyType -> Encoding
$ctoEncoding :: EffectivePolicyType -> Encoding
toJSON :: EffectivePolicyType -> Value
$ctoJSON :: EffectivePolicyType -> Value
Core.ToJSON,
ToJSONKeyFunction [EffectivePolicyType]
ToJSONKeyFunction EffectivePolicyType
ToJSONKeyFunction EffectivePolicyType
-> ToJSONKeyFunction [EffectivePolicyType]
-> ToJSONKey EffectivePolicyType
forall a.
ToJSONKeyFunction a -> ToJSONKeyFunction [a] -> ToJSONKey a
toJSONKeyList :: ToJSONKeyFunction [EffectivePolicyType]
$ctoJSONKeyList :: ToJSONKeyFunction [EffectivePolicyType]
toJSONKey :: ToJSONKeyFunction EffectivePolicyType
$ctoJSONKey :: ToJSONKeyFunction EffectivePolicyType
Core.ToJSONKey,
[Node] -> Either String EffectivePolicyType
([Node] -> Either String EffectivePolicyType)
-> FromXML EffectivePolicyType
forall a. ([Node] -> Either String a) -> FromXML a
parseXML :: [Node] -> Either String EffectivePolicyType
$cparseXML :: [Node] -> Either String EffectivePolicyType
Core.FromXML,
EffectivePolicyType -> XML
(EffectivePolicyType -> XML) -> ToXML EffectivePolicyType
forall a. (a -> XML) -> ToXML a
toXML :: EffectivePolicyType -> XML
$ctoXML :: EffectivePolicyType -> XML
Core.ToXML
)
pattern EffectivePolicyType_AISERVICES_OPT_OUT_POLICY :: EffectivePolicyType
pattern $bEffectivePolicyType_AISERVICES_OPT_OUT_POLICY :: EffectivePolicyType
$mEffectivePolicyType_AISERVICES_OPT_OUT_POLICY :: forall r. EffectivePolicyType -> (Void# -> r) -> (Void# -> r) -> r
EffectivePolicyType_AISERVICES_OPT_OUT_POLICY = EffectivePolicyType' "AISERVICES_OPT_OUT_POLICY"
pattern EffectivePolicyType_BACKUP_POLICY :: EffectivePolicyType
pattern $bEffectivePolicyType_BACKUP_POLICY :: EffectivePolicyType
$mEffectivePolicyType_BACKUP_POLICY :: forall r. EffectivePolicyType -> (Void# -> r) -> (Void# -> r) -> r
EffectivePolicyType_BACKUP_POLICY = EffectivePolicyType' "BACKUP_POLICY"
pattern EffectivePolicyType_TAG_POLICY :: EffectivePolicyType
pattern $bEffectivePolicyType_TAG_POLICY :: EffectivePolicyType
$mEffectivePolicyType_TAG_POLICY :: forall r. EffectivePolicyType -> (Void# -> r) -> (Void# -> r) -> r
EffectivePolicyType_TAG_POLICY = EffectivePolicyType' "TAG_POLICY"
{-# COMPLETE
EffectivePolicyType_AISERVICES_OPT_OUT_POLICY,
EffectivePolicyType_BACKUP_POLICY,
EffectivePolicyType_TAG_POLICY,
EffectivePolicyType'
#-}