X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2FhsSyn%2FConvert.lhs;h=96b5fc183cdcb301bab94c7afb9b4e2a87a12680;hb=7c9ef2cc6a623098b34bafa8f79e2ff3e7c834b8;hp=d97bfd9d63eca57b9f69f3da8227819f0edb38c9;hpb=5f99dc3d087e6f43c0ae1c8d92a1a9c4c3960ac9;p=ghc-hetmet.git diff --git a/compiler/hsSyn/Convert.lhs b/compiler/hsSyn/Convert.lhs index d97bfd9..96b5fc1 100644 --- a/compiler/hsSyn/Convert.lhs +++ b/compiler/hsSyn/Convert.lhs @@ -13,7 +13,7 @@ This module converts Template Haskell syntax into HsSyn -- http://hackage.haskell.org/trac/ghc/wiki/Commentary/CodingStyle#Warnings -- for details -module Convert( convertToHsExpr, convertToHsDecls, +module Convert( convertToHsExpr, convertToPat, convertToHsDecls, convertToHsType, thRdrName ) where #include "HsVersions.h" @@ -58,6 +58,13 @@ convertToHsExpr loc e <+> text (show e))) Right res -> Right res +convertToPat :: SrcSpan -> TH.Pat -> Either Message (LPat RdrName) +convertToPat loc e + = case initCvt loc (cvtPat e) of + Left msg -> Left (msg $$ (ptext SLIT("When converting TH pattern") + <+> text (show e))) + Right res -> Right res + convertToHsType :: SrcSpan -> TH.Type -> Either Message (LHsType RdrName) convertToHsType loc t = initCvt loc (cvtType t)