generic-override-aeson-0.4.0.0: Provides orphan instances necessary for integrating generic-override and aeson
Safe HaskellNone
LanguageHaskell2010

Data.Override.Aeson

Description

The public, stable generic-override-aeson API. Provides orphan instances for Override as well as customization for aeson's Options when using DerivingVia.

Synopsis

Documentation

newtype WithAesonOptions (a :: *) (options :: [AesonOption]) Source #

Use with DerivingVia to override Aeson Options with a type-level list of AesonOption.

Constructors

WithAesonOptions a 

Instances

Instances details
(ApplyAesonOptions options, Generic a, GToJSON Zero (Rep a), GToEncoding Zero (Rep a)) => ToJSON (WithAesonOptions a options) Source # 
Instance details

Defined in Data.Override.Aeson.Options.Internal

(ApplyAesonOptions options, Generic a, GFromJSON Zero (Rep a)) => FromJSON (WithAesonOptions a options) Source # 
Instance details

Defined in Data.Override.Aeson.Options.Internal

data AesonOption Source #

Provides a type-level subset of fields from Options

Instances

Instances details
ApplyAesonOptions ('[] :: [AesonOption]) Source # 
Instance details

Defined in Data.Override.Aeson.Options.Internal

(ApplyAesonOption option, ApplyAesonOptions options) => ApplyAesonOptions (option ': options) Source # 
Instance details

Defined in Data.Override.Aeson.Options.Internal

Methods

applyAesonOptions :: Proxy (option ': options) -> Options -> Options Source #

Orphan instances

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

Methods

toJSON :: Override a xs -> Value #

toEncoding :: Override a xs -> Encoding #

toJSONList :: [Override a xs] -> Value #

toEncodingList :: [Override a xs] -> Encoding #

(Generic (Override a xs), GFromJSON Zero (Rep (Override a xs))) => FromJSON (Override a xs) Source # 
Instance details

Methods

parseJSON :: Value -> Parser (Override a xs) #

parseJSONList :: Value -> Parser [Override a xs] #