| base-3.0.2.0: Basic libraries | Source code | Contents | Index

Foreign.Marshal.Error

Portability | portable
Stability | provisional
Maintainer | ffi@haskell.org

Description
Routines for testing return values and raising a `userError` exception in case of values indicating an error state.
Synopsis

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
throwIfNeg_ :: (Ord a, Num a) => (a -> String) -> IO a -> IO ()
throwIfNull :: String -> IO (Ptr a) -> IO (Ptr a)
void :: IO a -> IO ()

Documentation

throwIf | Source

:: (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 |
Execute an `IO` action, throwing a `userError` if the predicate yields `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) -> (a -> String) -> IO a -> IO () | Source

Like `throwIf`, but discarding the result

throwIfNeg :: (Ord a, Num a) => (a -> String) -> IO a -> IO a | Source

Guards against negative result values

throwIfNeg_ :: (Ord a, Num a) => (a -> String) -> IO a -> IO () | Source

Like `throwIfNeg`, but discarding the result

throwIfNull :: String -> IO (Ptr a) -> IO (Ptr a) | Source

Guards against null pointers

void :: IO a -> IO () | Source

Discard the return value of an `IO` action
Produced by Haddock version 0.9