module Generators where
import qualified Curry.AbstractCurry as AC (CurryProg)
import qualified Curry.ExtendedFlat.Type as EF (Prog)
import qualified Curry.Syntax as CS (Module, Interface)
import qualified Generators.GenAbstractCurry as GAC (genAbstractCurry)
import qualified Generators.GenFlatCurry as GFC (genFlatCurry, genFlatInterface)
import CompilerEnv (CompilerEnv (..))
import qualified IL (Module)
genTypedAbstractCurry :: CompilerEnv -> CS.Module -> AC.CurryProg
genTypedAbstractCurry = GAC.genAbstractCurry False
genUntypedAbstractCurry :: CompilerEnv -> CS.Module -> AC.CurryProg
genUntypedAbstractCurry = GAC.genAbstractCurry True
genFlatCurry :: CompilerEnv -> CS.Module -> IL.Module -> EF.Prog
genFlatCurry = GFC.genFlatCurry
genFlatInterface :: CompilerEnv -> CS.Interface -> CS.Module -> IL.Module -> EF.Prog
genFlatInterface = GFC.genFlatInterface