ruler-0.4.0.0: src/Main2AG.cag
-------------------------------------------------------------------------
-- Main for AG, pass 2
-------------------------------------------------------------------------
%%[1 hs module (Main2AG)
%%]
%%[1 hs import (Data.Maybe, Data.Char, Data.List, qualified Data.Set as Set, qualified Data.Map as Map, UHC.Util.Pretty, UHC.Util.PrettyUtils)
%%]
%%[1 hs import (UHC.Util.Utils, Opts, Common, LaTeXFmtUtils, Expr.Utils, Ty.Utils, ARule.Utils, ViewSel.Utils)
%%]
%%[1 hs import (Config( cfgStrSel ), FmGam, RwExprGam, ECnstrGam, AbsSyn.AbsSyn2)
%%]
-------------------------------------------------------------------------
-- Inclusion of split off parts
-------------------------------------------------------------------------
%%[1 ag import ({AbsSyn/AbsSyn2AG}, {AbsSyn/CommonAG}, {FmGamAG}, {AS2/Opts}, {AS2/Pretty})
%%]
%%[1 ag import ({Expr/AbsSynAG}, {Expr/PrettyPrintAG}, {Expr/SelfAG}, {Expr/FmGamAG})
%%]
%%[1 ag import ({ARule/AbsSynAG}, {ARule/PrettyPrintAG}, {ARule/SelfAG}, {ARule/FmGamAG})
%%]
-------------------------------------------------------------------------
-- Interfacing to AST
-------------------------------------------------------------------------
%%[1 ag
WRAPPER AGItf
%%]
%%[1 hs
ppAS2 :: Opts -> FmGam Expr -> Decls -> PP_Doc
ppAS2 o g r
= pp_Syn_AGItf r2
where r1 = sem_AGItf (AGItf_AGItf r)
r2 = wrap_AGItf r1
(Inh_AGItf {opts_Inh_AGItf = o, fmGam_Inh_AGItf = g})
%%]