{-# 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.StackSetOperationStatus
-- 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.StackSetOperationStatus
  ( StackSetOperationStatus
      ( ..,
        StackSetOperationStatus_FAILED,
        StackSetOperationStatus_QUEUED,
        StackSetOperationStatus_RUNNING,
        StackSetOperationStatus_STOPPED,
        StackSetOperationStatus_STOPPING,
        StackSetOperationStatus_SUCCEEDED
      ),
  )
where

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

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

pattern StackSetOperationStatus_FAILED :: StackSetOperationStatus
pattern $bStackSetOperationStatus_FAILED :: StackSetOperationStatus
$mStackSetOperationStatus_FAILED :: forall r.
StackSetOperationStatus -> (Void# -> r) -> (Void# -> r) -> r
StackSetOperationStatus_FAILED = StackSetOperationStatus' "FAILED"

pattern StackSetOperationStatus_QUEUED :: StackSetOperationStatus
pattern $bStackSetOperationStatus_QUEUED :: StackSetOperationStatus
$mStackSetOperationStatus_QUEUED :: forall r.
StackSetOperationStatus -> (Void# -> r) -> (Void# -> r) -> r
StackSetOperationStatus_QUEUED = StackSetOperationStatus' "QUEUED"

pattern StackSetOperationStatus_RUNNING :: StackSetOperationStatus
pattern $bStackSetOperationStatus_RUNNING :: StackSetOperationStatus
$mStackSetOperationStatus_RUNNING :: forall r.
StackSetOperationStatus -> (Void# -> r) -> (Void# -> r) -> r
StackSetOperationStatus_RUNNING = StackSetOperationStatus' "RUNNING"

pattern StackSetOperationStatus_STOPPED :: StackSetOperationStatus
pattern $bStackSetOperationStatus_STOPPED :: StackSetOperationStatus
$mStackSetOperationStatus_STOPPED :: forall r.
StackSetOperationStatus -> (Void# -> r) -> (Void# -> r) -> r
StackSetOperationStatus_STOPPED = StackSetOperationStatus' "STOPPED"

pattern StackSetOperationStatus_STOPPING :: StackSetOperationStatus
pattern $bStackSetOperationStatus_STOPPING :: StackSetOperationStatus
$mStackSetOperationStatus_STOPPING :: forall r.
StackSetOperationStatus -> (Void# -> r) -> (Void# -> r) -> r
StackSetOperationStatus_STOPPING = StackSetOperationStatus' "STOPPING"

pattern StackSetOperationStatus_SUCCEEDED :: StackSetOperationStatus
pattern $bStackSetOperationStatus_SUCCEEDED :: StackSetOperationStatus
$mStackSetOperationStatus_SUCCEEDED :: forall r.
StackSetOperationStatus -> (Void# -> r) -> (Void# -> r) -> r
StackSetOperationStatus_SUCCEEDED = StackSetOperationStatus' "SUCCEEDED"

{-# COMPLETE
  StackSetOperationStatus_FAILED,
  StackSetOperationStatus_QUEUED,
  StackSetOperationStatus_RUNNING,
  StackSetOperationStatus_STOPPED,
  StackSetOperationStatus_STOPPING,
  StackSetOperationStatus_SUCCEEDED,
  StackSetOperationStatus'
  #-}