{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DerivingStrategies #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.CloudFormation.Types.StackSetDriftDetectionStatus
-- Copyright   : (c) 2013-2021 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.CloudFormation.Types.StackSetDriftDetectionStatus
  ( StackSetDriftDetectionStatus
      ( ..,
        StackSetDriftDetectionStatus_COMPLETED,
        StackSetDriftDetectionStatus_FAILED,
        StackSetDriftDetectionStatus_IN_PROGRESS,
        StackSetDriftDetectionStatus_PARTIAL_SUCCESS,
        StackSetDriftDetectionStatus_STOPPED
      ),
  )
where

import qualified Amazonka.Core as Core
import qualified Amazonka.Prelude as Prelude

newtype StackSetDriftDetectionStatus = StackSetDriftDetectionStatus'
  { StackSetDriftDetectionStatus -> Text
fromStackSetDriftDetectionStatus ::
      Core.Text
  }
  deriving stock
    ( Int -> StackSetDriftDetectionStatus -> ShowS
[StackSetDriftDetectionStatus] -> ShowS
StackSetDriftDetectionStatus -> String
(Int -> StackSetDriftDetectionStatus -> ShowS)
-> (StackSetDriftDetectionStatus -> String)
-> ([StackSetDriftDetectionStatus] -> ShowS)
-> Show StackSetDriftDetectionStatus
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [StackSetDriftDetectionStatus] -> ShowS
$cshowList :: [StackSetDriftDetectionStatus] -> ShowS
show :: StackSetDriftDetectionStatus -> String
$cshow :: StackSetDriftDetectionStatus -> String
showsPrec :: Int -> StackSetDriftDetectionStatus -> ShowS
$cshowsPrec :: Int -> StackSetDriftDetectionStatus -> ShowS
Prelude.Show,
      ReadPrec [StackSetDriftDetectionStatus]
ReadPrec StackSetDriftDetectionStatus
Int -> ReadS StackSetDriftDetectionStatus
ReadS [StackSetDriftDetectionStatus]
(Int -> ReadS StackSetDriftDetectionStatus)
-> ReadS [StackSetDriftDetectionStatus]
-> ReadPrec StackSetDriftDetectionStatus
-> ReadPrec [StackSetDriftDetectionStatus]
-> Read StackSetDriftDetectionStatus
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [StackSetDriftDetectionStatus]
$creadListPrec :: ReadPrec [StackSetDriftDetectionStatus]
readPrec :: ReadPrec StackSetDriftDetectionStatus
$creadPrec :: ReadPrec StackSetDriftDetectionStatus
readList :: ReadS [StackSetDriftDetectionStatus]
$creadList :: ReadS [StackSetDriftDetectionStatus]
readsPrec :: Int -> ReadS StackSetDriftDetectionStatus
$creadsPrec :: Int -> ReadS StackSetDriftDetectionStatus
Prelude.Read,
      StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> Bool
(StackSetDriftDetectionStatus
 -> StackSetDriftDetectionStatus -> Bool)
-> (StackSetDriftDetectionStatus
    -> StackSetDriftDetectionStatus -> Bool)
-> Eq StackSetDriftDetectionStatus
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> Bool
$c/= :: StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> Bool
== :: StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> Bool
$c== :: StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> Bool
Prelude.Eq,
      Eq StackSetDriftDetectionStatus
Eq StackSetDriftDetectionStatus
-> (StackSetDriftDetectionStatus
    -> StackSetDriftDetectionStatus -> Ordering)
-> (StackSetDriftDetectionStatus
    -> StackSetDriftDetectionStatus -> Bool)
-> (StackSetDriftDetectionStatus
    -> StackSetDriftDetectionStatus -> Bool)
-> (StackSetDriftDetectionStatus
    -> StackSetDriftDetectionStatus -> Bool)
-> (StackSetDriftDetectionStatus
    -> StackSetDriftDetectionStatus -> Bool)
-> (StackSetDriftDetectionStatus
    -> StackSetDriftDetectionStatus -> StackSetDriftDetectionStatus)
-> (StackSetDriftDetectionStatus
    -> StackSetDriftDetectionStatus -> StackSetDriftDetectionStatus)
-> Ord StackSetDriftDetectionStatus
StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> Bool
StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> Ordering
StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> StackSetDriftDetectionStatus
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 :: StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> StackSetDriftDetectionStatus
$cmin :: StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> StackSetDriftDetectionStatus
max :: StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> StackSetDriftDetectionStatus
$cmax :: StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> StackSetDriftDetectionStatus
>= :: StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> Bool
$c>= :: StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> Bool
> :: StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> Bool
$c> :: StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> Bool
<= :: StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> Bool
$c<= :: StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> Bool
< :: StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> Bool
$c< :: StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> Bool
compare :: StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> Ordering
$ccompare :: StackSetDriftDetectionStatus
-> StackSetDriftDetectionStatus -> Ordering
$cp1Ord :: Eq StackSetDriftDetectionStatus
Prelude.Ord,
      (forall x.
 StackSetDriftDetectionStatus -> Rep StackSetDriftDetectionStatus x)
-> (forall x.
    Rep StackSetDriftDetectionStatus x -> StackSetDriftDetectionStatus)
-> Generic StackSetDriftDetectionStatus
forall x.
Rep StackSetDriftDetectionStatus x -> StackSetDriftDetectionStatus
forall x.
StackSetDriftDetectionStatus -> Rep StackSetDriftDetectionStatus x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep StackSetDriftDetectionStatus x -> StackSetDriftDetectionStatus
$cfrom :: forall x.
StackSetDriftDetectionStatus -> Rep StackSetDriftDetectionStatus x
Prelude.Generic
    )
  deriving newtype
    ( Int -> StackSetDriftDetectionStatus -> Int
StackSetDriftDetectionStatus -> Int
(Int -> StackSetDriftDetectionStatus -> Int)
-> (StackSetDriftDetectionStatus -> Int)
-> Hashable StackSetDriftDetectionStatus
forall a. (Int -> a -> Int) -> (a -> Int) -> Hashable a
hash :: StackSetDriftDetectionStatus -> Int
$chash :: StackSetDriftDetectionStatus -> Int
hashWithSalt :: Int -> StackSetDriftDetectionStatus -> Int
$chashWithSalt :: Int -> StackSetDriftDetectionStatus -> Int
Prelude.Hashable,
      StackSetDriftDetectionStatus -> ()
(StackSetDriftDetectionStatus -> ())
-> NFData StackSetDriftDetectionStatus
forall a. (a -> ()) -> NFData a
rnf :: StackSetDriftDetectionStatus -> ()
$crnf :: StackSetDriftDetectionStatus -> ()
Prelude.NFData,
      Text -> Either String StackSetDriftDetectionStatus
(Text -> Either String StackSetDriftDetectionStatus)
-> FromText StackSetDriftDetectionStatus
forall a. (Text -> Either String a) -> FromText a
fromText :: Text -> Either String StackSetDriftDetectionStatus
$cfromText :: Text -> Either String StackSetDriftDetectionStatus
Core.FromText,
      StackSetDriftDetectionStatus -> Text
(StackSetDriftDetectionStatus -> Text)
-> ToText StackSetDriftDetectionStatus
forall a. (a -> Text) -> ToText a
toText :: StackSetDriftDetectionStatus -> Text
$ctoText :: StackSetDriftDetectionStatus -> Text
Core.ToText,
      StackSetDriftDetectionStatus -> ByteString
(StackSetDriftDetectionStatus -> ByteString)
-> ToByteString StackSetDriftDetectionStatus
forall a. (a -> ByteString) -> ToByteString a
toBS :: StackSetDriftDetectionStatus -> ByteString
$ctoBS :: StackSetDriftDetectionStatus -> ByteString
Core.ToByteString,
      StackSetDriftDetectionStatus -> ByteStringBuilder
(StackSetDriftDetectionStatus -> ByteStringBuilder)
-> ToLog StackSetDriftDetectionStatus
forall a. (a -> ByteStringBuilder) -> ToLog a
build :: StackSetDriftDetectionStatus -> ByteStringBuilder
$cbuild :: StackSetDriftDetectionStatus -> ByteStringBuilder
Core.ToLog,
      HeaderName -> StackSetDriftDetectionStatus -> [Header]
(HeaderName -> StackSetDriftDetectionStatus -> [Header])
-> ToHeader StackSetDriftDetectionStatus
forall a. (HeaderName -> a -> [Header]) -> ToHeader a
toHeader :: HeaderName -> StackSetDriftDetectionStatus -> [Header]
$ctoHeader :: HeaderName -> StackSetDriftDetectionStatus -> [Header]
Core.ToHeader,
      StackSetDriftDetectionStatus -> QueryString
(StackSetDriftDetectionStatus -> QueryString)
-> ToQuery StackSetDriftDetectionStatus
forall a. (a -> QueryString) -> ToQuery a
toQuery :: StackSetDriftDetectionStatus -> QueryString
$ctoQuery :: StackSetDriftDetectionStatus -> QueryString
Core.ToQuery,
      Value -> Parser [StackSetDriftDetectionStatus]
Value -> Parser StackSetDriftDetectionStatus
(Value -> Parser StackSetDriftDetectionStatus)
-> (Value -> Parser [StackSetDriftDetectionStatus])
-> FromJSON StackSetDriftDetectionStatus
forall a.
(Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a
parseJSONList :: Value -> Parser [StackSetDriftDetectionStatus]
$cparseJSONList :: Value -> Parser [StackSetDriftDetectionStatus]
parseJSON :: Value -> Parser StackSetDriftDetectionStatus
$cparseJSON :: Value -> Parser StackSetDriftDetectionStatus
Core.FromJSON,
      FromJSONKeyFunction [StackSetDriftDetectionStatus]
FromJSONKeyFunction StackSetDriftDetectionStatus
FromJSONKeyFunction StackSetDriftDetectionStatus
-> FromJSONKeyFunction [StackSetDriftDetectionStatus]
-> FromJSONKey StackSetDriftDetectionStatus
forall a.
FromJSONKeyFunction a -> FromJSONKeyFunction [a] -> FromJSONKey a
fromJSONKeyList :: FromJSONKeyFunction [StackSetDriftDetectionStatus]
$cfromJSONKeyList :: FromJSONKeyFunction [StackSetDriftDetectionStatus]
fromJSONKey :: FromJSONKeyFunction StackSetDriftDetectionStatus
$cfromJSONKey :: FromJSONKeyFunction StackSetDriftDetectionStatus
Core.FromJSONKey,
      [StackSetDriftDetectionStatus] -> Encoding
[StackSetDriftDetectionStatus] -> Value
StackSetDriftDetectionStatus -> Encoding
StackSetDriftDetectionStatus -> Value
(StackSetDriftDetectionStatus -> Value)
-> (StackSetDriftDetectionStatus -> Encoding)
-> ([StackSetDriftDetectionStatus] -> Value)
-> ([StackSetDriftDetectionStatus] -> Encoding)
-> ToJSON StackSetDriftDetectionStatus
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> ToJSON a
toEncodingList :: [StackSetDriftDetectionStatus] -> Encoding
$ctoEncodingList :: [StackSetDriftDetectionStatus] -> Encoding
toJSONList :: [StackSetDriftDetectionStatus] -> Value
$ctoJSONList :: [StackSetDriftDetectionStatus] -> Value
toEncoding :: StackSetDriftDetectionStatus -> Encoding
$ctoEncoding :: StackSetDriftDetectionStatus -> Encoding
toJSON :: StackSetDriftDetectionStatus -> Value
$ctoJSON :: StackSetDriftDetectionStatus -> Value
Core.ToJSON,
      ToJSONKeyFunction [StackSetDriftDetectionStatus]
ToJSONKeyFunction StackSetDriftDetectionStatus
ToJSONKeyFunction StackSetDriftDetectionStatus
-> ToJSONKeyFunction [StackSetDriftDetectionStatus]
-> ToJSONKey StackSetDriftDetectionStatus
forall a.
ToJSONKeyFunction a -> ToJSONKeyFunction [a] -> ToJSONKey a
toJSONKeyList :: ToJSONKeyFunction [StackSetDriftDetectionStatus]
$ctoJSONKeyList :: ToJSONKeyFunction [StackSetDriftDetectionStatus]
toJSONKey :: ToJSONKeyFunction StackSetDriftDetectionStatus
$ctoJSONKey :: ToJSONKeyFunction StackSetDriftDetectionStatus
Core.ToJSONKey,
      [Node] -> Either String StackSetDriftDetectionStatus
([Node] -> Either String StackSetDriftDetectionStatus)
-> FromXML StackSetDriftDetectionStatus
forall a. ([Node] -> Either String a) -> FromXML a
parseXML :: [Node] -> Either String StackSetDriftDetectionStatus
$cparseXML :: [Node] -> Either String StackSetDriftDetectionStatus
Core.FromXML,
      StackSetDriftDetectionStatus -> XML
(StackSetDriftDetectionStatus -> XML)
-> ToXML StackSetDriftDetectionStatus
forall a. (a -> XML) -> ToXML a
toXML :: StackSetDriftDetectionStatus -> XML
$ctoXML :: StackSetDriftDetectionStatus -> XML
Core.ToXML
    )

pattern StackSetDriftDetectionStatus_COMPLETED :: StackSetDriftDetectionStatus
pattern $bStackSetDriftDetectionStatus_COMPLETED :: StackSetDriftDetectionStatus
$mStackSetDriftDetectionStatus_COMPLETED :: forall r.
StackSetDriftDetectionStatus -> (Void# -> r) -> (Void# -> r) -> r
StackSetDriftDetectionStatus_COMPLETED = StackSetDriftDetectionStatus' "COMPLETED"

pattern StackSetDriftDetectionStatus_FAILED :: StackSetDriftDetectionStatus
pattern $bStackSetDriftDetectionStatus_FAILED :: StackSetDriftDetectionStatus
$mStackSetDriftDetectionStatus_FAILED :: forall r.
StackSetDriftDetectionStatus -> (Void# -> r) -> (Void# -> r) -> r
StackSetDriftDetectionStatus_FAILED = StackSetDriftDetectionStatus' "FAILED"

pattern StackSetDriftDetectionStatus_IN_PROGRESS :: StackSetDriftDetectionStatus
pattern $bStackSetDriftDetectionStatus_IN_PROGRESS :: StackSetDriftDetectionStatus
$mStackSetDriftDetectionStatus_IN_PROGRESS :: forall r.
StackSetDriftDetectionStatus -> (Void# -> r) -> (Void# -> r) -> r
StackSetDriftDetectionStatus_IN_PROGRESS = StackSetDriftDetectionStatus' "IN_PROGRESS"

pattern StackSetDriftDetectionStatus_PARTIAL_SUCCESS :: StackSetDriftDetectionStatus
pattern $bStackSetDriftDetectionStatus_PARTIAL_SUCCESS :: StackSetDriftDetectionStatus
$mStackSetDriftDetectionStatus_PARTIAL_SUCCESS :: forall r.
StackSetDriftDetectionStatus -> (Void# -> r) -> (Void# -> r) -> r
StackSetDriftDetectionStatus_PARTIAL_SUCCESS = StackSetDriftDetectionStatus' "PARTIAL_SUCCESS"

pattern StackSetDriftDetectionStatus_STOPPED :: StackSetDriftDetectionStatus
pattern $bStackSetDriftDetectionStatus_STOPPED :: StackSetDriftDetectionStatus
$mStackSetDriftDetectionStatus_STOPPED :: forall r.
StackSetDriftDetectionStatus -> (Void# -> r) -> (Void# -> r) -> r
StackSetDriftDetectionStatus_STOPPED = StackSetDriftDetectionStatus' "STOPPED"

{-# COMPLETE
  StackSetDriftDetectionStatus_COMPLETED,
  StackSetDriftDetectionStatus_FAILED,
  StackSetDriftDetectionStatus_IN_PROGRESS,
  StackSetDriftDetectionStatus_PARTIAL_SUCCESS,
  StackSetDriftDetectionStatus_STOPPED,
  StackSetDriftDetectionStatus'
  #-}