[project @ 2004-04-02 02:39:29 by igloo]
authorigloo <unknown>
Fri, 2 Apr 2004 02:39:29 +0000 (02:39 +0000)
committerigloo <unknown>
Fri, 2 Apr 2004 02:39:29 +0000 (02:39 +0000)
Add support for foreign imports inside quasi-quotes.
Gave TH a few more uniques to play with and fixed a typo.

libraries/template-haskell/Language/Haskell/TH/Lib.hs

index e64c3fc..58e7ee0 100644 (file)
@@ -268,6 +268,11 @@ instanceD ctxt ty decs =
 sigD :: Name -> TypeQ -> DecQ
 sigD fun ty = liftM (SigD fun) $ ty
 
+forImpD :: Callconv -> Safety -> String -> Name -> TypeQ -> DecQ
+forImpD cc s str n ty
+ = do ty' <- ty
+      return $ ForeignD (ImportF cc s str n ty')
+
 cxt :: [TypeQ] -> CxtQ
 cxt = sequence
 
@@ -324,6 +329,21 @@ varStrictType :: Name -> StrictTypeQ -> VarStrictTypeQ
 varStrictType v st = do (s, t) <- st
                         return (v, s, t)
 
+-------------------------------------------------------------------------------
+--     Callconv
+
+cCall, stdCall :: Callconv
+cCall = CCall
+stdCall = StdCall
+
+-------------------------------------------------------------------------------
+--     Safety
+
+unsafe, safe, threadsafe :: Safety
+unsafe = Unsafe
+safe = Safe
+threadsafe = Threadsafe
+
 --------------------------------------------------------------
 -- Useful helper functions