calamity-0.1.17.1: A library for writing discord bots in haskell
Safe HaskellNone
LanguageHaskell2010

Calamity.Internal.AesonThings

Synopsis

Documentation

newtype WithSpecialCases (rules :: [Type]) a Source #

Constructors

WithSpecialCases a 

Instances

Instances details
(RunSpecialCase rules, Typeable a, Generic a, GFromJSON Zero (Rep a)) => FromJSON (WithSpecialCases rules a) Source # 
Instance details

Defined in Calamity.Internal.AesonThings

Methods

parseJSON :: Value -> Parser (WithSpecialCases rules a)

parseJSONList :: Value -> Parser [WithSpecialCases rules a]

data IfNoneThen label def Source #

type ExtractFieldFrom label field = ExtractFieldInto label field label Source #

data ExtractFieldInto label field target Source #

data ExtractFields label fields Source #

data ExtractArrayField label field Source #

data DefaultToEmptyArray Source #

Instances

Instances details
Reifies DefaultToEmptyArray Value Source # 
Instance details

Defined in Calamity.Internal.AesonThings

Methods

reflect :: proxy DefaultToEmptyArray -> Value

data DefaultToZero Source #

Instances

Instances details
Reifies DefaultToZero Value Source # 
Instance details

Defined in Calamity.Internal.AesonThings

Methods

reflect :: proxy DefaultToZero -> Value

data DefaultToFalse Source #

Instances

Instances details
Reifies DefaultToFalse Value Source # 
Instance details

Defined in Calamity.Internal.AesonThings

Methods

reflect :: proxy DefaultToFalse -> Value

newtype CalamityJSON a Source #

Constructors

CalamityJSON 

Fields

Instances

Instances details
(Typeable a, Generic a, GFromJSON Zero (Rep a)) => FromJSON (CalamityJSON a) Source # 
Instance details

Defined in Calamity.Internal.AesonThings

Methods

parseJSON :: Value -> Parser (CalamityJSON a)

parseJSONList :: Value -> Parser [CalamityJSON a]

(Typeable a, Generic a, GToJSON Zero (Rep a), GToEncoding Zero (Rep a)) => ToJSON (CalamityJSON a) Source # 
Instance details

Defined in Calamity.Internal.AesonThings

Methods

toJSON :: CalamityJSON a -> Value

toEncoding :: CalamityJSON a -> Encoding

toJSONList :: [CalamityJSON a] -> Value

toEncodingList :: [CalamityJSON a] -> Encoding

newtype CalamityJSONKeepNothing a Source #

version that keeps Nothing fields

Instances

Instances details
(Typeable a, Generic a, GFromJSON Zero (Rep a)) => FromJSON (CalamityJSONKeepNothing a) Source # 
Instance details

Defined in Calamity.Internal.AesonThings

Methods

parseJSON :: Value -> Parser (CalamityJSONKeepNothing a)

parseJSONList :: Value -> Parser [CalamityJSONKeepNothing a]

(Typeable a, Generic a, GToJSON Zero (Rep a), GToEncoding Zero (Rep a)) => ToJSON (CalamityJSONKeepNothing a) Source # 
Instance details

Defined in Calamity.Internal.AesonThings

jsonOptions :: Options Source #