adaptive-tuple-0.2.0: src/Data/AdaptiveTuple/Reps/Lazy.hs
-- | Adaptive tuples with non-strict elements. It is usually not
-- necessary to import this module unless you need to construct
-- custom reification functions.
{-# LANGUAGE TemplateHaskell
,MultiParamTypeClasses
,FlexibleInstances
,TypeSynonymInstances
,Rank2Types
,DeriveDataTypeable #-}
{-# OPTIONS_GHC -fno-warn-unused-binds -fno-warn-unused-matches #-}
module Data.AdaptiveTuple.Reps.Lazy
where
import Data.AdaptiveTuple.TH
import Data.AdaptiveTuple.AdaptiveTuple
import Data.TypeLevel.Num
import Language.Haskell.TH (Strict (..))
import Control.Applicative
$(makeDatas NotStrict 1 20)
$(deriveInstances ''ATuple1 ''D1)
$(deriveInstances ''ATuple2 ''D2)
$(deriveInstances ''ATuple3 ''D3)
$(deriveInstances ''ATuple4 ''D4)
$(deriveInstances ''ATuple5 ''D5)
$(deriveInstances ''ATuple6 ''D6)
$(deriveInstances ''ATuple7 ''D7)
$(deriveInstances ''ATuple8 ''D8)
$(deriveInstances ''ATuple9 ''D9)
$(deriveInstances ''ATuple10 ''D10)
$(deriveInstances ''ATuple11 ''D11)
$(deriveInstances ''ATuple12 ''D12)
$(deriveInstances ''ATuple13 ''D13)
$(deriveInstances ''ATuple14 ''D14)
$(deriveInstances ''ATuple15 ''D15)
$(deriveInstances ''ATuple16 ''D16)
$(deriveInstances ''ATuple17 ''D17)
$(deriveInstances ''ATuple18 ''D18)
$(deriveInstances ''ATuple19 ''D19)
$(deriveInstances ''ATuple20 ''D20)
$(makeReify 4)
$(makeReify 8)
$(makeReify 12)
$(makeReify 16)
$(makeReify 20)