module UHC.Light.Compiler.EHC.InitialSetup ( initialHSSem , initialEHSem , initialCore2GrSem , initialHSSemMod ) where import qualified Data.Map as Map import UHC.Light.Compiler.EHC.Common import qualified UHC.Light.Compiler.HS.MainAG as HSSem import qualified UHC.Light.Compiler.EH.MainAG as EHSem import qualified UHC.Light.Compiler.Core.ToGrin as Core2GrSem import UHC.Light.Compiler.LamInfo import qualified UHC.Light.Compiler.Gam.ClGam as Pr (initClGam) import qualified UHC.Light.Compiler.HS.ModImpExp as HSSemMod import UHC.Light.Compiler.CodeGen.ImportUsedModules import UHC.Light.Compiler.Pred.ToCHR (initScopedPredStore) {-# LINE 51 "src/ehc/EHC/InitialSetup.chs" #-} initialHSSem :: EHCOpts -> HSSem.Inh_AGItf initialHSSem opts = HSSem.Inh_AGItf { HSSem.opts_Inh_AGItf = opts , HSSem.idGam_Inh_AGItf = HSSem.tyGam2IdDefOccGam initTyGam `gamUnion` HSSem.kiGam2IdDefOccGam initKiGam `gamUnion` HSSem.clGam2IdDefOccGam Pr.initClGam , HSSem.gUniq_Inh_AGItf = uidStart , HSSem.isTopMod_Inh_AGItf = False , HSSem.moduleNm_Inh_AGItf = hsnUnknown , HSSem.modInScope_Inh_AGItf = Map.empty , HSSem.modEntToOrig_Inh_AGItf = Map.empty , HSSem.fixityGam_Inh_AGItf = initFixityGam , HSSem.topInstanceNmL_Inh_AGItf = [] } {-# LINE 73 "src/ehc/EHC/InitialSetup.chs" #-} initialEHSem :: EHCOpts -> FPath -> EHSem.Inh_AGItf initialEHSem opts fp = EHSem.Inh_AGItf { EHSem.moduleNm_Inh_AGItf = mkHNm (fpathBase fp) , EHSem.gUniq_Inh_AGItf = uidStart , EHSem.opts_Inh_AGItf = opts , EHSem.isMainMod_Inh_AGItf = False , EHSem.idQualGam_Inh_AGItf = emptyGam , EHSem.valGam_Inh_AGItf = emptyGam , EHSem.dataGam_Inh_AGItf = emptyGam , EHSem.tyGam_Inh_AGItf = initTyGam , EHSem.tyKiGam_Inh_AGItf = initTyKiGam , EHSem.polGam_Inh_AGItf = initPolGam , EHSem.kiGam_Inh_AGItf = initKiGam , EHSem.clGam_Inh_AGItf = Pr.initClGam , EHSem.clDfGam_Inh_AGItf = emptyGam , EHSem.chrStore_Inh_AGItf = initScopedPredStore } {-# LINE 98 "src/ehc/EHC/InitialSetup.chs" #-} initialCore2GrSem :: EHCOpts -> Core2GrSem.Inh_CodeAGItf initialCore2GrSem opts = Core2GrSem.Inh_CodeAGItf { Core2GrSem.gUniq_Inh_CodeAGItf = uidStart , Core2GrSem.dataGam_Inh_CodeAGItf = emptyGam , Core2GrSem.opts_Inh_CodeAGItf = opts , Core2GrSem.lamMp_Inh_CodeAGItf = initLamMp , Core2GrSem.importUsedModules_Inh_CodeAGItf = emptyImportUsedModules } {-# LINE 112 "src/ehc/EHC/InitialSetup.chs" #-} initialHSSemMod :: EHCOpts -> HSSemMod.Inh_AGItf initialHSSemMod opts = HSSemMod.Inh_AGItf { HSSemMod.gUniq_Inh_AGItf = uidStart , HSSemMod.moduleNm_Inh_AGItf = hsnUnknown , HSSemMod.opts_Inh_AGItf = opts }