{-# 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-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.StackSetOperationResultStatus
  ( StackSetOperationResultStatus
      ( ..,
        StackSetOperationResultStatus_CANCELLED,
        StackSetOperationResultStatus_FAILED,
        StackSetOperationResultStatus_PENDING,
        StackSetOperationResultStatus_RUNNING,
        StackSetOperationResultStatus_SUCCEEDED
      ),
  )
where

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

newtype StackSetOperationResultStatus = StackSetOperationResultStatus'
  { StackSetOperationResultStatus -> Text
fromStackSetOperationResultStatus ::
      Core.Text
  }
  deriving stock
    ( Int -> StackSetOperationResultStatus -> ShowS
[StackSetOperationResultStatus] -> ShowS
StackSetOperationResultStatus -> String
(Int -> StackSetOperationResultStatus -> ShowS)
-> (StackSetOperationResultStatus -> String)
-> ([StackSetOperationResultStatus] -> ShowS)
-> Show StackSetOperationResultStatus
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]
(Int -> ReadS StackSetOperationResultStatus)
-> ReadS [StackSetOperationResultStatus]
-> ReadPrec StackSetOperationResultStatus
-> ReadPrec [StackSetOperationResultStatus]
-> Read 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
(StackSetOperationResultStatus
 -> StackSetOperationResultStatus -> Bool)
-> (StackSetOperationResultStatus
    -> StackSetOperationResultStatus -> Bool)
-> Eq StackSetOperationResultStatus
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
Eq StackSetOperationResultStatus
-> (StackSetOperationResultStatus
    -> StackSetOperationResultStatus -> Ordering)
-> (StackSetOperationResultStatus
    -> StackSetOperationResultStatus -> Bool)
-> (StackSetOperationResultStatus
    -> StackSetOperationResultStatus -> Bool)
-> (StackSetOperationResultStatus
    -> StackSetOperationResultStatus -> Bool)
-> (StackSetOperationResultStatus
    -> StackSetOperationResultStatus -> Bool)
-> (StackSetOperationResultStatus
    -> StackSetOperationResultStatus -> StackSetOperationResultStatus)
-> (StackSetOperationResultStatus
    -> StackSetOperationResultStatus -> StackSetOperationResultStatus)
-> Ord 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
$cp1Ord :: Eq StackSetOperationResultStatus
Prelude.Ord,
      (forall x.
 StackSetOperationResultStatus
 -> Rep StackSetOperationResultStatus x)
-> (forall x.
    Rep StackSetOperationResultStatus x
    -> StackSetOperationResultStatus)
-> Generic StackSetOperationResultStatus
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
    ( Int -> StackSetOperationResultStatus -> Int
StackSetOperationResultStatus -> Int
(Int -> StackSetOperationResultStatus -> Int)
-> (StackSetOperationResultStatus -> Int)
-> Hashable StackSetOperationResultStatus
forall 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 -> ()
(StackSetOperationResultStatus -> ())
-> NFData StackSetOperationResultStatus
forall a. (a -> ()) -> NFData a
rnf :: StackSetOperationResultStatus -> ()
$crnf :: StackSetOperationResultStatus -> ()
Prelude.NFData,
      Text -> Either String StackSetOperationResultStatus
(Text -> Either String StackSetOperationResultStatus)
-> FromText StackSetOperationResultStatus
forall a. (Text -> Either String a) -> FromText a
fromText :: Text -> Either String StackSetOperationResultStatus
$cfromText :: Text -> Either String StackSetOperationResultStatus
Core.FromText,
      StackSetOperationResultStatus -> Text
(StackSetOperationResultStatus -> Text)
-> ToText StackSetOperationResultStatus
forall a. (a -> Text) -> ToText a
toText :: StackSetOperationResultStatus -> Text
$ctoText :: StackSetOperationResultStatus -> Text
Core.ToText,
      StackSetOperationResultStatus -> ByteString
(StackSetOperationResultStatus -> ByteString)
-> ToByteString StackSetOperationResultStatus
forall a. (a -> ByteString) -> ToByteString a
toBS :: StackSetOperationResultStatus -> ByteString
$ctoBS :: StackSetOperationResultStatus -> ByteString
Core.ToByteString,
      StackSetOperationResultStatus -> ByteStringBuilder
(StackSetOperationResultStatus -> ByteStringBuilder)
-> ToLog StackSetOperationResultStatus
forall a. (a -> ByteStringBuilder) -> ToLog a
build :: StackSetOperationResultStatus -> ByteStringBuilder
$cbuild :: StackSetOperationResultStatus -> ByteStringBuilder
Core.ToLog,
      HeaderName -> StackSetOperationResultStatus -> [Header]
(HeaderName -> StackSetOperationResultStatus -> [Header])
-> ToHeader StackSetOperationResultStatus
forall a. (HeaderName -> a -> [Header]) -> ToHeader a
toHeader :: HeaderName -> StackSetOperationResultStatus -> [Header]
$ctoHeader :: HeaderName -> StackSetOperationResultStatus -> [Header]
Core.ToHeader,
      StackSetOperationResultStatus -> QueryString
(StackSetOperationResultStatus -> QueryString)
-> ToQuery StackSetOperationResultStatus
forall a. (a -> QueryString) -> ToQuery a
toQuery :: StackSetOperationResultStatus -> QueryString
$ctoQuery :: StackSetOperationResultStatus -> QueryString
Core.ToQuery,
      Value -> Parser [StackSetOperationResultStatus]
Value -> Parser StackSetOperationResultStatus
(Value -> Parser StackSetOperationResultStatus)
-> (Value -> Parser [StackSetOperationResultStatus])
-> FromJSON 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
Core.FromJSON,
      FromJSONKeyFunction [StackSetOperationResultStatus]
FromJSONKeyFunction StackSetOperationResultStatus
FromJSONKeyFunction StackSetOperationResultStatus
-> FromJSONKeyFunction [StackSetOperationResultStatus]
-> FromJSONKey StackSetOperationResultStatus
forall a.
FromJSONKeyFunction a -> FromJSONKeyFunction [a] -> FromJSONKey a
fromJSONKeyList :: FromJSONKeyFunction [StackSetOperationResultStatus]
$cfromJSONKeyList :: FromJSONKeyFunction [StackSetOperationResultStatus]
fromJSONKey :: FromJSONKeyFunction StackSetOperationResultStatus
$cfromJSONKey :: FromJSONKeyFunction StackSetOperationResultStatus
Core.FromJSONKey,
      [StackSetOperationResultStatus] -> Encoding
[StackSetOperationResultStatus] -> Value
StackSetOperationResultStatus -> Encoding
StackSetOperationResultStatus -> Value
(StackSetOperationResultStatus -> Value)
-> (StackSetOperationResultStatus -> Encoding)
-> ([StackSetOperationResultStatus] -> Value)
-> ([StackSetOperationResultStatus] -> Encoding)
-> ToJSON StackSetOperationResultStatus
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
Core.ToJSON,
      ToJSONKeyFunction [StackSetOperationResultStatus]
ToJSONKeyFunction StackSetOperationResultStatus
ToJSONKeyFunction StackSetOperationResultStatus
-> ToJSONKeyFunction [StackSetOperationResultStatus]
-> ToJSONKey StackSetOperationResultStatus
forall a.
ToJSONKeyFunction a -> ToJSONKeyFunction [a] -> ToJSONKey a
toJSONKeyList :: ToJSONKeyFunction [StackSetOperationResultStatus]
$ctoJSONKeyList :: ToJSONKeyFunction [StackSetOperationResultStatus]
toJSONKey :: ToJSONKeyFunction StackSetOperationResultStatus
$ctoJSONKey :: ToJSONKeyFunction StackSetOperationResultStatus
Core.ToJSONKey,
      [Node] -> Either String StackSetOperationResultStatus
([Node] -> Either String StackSetOperationResultStatus)
-> FromXML StackSetOperationResultStatus
forall a. ([Node] -> Either String a) -> FromXML a
parseXML :: [Node] -> Either String StackSetOperationResultStatus
$cparseXML :: [Node] -> Either String StackSetOperationResultStatus
Core.FromXML,
      StackSetOperationResultStatus -> XML
(StackSetOperationResultStatus -> XML)
-> ToXML StackSetOperationResultStatus
forall a. (a -> XML) -> ToXML a
toXML :: StackSetOperationResultStatus -> XML
$ctoXML :: StackSetOperationResultStatus -> XML
Core.ToXML
    )

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

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

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

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

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

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