Module
Data.Argonaut.Decode.Generic.Rep
- Package
- purescript-argonaut-generic
- Repository
- purescript-contrib/purescript-argonaut-generic
#DecodeRep Source
class DecodeRep r where
Members
Instances
DecodeRep NoConstructors
(DecodeRep a, DecodeRep b) => DecodeRep (Sum a b)
(IsSymbol name, DecodeRepArgs a) => DecodeRep (Constructor name a)
#DecodeRepArgs Source
class DecodeRepArgs r where
Members
Instances
DecodeRepArgs NoArguments
(DecodeRepArgs a, DecodeRepArgs b) => DecodeRepArgs (Product a b)
(DecodeJson a) => DecodeRepArgs (Argument a)
(DecodeRepFields fields) => DecodeRepArgs (Rec fields)
#DecodeRepFields Source
class DecodeRepFields r where
Members
decodeRepFields :: StrMap Json -> Either String r
Instances
(DecodeRepFields a, DecodeRepFields b) => DecodeRepFields (Product a b)
(IsSymbol field, DecodeJson a) => DecodeRepFields (Field field a)
#decodeLiteralSum Source
decodeLiteralSum :: forall r a. Generic a r => DecodeLiteral r => Json -> Either String a
A function for decoding Generic
sum types using string literal representations
#decodeLiteralSumWithTransform Source
decodeLiteralSumWithTransform :: forall r a. Generic a r => DecodeLiteral r => (String -> String) -> Json -> Either String a
A function for decoding Generic
sum types using string literal representations
Takes a function for transforming the tag name in encoding
#DecodeLiteral Source
class DecodeLiteral r where
Members
Instances
(DecodeLiteral a, DecodeLiteral b) => DecodeLiteral (Sum a b)
(IsSymbol name) => DecodeLiteral (Constructor name (NoArguments))