{-# LANGUAGE DeriveAnyClass #-} {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE TemplateHaskell #-} module Experimenter.State where import Data.Aeson import Database.Persist.TH import GHC.Generics data ExperimentState = InProgress | Finished deriving (Int -> ExperimentState -> ShowS [ExperimentState] -> ShowS ExperimentState -> String (Int -> ExperimentState -> ShowS) -> (ExperimentState -> String) -> ([ExperimentState] -> ShowS) -> Show ExperimentState forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a showList :: [ExperimentState] -> ShowS $cshowList :: [ExperimentState] -> ShowS show :: ExperimentState -> String $cshow :: ExperimentState -> String showsPrec :: Int -> ExperimentState -> ShowS $cshowsPrec :: Int -> ExperimentState -> ShowS Show, ReadPrec [ExperimentState] ReadPrec ExperimentState Int -> ReadS ExperimentState ReadS [ExperimentState] (Int -> ReadS ExperimentState) -> ReadS [ExperimentState] -> ReadPrec ExperimentState -> ReadPrec [ExperimentState] -> Read ExperimentState forall a. (Int -> ReadS a) -> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a readListPrec :: ReadPrec [ExperimentState] $creadListPrec :: ReadPrec [ExperimentState] readPrec :: ReadPrec ExperimentState $creadPrec :: ReadPrec ExperimentState readList :: ReadS [ExperimentState] $creadList :: ReadS [ExperimentState] readsPrec :: Int -> ReadS ExperimentState $creadsPrec :: Int -> ReadS ExperimentState Read, ExperimentState -> ExperimentState -> Bool (ExperimentState -> ExperimentState -> Bool) -> (ExperimentState -> ExperimentState -> Bool) -> Eq ExperimentState forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a /= :: ExperimentState -> ExperimentState -> Bool $c/= :: ExperimentState -> ExperimentState -> Bool == :: ExperimentState -> ExperimentState -> Bool $c== :: ExperimentState -> ExperimentState -> Bool Eq, [ExperimentState] -> Encoding [ExperimentState] -> Value ExperimentState -> Encoding ExperimentState -> Value (ExperimentState -> Value) -> (ExperimentState -> Encoding) -> ([ExperimentState] -> Value) -> ([ExperimentState] -> Encoding) -> ToJSON ExperimentState forall a. (a -> Value) -> (a -> Encoding) -> ([a] -> Value) -> ([a] -> Encoding) -> ToJSON a toEncodingList :: [ExperimentState] -> Encoding $ctoEncodingList :: [ExperimentState] -> Encoding toJSONList :: [ExperimentState] -> Value $ctoJSONList :: [ExperimentState] -> Value toEncoding :: ExperimentState -> Encoding $ctoEncoding :: ExperimentState -> Encoding toJSON :: ExperimentState -> Value $ctoJSON :: ExperimentState -> Value ToJSON, Value -> Parser [ExperimentState] Value -> Parser ExperimentState (Value -> Parser ExperimentState) -> (Value -> Parser [ExperimentState]) -> FromJSON ExperimentState forall a. (Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a parseJSONList :: Value -> Parser [ExperimentState] $cparseJSONList :: Value -> Parser [ExperimentState] parseJSON :: Value -> Parser ExperimentState $cparseJSON :: Value -> Parser ExperimentState FromJSON, (forall x. ExperimentState -> Rep ExperimentState x) -> (forall x. Rep ExperimentState x -> ExperimentState) -> Generic ExperimentState forall x. Rep ExperimentState x -> ExperimentState forall x. ExperimentState -> Rep ExperimentState x forall a. (forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a $cto :: forall x. Rep ExperimentState x -> ExperimentState $cfrom :: forall x. ExperimentState -> Rep ExperimentState x Generic) derivePersistField "ExperimentState"