[commit: ghc] wip/T8584: nlHsTyApps: for applying a function both on type- and term-level arguments (a9e5e5d)

git at git.haskell.org git at git.haskell.org
Wed Nov 12 12:05:44 UTC 2014


Repository : ssh://git@git.haskell.org/ghc

On branch  : wip/T8584
Link       : http://ghc.haskell.org/trac/ghc/changeset/a9e5e5d1bbb620335586d857ed844f8e242162f2/ghc

>---------------------------------------------------------------

commit a9e5e5d1bbb620335586d857ed844f8e242162f2
Author: Dr. ERDI Gergo <gergo at erdi.hu>
Date:   Fri Nov 7 22:49:52 2014 +0800

    nlHsTyApps: for applying a function both on type- and term-level arguments


>---------------------------------------------------------------

a9e5e5d1bbb620335586d857ed844f8e242162f2
 compiler/hsSyn/HsUtils.lhs | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/compiler/hsSyn/HsUtils.lhs b/compiler/hsSyn/HsUtils.lhs
index 12e2388..df2406f 100644
--- a/compiler/hsSyn/HsUtils.lhs
+++ b/compiler/hsSyn/HsUtils.lhs
@@ -28,7 +28,7 @@ module HsUtils(
   mkHsOpApp, mkHsDo, mkHsComp, mkHsWrapPat, mkHsWrapPatCo,
   mkLHsPar, mkHsCmdCast,
 
-  nlHsTyApp, nlHsVar, nlHsLit, nlHsApp, nlHsApps, nlHsIntLit, nlHsVarApps,
+  nlHsTyApp, nlHsTyApps, nlHsVar, nlHsLit, nlHsApp, nlHsApps, nlHsIntLit, nlHsVarApps,
   nlHsDo, nlHsOpApp, nlHsLam, nlHsPar, nlHsIf, nlHsCase, nlList,
   mkLHsTupleExpr, mkLHsVarTuple, missingTupArg,
   toHsType, toHsKind,
@@ -177,6 +177,9 @@ mkSimpleHsAlt pat expr
 nlHsTyApp :: name -> [Type] -> LHsExpr name
 nlHsTyApp fun_id tys = noLoc (HsWrap (mkWpTyApps tys) (HsVar fun_id))
 
+nlHsTyApps :: name -> [Type] -> [LHsExpr name] -> LHsExpr name
+nlHsTyApps fun_id tys xs = foldl nlHsApp (nlHsTyApp fun_id tys) xs
+
 --------- Adding parens ---------
 mkLHsPar :: LHsExpr name -> LHsExpr name
 -- Wrap in parens if hsExprNeedsParens says it needs them



More information about the ghc-commits mailing list