{-# 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.HubSortBy
-- 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.SageMaker.Types.HubSortBy
  ( HubSortBy
      ( ..,
        HubSortBy_AccountIdOwner,
        HubSortBy_CreationTime,
        HubSortBy_HubName,
        HubSortBy_HubStatus
      ),
  )
where

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

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

pattern HubSortBy_AccountIdOwner :: HubSortBy
pattern $bHubSortBy_AccountIdOwner :: HubSortBy
$mHubSortBy_AccountIdOwner :: forall {r}. HubSortBy -> ((# #) -> r) -> ((# #) -> r) -> r
HubSortBy_AccountIdOwner = HubSortBy' "AccountIdOwner"

pattern HubSortBy_CreationTime :: HubSortBy
pattern $bHubSortBy_CreationTime :: HubSortBy
$mHubSortBy_CreationTime :: forall {r}. HubSortBy -> ((# #) -> r) -> ((# #) -> r) -> r
HubSortBy_CreationTime = HubSortBy' "CreationTime"

pattern HubSortBy_HubName :: HubSortBy
pattern $bHubSortBy_HubName :: HubSortBy
$mHubSortBy_HubName :: forall {r}. HubSortBy -> ((# #) -> r) -> ((# #) -> r) -> r
HubSortBy_HubName = HubSortBy' "HubName"

pattern HubSortBy_HubStatus :: HubSortBy
pattern $bHubSortBy_HubStatus :: HubSortBy
$mHubSortBy_HubStatus :: forall {r}. HubSortBy -> ((# #) -> r) -> ((# #) -> r) -> r
HubSortBy_HubStatus = HubSortBy' "HubStatus"

{-# COMPLETE
  HubSortBy_AccountIdOwner,
  HubSortBy_CreationTime,
  HubSortBy_HubName,
  HubSortBy_HubStatus,
  HubSortBy'
  #-}