{-# LANGUAGE DeriveGeneric #-} module Jordan.Types.JSONType where import Control.DeepSeq import GHC.Generics import Jordan.FromJSON.Class (FromJSON) import Jordan.ToJSON.Class (ToJSON) data JSONType = JSONTypeNull | JSONTypeBool | JSONTypeText | JSONTypeNumber | JSONTypeArray | JSONTypeObject deriving (Int -> JSONType -> ShowS [JSONType] -> ShowS JSONType -> String (Int -> JSONType -> ShowS) -> (JSONType -> String) -> ([JSONType] -> ShowS) -> Show JSONType forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a showList :: [JSONType] -> ShowS $cshowList :: [JSONType] -> ShowS show :: JSONType -> String $cshow :: JSONType -> String showsPrec :: Int -> JSONType -> ShowS $cshowsPrec :: Int -> JSONType -> ShowS Show, JSONType -> JSONType -> Bool (JSONType -> JSONType -> Bool) -> (JSONType -> JSONType -> Bool) -> Eq JSONType forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a /= :: JSONType -> JSONType -> Bool $c/= :: JSONType -> JSONType -> Bool == :: JSONType -> JSONType -> Bool $c== :: JSONType -> JSONType -> Bool Eq, ReadPrec [JSONType] ReadPrec JSONType Int -> ReadS JSONType ReadS [JSONType] (Int -> ReadS JSONType) -> ReadS [JSONType] -> ReadPrec JSONType -> ReadPrec [JSONType] -> Read JSONType forall a. (Int -> ReadS a) -> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a readListPrec :: ReadPrec [JSONType] $creadListPrec :: ReadPrec [JSONType] readPrec :: ReadPrec JSONType $creadPrec :: ReadPrec JSONType readList :: ReadS [JSONType] $creadList :: ReadS [JSONType] readsPrec :: Int -> ReadS JSONType $creadsPrec :: Int -> ReadS JSONType Read, Eq JSONType Eq JSONType -> (JSONType -> JSONType -> Ordering) -> (JSONType -> JSONType -> Bool) -> (JSONType -> JSONType -> Bool) -> (JSONType -> JSONType -> Bool) -> (JSONType -> JSONType -> Bool) -> (JSONType -> JSONType -> JSONType) -> (JSONType -> JSONType -> JSONType) -> Ord JSONType JSONType -> JSONType -> Bool JSONType -> JSONType -> Ordering JSONType -> JSONType -> JSONType 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 :: JSONType -> JSONType -> JSONType $cmin :: JSONType -> JSONType -> JSONType max :: JSONType -> JSONType -> JSONType $cmax :: JSONType -> JSONType -> JSONType >= :: JSONType -> JSONType -> Bool $c>= :: JSONType -> JSONType -> Bool > :: JSONType -> JSONType -> Bool $c> :: JSONType -> JSONType -> Bool <= :: JSONType -> JSONType -> Bool $c<= :: JSONType -> JSONType -> Bool < :: JSONType -> JSONType -> Bool $c< :: JSONType -> JSONType -> Bool compare :: JSONType -> JSONType -> Ordering $ccompare :: JSONType -> JSONType -> Ordering $cp1Ord :: Eq JSONType Ord, JSONType JSONType -> JSONType -> Bounded JSONType forall a. a -> a -> Bounded a maxBound :: JSONType $cmaxBound :: JSONType minBound :: JSONType $cminBound :: JSONType Bounded, Int -> JSONType JSONType -> Int JSONType -> [JSONType] JSONType -> JSONType JSONType -> JSONType -> [JSONType] JSONType -> JSONType -> JSONType -> [JSONType] (JSONType -> JSONType) -> (JSONType -> JSONType) -> (Int -> JSONType) -> (JSONType -> Int) -> (JSONType -> [JSONType]) -> (JSONType -> JSONType -> [JSONType]) -> (JSONType -> JSONType -> [JSONType]) -> (JSONType -> JSONType -> JSONType -> [JSONType]) -> Enum JSONType forall a. (a -> a) -> (a -> a) -> (Int -> a) -> (a -> Int) -> (a -> [a]) -> (a -> a -> [a]) -> (a -> a -> [a]) -> (a -> a -> a -> [a]) -> Enum a enumFromThenTo :: JSONType -> JSONType -> JSONType -> [JSONType] $cenumFromThenTo :: JSONType -> JSONType -> JSONType -> [JSONType] enumFromTo :: JSONType -> JSONType -> [JSONType] $cenumFromTo :: JSONType -> JSONType -> [JSONType] enumFromThen :: JSONType -> JSONType -> [JSONType] $cenumFromThen :: JSONType -> JSONType -> [JSONType] enumFrom :: JSONType -> [JSONType] $cenumFrom :: JSONType -> [JSONType] fromEnum :: JSONType -> Int $cfromEnum :: JSONType -> Int toEnum :: Int -> JSONType $ctoEnum :: Int -> JSONType pred :: JSONType -> JSONType $cpred :: JSONType -> JSONType succ :: JSONType -> JSONType $csucc :: JSONType -> JSONType Enum, (forall x. JSONType -> Rep JSONType x) -> (forall x. Rep JSONType x -> JSONType) -> Generic JSONType forall x. Rep JSONType x -> JSONType forall x. JSONType -> Rep JSONType x forall a. (forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a $cto :: forall x. Rep JSONType x -> JSONType $cfrom :: forall x. JSONType -> Rep JSONType x Generic) instance ToJSON JSONType instance FromJSON JSONType instance NFData JSONType