X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=Foreign%2FMarshal%2FError.hs;h=ccf514d70d223ee0c1a34ba945f8d9c2db111dc8;hb=41e8fba828acbae1751628af50849f5352b27873;hp=a88fc192d3df24b4c1f14477f5cebd3fa51a41af;hpb=33a64642f17054fa3b194e40b3819a1846bee24e;p=ghc-base.git diff --git a/Foreign/Marshal/Error.hs b/Foreign/Marshal/Error.hs index a88fc19..ccf514d 100644 --- a/Foreign/Marshal/Error.hs +++ b/Foreign/Marshal/Error.hs @@ -1,4 +1,5 @@ -{-# OPTIONS -fno-implicit-prelude #-} +{-# LANGUAGE CPP, NoImplicitPrelude #-} + ----------------------------------------------------------------------------- -- | -- Module : Foreign.Marshal.Error @@ -18,9 +19,9 @@ module Foreign.Marshal.Error ( throwIf, -- :: (a -> Bool) -> (a -> String) -> IO a -> IO a throwIf_, -- :: (a -> Bool) -> (a -> String) -> IO a -> IO () throwIfNeg, -- :: (Ord a, Num a) - -- => (a -> String) -> IO a -> IO a + -- => (a -> String) -> IO a -> IO a throwIfNeg_, -- :: (Ord a, Num a) - -- => (a -> String) -> IO a -> IO () + -- => (a -> String) -> IO a -> IO () throwIfNull, -- :: String -> IO (Ptr a) -> IO (Ptr a) -- Discard return value @@ -37,7 +38,8 @@ import System.IO.Error #endif import GHC.Base import GHC.Num -import GHC.IOBase +-- import GHC.IO +import GHC.IO.Exception #endif -- exported functions @@ -47,11 +49,11 @@ import GHC.IOBase -- 'True' when applied to the result returned by the 'IO' action. -- If no exception is raised, return the result of the computation. -- -throwIf :: (a -> Bool) -- ^ error condition on the result of the 'IO' action - -> (a -> String) -- ^ computes an error message from erroneous results - -- of the 'IO' action - -> IO a -- ^ the 'IO' action to be executed - -> IO a +throwIf :: (a -> Bool) -- ^ error condition on the result of the 'IO' action + -> (a -> String) -- ^ computes an error message from erroneous results + -- of the 'IO' action + -> IO a -- ^ the 'IO' action to be executed + -> IO a throwIf pred msgfct act = do res <- act