{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DerivingVia #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE StandaloneDeriving #-}
{-# LANGUAGE TypeFamilies #-}
{-# OPTIONS_HADDOCK prune not-home #-}
module Test.KeyedVals.Types (
VarDemo (VarDemo),
VarDemoKey,
VarDemoID,
FixedDemo (FixedDemo),
FixedDemoKey,
) where
import Data.Aeson (FromJSON, ToJSON)
import Data.String (IsString)
import Data.Text (Text)
import KeyedVals.Handle.Codec.Aeson (AesonOf (..))
import KeyedVals.Handle.Codec.HttpApiData (HttpApiDataOf (..))
import KeyedVals.Handle.Typed
import Web.HttpApiData (FromHttpApiData (..), ToHttpApiData (..))
newtype VarDemo = VarDemo (Either Text Bool)
deriving (VarDemo -> VarDemo -> Bool
(VarDemo -> VarDemo -> Bool)
-> (VarDemo -> VarDemo -> Bool) -> Eq VarDemo
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: VarDemo -> VarDemo -> Bool
== :: VarDemo -> VarDemo -> Bool
$c/= :: VarDemo -> VarDemo -> Bool
/= :: VarDemo -> VarDemo -> Bool
Eq, Int -> VarDemo -> ShowS
[VarDemo] -> ShowS
VarDemo -> String
(Int -> VarDemo -> ShowS)
-> (VarDemo -> String) -> ([VarDemo] -> ShowS) -> Show VarDemo
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> VarDemo -> ShowS
showsPrec :: Int -> VarDemo -> ShowS
$cshow :: VarDemo -> String
show :: VarDemo -> String
$cshowList :: [VarDemo] -> ShowS
showList :: [VarDemo] -> ShowS
Show)
deriving (Maybe VarDemo
Value -> Parser [VarDemo]
Value -> Parser VarDemo
(Value -> Parser VarDemo)
-> (Value -> Parser [VarDemo]) -> Maybe VarDemo -> FromJSON VarDemo
forall a.
(Value -> Parser a)
-> (Value -> Parser [a]) -> Maybe a -> FromJSON a
$cparseJSON :: Value -> Parser VarDemo
parseJSON :: Value -> Parser VarDemo
$cparseJSONList :: Value -> Parser [VarDemo]
parseJSONList :: Value -> Parser [VarDemo]
$comittedField :: Maybe VarDemo
omittedField :: Maybe VarDemo
FromJSON, [VarDemo] -> Value
[VarDemo] -> Encoding
VarDemo -> Bool
VarDemo -> Value
VarDemo -> Encoding
(VarDemo -> Value)
-> (VarDemo -> Encoding)
-> ([VarDemo] -> Value)
-> ([VarDemo] -> Encoding)
-> (VarDemo -> Bool)
-> ToJSON VarDemo
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> (a -> Bool)
-> ToJSON a
$ctoJSON :: VarDemo -> Value
toJSON :: VarDemo -> Value
$ctoEncoding :: VarDemo -> Encoding
toEncoding :: VarDemo -> Encoding
$ctoJSONList :: [VarDemo] -> Value
toJSONList :: [VarDemo] -> Value
$ctoEncodingList :: [VarDemo] -> Encoding
toEncodingList :: [VarDemo] -> Encoding
$comitField :: VarDemo -> Bool
omitField :: VarDemo -> Bool
ToJSON) via (Either Text Bool)
deriving via (AesonOf (Either Text Bool)) instance DecodeKV VarDemo
deriving via (AesonOf (Either Text Bool)) instance EncodeKV VarDemo
newtype VarDemoKey = VarDemoKey Int
deriving stock (VarDemoKey -> VarDemoKey -> Bool
(VarDemoKey -> VarDemoKey -> Bool)
-> (VarDemoKey -> VarDemoKey -> Bool) -> Eq VarDemoKey
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: VarDemoKey -> VarDemoKey -> Bool
== :: VarDemoKey -> VarDemoKey -> Bool
$c/= :: VarDemoKey -> VarDemoKey -> Bool
/= :: VarDemoKey -> VarDemoKey -> Bool
Eq, Int -> VarDemoKey -> ShowS
[VarDemoKey] -> ShowS
VarDemoKey -> String
(Int -> VarDemoKey -> ShowS)
-> (VarDemoKey -> String)
-> ([VarDemoKey] -> ShowS)
-> Show VarDemoKey
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> VarDemoKey -> ShowS
showsPrec :: Int -> VarDemoKey -> ShowS
$cshow :: VarDemoKey -> String
show :: VarDemoKey -> String
$cshowList :: [VarDemoKey] -> ShowS
showList :: [VarDemoKey] -> ShowS
Show)
deriving (VarDemoKey -> Text
VarDemoKey -> Val
VarDemoKey -> Builder
(VarDemoKey -> Text)
-> (VarDemoKey -> Builder)
-> (VarDemoKey -> Val)
-> (VarDemoKey -> Text)
-> (VarDemoKey -> Builder)
-> ToHttpApiData VarDemoKey
forall a.
(a -> Text)
-> (a -> Builder)
-> (a -> Val)
-> (a -> Text)
-> (a -> Builder)
-> ToHttpApiData a
$ctoUrlPiece :: VarDemoKey -> Text
toUrlPiece :: VarDemoKey -> Text
$ctoEncodedUrlPiece :: VarDemoKey -> Builder
toEncodedUrlPiece :: VarDemoKey -> Builder
$ctoHeader :: VarDemoKey -> Val
toHeader :: VarDemoKey -> Val
$ctoQueryParam :: VarDemoKey -> Text
toQueryParam :: VarDemoKey -> Text
$ctoEncodedQueryParam :: VarDemoKey -> Builder
toEncodedQueryParam :: VarDemoKey -> Builder
ToHttpApiData, Text -> Either Text VarDemoKey
Val -> Either Text VarDemoKey
(Text -> Either Text VarDemoKey)
-> (Val -> Either Text VarDemoKey)
-> (Text -> Either Text VarDemoKey)
-> FromHttpApiData VarDemoKey
forall a.
(Text -> Either Text a)
-> (Val -> Either Text a)
-> (Text -> Either Text a)
-> FromHttpApiData a
$cparseUrlPiece :: Text -> Either Text VarDemoKey
parseUrlPiece :: Text -> Either Text VarDemoKey
$cparseHeader :: Val -> Either Text VarDemoKey
parseHeader :: Val -> Either Text VarDemoKey
$cparseQueryParam :: Text -> Either Text VarDemoKey
parseQueryParam :: Text -> Either Text VarDemoKey
FromHttpApiData, Integer -> VarDemoKey
VarDemoKey -> VarDemoKey
VarDemoKey -> VarDemoKey -> VarDemoKey
(VarDemoKey -> VarDemoKey -> VarDemoKey)
-> (VarDemoKey -> VarDemoKey -> VarDemoKey)
-> (VarDemoKey -> VarDemoKey -> VarDemoKey)
-> (VarDemoKey -> VarDemoKey)
-> (VarDemoKey -> VarDemoKey)
-> (VarDemoKey -> VarDemoKey)
-> (Integer -> VarDemoKey)
-> Num VarDemoKey
forall a.
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> a)
-> (a -> a)
-> (Integer -> a)
-> Num a
$c+ :: VarDemoKey -> VarDemoKey -> VarDemoKey
+ :: VarDemoKey -> VarDemoKey -> VarDemoKey
$c- :: VarDemoKey -> VarDemoKey -> VarDemoKey
- :: VarDemoKey -> VarDemoKey -> VarDemoKey
$c* :: VarDemoKey -> VarDemoKey -> VarDemoKey
* :: VarDemoKey -> VarDemoKey -> VarDemoKey
$cnegate :: VarDemoKey -> VarDemoKey
negate :: VarDemoKey -> VarDemoKey
$cabs :: VarDemoKey -> VarDemoKey
abs :: VarDemoKey -> VarDemoKey
$csignum :: VarDemoKey -> VarDemoKey
signum :: VarDemoKey -> VarDemoKey
$cfromInteger :: Integer -> VarDemoKey
fromInteger :: Integer -> VarDemoKey
Num, Eq VarDemoKey
Eq VarDemoKey =>
(VarDemoKey -> VarDemoKey -> Ordering)
-> (VarDemoKey -> VarDemoKey -> Bool)
-> (VarDemoKey -> VarDemoKey -> Bool)
-> (VarDemoKey -> VarDemoKey -> Bool)
-> (VarDemoKey -> VarDemoKey -> Bool)
-> (VarDemoKey -> VarDemoKey -> VarDemoKey)
-> (VarDemoKey -> VarDemoKey -> VarDemoKey)
-> Ord VarDemoKey
VarDemoKey -> VarDemoKey -> Bool
VarDemoKey -> VarDemoKey -> Ordering
VarDemoKey -> VarDemoKey -> VarDemoKey
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
$ccompare :: VarDemoKey -> VarDemoKey -> Ordering
compare :: VarDemoKey -> VarDemoKey -> Ordering
$c< :: VarDemoKey -> VarDemoKey -> Bool
< :: VarDemoKey -> VarDemoKey -> Bool
$c<= :: VarDemoKey -> VarDemoKey -> Bool
<= :: VarDemoKey -> VarDemoKey -> Bool
$c> :: VarDemoKey -> VarDemoKey -> Bool
> :: VarDemoKey -> VarDemoKey -> Bool
$c>= :: VarDemoKey -> VarDemoKey -> Bool
>= :: VarDemoKey -> VarDemoKey -> Bool
$cmax :: VarDemoKey -> VarDemoKey -> VarDemoKey
max :: VarDemoKey -> VarDemoKey -> VarDemoKey
$cmin :: VarDemoKey -> VarDemoKey -> VarDemoKey
min :: VarDemoKey -> VarDemoKey -> VarDemoKey
Ord) via Int
deriving (Val -> Either Text VarDemoKey
(Val -> Either Text VarDemoKey) -> DecodeKV VarDemoKey
forall a. (Val -> Either Text a) -> DecodeKV a
$cdecodeKV :: Val -> Either Text VarDemoKey
decodeKV :: Val -> Either Text VarDemoKey
DecodeKV, VarDemoKey -> Val
(VarDemoKey -> Val) -> EncodeKV VarDemoKey
forall a. (a -> Val) -> EncodeKV a
$cencodeKV :: VarDemoKey -> Val
encodeKV :: VarDemoKey -> Val
EncodeKV) via HttpApiDataOf Int
newtype VarDemoID = VarDemoId Text
deriving stock (VarDemoID -> VarDemoID -> Bool
(VarDemoID -> VarDemoID -> Bool)
-> (VarDemoID -> VarDemoID -> Bool) -> Eq VarDemoID
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: VarDemoID -> VarDemoID -> Bool
== :: VarDemoID -> VarDemoID -> Bool
$c/= :: VarDemoID -> VarDemoID -> Bool
/= :: VarDemoID -> VarDemoID -> Bool
Eq, Int -> VarDemoID -> ShowS
[VarDemoID] -> ShowS
VarDemoID -> String
(Int -> VarDemoID -> ShowS)
-> (VarDemoID -> String)
-> ([VarDemoID] -> ShowS)
-> Show VarDemoID
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> VarDemoID -> ShowS
showsPrec :: Int -> VarDemoID -> ShowS
$cshow :: VarDemoID -> String
show :: VarDemoID -> String
$cshowList :: [VarDemoID] -> ShowS
showList :: [VarDemoID] -> ShowS
Show)
deriving (String -> VarDemoID
(String -> VarDemoID) -> IsString VarDemoID
forall a. (String -> a) -> IsString a
$cfromString :: String -> VarDemoID
fromString :: String -> VarDemoID
IsString, VarDemoID -> Text
VarDemoID -> Val
VarDemoID -> Builder
(VarDemoID -> Text)
-> (VarDemoID -> Builder)
-> (VarDemoID -> Val)
-> (VarDemoID -> Text)
-> (VarDemoID -> Builder)
-> ToHttpApiData VarDemoID
forall a.
(a -> Text)
-> (a -> Builder)
-> (a -> Val)
-> (a -> Text)
-> (a -> Builder)
-> ToHttpApiData a
$ctoUrlPiece :: VarDemoID -> Text
toUrlPiece :: VarDemoID -> Text
$ctoEncodedUrlPiece :: VarDemoID -> Builder
toEncodedUrlPiece :: VarDemoID -> Builder
$ctoHeader :: VarDemoID -> Val
toHeader :: VarDemoID -> Val
$ctoQueryParam :: VarDemoID -> Text
toQueryParam :: VarDemoID -> Text
$ctoEncodedQueryParam :: VarDemoID -> Builder
toEncodedQueryParam :: VarDemoID -> Builder
ToHttpApiData, Text -> Either Text VarDemoID
Val -> Either Text VarDemoID
(Text -> Either Text VarDemoID)
-> (Val -> Either Text VarDemoID)
-> (Text -> Either Text VarDemoID)
-> FromHttpApiData VarDemoID
forall a.
(Text -> Either Text a)
-> (Val -> Either Text a)
-> (Text -> Either Text a)
-> FromHttpApiData a
$cparseUrlPiece :: Text -> Either Text VarDemoID
parseUrlPiece :: Text -> Either Text VarDemoID
$cparseHeader :: Val -> Either Text VarDemoID
parseHeader :: Val -> Either Text VarDemoID
$cparseQueryParam :: Text -> Either Text VarDemoID
parseQueryParam :: Text -> Either Text VarDemoID
FromHttpApiData) via Text
deriving (Val -> Either Text VarDemoID
(Val -> Either Text VarDemoID) -> DecodeKV VarDemoID
forall a. (Val -> Either Text a) -> DecodeKV a
$cdecodeKV :: Val -> Either Text VarDemoID
decodeKV :: Val -> Either Text VarDemoID
DecodeKV, VarDemoID -> Val
(VarDemoID -> Val) -> EncodeKV VarDemoID
forall a. (a -> Val) -> EncodeKV a
$cencodeKV :: VarDemoID -> Val
encodeKV :: VarDemoID -> Val
EncodeKV) via HttpApiDataOf Text
instance PathOf VarDemo where
type KVPath VarDemo = "/testing/{}/var"
type KeyType VarDemo = VarDemoKey
instance VaryingPathOf VarDemo where
type PathVar VarDemo = VarDemoID
modifyPath :: Proxy VarDemo -> PathVar VarDemo -> Val -> Val
modifyPath Proxy VarDemo
_ = PathVar VarDemo -> Val -> Val
VarDemoID -> Val -> Val
forall a. EncodeKV a => a -> Val -> Val
expand
newtype FixedDemo = FixedDemo (Int, Text)
deriving stock (FixedDemo -> FixedDemo -> Bool
(FixedDemo -> FixedDemo -> Bool)
-> (FixedDemo -> FixedDemo -> Bool) -> Eq FixedDemo
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: FixedDemo -> FixedDemo -> Bool
== :: FixedDemo -> FixedDemo -> Bool
$c/= :: FixedDemo -> FixedDemo -> Bool
/= :: FixedDemo -> FixedDemo -> Bool
Eq, Int -> FixedDemo -> ShowS
[FixedDemo] -> ShowS
FixedDemo -> String
(Int -> FixedDemo -> ShowS)
-> (FixedDemo -> String)
-> ([FixedDemo] -> ShowS)
-> Show FixedDemo
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> FixedDemo -> ShowS
showsPrec :: Int -> FixedDemo -> ShowS
$cshow :: FixedDemo -> String
show :: FixedDemo -> String
$cshowList :: [FixedDemo] -> ShowS
showList :: [FixedDemo] -> ShowS
Show)
deriving (Maybe FixedDemo
Value -> Parser [FixedDemo]
Value -> Parser FixedDemo
(Value -> Parser FixedDemo)
-> (Value -> Parser [FixedDemo])
-> Maybe FixedDemo
-> FromJSON FixedDemo
forall a.
(Value -> Parser a)
-> (Value -> Parser [a]) -> Maybe a -> FromJSON a
$cparseJSON :: Value -> Parser FixedDemo
parseJSON :: Value -> Parser FixedDemo
$cparseJSONList :: Value -> Parser [FixedDemo]
parseJSONList :: Value -> Parser [FixedDemo]
$comittedField :: Maybe FixedDemo
omittedField :: Maybe FixedDemo
FromJSON, [FixedDemo] -> Value
[FixedDemo] -> Encoding
FixedDemo -> Bool
FixedDemo -> Value
FixedDemo -> Encoding
(FixedDemo -> Value)
-> (FixedDemo -> Encoding)
-> ([FixedDemo] -> Value)
-> ([FixedDemo] -> Encoding)
-> (FixedDemo -> Bool)
-> ToJSON FixedDemo
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> (a -> Bool)
-> ToJSON a
$ctoJSON :: FixedDemo -> Value
toJSON :: FixedDemo -> Value
$ctoEncoding :: FixedDemo -> Encoding
toEncoding :: FixedDemo -> Encoding
$ctoJSONList :: [FixedDemo] -> Value
toJSONList :: [FixedDemo] -> Value
$ctoEncodingList :: [FixedDemo] -> Encoding
toEncodingList :: [FixedDemo] -> Encoding
$comitField :: FixedDemo -> Bool
omitField :: FixedDemo -> Bool
ToJSON) via (Int, Text)
deriving (Val -> Either Text FixedDemo
(Val -> Either Text FixedDemo) -> DecodeKV FixedDemo
forall a. (Val -> Either Text a) -> DecodeKV a
$cdecodeKV :: Val -> Either Text FixedDemo
decodeKV :: Val -> Either Text FixedDemo
DecodeKV, FixedDemo -> Val
(FixedDemo -> Val) -> EncodeKV FixedDemo
forall a. (a -> Val) -> EncodeKV a
$cencodeKV :: FixedDemo -> Val
encodeKV :: FixedDemo -> Val
EncodeKV) via AesonOf (Int, Text)
instance PathOf FixedDemo where
type KVPath FixedDemo = "/testing/fixed"
type KeyType FixedDemo = FixedDemoKey
newtype FixedDemoKey = FixedDemoKey Int
deriving stock (FixedDemoKey -> FixedDemoKey -> Bool
(FixedDemoKey -> FixedDemoKey -> Bool)
-> (FixedDemoKey -> FixedDemoKey -> Bool) -> Eq FixedDemoKey
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: FixedDemoKey -> FixedDemoKey -> Bool
== :: FixedDemoKey -> FixedDemoKey -> Bool
$c/= :: FixedDemoKey -> FixedDemoKey -> Bool
/= :: FixedDemoKey -> FixedDemoKey -> Bool
Eq, Int -> FixedDemoKey -> ShowS
[FixedDemoKey] -> ShowS
FixedDemoKey -> String
(Int -> FixedDemoKey -> ShowS)
-> (FixedDemoKey -> String)
-> ([FixedDemoKey] -> ShowS)
-> Show FixedDemoKey
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> FixedDemoKey -> ShowS
showsPrec :: Int -> FixedDemoKey -> ShowS
$cshow :: FixedDemoKey -> String
show :: FixedDemoKey -> String
$cshowList :: [FixedDemoKey] -> ShowS
showList :: [FixedDemoKey] -> ShowS
Show)
deriving (FixedDemoKey -> Text
FixedDemoKey -> Val
FixedDemoKey -> Builder
(FixedDemoKey -> Text)
-> (FixedDemoKey -> Builder)
-> (FixedDemoKey -> Val)
-> (FixedDemoKey -> Text)
-> (FixedDemoKey -> Builder)
-> ToHttpApiData FixedDemoKey
forall a.
(a -> Text)
-> (a -> Builder)
-> (a -> Val)
-> (a -> Text)
-> (a -> Builder)
-> ToHttpApiData a
$ctoUrlPiece :: FixedDemoKey -> Text
toUrlPiece :: FixedDemoKey -> Text
$ctoEncodedUrlPiece :: FixedDemoKey -> Builder
toEncodedUrlPiece :: FixedDemoKey -> Builder
$ctoHeader :: FixedDemoKey -> Val
toHeader :: FixedDemoKey -> Val
$ctoQueryParam :: FixedDemoKey -> Text
toQueryParam :: FixedDemoKey -> Text
$ctoEncodedQueryParam :: FixedDemoKey -> Builder
toEncodedQueryParam :: FixedDemoKey -> Builder
ToHttpApiData, Text -> Either Text FixedDemoKey
Val -> Either Text FixedDemoKey
(Text -> Either Text FixedDemoKey)
-> (Val -> Either Text FixedDemoKey)
-> (Text -> Either Text FixedDemoKey)
-> FromHttpApiData FixedDemoKey
forall a.
(Text -> Either Text a)
-> (Val -> Either Text a)
-> (Text -> Either Text a)
-> FromHttpApiData a
$cparseUrlPiece :: Text -> Either Text FixedDemoKey
parseUrlPiece :: Text -> Either Text FixedDemoKey
$cparseHeader :: Val -> Either Text FixedDemoKey
parseHeader :: Val -> Either Text FixedDemoKey
$cparseQueryParam :: Text -> Either Text FixedDemoKey
parseQueryParam :: Text -> Either Text FixedDemoKey
FromHttpApiData, Integer -> FixedDemoKey
FixedDemoKey -> FixedDemoKey
FixedDemoKey -> FixedDemoKey -> FixedDemoKey
(FixedDemoKey -> FixedDemoKey -> FixedDemoKey)
-> (FixedDemoKey -> FixedDemoKey -> FixedDemoKey)
-> (FixedDemoKey -> FixedDemoKey -> FixedDemoKey)
-> (FixedDemoKey -> FixedDemoKey)
-> (FixedDemoKey -> FixedDemoKey)
-> (FixedDemoKey -> FixedDemoKey)
-> (Integer -> FixedDemoKey)
-> Num FixedDemoKey
forall a.
(a -> a -> a)
-> (a -> a -> a)
-> (a -> a -> a)
-> (a -> a)
-> (a -> a)
-> (a -> a)
-> (Integer -> a)
-> Num a
$c+ :: FixedDemoKey -> FixedDemoKey -> FixedDemoKey
+ :: FixedDemoKey -> FixedDemoKey -> FixedDemoKey
$c- :: FixedDemoKey -> FixedDemoKey -> FixedDemoKey
- :: FixedDemoKey -> FixedDemoKey -> FixedDemoKey
$c* :: FixedDemoKey -> FixedDemoKey -> FixedDemoKey
* :: FixedDemoKey -> FixedDemoKey -> FixedDemoKey
$cnegate :: FixedDemoKey -> FixedDemoKey
negate :: FixedDemoKey -> FixedDemoKey
$cabs :: FixedDemoKey -> FixedDemoKey
abs :: FixedDemoKey -> FixedDemoKey
$csignum :: FixedDemoKey -> FixedDemoKey
signum :: FixedDemoKey -> FixedDemoKey
$cfromInteger :: Integer -> FixedDemoKey
fromInteger :: Integer -> FixedDemoKey
Num, Eq FixedDemoKey
Eq FixedDemoKey =>
(FixedDemoKey -> FixedDemoKey -> Ordering)
-> (FixedDemoKey -> FixedDemoKey -> Bool)
-> (FixedDemoKey -> FixedDemoKey -> Bool)
-> (FixedDemoKey -> FixedDemoKey -> Bool)
-> (FixedDemoKey -> FixedDemoKey -> Bool)
-> (FixedDemoKey -> FixedDemoKey -> FixedDemoKey)
-> (FixedDemoKey -> FixedDemoKey -> FixedDemoKey)
-> Ord FixedDemoKey
FixedDemoKey -> FixedDemoKey -> Bool
FixedDemoKey -> FixedDemoKey -> Ordering
FixedDemoKey -> FixedDemoKey -> FixedDemoKey
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
$ccompare :: FixedDemoKey -> FixedDemoKey -> Ordering
compare :: FixedDemoKey -> FixedDemoKey -> Ordering
$c< :: FixedDemoKey -> FixedDemoKey -> Bool
< :: FixedDemoKey -> FixedDemoKey -> Bool
$c<= :: FixedDemoKey -> FixedDemoKey -> Bool
<= :: FixedDemoKey -> FixedDemoKey -> Bool
$c> :: FixedDemoKey -> FixedDemoKey -> Bool
> :: FixedDemoKey -> FixedDemoKey -> Bool
$c>= :: FixedDemoKey -> FixedDemoKey -> Bool
>= :: FixedDemoKey -> FixedDemoKey -> Bool
$cmax :: FixedDemoKey -> FixedDemoKey -> FixedDemoKey
max :: FixedDemoKey -> FixedDemoKey -> FixedDemoKey
$cmin :: FixedDemoKey -> FixedDemoKey -> FixedDemoKey
min :: FixedDemoKey -> FixedDemoKey -> FixedDemoKey
Ord) via Int
deriving (Val -> Either Text FixedDemoKey
(Val -> Either Text FixedDemoKey) -> DecodeKV FixedDemoKey
forall a. (Val -> Either Text a) -> DecodeKV a
$cdecodeKV :: Val -> Either Text FixedDemoKey
decodeKV :: Val -> Either Text FixedDemoKey
DecodeKV, FixedDemoKey -> Val
(FixedDemoKey -> Val) -> EncodeKV FixedDemoKey
forall a. (a -> Val) -> EncodeKV a
$cencodeKV :: FixedDemoKey -> Val
encodeKV :: FixedDemoKey -> Val
EncodeKV) via HttpApiDataOf Int