1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
{-# LANGUAGE DeriveGeneric, TemplateHaskell #-}
module Generics (main) where
import GHC.Generics
import Test.Inspection
data Record = MkRecord
{ fieldA :: Int
, fieldB :: Bool
} deriving Generic
myRecord :: Record
myRecord = MkRecord 1 True
genericRep :: Rep Record x
genericRep = from myRecord
roundTripRep :: Record
roundTripRep = to $ from myRecord
main :: IO ()
main = return ()
-- the check
inspect $ hasNoGenerics 'roundTripRep
inspect $ (hasNoGenerics 'genericRep) { expectFail = True }
|