aeson-match-qq-1.4.0: Declarative JSON matchers.
Safe HaskellNone
LanguageHaskell2010

Aeson.Match.QQ.Internal.Value

Documentation

data Value ext Source #

Instances

Instances details
ext ~ Exp => Lift (Value ext :: Type) Source #

Convert `Value Exp` to `Value Aeson.Value`. This uses a roundabout way to get Value from toEncoding to avoid calling toJSON which may be undefined for some datatypes.

Instance details

Defined in Aeson.Match.QQ.Internal.Value

Methods

lift :: Value ext -> Q Exp #

liftTyped :: Value ext -> Q (TExp (Value ext)) #

Eq ext => Eq (Value ext) Source # 
Instance details

Defined in Aeson.Match.QQ.Internal.Value

Methods

(==) :: Value ext -> Value ext -> Bool #

(/=) :: Value ext -> Value ext -> Bool #

Show ext => Show (Value ext) Source # 
Instance details

Defined in Aeson.Match.QQ.Internal.Value

Methods

showsPrec :: Int -> Value ext -> ShowS #

show :: Value ext -> String #

showList :: [Value ext] -> ShowS #

ToJSON ext => ToJSON (Value ext) Source # 
Instance details

Defined in Aeson.Match.QQ.Internal.Value

Methods

toJSON :: Value ext -> Value0 #

toEncoding :: Value ext -> Encoding #

toJSONList :: [Value ext] -> Value0 #

toEncodingList :: [Value ext] -> Encoding #

data Box a Source #

Constructors

Box 

Fields

Instances

Instances details
Eq a => Eq (Box a) Source # 
Instance details

Defined in Aeson.Match.QQ.Internal.Value

Methods

(==) :: Box a -> Box a -> Bool #

(/=) :: Box a -> Box a -> Bool #

Show a => Show (Box a) Source # 
Instance details

Defined in Aeson.Match.QQ.Internal.Value

Methods

showsPrec :: Int -> Box a -> ShowS #

show :: Box a -> String #

showList :: [Box a] -> ShowS #

ToJSON a => ToJSON (Box a) Source # 
Instance details

Defined in Aeson.Match.QQ.Internal.Value

Methods

toJSON :: Box a -> Value #

toEncoding :: Box a -> Encoding #

toJSONList :: [Box a] -> Value #

toEncodingList :: [Box a] -> Encoding #

type Array ext = Box (Vector (Value ext)) Source #

type Object ext = Box (HashMap Text (Value ext)) Source #

data TypeSig Source #

Constructors

TypeSig 

Fields

Instances

Instances details
Eq TypeSig Source # 
Instance details

Defined in Aeson.Match.QQ.Internal.Value

Methods

(==) :: TypeSig -> TypeSig -> Bool #

(/=) :: TypeSig -> TypeSig -> Bool #

Show TypeSig Source # 
Instance details

Defined in Aeson.Match.QQ.Internal.Value

ToJSON TypeSig Source # 
Instance details

Defined in Aeson.Match.QQ.Internal.Value

Lift TypeSig Source # 
Instance details

Defined in Aeson.Match.QQ.Internal.Value

Methods

lift :: TypeSig -> Q Exp #

liftTyped :: TypeSig -> Q (TExp TypeSig) #

data Type Source #

Constructors

BoolT 
NumberT 
StringT 
ArrayT 
ObjectT 

Instances

Instances details
Eq Type Source # 
Instance details

Defined in Aeson.Match.QQ.Internal.Value

Methods

(==) :: Type -> Type -> Bool #

(/=) :: Type -> Type -> Bool #

Show Type Source # 
Instance details

Defined in Aeson.Match.QQ.Internal.Value

Methods

showsPrec :: Int -> Type -> ShowS #

show :: Type -> String #

showList :: [Type] -> ShowS #

ToJSON Type Source # 
Instance details

Defined in Aeson.Match.QQ.Internal.Value

Lift Type Source # 
Instance details

Defined in Aeson.Match.QQ.Internal.Value

Methods

lift :: Type -> Q Exp #

liftTyped :: Type -> Q (TExp Type) #

data Nullable Source #

Constructors

Nullable 
NonNullable 

Instances

Instances details
Eq Nullable Source # 
Instance details

Defined in Aeson.Match.QQ.Internal.Value

Show Nullable Source # 
Instance details

Defined in Aeson.Match.QQ.Internal.Value

ToJSON Nullable Source # 
Instance details

Defined in Aeson.Match.QQ.Internal.Value

Lift Nullable Source # 
Instance details

Defined in Aeson.Match.QQ.Internal.Value