{-# 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.StackSetOperationResultStatus
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.CloudFormation.Types.StackSetOperationResultStatus
  ( StackSetOperationResultStatus
      ( ..,
        StackSetOperationResultStatus_CANCELLED,
        StackSetOperationResultStatus_FAILED,
        StackSetOperationResultStatus_PENDING,
        StackSetOperationResultStatus_RUNNING,
        StackSetOperationResultStatus_SUCCEEDED
      ),
  )
where

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

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

pattern StackSetOperationResultStatus_CANCELLED :: StackSetOperationResultStatus
pattern $bStackSetOperationResultStatus_CANCELLED :: StackSetOperationResultStatus
$mStackSetOperationResultStatus_CANCELLED :: forall {r}.
StackSetOperationResultStatus -> ((# #) -> r) -> ((# #) -> r) -> r
StackSetOperationResultStatus_CANCELLED = StackSetOperationResultStatus' "CANCELLED"

pattern StackSetOperationResultStatus_FAILED :: StackSetOperationResultStatus
pattern $bStackSetOperationResultStatus_FAILED :: StackSetOperationResultStatus
$mStackSetOperationResultStatus_FAILED :: forall {r}.
StackSetOperationResultStatus -> ((# #) -> r) -> ((# #) -> r) -> r
StackSetOperationResultStatus_FAILED = StackSetOperationResultStatus' "FAILED"

pattern StackSetOperationResultStatus_PENDING :: StackSetOperationResultStatus
pattern $bStackSetOperationResultStatus_PENDING :: StackSetOperationResultStatus
$mStackSetOperationResultStatus_PENDING :: forall {r}.
StackSetOperationResultStatus -> ((# #) -> r) -> ((# #) -> r) -> r
StackSetOperationResultStatus_PENDING = StackSetOperationResultStatus' "PENDING"

pattern StackSetOperationResultStatus_RUNNING :: StackSetOperationResultStatus
pattern $bStackSetOperationResultStatus_RUNNING :: StackSetOperationResultStatus
$mStackSetOperationResultStatus_RUNNING :: forall {r}.
StackSetOperationResultStatus -> ((# #) -> r) -> ((# #) -> r) -> r
StackSetOperationResultStatus_RUNNING = StackSetOperationResultStatus' "RUNNING"

pattern StackSetOperationResultStatus_SUCCEEDED :: StackSetOperationResultStatus
pattern $bStackSetOperationResultStatus_SUCCEEDED :: StackSetOperationResultStatus
$mStackSetOperationResultStatus_SUCCEEDED :: forall {r}.
StackSetOperationResultStatus -> ((# #) -> r) -> ((# #) -> r) -> r
StackSetOperationResultStatus_SUCCEEDED = StackSetOperationResultStatus' "SUCCEEDED"

{-# COMPLETE
  StackSetOperationResultStatus_CANCELLED,
  StackSetOperationResultStatus_FAILED,
  StackSetOperationResultStatus_PENDING,
  StackSetOperationResultStatus_RUNNING,
  StackSetOperationResultStatus_SUCCEEDED,
  StackSetOperationResultStatus'
  #-}