{-# LANGUAGE TemplateHaskell #-} module UHC.Light.Compiler.CodeGen.CEnv ( CEnv (..), emptyCEnv , cenvDataGam , cenvLamMp ) where import UHC.Light.Compiler.Base.Common import UHC.Util.Lens import UHC.Light.Compiler.Gam import UHC.Light.Compiler.Gam.DataGam import UHC.Light.Compiler.LamInfo {-# LINE 31 "src/ehc/CodeGen/CEnv.chs" #-} data CEnv = CEnv { _cenvDataGam :: DataGam -- info about datatypes -- 20151009 AD: TBD, for now non strict field , _cenvLamMp :: LamMp -- info about functions -- 20151009 AD: TBD, for now non strict field -- , _cenvOptim :: !Optim -- inter module optimisation info -- 20151009 AD: TBD, for now non strict field } deriving (Typeable) emptyCEnv = CEnv emptyGam emptyLamMp -- defaultOptim {-# LINE 57 "src/ehc/CodeGen/CEnv.chs" #-} mkLabel ''CEnv