{-# 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.SageMakerEdge.Types.ModelState
-- 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.SageMakerEdge.Types.ModelState
  ( ModelState
      ( ..,
        ModelState_DEPLOY,
        ModelState_UNDEPLOY
      ),
  )
where

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

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

pattern ModelState_DEPLOY :: ModelState
pattern $bModelState_DEPLOY :: ModelState
$mModelState_DEPLOY :: forall {r}. ModelState -> ((# #) -> r) -> ((# #) -> r) -> r
ModelState_DEPLOY = ModelState' "DEPLOY"

pattern ModelState_UNDEPLOY :: ModelState
pattern $bModelState_UNDEPLOY :: ModelState
$mModelState_UNDEPLOY :: forall {r}. ModelState -> ((# #) -> r) -> ((# #) -> r) -> r
ModelState_UNDEPLOY = ModelState' "UNDEPLOY"

{-# COMPLETE
  ModelState_DEPLOY,
  ModelState_UNDEPLOY,
  ModelState'
  #-}