{-# INCLUDE <bindings.dsl.h> #-}
{-# INCLUDE <gsl/gsl_errno.h> #-}
{-# LINE 1 "src/Bindings/Gsl/ErrorHandling.hsc" #-}

{-# LINE 2 "src/Bindings/Gsl/ErrorHandling.hsc" #-}

{-# LINE 3 "src/Bindings/Gsl/ErrorHandling.hsc" #-}

-- | <http://www.gnu.org/software/gsl/manual/html_node/Error-Handling.html>

module Bindings.Gsl.ErrorHandling where
import Foreign.Ptr (Ptr,FunPtr,plusPtr)
import Foreign.Ptr (wordPtrToPtr,castPtrToFunPtr)
import Foreign.Storable
import Foreign.C.Types
import Foreign.C.String (CString,CStringLen,CWString,CWStringLen)
import Foreign.Marshal.Array (peekArray,pokeArray)
import Data.Int
import Data.Word

{-# LINE 8 "src/Bindings/Gsl/ErrorHandling.hsc" #-}

c'GSL_SUCCESS = 0
c'GSL_SUCCESS :: (Num a) => a

{-# LINE 10 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_FAILURE = -1
c'GSL_FAILURE :: (Num a) => a

{-# LINE 11 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_CONTINUE = -2
c'GSL_CONTINUE :: (Num a) => a

{-# LINE 12 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_EDOM = 1
c'GSL_EDOM :: (Num a) => a

{-# LINE 13 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_ERANGE = 2
c'GSL_ERANGE :: (Num a) => a

{-# LINE 14 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_EFAULT = 3
c'GSL_EFAULT :: (Num a) => a

{-# LINE 15 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_EINVAL = 4
c'GSL_EINVAL :: (Num a) => a

{-# LINE 16 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_EFAILED = 5
c'GSL_EFAILED :: (Num a) => a

{-# LINE 17 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_EFACTOR = 6
c'GSL_EFACTOR :: (Num a) => a

{-# LINE 18 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_ESANITY = 7
c'GSL_ESANITY :: (Num a) => a

{-# LINE 19 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_ENOMEM = 8
c'GSL_ENOMEM :: (Num a) => a

{-# LINE 20 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_EBADFUNC = 9
c'GSL_EBADFUNC :: (Num a) => a

{-# LINE 21 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_ERUNAWAY = 10
c'GSL_ERUNAWAY :: (Num a) => a

{-# LINE 22 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_EMAXITER = 11
c'GSL_EMAXITER :: (Num a) => a

{-# LINE 23 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_EZERODIV = 12
c'GSL_EZERODIV :: (Num a) => a

{-# LINE 24 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_EBADTOL = 13
c'GSL_EBADTOL :: (Num a) => a

{-# LINE 25 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_ETOL = 14
c'GSL_ETOL :: (Num a) => a

{-# LINE 26 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_EUNDRFLW = 15
c'GSL_EUNDRFLW :: (Num a) => a

{-# LINE 27 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_EOVRFLW = 16
c'GSL_EOVRFLW :: (Num a) => a

{-# LINE 28 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_ELOSS = 17
c'GSL_ELOSS :: (Num a) => a

{-# LINE 29 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_EROUND = 18
c'GSL_EROUND :: (Num a) => a

{-# LINE 30 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_EBADLEN = 19
c'GSL_EBADLEN :: (Num a) => a

{-# LINE 31 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_ENOTSQR = 20
c'GSL_ENOTSQR :: (Num a) => a

{-# LINE 32 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_ESING = 21
c'GSL_ESING :: (Num a) => a

{-# LINE 33 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_EDIVERGE = 22
c'GSL_EDIVERGE :: (Num a) => a

{-# LINE 34 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_EUNSUP = 23
c'GSL_EUNSUP :: (Num a) => a

{-# LINE 35 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_EUNIMPL = 24
c'GSL_EUNIMPL :: (Num a) => a

{-# LINE 36 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_ECACHE = 25
c'GSL_ECACHE :: (Num a) => a

{-# LINE 37 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_ETABLE = 26
c'GSL_ETABLE :: (Num a) => a

{-# LINE 38 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_ENOPROG = 27
c'GSL_ENOPROG :: (Num a) => a

{-# LINE 39 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_ENOPROGJ = 28
c'GSL_ENOPROGJ :: (Num a) => a

{-# LINE 40 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_ETOLF = 29
c'GSL_ETOLF :: (Num a) => a

{-# LINE 41 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_ETOLX = 30
c'GSL_ETOLX :: (Num a) => a

{-# LINE 42 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_ETOLG = 31
c'GSL_ETOLG :: (Num a) => a

{-# LINE 43 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
c'GSL_EOF = 32
c'GSL_EOF :: (Num a) => a

{-# LINE 44 "src/Bindings/Gsl/ErrorHandling.hsc" #-}

foreign import ccall "gsl_error" c'gsl_error
  :: CString -> CString -> CInt -> CInt -> CInt -> IO ()
foreign import ccall "&gsl_error" p'gsl_error
  :: FunPtr (CString -> CString -> CInt -> CInt -> CInt -> IO ())

{-# LINE 46 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
foreign import ccall "gsl_stream_printf" c'gsl_stream_printf
  :: CString -> CString -> CInt -> CInt -> CString -> IO ()
foreign import ccall "&gsl_stream_printf" p'gsl_stream_printf
  :: FunPtr (CString -> CString -> CInt -> CInt -> CString -> IO ())

{-# LINE 47 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
foreign import ccall "gsl_strerror" c'gsl_strerror
  :: CInt -> IO CString
foreign import ccall "&gsl_strerror" p'gsl_strerror
  :: FunPtr (CInt -> IO CString)

{-# LINE 48 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
type C'gsl_error_handler_t = FunPtr (CString -> CString -> CInt -> CInt -> CInt -> IO ())
foreign import ccall "wrapper" mk'gsl_error_handler_t
  :: (CString -> CString -> CInt -> CInt -> CInt -> IO ()) -> IO C'gsl_error_handler_t

{-# LINE 49 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
type C'gsl_stream_handler_t = FunPtr (CString -> CString -> CInt -> CInt -> CString -> IO ())
foreign import ccall "wrapper" mk'gsl_stream_handler_t
  :: (CString -> CString -> CInt -> CInt -> CString -> IO ()) -> IO C'gsl_stream_handler_t

{-# LINE 50 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
foreign import ccall "gsl_set_error_handler" c'gsl_set_error_handler
  :: Ptr C'gsl_error_handler_t -> IO (Ptr C'gsl_error_handler_t)
foreign import ccall "&gsl_set_error_handler" p'gsl_set_error_handler
  :: FunPtr (Ptr C'gsl_error_handler_t -> IO (Ptr C'gsl_error_handler_t))

{-# LINE 51 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
foreign import ccall "gsl_set_error_handler_off" c'gsl_set_error_handler_off
  :: IO (Ptr C'gsl_error_handler_t)
foreign import ccall "&gsl_set_error_handler_off" p'gsl_set_error_handler_off
  :: FunPtr (IO (Ptr C'gsl_error_handler_t))

{-# LINE 52 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
foreign import ccall "gsl_set_stream_handler" c'gsl_set_stream_handler
  :: Ptr C'gsl_stream_handler_t -> IO (Ptr C'gsl_stream_handler_t)
foreign import ccall "&gsl_set_stream_handler" p'gsl_set_stream_handler
  :: FunPtr (Ptr C'gsl_stream_handler_t -> IO (Ptr C'gsl_stream_handler_t))

{-# LINE 53 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
foreign import ccall "gsl_set_stream" c'gsl_set_stream
  :: Ptr CFile -> IO (Ptr CFile)
foreign import ccall "&gsl_set_stream" p'gsl_set_stream
  :: FunPtr (Ptr CFile -> IO (Ptr CFile))

{-# LINE 54 "src/Bindings/Gsl/ErrorHandling.hsc" #-}

foreign import ccall "inline_GSL_ERROR_SELECT_2" c'GSL_ERROR_SELECT_2
  :: CInt -> CInt -> CInt

{-# LINE 56 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
foreign import ccall "inline_GSL_ERROR_SELECT_3" c'GSL_ERROR_SELECT_3
  :: CInt -> CInt -> CInt -> CInt

{-# LINE 57 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
foreign import ccall "inline_GSL_ERROR_SELECT_4" c'GSL_ERROR_SELECT_4
  :: CInt -> CInt -> CInt -> CInt -> CInt

{-# LINE 58 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
foreign import ccall "inline_GSL_ERROR_SELECT_5" c'GSL_ERROR_SELECT_5
  :: CInt -> CInt -> CInt -> CInt -> CInt -> CInt

{-# LINE 59 "src/Bindings/Gsl/ErrorHandling.hsc" #-}
foreign import ccall "inline_GSL_STATUS_UPDATE" c'GSL_STATUS_UPDATE
  :: Ptr CInt -> CInt -> IO ()

{-# LINE 60 "src/Bindings/Gsl/ErrorHandling.hsc" #-}