{-# 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.Glue.Types.TaskRunSortColumnType
-- 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.Glue.Types.TaskRunSortColumnType
  ( TaskRunSortColumnType
      ( ..,
        TaskRunSortColumnType_STARTED,
        TaskRunSortColumnType_STATUS,
        TaskRunSortColumnType_TASK_RUN_TYPE
      ),
  )
where

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

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

pattern TaskRunSortColumnType_STARTED :: TaskRunSortColumnType
pattern $bTaskRunSortColumnType_STARTED :: TaskRunSortColumnType
$mTaskRunSortColumnType_STARTED :: forall r.
TaskRunSortColumnType -> (Void# -> r) -> (Void# -> r) -> r
TaskRunSortColumnType_STARTED = TaskRunSortColumnType' "STARTED"

pattern TaskRunSortColumnType_STATUS :: TaskRunSortColumnType
pattern $bTaskRunSortColumnType_STATUS :: TaskRunSortColumnType
$mTaskRunSortColumnType_STATUS :: forall r.
TaskRunSortColumnType -> (Void# -> r) -> (Void# -> r) -> r
TaskRunSortColumnType_STATUS = TaskRunSortColumnType' "STATUS"

pattern TaskRunSortColumnType_TASK_RUN_TYPE :: TaskRunSortColumnType
pattern $bTaskRunSortColumnType_TASK_RUN_TYPE :: TaskRunSortColumnType
$mTaskRunSortColumnType_TASK_RUN_TYPE :: forall r.
TaskRunSortColumnType -> (Void# -> r) -> (Void# -> r) -> r
TaskRunSortColumnType_TASK_RUN_TYPE = TaskRunSortColumnType' "TASK_RUN_TYPE"

{-# COMPLETE
  TaskRunSortColumnType_STARTED,
  TaskRunSortColumnType_STATUS,
  TaskRunSortColumnType_TASK_RUN_TYPE,
  TaskRunSortColumnType'
  #-}