instant-deepseq-0.2: Generic NFData instances through instant-generics

Safe HaskellSafe-Inferred
LanguageHaskell2010

Generics.Instant.Functions.DeepSeq

Contents

Synopsis

Documentation

You can use grnfDefault as your generic rnf for any Representable type as follows:

instance NFData MyType where rnf = grnfDefault

grnfDefault :: (Representable a, GNFData (Rep a)) => a -> () Source

class (Representable a, GNFData (Rep a)) => RepGNFData a Source

RepGNFData is simply a synonym for (Representable a, GNFData (Rep a)) with the convenient kind (* -> Constraint)

Instances

Internals

class GNFData a where Source

Methods

grnf :: a -> () Source

Instances

GNFData Z 
GNFData U 
NFData a => GNFData (Var a) 
NFData a => GNFData (Rec a) 
(GNFData a, GNFData b) => GNFData ((:+:) a b) 
(GNFData a, GNFData b) => GNFData ((:*:) a b) 
GNFData a => GNFData (CEq k k c p q a)