{-# 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.SageMaker.Types.AlgorithmStatus
-- 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.SageMaker.Types.AlgorithmStatus
  ( AlgorithmStatus
      ( ..,
        AlgorithmStatus_Completed,
        AlgorithmStatus_Deleting,
        AlgorithmStatus_Failed,
        AlgorithmStatus_InProgress,
        AlgorithmStatus_Pending
      ),
  )
where

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

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

pattern AlgorithmStatus_Completed :: AlgorithmStatus
pattern $bAlgorithmStatus_Completed :: AlgorithmStatus
$mAlgorithmStatus_Completed :: forall r. AlgorithmStatus -> (Void# -> r) -> (Void# -> r) -> r
AlgorithmStatus_Completed = AlgorithmStatus' "Completed"

pattern AlgorithmStatus_Deleting :: AlgorithmStatus
pattern $bAlgorithmStatus_Deleting :: AlgorithmStatus
$mAlgorithmStatus_Deleting :: forall r. AlgorithmStatus -> (Void# -> r) -> (Void# -> r) -> r
AlgorithmStatus_Deleting = AlgorithmStatus' "Deleting"

pattern AlgorithmStatus_Failed :: AlgorithmStatus
pattern $bAlgorithmStatus_Failed :: AlgorithmStatus
$mAlgorithmStatus_Failed :: forall r. AlgorithmStatus -> (Void# -> r) -> (Void# -> r) -> r
AlgorithmStatus_Failed = AlgorithmStatus' "Failed"

pattern AlgorithmStatus_InProgress :: AlgorithmStatus
pattern $bAlgorithmStatus_InProgress :: AlgorithmStatus
$mAlgorithmStatus_InProgress :: forall r. AlgorithmStatus -> (Void# -> r) -> (Void# -> r) -> r
AlgorithmStatus_InProgress = AlgorithmStatus' "InProgress"

pattern AlgorithmStatus_Pending :: AlgorithmStatus
pattern $bAlgorithmStatus_Pending :: AlgorithmStatus
$mAlgorithmStatus_Pending :: forall r. AlgorithmStatus -> (Void# -> r) -> (Void# -> r) -> r
AlgorithmStatus_Pending = AlgorithmStatus' "Pending"

{-# COMPLETE
  AlgorithmStatus_Completed,
  AlgorithmStatus_Deleting,
  AlgorithmStatus_Failed,
  AlgorithmStatus_InProgress,
  AlgorithmStatus_Pending,
  AlgorithmStatus'
  #-}