{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE OverloadedStrings #-}
module Token
where
import Location
import Data.Aeson
import GHC.Generics
data Named
= Named
{
Named -> String
content :: String,
Named -> Location
location :: Location
}
deriving ( Int -> Named -> ShowS
[Named] -> ShowS
Named -> String
(Int -> Named -> ShowS)
-> (Named -> String) -> ([Named] -> ShowS) -> Show Named
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> Named -> ShowS
showsPrec :: Int -> Named -> ShowS
$cshow :: Named -> String
show :: Named -> String
$cshowList :: [Named] -> ShowS
showList :: [Named] -> ShowS
Show, Named -> Named -> Bool
(Named -> Named -> Bool) -> (Named -> Named -> Bool) -> Eq Named
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: Named -> Named -> Bool
== :: Named -> Named -> Bool
$c/= :: Named -> Named -> Bool
/= :: Named -> Named -> Bool
Eq, (forall x. Named -> Rep Named x)
-> (forall x. Rep Named x -> Named) -> Generic Named
forall x. Rep Named x -> Named
forall x. Named -> Rep Named x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. Named -> Rep Named x
from :: forall x. Named -> Rep Named x
$cto :: forall x. Rep Named x -> Named
to :: forall x. Rep Named x -> Named
Generic, [Named] -> Value
[Named] -> Encoding
Named -> Bool
Named -> Value
Named -> Encoding
(Named -> Value)
-> (Named -> Encoding)
-> ([Named] -> Value)
-> ([Named] -> Encoding)
-> (Named -> Bool)
-> ToJSON Named
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> (a -> Bool)
-> ToJSON a
$ctoJSON :: Named -> Value
toJSON :: Named -> Value
$ctoEncoding :: Named -> Encoding
toEncoding :: Named -> Encoding
$ctoJSONList :: [Named] -> Value
toJSONList :: [Named] -> Value
$ctoEncodingList :: [Named] -> Encoding
toEncodingList :: [Named] -> Encoding
$comitField :: Named -> Bool
omitField :: Named -> Bool
ToJSON, Maybe Named
Value -> Parser [Named]
Value -> Parser Named
(Value -> Parser Named)
-> (Value -> Parser [Named]) -> Maybe Named -> FromJSON Named
forall a.
(Value -> Parser a)
-> (Value -> Parser [a]) -> Maybe a -> FromJSON a
$cparseJSON :: Value -> Parser Named
parseJSON :: Value -> Parser Named
$cparseJSONList :: Value -> Parser [Named]
parseJSONList :: Value -> Parser [Named]
$comittedField :: Maybe Named
omittedField :: Maybe Named
FromJSON, Eq Named
Eq Named =>
(Named -> Named -> Ordering)
-> (Named -> Named -> Bool)
-> (Named -> Named -> Bool)
-> (Named -> Named -> Bool)
-> (Named -> Named -> Bool)
-> (Named -> Named -> Named)
-> (Named -> Named -> Named)
-> Ord Named
Named -> Named -> Bool
Named -> Named -> Ordering
Named -> Named -> Named
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 :: Named -> Named -> Ordering
compare :: Named -> Named -> Ordering
$c< :: Named -> Named -> Bool
< :: Named -> Named -> Bool
$c<= :: Named -> Named -> Bool
<= :: Named -> Named -> Bool
$c> :: Named -> Named -> Bool
> :: Named -> Named -> Bool
$c>= :: Named -> Named -> Bool
>= :: Named -> Named -> Bool
$cmax :: Named -> Named -> Named
max :: Named -> Named -> Named
$cmin :: Named -> Named -> Named
min :: Named -> Named -> Named
Ord )
data VarName = VarName Named deriving ( Int -> VarName -> ShowS
[VarName] -> ShowS
VarName -> String
(Int -> VarName -> ShowS)
-> (VarName -> String) -> ([VarName] -> ShowS) -> Show VarName
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> VarName -> ShowS
showsPrec :: Int -> VarName -> ShowS
$cshow :: VarName -> String
show :: VarName -> String
$cshowList :: [VarName] -> ShowS
showList :: [VarName] -> ShowS
Show, VarName -> VarName -> Bool
(VarName -> VarName -> Bool)
-> (VarName -> VarName -> Bool) -> Eq VarName
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: VarName -> VarName -> Bool
== :: VarName -> VarName -> Bool
$c/= :: VarName -> VarName -> Bool
/= :: VarName -> VarName -> Bool
Eq, (forall x. VarName -> Rep VarName x)
-> (forall x. Rep VarName x -> VarName) -> Generic VarName
forall x. Rep VarName x -> VarName
forall x. VarName -> Rep VarName x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. VarName -> Rep VarName x
from :: forall x. VarName -> Rep VarName x
$cto :: forall x. Rep VarName x -> VarName
to :: forall x. Rep VarName x -> VarName
Generic, [VarName] -> Value
[VarName] -> Encoding
VarName -> Bool
VarName -> Value
VarName -> Encoding
(VarName -> Value)
-> (VarName -> Encoding)
-> ([VarName] -> Value)
-> ([VarName] -> Encoding)
-> (VarName -> Bool)
-> ToJSON VarName
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> (a -> Bool)
-> ToJSON a
$ctoJSON :: VarName -> Value
toJSON :: VarName -> Value
$ctoEncoding :: VarName -> Encoding
toEncoding :: VarName -> Encoding
$ctoJSONList :: [VarName] -> Value
toJSONList :: [VarName] -> Value
$ctoEncodingList :: [VarName] -> Encoding
toEncodingList :: [VarName] -> Encoding
$comitField :: VarName -> Bool
omitField :: VarName -> Bool
ToJSON, Maybe VarName
Value -> Parser [VarName]
Value -> Parser VarName
(Value -> Parser VarName)
-> (Value -> Parser [VarName]) -> Maybe VarName -> FromJSON VarName
forall a.
(Value -> Parser a)
-> (Value -> Parser [a]) -> Maybe a -> FromJSON a
$cparseJSON :: Value -> Parser VarName
parseJSON :: Value -> Parser VarName
$cparseJSONList :: Value -> Parser [VarName]
parseJSONList :: Value -> Parser [VarName]
$comittedField :: Maybe VarName
omittedField :: Maybe VarName
FromJSON, Eq VarName
Eq VarName =>
(VarName -> VarName -> Ordering)
-> (VarName -> VarName -> Bool)
-> (VarName -> VarName -> Bool)
-> (VarName -> VarName -> Bool)
-> (VarName -> VarName -> Bool)
-> (VarName -> VarName -> VarName)
-> (VarName -> VarName -> VarName)
-> Ord VarName
VarName -> VarName -> Bool
VarName -> VarName -> Ordering
VarName -> VarName -> VarName
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 :: VarName -> VarName -> Ordering
compare :: VarName -> VarName -> Ordering
$c< :: VarName -> VarName -> Bool
< :: VarName -> VarName -> Bool
$c<= :: VarName -> VarName -> Bool
<= :: VarName -> VarName -> Bool
$c> :: VarName -> VarName -> Bool
> :: VarName -> VarName -> Bool
$c>= :: VarName -> VarName -> Bool
>= :: VarName -> VarName -> Bool
$cmax :: VarName -> VarName -> VarName
max :: VarName -> VarName -> VarName
$cmin :: VarName -> VarName -> VarName
min :: VarName -> VarName -> VarName
Ord )
data FuncName = FuncName Named deriving ( Int -> FuncName -> ShowS
[FuncName] -> ShowS
FuncName -> String
(Int -> FuncName -> ShowS)
-> (FuncName -> String) -> ([FuncName] -> ShowS) -> Show FuncName
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> FuncName -> ShowS
showsPrec :: Int -> FuncName -> ShowS
$cshow :: FuncName -> String
show :: FuncName -> String
$cshowList :: [FuncName] -> ShowS
showList :: [FuncName] -> ShowS
Show, FuncName -> FuncName -> Bool
(FuncName -> FuncName -> Bool)
-> (FuncName -> FuncName -> Bool) -> Eq FuncName
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: FuncName -> FuncName -> Bool
== :: FuncName -> FuncName -> Bool
$c/= :: FuncName -> FuncName -> Bool
/= :: FuncName -> FuncName -> Bool
Eq, (forall x. FuncName -> Rep FuncName x)
-> (forall x. Rep FuncName x -> FuncName) -> Generic FuncName
forall x. Rep FuncName x -> FuncName
forall x. FuncName -> Rep FuncName x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. FuncName -> Rep FuncName x
from :: forall x. FuncName -> Rep FuncName x
$cto :: forall x. Rep FuncName x -> FuncName
to :: forall x. Rep FuncName x -> FuncName
Generic, [FuncName] -> Value
[FuncName] -> Encoding
FuncName -> Bool
FuncName -> Value
FuncName -> Encoding
(FuncName -> Value)
-> (FuncName -> Encoding)
-> ([FuncName] -> Value)
-> ([FuncName] -> Encoding)
-> (FuncName -> Bool)
-> ToJSON FuncName
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> (a -> Bool)
-> ToJSON a
$ctoJSON :: FuncName -> Value
toJSON :: FuncName -> Value
$ctoEncoding :: FuncName -> Encoding
toEncoding :: FuncName -> Encoding
$ctoJSONList :: [FuncName] -> Value
toJSONList :: [FuncName] -> Value
$ctoEncodingList :: [FuncName] -> Encoding
toEncodingList :: [FuncName] -> Encoding
$comitField :: FuncName -> Bool
omitField :: FuncName -> Bool
ToJSON, Maybe FuncName
Value -> Parser [FuncName]
Value -> Parser FuncName
(Value -> Parser FuncName)
-> (Value -> Parser [FuncName])
-> Maybe FuncName
-> FromJSON FuncName
forall a.
(Value -> Parser a)
-> (Value -> Parser [a]) -> Maybe a -> FromJSON a
$cparseJSON :: Value -> Parser FuncName
parseJSON :: Value -> Parser FuncName
$cparseJSONList :: Value -> Parser [FuncName]
parseJSONList :: Value -> Parser [FuncName]
$comittedField :: Maybe FuncName
omittedField :: Maybe FuncName
FromJSON, Eq FuncName
Eq FuncName =>
(FuncName -> FuncName -> Ordering)
-> (FuncName -> FuncName -> Bool)
-> (FuncName -> FuncName -> Bool)
-> (FuncName -> FuncName -> Bool)
-> (FuncName -> FuncName -> Bool)
-> (FuncName -> FuncName -> FuncName)
-> (FuncName -> FuncName -> FuncName)
-> Ord FuncName
FuncName -> FuncName -> Bool
FuncName -> FuncName -> Ordering
FuncName -> FuncName -> FuncName
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 :: FuncName -> FuncName -> Ordering
compare :: FuncName -> FuncName -> Ordering
$c< :: FuncName -> FuncName -> Bool
< :: FuncName -> FuncName -> Bool
$c<= :: FuncName -> FuncName -> Bool
<= :: FuncName -> FuncName -> Bool
$c> :: FuncName -> FuncName -> Bool
> :: FuncName -> FuncName -> Bool
$c>= :: FuncName -> FuncName -> Bool
>= :: FuncName -> FuncName -> Bool
$cmax :: FuncName -> FuncName -> FuncName
max :: FuncName -> FuncName -> FuncName
$cmin :: FuncName -> FuncName -> FuncName
min :: FuncName -> FuncName -> FuncName
Ord )
data ParamName = ParamName Named deriving ( Int -> ParamName -> ShowS
[ParamName] -> ShowS
ParamName -> String
(Int -> ParamName -> ShowS)
-> (ParamName -> String)
-> ([ParamName] -> ShowS)
-> Show ParamName
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ParamName -> ShowS
showsPrec :: Int -> ParamName -> ShowS
$cshow :: ParamName -> String
show :: ParamName -> String
$cshowList :: [ParamName] -> ShowS
showList :: [ParamName] -> ShowS
Show, ParamName -> ParamName -> Bool
(ParamName -> ParamName -> Bool)
-> (ParamName -> ParamName -> Bool) -> Eq ParamName
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ParamName -> ParamName -> Bool
== :: ParamName -> ParamName -> Bool
$c/= :: ParamName -> ParamName -> Bool
/= :: ParamName -> ParamName -> Bool
Eq, (forall x. ParamName -> Rep ParamName x)
-> (forall x. Rep ParamName x -> ParamName) -> Generic ParamName
forall x. Rep ParamName x -> ParamName
forall x. ParamName -> Rep ParamName x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. ParamName -> Rep ParamName x
from :: forall x. ParamName -> Rep ParamName x
$cto :: forall x. Rep ParamName x -> ParamName
to :: forall x. Rep ParamName x -> ParamName
Generic, [ParamName] -> Value
[ParamName] -> Encoding
ParamName -> Bool
ParamName -> Value
ParamName -> Encoding
(ParamName -> Value)
-> (ParamName -> Encoding)
-> ([ParamName] -> Value)
-> ([ParamName] -> Encoding)
-> (ParamName -> Bool)
-> ToJSON ParamName
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> (a -> Bool)
-> ToJSON a
$ctoJSON :: ParamName -> Value
toJSON :: ParamName -> Value
$ctoEncoding :: ParamName -> Encoding
toEncoding :: ParamName -> Encoding
$ctoJSONList :: [ParamName] -> Value
toJSONList :: [ParamName] -> Value
$ctoEncodingList :: [ParamName] -> Encoding
toEncodingList :: [ParamName] -> Encoding
$comitField :: ParamName -> Bool
omitField :: ParamName -> Bool
ToJSON, Maybe ParamName
Value -> Parser [ParamName]
Value -> Parser ParamName
(Value -> Parser ParamName)
-> (Value -> Parser [ParamName])
-> Maybe ParamName
-> FromJSON ParamName
forall a.
(Value -> Parser a)
-> (Value -> Parser [a]) -> Maybe a -> FromJSON a
$cparseJSON :: Value -> Parser ParamName
parseJSON :: Value -> Parser ParamName
$cparseJSONList :: Value -> Parser [ParamName]
parseJSONList :: Value -> Parser [ParamName]
$comittedField :: Maybe ParamName
omittedField :: Maybe ParamName
FromJSON, Eq ParamName
Eq ParamName =>
(ParamName -> ParamName -> Ordering)
-> (ParamName -> ParamName -> Bool)
-> (ParamName -> ParamName -> Bool)
-> (ParamName -> ParamName -> Bool)
-> (ParamName -> ParamName -> Bool)
-> (ParamName -> ParamName -> ParamName)
-> (ParamName -> ParamName -> ParamName)
-> Ord ParamName
ParamName -> ParamName -> Bool
ParamName -> ParamName -> Ordering
ParamName -> ParamName -> ParamName
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 :: ParamName -> ParamName -> Ordering
compare :: ParamName -> ParamName -> Ordering
$c< :: ParamName -> ParamName -> Bool
< :: ParamName -> ParamName -> Bool
$c<= :: ParamName -> ParamName -> Bool
<= :: ParamName -> ParamName -> Bool
$c> :: ParamName -> ParamName -> Bool
> :: ParamName -> ParamName -> Bool
$c>= :: ParamName -> ParamName -> Bool
>= :: ParamName -> ParamName -> Bool
$cmax :: ParamName -> ParamName -> ParamName
max :: ParamName -> ParamName -> ParamName
$cmin :: ParamName -> ParamName -> ParamName
min :: ParamName -> ParamName -> ParamName
Ord )
data FieldName = FieldName Named deriving ( Int -> FieldName -> ShowS
[FieldName] -> ShowS
FieldName -> String
(Int -> FieldName -> ShowS)
-> (FieldName -> String)
-> ([FieldName] -> ShowS)
-> Show FieldName
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> FieldName -> ShowS
showsPrec :: Int -> FieldName -> ShowS
$cshow :: FieldName -> String
show :: FieldName -> String
$cshowList :: [FieldName] -> ShowS
showList :: [FieldName] -> ShowS
Show, FieldName -> FieldName -> Bool
(FieldName -> FieldName -> Bool)
-> (FieldName -> FieldName -> Bool) -> Eq FieldName
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: FieldName -> FieldName -> Bool
== :: FieldName -> FieldName -> Bool
$c/= :: FieldName -> FieldName -> Bool
/= :: FieldName -> FieldName -> Bool
Eq, (forall x. FieldName -> Rep FieldName x)
-> (forall x. Rep FieldName x -> FieldName) -> Generic FieldName
forall x. Rep FieldName x -> FieldName
forall x. FieldName -> Rep FieldName x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. FieldName -> Rep FieldName x
from :: forall x. FieldName -> Rep FieldName x
$cto :: forall x. Rep FieldName x -> FieldName
to :: forall x. Rep FieldName x -> FieldName
Generic, [FieldName] -> Value
[FieldName] -> Encoding
FieldName -> Bool
FieldName -> Value
FieldName -> Encoding
(FieldName -> Value)
-> (FieldName -> Encoding)
-> ([FieldName] -> Value)
-> ([FieldName] -> Encoding)
-> (FieldName -> Bool)
-> ToJSON FieldName
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> (a -> Bool)
-> ToJSON a
$ctoJSON :: FieldName -> Value
toJSON :: FieldName -> Value
$ctoEncoding :: FieldName -> Encoding
toEncoding :: FieldName -> Encoding
$ctoJSONList :: [FieldName] -> Value
toJSONList :: [FieldName] -> Value
$ctoEncodingList :: [FieldName] -> Encoding
toEncodingList :: [FieldName] -> Encoding
$comitField :: FieldName -> Bool
omitField :: FieldName -> Bool
ToJSON, Maybe FieldName
Value -> Parser [FieldName]
Value -> Parser FieldName
(Value -> Parser FieldName)
-> (Value -> Parser [FieldName])
-> Maybe FieldName
-> FromJSON FieldName
forall a.
(Value -> Parser a)
-> (Value -> Parser [a]) -> Maybe a -> FromJSON a
$cparseJSON :: Value -> Parser FieldName
parseJSON :: Value -> Parser FieldName
$cparseJSONList :: Value -> Parser [FieldName]
parseJSONList :: Value -> Parser [FieldName]
$comittedField :: Maybe FieldName
omittedField :: Maybe FieldName
FromJSON, Eq FieldName
Eq FieldName =>
(FieldName -> FieldName -> Ordering)
-> (FieldName -> FieldName -> Bool)
-> (FieldName -> FieldName -> Bool)
-> (FieldName -> FieldName -> Bool)
-> (FieldName -> FieldName -> Bool)
-> (FieldName -> FieldName -> FieldName)
-> (FieldName -> FieldName -> FieldName)
-> Ord FieldName
FieldName -> FieldName -> Bool
FieldName -> FieldName -> Ordering
FieldName -> FieldName -> FieldName
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 :: FieldName -> FieldName -> Ordering
compare :: FieldName -> FieldName -> Ordering
$c< :: FieldName -> FieldName -> Bool
< :: FieldName -> FieldName -> Bool
$c<= :: FieldName -> FieldName -> Bool
<= :: FieldName -> FieldName -> Bool
$c> :: FieldName -> FieldName -> Bool
> :: FieldName -> FieldName -> Bool
$c>= :: FieldName -> FieldName -> Bool
>= :: FieldName -> FieldName -> Bool
$cmax :: FieldName -> FieldName -> FieldName
max :: FieldName -> FieldName -> FieldName
$cmin :: FieldName -> FieldName -> FieldName
min :: FieldName -> FieldName -> FieldName
Ord )
data ClassName = ClassName Named deriving ( Int -> ClassName -> ShowS
[ClassName] -> ShowS
ClassName -> String
(Int -> ClassName -> ShowS)
-> (ClassName -> String)
-> ([ClassName] -> ShowS)
-> Show ClassName
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ClassName -> ShowS
showsPrec :: Int -> ClassName -> ShowS
$cshow :: ClassName -> String
show :: ClassName -> String
$cshowList :: [ClassName] -> ShowS
showList :: [ClassName] -> ShowS
Show, ClassName -> ClassName -> Bool
(ClassName -> ClassName -> Bool)
-> (ClassName -> ClassName -> Bool) -> Eq ClassName
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ClassName -> ClassName -> Bool
== :: ClassName -> ClassName -> Bool
$c/= :: ClassName -> ClassName -> Bool
/= :: ClassName -> ClassName -> Bool
Eq, (forall x. ClassName -> Rep ClassName x)
-> (forall x. Rep ClassName x -> ClassName) -> Generic ClassName
forall x. Rep ClassName x -> ClassName
forall x. ClassName -> Rep ClassName x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. ClassName -> Rep ClassName x
from :: forall x. ClassName -> Rep ClassName x
$cto :: forall x. Rep ClassName x -> ClassName
to :: forall x. Rep ClassName x -> ClassName
Generic, [ClassName] -> Value
[ClassName] -> Encoding
ClassName -> Bool
ClassName -> Value
ClassName -> Encoding
(ClassName -> Value)
-> (ClassName -> Encoding)
-> ([ClassName] -> Value)
-> ([ClassName] -> Encoding)
-> (ClassName -> Bool)
-> ToJSON ClassName
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> (a -> Bool)
-> ToJSON a
$ctoJSON :: ClassName -> Value
toJSON :: ClassName -> Value
$ctoEncoding :: ClassName -> Encoding
toEncoding :: ClassName -> Encoding
$ctoJSONList :: [ClassName] -> Value
toJSONList :: [ClassName] -> Value
$ctoEncodingList :: [ClassName] -> Encoding
toEncodingList :: [ClassName] -> Encoding
$comitField :: ClassName -> Bool
omitField :: ClassName -> Bool
ToJSON, Maybe ClassName
Value -> Parser [ClassName]
Value -> Parser ClassName
(Value -> Parser ClassName)
-> (Value -> Parser [ClassName])
-> Maybe ClassName
-> FromJSON ClassName
forall a.
(Value -> Parser a)
-> (Value -> Parser [a]) -> Maybe a -> FromJSON a
$cparseJSON :: Value -> Parser ClassName
parseJSON :: Value -> Parser ClassName
$cparseJSONList :: Value -> Parser [ClassName]
parseJSONList :: Value -> Parser [ClassName]
$comittedField :: Maybe ClassName
omittedField :: Maybe ClassName
FromJSON, Eq ClassName
Eq ClassName =>
(ClassName -> ClassName -> Ordering)
-> (ClassName -> ClassName -> Bool)
-> (ClassName -> ClassName -> Bool)
-> (ClassName -> ClassName -> Bool)
-> (ClassName -> ClassName -> Bool)
-> (ClassName -> ClassName -> ClassName)
-> (ClassName -> ClassName -> ClassName)
-> Ord ClassName
ClassName -> ClassName -> Bool
ClassName -> ClassName -> Ordering
ClassName -> ClassName -> ClassName
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 :: ClassName -> ClassName -> Ordering
compare :: ClassName -> ClassName -> Ordering
$c< :: ClassName -> ClassName -> Bool
< :: ClassName -> ClassName -> Bool
$c<= :: ClassName -> ClassName -> Bool
<= :: ClassName -> ClassName -> Bool
$c> :: ClassName -> ClassName -> Bool
> :: ClassName -> ClassName -> Bool
$c>= :: ClassName -> ClassName -> Bool
>= :: ClassName -> ClassName -> Bool
$cmax :: ClassName -> ClassName -> ClassName
max :: ClassName -> ClassName -> ClassName
$cmin :: ClassName -> ClassName -> ClassName
min :: ClassName -> ClassName -> ClassName
Ord )
data SuperName = SuperName Named deriving ( Int -> SuperName -> ShowS
[SuperName] -> ShowS
SuperName -> String
(Int -> SuperName -> ShowS)
-> (SuperName -> String)
-> ([SuperName] -> ShowS)
-> Show SuperName
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> SuperName -> ShowS
showsPrec :: Int -> SuperName -> ShowS
$cshow :: SuperName -> String
show :: SuperName -> String
$cshowList :: [SuperName] -> ShowS
showList :: [SuperName] -> ShowS
Show, SuperName -> SuperName -> Bool
(SuperName -> SuperName -> Bool)
-> (SuperName -> SuperName -> Bool) -> Eq SuperName
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: SuperName -> SuperName -> Bool
== :: SuperName -> SuperName -> Bool
$c/= :: SuperName -> SuperName -> Bool
/= :: SuperName -> SuperName -> Bool
Eq, (forall x. SuperName -> Rep SuperName x)
-> (forall x. Rep SuperName x -> SuperName) -> Generic SuperName
forall x. Rep SuperName x -> SuperName
forall x. SuperName -> Rep SuperName x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. SuperName -> Rep SuperName x
from :: forall x. SuperName -> Rep SuperName x
$cto :: forall x. Rep SuperName x -> SuperName
to :: forall x. Rep SuperName x -> SuperName
Generic, [SuperName] -> Value
[SuperName] -> Encoding
SuperName -> Bool
SuperName -> Value
SuperName -> Encoding
(SuperName -> Value)
-> (SuperName -> Encoding)
-> ([SuperName] -> Value)
-> ([SuperName] -> Encoding)
-> (SuperName -> Bool)
-> ToJSON SuperName
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> (a -> Bool)
-> ToJSON a
$ctoJSON :: SuperName -> Value
toJSON :: SuperName -> Value
$ctoEncoding :: SuperName -> Encoding
toEncoding :: SuperName -> Encoding
$ctoJSONList :: [SuperName] -> Value
toJSONList :: [SuperName] -> Value
$ctoEncodingList :: [SuperName] -> Encoding
toEncodingList :: [SuperName] -> Encoding
$comitField :: SuperName -> Bool
omitField :: SuperName -> Bool
ToJSON, Maybe SuperName
Value -> Parser [SuperName]
Value -> Parser SuperName
(Value -> Parser SuperName)
-> (Value -> Parser [SuperName])
-> Maybe SuperName
-> FromJSON SuperName
forall a.
(Value -> Parser a)
-> (Value -> Parser [a]) -> Maybe a -> FromJSON a
$cparseJSON :: Value -> Parser SuperName
parseJSON :: Value -> Parser SuperName
$cparseJSONList :: Value -> Parser [SuperName]
parseJSONList :: Value -> Parser [SuperName]
$comittedField :: Maybe SuperName
omittedField :: Maybe SuperName
FromJSON, Eq SuperName
Eq SuperName =>
(SuperName -> SuperName -> Ordering)
-> (SuperName -> SuperName -> Bool)
-> (SuperName -> SuperName -> Bool)
-> (SuperName -> SuperName -> Bool)
-> (SuperName -> SuperName -> Bool)
-> (SuperName -> SuperName -> SuperName)
-> (SuperName -> SuperName -> SuperName)
-> Ord SuperName
SuperName -> SuperName -> Bool
SuperName -> SuperName -> Ordering
SuperName -> SuperName -> SuperName
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 :: SuperName -> SuperName -> Ordering
compare :: SuperName -> SuperName -> Ordering
$c< :: SuperName -> SuperName -> Bool
< :: SuperName -> SuperName -> Bool
$c<= :: SuperName -> SuperName -> Bool
<= :: SuperName -> SuperName -> Bool
$c> :: SuperName -> SuperName -> Bool
> :: SuperName -> SuperName -> Bool
$c>= :: SuperName -> SuperName -> Bool
>= :: SuperName -> SuperName -> Bool
$cmax :: SuperName -> SuperName -> SuperName
max :: SuperName -> SuperName -> SuperName
$cmin :: SuperName -> SuperName -> SuperName
min :: SuperName -> SuperName -> SuperName
Ord )
data MemberName = MemberName Named deriving ( Int -> MemberName -> ShowS
[MemberName] -> ShowS
MemberName -> String
(Int -> MemberName -> ShowS)
-> (MemberName -> String)
-> ([MemberName] -> ShowS)
-> Show MemberName
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> MemberName -> ShowS
showsPrec :: Int -> MemberName -> ShowS
$cshow :: MemberName -> String
show :: MemberName -> String
$cshowList :: [MemberName] -> ShowS
showList :: [MemberName] -> ShowS
Show, MemberName -> MemberName -> Bool
(MemberName -> MemberName -> Bool)
-> (MemberName -> MemberName -> Bool) -> Eq MemberName
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: MemberName -> MemberName -> Bool
== :: MemberName -> MemberName -> Bool
$c/= :: MemberName -> MemberName -> Bool
/= :: MemberName -> MemberName -> Bool
Eq, (forall x. MemberName -> Rep MemberName x)
-> (forall x. Rep MemberName x -> MemberName) -> Generic MemberName
forall x. Rep MemberName x -> MemberName
forall x. MemberName -> Rep MemberName x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. MemberName -> Rep MemberName x
from :: forall x. MemberName -> Rep MemberName x
$cto :: forall x. Rep MemberName x -> MemberName
to :: forall x. Rep MemberName x -> MemberName
Generic, [MemberName] -> Value
[MemberName] -> Encoding
MemberName -> Bool
MemberName -> Value
MemberName -> Encoding
(MemberName -> Value)
-> (MemberName -> Encoding)
-> ([MemberName] -> Value)
-> ([MemberName] -> Encoding)
-> (MemberName -> Bool)
-> ToJSON MemberName
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> (a -> Bool)
-> ToJSON a
$ctoJSON :: MemberName -> Value
toJSON :: MemberName -> Value
$ctoEncoding :: MemberName -> Encoding
toEncoding :: MemberName -> Encoding
$ctoJSONList :: [MemberName] -> Value
toJSONList :: [MemberName] -> Value
$ctoEncodingList :: [MemberName] -> Encoding
toEncodingList :: [MemberName] -> Encoding
$comitField :: MemberName -> Bool
omitField :: MemberName -> Bool
ToJSON, Maybe MemberName
Value -> Parser [MemberName]
Value -> Parser MemberName
(Value -> Parser MemberName)
-> (Value -> Parser [MemberName])
-> Maybe MemberName
-> FromJSON MemberName
forall a.
(Value -> Parser a)
-> (Value -> Parser [a]) -> Maybe a -> FromJSON a
$cparseJSON :: Value -> Parser MemberName
parseJSON :: Value -> Parser MemberName
$cparseJSONList :: Value -> Parser [MemberName]
parseJSONList :: Value -> Parser [MemberName]
$comittedField :: Maybe MemberName
omittedField :: Maybe MemberName
FromJSON, Eq MemberName
Eq MemberName =>
(MemberName -> MemberName -> Ordering)
-> (MemberName -> MemberName -> Bool)
-> (MemberName -> MemberName -> Bool)
-> (MemberName -> MemberName -> Bool)
-> (MemberName -> MemberName -> Bool)
-> (MemberName -> MemberName -> MemberName)
-> (MemberName -> MemberName -> MemberName)
-> Ord MemberName
MemberName -> MemberName -> Bool
MemberName -> MemberName -> Ordering
MemberName -> MemberName -> MemberName
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 :: MemberName -> MemberName -> Ordering
compare :: MemberName -> MemberName -> Ordering
$c< :: MemberName -> MemberName -> Bool
< :: MemberName -> MemberName -> Bool
$c<= :: MemberName -> MemberName -> Bool
<= :: MemberName -> MemberName -> Bool
$c> :: MemberName -> MemberName -> Bool
> :: MemberName -> MemberName -> Bool
$c>= :: MemberName -> MemberName -> Bool
>= :: MemberName -> MemberName -> Bool
$cmax :: MemberName -> MemberName -> MemberName
max :: MemberName -> MemberName -> MemberName
$cmin :: MemberName -> MemberName -> MemberName
min :: MemberName -> MemberName -> MemberName
Ord, ToJSONKeyFunction [MemberName]
ToJSONKeyFunction MemberName
ToJSONKeyFunction MemberName
-> ToJSONKeyFunction [MemberName] -> ToJSONKey MemberName
forall a.
ToJSONKeyFunction a -> ToJSONKeyFunction [a] -> ToJSONKey a
$ctoJSONKey :: ToJSONKeyFunction MemberName
toJSONKey :: ToJSONKeyFunction MemberName
$ctoJSONKeyList :: ToJSONKeyFunction [MemberName]
toJSONKeyList :: ToJSONKeyFunction [MemberName]
ToJSONKey, FromJSONKeyFunction [MemberName]
FromJSONKeyFunction MemberName
FromJSONKeyFunction MemberName
-> FromJSONKeyFunction [MemberName] -> FromJSONKey MemberName
forall a.
FromJSONKeyFunction a -> FromJSONKeyFunction [a] -> FromJSONKey a
$cfromJSONKey :: FromJSONKeyFunction MemberName
fromJSONKey :: FromJSONKeyFunction MemberName
$cfromJSONKeyList :: FromJSONKeyFunction [MemberName]
fromJSONKeyList :: FromJSONKeyFunction [MemberName]
FromJSONKey )
data MethodName = MethodName Named deriving ( Int -> MethodName -> ShowS
[MethodName] -> ShowS
MethodName -> String
(Int -> MethodName -> ShowS)
-> (MethodName -> String)
-> ([MethodName] -> ShowS)
-> Show MethodName
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> MethodName -> ShowS
showsPrec :: Int -> MethodName -> ShowS
$cshow :: MethodName -> String
show :: MethodName -> String
$cshowList :: [MethodName] -> ShowS
showList :: [MethodName] -> ShowS
Show, MethodName -> MethodName -> Bool
(MethodName -> MethodName -> Bool)
-> (MethodName -> MethodName -> Bool) -> Eq MethodName
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: MethodName -> MethodName -> Bool
== :: MethodName -> MethodName -> Bool
$c/= :: MethodName -> MethodName -> Bool
/= :: MethodName -> MethodName -> Bool
Eq, (forall x. MethodName -> Rep MethodName x)
-> (forall x. Rep MethodName x -> MethodName) -> Generic MethodName
forall x. Rep MethodName x -> MethodName
forall x. MethodName -> Rep MethodName x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. MethodName -> Rep MethodName x
from :: forall x. MethodName -> Rep MethodName x
$cto :: forall x. Rep MethodName x -> MethodName
to :: forall x. Rep MethodName x -> MethodName
Generic, [MethodName] -> Value
[MethodName] -> Encoding
MethodName -> Bool
MethodName -> Value
MethodName -> Encoding
(MethodName -> Value)
-> (MethodName -> Encoding)
-> ([MethodName] -> Value)
-> ([MethodName] -> Encoding)
-> (MethodName -> Bool)
-> ToJSON MethodName
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> (a -> Bool)
-> ToJSON a
$ctoJSON :: MethodName -> Value
toJSON :: MethodName -> Value
$ctoEncoding :: MethodName -> Encoding
toEncoding :: MethodName -> Encoding
$ctoJSONList :: [MethodName] -> Value
toJSONList :: [MethodName] -> Value
$ctoEncodingList :: [MethodName] -> Encoding
toEncodingList :: [MethodName] -> Encoding
$comitField :: MethodName -> Bool
omitField :: MethodName -> Bool
ToJSON, Maybe MethodName
Value -> Parser [MethodName]
Value -> Parser MethodName
(Value -> Parser MethodName)
-> (Value -> Parser [MethodName])
-> Maybe MethodName
-> FromJSON MethodName
forall a.
(Value -> Parser a)
-> (Value -> Parser [a]) -> Maybe a -> FromJSON a
$cparseJSON :: Value -> Parser MethodName
parseJSON :: Value -> Parser MethodName
$cparseJSONList :: Value -> Parser [MethodName]
parseJSONList :: Value -> Parser [MethodName]
$comittedField :: Maybe MethodName
omittedField :: Maybe MethodName
FromJSON, Eq MethodName
Eq MethodName =>
(MethodName -> MethodName -> Ordering)
-> (MethodName -> MethodName -> Bool)
-> (MethodName -> MethodName -> Bool)
-> (MethodName -> MethodName -> Bool)
-> (MethodName -> MethodName -> Bool)
-> (MethodName -> MethodName -> MethodName)
-> (MethodName -> MethodName -> MethodName)
-> Ord MethodName
MethodName -> MethodName -> Bool
MethodName -> MethodName -> Ordering
MethodName -> MethodName -> MethodName
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 :: MethodName -> MethodName -> Ordering
compare :: MethodName -> MethodName -> Ordering
$c< :: MethodName -> MethodName -> Bool
< :: MethodName -> MethodName -> Bool
$c<= :: MethodName -> MethodName -> Bool
<= :: MethodName -> MethodName -> Bool
$c> :: MethodName -> MethodName -> Bool
> :: MethodName -> MethodName -> Bool
$c>= :: MethodName -> MethodName -> Bool
>= :: MethodName -> MethodName -> Bool
$cmax :: MethodName -> MethodName -> MethodName
max :: MethodName -> MethodName -> MethodName
$cmin :: MethodName -> MethodName -> MethodName
min :: MethodName -> MethodName -> MethodName
Ord, ToJSONKeyFunction [MethodName]
ToJSONKeyFunction MethodName
ToJSONKeyFunction MethodName
-> ToJSONKeyFunction [MethodName] -> ToJSONKey MethodName
forall a.
ToJSONKeyFunction a -> ToJSONKeyFunction [a] -> ToJSONKey a
$ctoJSONKey :: ToJSONKeyFunction MethodName
toJSONKey :: ToJSONKeyFunction MethodName
$ctoJSONKeyList :: ToJSONKeyFunction [MethodName]
toJSONKeyList :: ToJSONKeyFunction [MethodName]
ToJSONKey, FromJSONKeyFunction [MethodName]
FromJSONKeyFunction MethodName
FromJSONKeyFunction MethodName
-> FromJSONKeyFunction [MethodName] -> FromJSONKey MethodName
forall a.
FromJSONKeyFunction a -> FromJSONKeyFunction [a] -> FromJSONKey a
$cfromJSONKey :: FromJSONKeyFunction MethodName
fromJSONKey :: FromJSONKeyFunction MethodName
$cfromJSONKeyList :: FromJSONKeyFunction [MethodName]
fromJSONKeyList :: FromJSONKeyFunction [MethodName]
FromJSONKey )
getVarNameToken :: VarName -> Named
getFuncNameToken :: FuncName -> Named
getParamNameToken :: ParamName -> Named
getFieldNameToken :: FieldName -> Named
getClassNameToken :: ClassName -> Named
getSuperNameToken :: SuperName -> Named
getMemberNameToken :: MemberName -> Named
getMethodNameToken :: MethodName -> Named
getVarNameToken :: VarName -> Named
getVarNameToken (VarName Named
v) = Named
v
getFuncNameToken :: FuncName -> Named
getFuncNameToken (FuncName Named
f) = Named
f
getParamNameToken :: ParamName -> Named
getParamNameToken (ParamName Named
p) = Named
p
getFieldNameToken :: FieldName -> Named
getFieldNameToken (FieldName Named
f) = Named
f
getClassNameToken :: ClassName -> Named
getClassNameToken (ClassName Named
c) = Named
c
getSuperNameToken :: SuperName -> Named
getSuperNameToken (SuperName Named
s) = Named
s
getMemberNameToken :: MemberName -> Named
getMemberNameToken (MemberName Named
m) = Named
m
getMethodNameToken :: MethodName -> Named
getMethodNameToken (MethodName Named
m) = Named
m
getVarNameLocation :: VarName -> Location
getFuncNameLocation :: FuncName -> Location
getClassNameLocation :: ClassName -> Location
getParamNameLocation :: ParamName -> Location
getFieldNameLocation :: FieldName -> Location
getMethodNameLocation :: MethodName -> Location
getVarNameLocation :: VarName -> Location
getVarNameLocation = Named -> Location
location (Named -> Location) -> (VarName -> Named) -> VarName -> Location
forall b c a. (b -> c) -> (a -> b) -> a -> c
. VarName -> Named
getVarNameToken
getFuncNameLocation :: FuncName -> Location
getFuncNameLocation = Named -> Location
location (Named -> Location) -> (FuncName -> Named) -> FuncName -> Location
forall b c a. (b -> c) -> (a -> b) -> a -> c
. FuncName -> Named
getFuncNameToken
getClassNameLocation :: ClassName -> Location
getClassNameLocation = Named -> Location
location (Named -> Location)
-> (ClassName -> Named) -> ClassName -> Location
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ClassName -> Named
getClassNameToken
getParamNameLocation :: ParamName -> Location
getParamNameLocation = Named -> Location
location (Named -> Location)
-> (ParamName -> Named) -> ParamName -> Location
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ParamName -> Named
getParamNameToken
getFieldNameLocation :: FieldName -> Location
getFieldNameLocation = Named -> Location
location (Named -> Location)
-> (FieldName -> Named) -> FieldName -> Location
forall b c a. (b -> c) -> (a -> b) -> a -> c
. FieldName -> Named
getFieldNameToken
getMethodNameLocation :: MethodName -> Location
getMethodNameLocation = Named -> Location
location (Named -> Location)
-> (MethodName -> Named) -> MethodName -> Location
forall b c a. (b -> c) -> (a -> b) -> a -> c
. MethodName -> Named
getMethodNameToken
data ConstBool
= ConstBool
{
ConstBool -> Bool
constBoolValue :: Bool,
ConstBool -> Location
constBoolLocation :: Location
}
deriving ( Int -> ConstBool -> ShowS
[ConstBool] -> ShowS
ConstBool -> String
(Int -> ConstBool -> ShowS)
-> (ConstBool -> String)
-> ([ConstBool] -> ShowS)
-> Show ConstBool
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ConstBool -> ShowS
showsPrec :: Int -> ConstBool -> ShowS
$cshow :: ConstBool -> String
show :: ConstBool -> String
$cshowList :: [ConstBool] -> ShowS
showList :: [ConstBool] -> ShowS
Show, ConstBool -> ConstBool -> Bool
(ConstBool -> ConstBool -> Bool)
-> (ConstBool -> ConstBool -> Bool) -> Eq ConstBool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ConstBool -> ConstBool -> Bool
== :: ConstBool -> ConstBool -> Bool
$c/= :: ConstBool -> ConstBool -> Bool
/= :: ConstBool -> ConstBool -> Bool
Eq, (forall x. ConstBool -> Rep ConstBool x)
-> (forall x. Rep ConstBool x -> ConstBool) -> Generic ConstBool
forall x. Rep ConstBool x -> ConstBool
forall x. ConstBool -> Rep ConstBool x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. ConstBool -> Rep ConstBool x
from :: forall x. ConstBool -> Rep ConstBool x
$cto :: forall x. Rep ConstBool x -> ConstBool
to :: forall x. Rep ConstBool x -> ConstBool
Generic, [ConstBool] -> Value
[ConstBool] -> Encoding
ConstBool -> Bool
ConstBool -> Value
ConstBool -> Encoding
(ConstBool -> Value)
-> (ConstBool -> Encoding)
-> ([ConstBool] -> Value)
-> ([ConstBool] -> Encoding)
-> (ConstBool -> Bool)
-> ToJSON ConstBool
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> (a -> Bool)
-> ToJSON a
$ctoJSON :: ConstBool -> Value
toJSON :: ConstBool -> Value
$ctoEncoding :: ConstBool -> Encoding
toEncoding :: ConstBool -> Encoding
$ctoJSONList :: [ConstBool] -> Value
toJSONList :: [ConstBool] -> Value
$ctoEncodingList :: [ConstBool] -> Encoding
toEncodingList :: [ConstBool] -> Encoding
$comitField :: ConstBool -> Bool
omitField :: ConstBool -> Bool
ToJSON, Maybe ConstBool
Value -> Parser [ConstBool]
Value -> Parser ConstBool
(Value -> Parser ConstBool)
-> (Value -> Parser [ConstBool])
-> Maybe ConstBool
-> FromJSON ConstBool
forall a.
(Value -> Parser a)
-> (Value -> Parser [a]) -> Maybe a -> FromJSON a
$cparseJSON :: Value -> Parser ConstBool
parseJSON :: Value -> Parser ConstBool
$cparseJSONList :: Value -> Parser [ConstBool]
parseJSONList :: Value -> Parser [ConstBool]
$comittedField :: Maybe ConstBool
omittedField :: Maybe ConstBool
FromJSON, Eq ConstBool
Eq ConstBool =>
(ConstBool -> ConstBool -> Ordering)
-> (ConstBool -> ConstBool -> Bool)
-> (ConstBool -> ConstBool -> Bool)
-> (ConstBool -> ConstBool -> Bool)
-> (ConstBool -> ConstBool -> Bool)
-> (ConstBool -> ConstBool -> ConstBool)
-> (ConstBool -> ConstBool -> ConstBool)
-> Ord ConstBool
ConstBool -> ConstBool -> Bool
ConstBool -> ConstBool -> Ordering
ConstBool -> ConstBool -> ConstBool
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 :: ConstBool -> ConstBool -> Ordering
compare :: ConstBool -> ConstBool -> Ordering
$c< :: ConstBool -> ConstBool -> Bool
< :: ConstBool -> ConstBool -> Bool
$c<= :: ConstBool -> ConstBool -> Bool
<= :: ConstBool -> ConstBool -> Bool
$c> :: ConstBool -> ConstBool -> Bool
> :: ConstBool -> ConstBool -> Bool
$c>= :: ConstBool -> ConstBool -> Bool
>= :: ConstBool -> ConstBool -> Bool
$cmax :: ConstBool -> ConstBool -> ConstBool
max :: ConstBool -> ConstBool -> ConstBool
$cmin :: ConstBool -> ConstBool -> ConstBool
min :: ConstBool -> ConstBool -> ConstBool
Ord )
data ConstInt
= ConstInt
{
ConstInt -> Int
constIntValue :: Int,
ConstInt -> Location
constIntLocation :: Location
}
deriving ( Int -> ConstInt -> ShowS
[ConstInt] -> ShowS
ConstInt -> String
(Int -> ConstInt -> ShowS)
-> (ConstInt -> String) -> ([ConstInt] -> ShowS) -> Show ConstInt
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ConstInt -> ShowS
showsPrec :: Int -> ConstInt -> ShowS
$cshow :: ConstInt -> String
show :: ConstInt -> String
$cshowList :: [ConstInt] -> ShowS
showList :: [ConstInt] -> ShowS
Show, ConstInt -> ConstInt -> Bool
(ConstInt -> ConstInt -> Bool)
-> (ConstInt -> ConstInt -> Bool) -> Eq ConstInt
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ConstInt -> ConstInt -> Bool
== :: ConstInt -> ConstInt -> Bool
$c/= :: ConstInt -> ConstInt -> Bool
/= :: ConstInt -> ConstInt -> Bool
Eq, (forall x. ConstInt -> Rep ConstInt x)
-> (forall x. Rep ConstInt x -> ConstInt) -> Generic ConstInt
forall x. Rep ConstInt x -> ConstInt
forall x. ConstInt -> Rep ConstInt x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. ConstInt -> Rep ConstInt x
from :: forall x. ConstInt -> Rep ConstInt x
$cto :: forall x. Rep ConstInt x -> ConstInt
to :: forall x. Rep ConstInt x -> ConstInt
Generic, [ConstInt] -> Value
[ConstInt] -> Encoding
ConstInt -> Bool
ConstInt -> Value
ConstInt -> Encoding
(ConstInt -> Value)
-> (ConstInt -> Encoding)
-> ([ConstInt] -> Value)
-> ([ConstInt] -> Encoding)
-> (ConstInt -> Bool)
-> ToJSON ConstInt
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> (a -> Bool)
-> ToJSON a
$ctoJSON :: ConstInt -> Value
toJSON :: ConstInt -> Value
$ctoEncoding :: ConstInt -> Encoding
toEncoding :: ConstInt -> Encoding
$ctoJSONList :: [ConstInt] -> Value
toJSONList :: [ConstInt] -> Value
$ctoEncodingList :: [ConstInt] -> Encoding
toEncodingList :: [ConstInt] -> Encoding
$comitField :: ConstInt -> Bool
omitField :: ConstInt -> Bool
ToJSON, Maybe ConstInt
Value -> Parser [ConstInt]
Value -> Parser ConstInt
(Value -> Parser ConstInt)
-> (Value -> Parser [ConstInt])
-> Maybe ConstInt
-> FromJSON ConstInt
forall a.
(Value -> Parser a)
-> (Value -> Parser [a]) -> Maybe a -> FromJSON a
$cparseJSON :: Value -> Parser ConstInt
parseJSON :: Value -> Parser ConstInt
$cparseJSONList :: Value -> Parser [ConstInt]
parseJSONList :: Value -> Parser [ConstInt]
$comittedField :: Maybe ConstInt
omittedField :: Maybe ConstInt
FromJSON, Eq ConstInt
Eq ConstInt =>
(ConstInt -> ConstInt -> Ordering)
-> (ConstInt -> ConstInt -> Bool)
-> (ConstInt -> ConstInt -> Bool)
-> (ConstInt -> ConstInt -> Bool)
-> (ConstInt -> ConstInt -> Bool)
-> (ConstInt -> ConstInt -> ConstInt)
-> (ConstInt -> ConstInt -> ConstInt)
-> Ord ConstInt
ConstInt -> ConstInt -> Bool
ConstInt -> ConstInt -> Ordering
ConstInt -> ConstInt -> ConstInt
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 :: ConstInt -> ConstInt -> Ordering
compare :: ConstInt -> ConstInt -> Ordering
$c< :: ConstInt -> ConstInt -> Bool
< :: ConstInt -> ConstInt -> Bool
$c<= :: ConstInt -> ConstInt -> Bool
<= :: ConstInt -> ConstInt -> Bool
$c> :: ConstInt -> ConstInt -> Bool
> :: ConstInt -> ConstInt -> Bool
$c>= :: ConstInt -> ConstInt -> Bool
>= :: ConstInt -> ConstInt -> Bool
$cmax :: ConstInt -> ConstInt -> ConstInt
max :: ConstInt -> ConstInt -> ConstInt
$cmin :: ConstInt -> ConstInt -> ConstInt
min :: ConstInt -> ConstInt -> ConstInt
Ord )
data ConstStr
= ConstStr
{
ConstStr -> String
constStrValue :: String,
ConstStr -> Location
constStrLocation :: Location
}
deriving ( Int -> ConstStr -> ShowS
[ConstStr] -> ShowS
ConstStr -> String
(Int -> ConstStr -> ShowS)
-> (ConstStr -> String) -> ([ConstStr] -> ShowS) -> Show ConstStr
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ConstStr -> ShowS
showsPrec :: Int -> ConstStr -> ShowS
$cshow :: ConstStr -> String
show :: ConstStr -> String
$cshowList :: [ConstStr] -> ShowS
showList :: [ConstStr] -> ShowS
Show, ConstStr -> ConstStr -> Bool
(ConstStr -> ConstStr -> Bool)
-> (ConstStr -> ConstStr -> Bool) -> Eq ConstStr
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ConstStr -> ConstStr -> Bool
== :: ConstStr -> ConstStr -> Bool
$c/= :: ConstStr -> ConstStr -> Bool
/= :: ConstStr -> ConstStr -> Bool
Eq, (forall x. ConstStr -> Rep ConstStr x)
-> (forall x. Rep ConstStr x -> ConstStr) -> Generic ConstStr
forall x. Rep ConstStr x -> ConstStr
forall x. ConstStr -> Rep ConstStr x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. ConstStr -> Rep ConstStr x
from :: forall x. ConstStr -> Rep ConstStr x
$cto :: forall x. Rep ConstStr x -> ConstStr
to :: forall x. Rep ConstStr x -> ConstStr
Generic, [ConstStr] -> Value
[ConstStr] -> Encoding
ConstStr -> Bool
ConstStr -> Value
ConstStr -> Encoding
(ConstStr -> Value)
-> (ConstStr -> Encoding)
-> ([ConstStr] -> Value)
-> ([ConstStr] -> Encoding)
-> (ConstStr -> Bool)
-> ToJSON ConstStr
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> (a -> Bool)
-> ToJSON a
$ctoJSON :: ConstStr -> Value
toJSON :: ConstStr -> Value
$ctoEncoding :: ConstStr -> Encoding
toEncoding :: ConstStr -> Encoding
$ctoJSONList :: [ConstStr] -> Value
toJSONList :: [ConstStr] -> Value
$ctoEncodingList :: [ConstStr] -> Encoding
toEncodingList :: [ConstStr] -> Encoding
$comitField :: ConstStr -> Bool
omitField :: ConstStr -> Bool
ToJSON, Maybe ConstStr
Value -> Parser [ConstStr]
Value -> Parser ConstStr
(Value -> Parser ConstStr)
-> (Value -> Parser [ConstStr])
-> Maybe ConstStr
-> FromJSON ConstStr
forall a.
(Value -> Parser a)
-> (Value -> Parser [a]) -> Maybe a -> FromJSON a
$cparseJSON :: Value -> Parser ConstStr
parseJSON :: Value -> Parser ConstStr
$cparseJSONList :: Value -> Parser [ConstStr]
parseJSONList :: Value -> Parser [ConstStr]
$comittedField :: Maybe ConstStr
omittedField :: Maybe ConstStr
FromJSON, Eq ConstStr
Eq ConstStr =>
(ConstStr -> ConstStr -> Ordering)
-> (ConstStr -> ConstStr -> Bool)
-> (ConstStr -> ConstStr -> Bool)
-> (ConstStr -> ConstStr -> Bool)
-> (ConstStr -> ConstStr -> Bool)
-> (ConstStr -> ConstStr -> ConstStr)
-> (ConstStr -> ConstStr -> ConstStr)
-> Ord ConstStr
ConstStr -> ConstStr -> Bool
ConstStr -> ConstStr -> Ordering
ConstStr -> ConstStr -> ConstStr
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 :: ConstStr -> ConstStr -> Ordering
compare :: ConstStr -> ConstStr -> Ordering
$c< :: ConstStr -> ConstStr -> Bool
< :: ConstStr -> ConstStr -> Bool
$c<= :: ConstStr -> ConstStr -> Bool
<= :: ConstStr -> ConstStr -> Bool
$c> :: ConstStr -> ConstStr -> Bool
> :: ConstStr -> ConstStr -> Bool
$c>= :: ConstStr -> ConstStr -> Bool
>= :: ConstStr -> ConstStr -> Bool
$cmax :: ConstStr -> ConstStr -> ConstStr
max :: ConstStr -> ConstStr -> ConstStr
$cmin :: ConstStr -> ConstStr -> ConstStr
min :: ConstStr -> ConstStr -> ConstStr
Ord )
data ConstNull
= ConstNull
{
ConstNull -> Location
constNullLocation :: Location
}
deriving ( Int -> ConstNull -> ShowS
[ConstNull] -> ShowS
ConstNull -> String
(Int -> ConstNull -> ShowS)
-> (ConstNull -> String)
-> ([ConstNull] -> ShowS)
-> Show ConstNull
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ConstNull -> ShowS
showsPrec :: Int -> ConstNull -> ShowS
$cshow :: ConstNull -> String
show :: ConstNull -> String
$cshowList :: [ConstNull] -> ShowS
showList :: [ConstNull] -> ShowS
Show, ConstNull -> ConstNull -> Bool
(ConstNull -> ConstNull -> Bool)
-> (ConstNull -> ConstNull -> Bool) -> Eq ConstNull
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ConstNull -> ConstNull -> Bool
== :: ConstNull -> ConstNull -> Bool
$c/= :: ConstNull -> ConstNull -> Bool
/= :: ConstNull -> ConstNull -> Bool
Eq, (forall x. ConstNull -> Rep ConstNull x)
-> (forall x. Rep ConstNull x -> ConstNull) -> Generic ConstNull
forall x. Rep ConstNull x -> ConstNull
forall x. ConstNull -> Rep ConstNull x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x. ConstNull -> Rep ConstNull x
from :: forall x. ConstNull -> Rep ConstNull x
$cto :: forall x. Rep ConstNull x -> ConstNull
to :: forall x. Rep ConstNull x -> ConstNull
Generic, [ConstNull] -> Value
[ConstNull] -> Encoding
ConstNull -> Bool
ConstNull -> Value
ConstNull -> Encoding
(ConstNull -> Value)
-> (ConstNull -> Encoding)
-> ([ConstNull] -> Value)
-> ([ConstNull] -> Encoding)
-> (ConstNull -> Bool)
-> ToJSON ConstNull
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> (a -> Bool)
-> ToJSON a
$ctoJSON :: ConstNull -> Value
toJSON :: ConstNull -> Value
$ctoEncoding :: ConstNull -> Encoding
toEncoding :: ConstNull -> Encoding
$ctoJSONList :: [ConstNull] -> Value
toJSONList :: [ConstNull] -> Value
$ctoEncodingList :: [ConstNull] -> Encoding
toEncodingList :: [ConstNull] -> Encoding
$comitField :: ConstNull -> Bool
omitField :: ConstNull -> Bool
ToJSON, Maybe ConstNull
Value -> Parser [ConstNull]
Value -> Parser ConstNull
(Value -> Parser ConstNull)
-> (Value -> Parser [ConstNull])
-> Maybe ConstNull
-> FromJSON ConstNull
forall a.
(Value -> Parser a)
-> (Value -> Parser [a]) -> Maybe a -> FromJSON a
$cparseJSON :: Value -> Parser ConstNull
parseJSON :: Value -> Parser ConstNull
$cparseJSONList :: Value -> Parser [ConstNull]
parseJSONList :: Value -> Parser [ConstNull]
$comittedField :: Maybe ConstNull
omittedField :: Maybe ConstNull
FromJSON, Eq ConstNull
Eq ConstNull =>
(ConstNull -> ConstNull -> Ordering)
-> (ConstNull -> ConstNull -> Bool)
-> (ConstNull -> ConstNull -> Bool)
-> (ConstNull -> ConstNull -> Bool)
-> (ConstNull -> ConstNull -> Bool)
-> (ConstNull -> ConstNull -> ConstNull)
-> (ConstNull -> ConstNull -> ConstNull)
-> Ord ConstNull
ConstNull -> ConstNull -> Bool
ConstNull -> ConstNull -> Ordering
ConstNull -> ConstNull -> ConstNull
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 :: ConstNull -> ConstNull -> Ordering
compare :: ConstNull -> ConstNull -> Ordering
$c< :: ConstNull -> ConstNull -> Bool
< :: ConstNull -> ConstNull -> Bool
$c<= :: ConstNull -> ConstNull -> Bool
<= :: ConstNull -> ConstNull -> Bool
$c> :: ConstNull -> ConstNull -> Bool
> :: ConstNull -> ConstNull -> Bool
$c>= :: ConstNull -> ConstNull -> Bool
>= :: ConstNull -> ConstNull -> Bool
$cmax :: ConstNull -> ConstNull -> ConstNull
max :: ConstNull -> ConstNull -> ConstNull
$cmin :: ConstNull -> ConstNull -> ConstNull
min :: ConstNull -> ConstNull -> ConstNull
Ord )