{-# 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.SimSpaceWeaver.Types.SimulationAppStatus
-- 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.SimSpaceWeaver.Types.SimulationAppStatus
  ( SimulationAppStatus
      ( ..,
        SimulationAppStatus_ERROR,
        SimulationAppStatus_STARTED,
        SimulationAppStatus_STARTING,
        SimulationAppStatus_STOPPED,
        SimulationAppStatus_STOPPING,
        SimulationAppStatus_UNKNOWN
      ),
  )
where

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

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

pattern SimulationAppStatus_ERROR :: SimulationAppStatus
pattern $bSimulationAppStatus_ERROR :: SimulationAppStatus
$mSimulationAppStatus_ERROR :: forall {r}.
SimulationAppStatus -> ((# #) -> r) -> ((# #) -> r) -> r
SimulationAppStatus_ERROR = SimulationAppStatus' "ERROR"

pattern SimulationAppStatus_STARTED :: SimulationAppStatus
pattern $bSimulationAppStatus_STARTED :: SimulationAppStatus
$mSimulationAppStatus_STARTED :: forall {r}.
SimulationAppStatus -> ((# #) -> r) -> ((# #) -> r) -> r
SimulationAppStatus_STARTED = SimulationAppStatus' "STARTED"

pattern SimulationAppStatus_STARTING :: SimulationAppStatus
pattern $bSimulationAppStatus_STARTING :: SimulationAppStatus
$mSimulationAppStatus_STARTING :: forall {r}.
SimulationAppStatus -> ((# #) -> r) -> ((# #) -> r) -> r
SimulationAppStatus_STARTING = SimulationAppStatus' "STARTING"

pattern SimulationAppStatus_STOPPED :: SimulationAppStatus
pattern $bSimulationAppStatus_STOPPED :: SimulationAppStatus
$mSimulationAppStatus_STOPPED :: forall {r}.
SimulationAppStatus -> ((# #) -> r) -> ((# #) -> r) -> r
SimulationAppStatus_STOPPED = SimulationAppStatus' "STOPPED"

pattern SimulationAppStatus_STOPPING :: SimulationAppStatus
pattern $bSimulationAppStatus_STOPPING :: SimulationAppStatus
$mSimulationAppStatus_STOPPING :: forall {r}.
SimulationAppStatus -> ((# #) -> r) -> ((# #) -> r) -> r
SimulationAppStatus_STOPPING = SimulationAppStatus' "STOPPING"

pattern SimulationAppStatus_UNKNOWN :: SimulationAppStatus
pattern $bSimulationAppStatus_UNKNOWN :: SimulationAppStatus
$mSimulationAppStatus_UNKNOWN :: forall {r}.
SimulationAppStatus -> ((# #) -> r) -> ((# #) -> r) -> r
SimulationAppStatus_UNKNOWN = SimulationAppStatus' "UNKNOWN"

{-# COMPLETE
  SimulationAppStatus_ERROR,
  SimulationAppStatus_STARTED,
  SimulationAppStatus_STARTING,
  SimulationAppStatus_STOPPED,
  SimulationAppStatus_STOPPING,
  SimulationAppStatus_UNKNOWN,
  SimulationAppStatus'
  #-}