-- GENERATED by C->Haskell Compiler, version 0.28.3 Switcheroo, 25 November 2017 (Haskell)
-- Edit the ORIGNAL .chs file instead!


{-# LINE 1 "src/IGraph/Internal/Arpack.chs" #-}
{-# LANGUAGE ForeignFunctionInterface #-}
module IGraph.Internal.Arpack where
import qualified Foreign.ForeignPtr as C2HSImp
import qualified Foreign.Ptr as C2HSImp



import Control.Monad
import Foreign
import Foreign.C.Types



newtype ArpackOpt = ArpackOpt (C2HSImp.ForeignPtr (ArpackOpt))
withArpackOpt :: ArpackOpt -> (C2HSImp.Ptr ArpackOpt -> IO b) -> IO b
withArpackOpt (ArpackOpt fptr) = C2HSImp.withForeignPtr fptr
{-# LINE 10 "src/IGraph/Internal/Arpack.chs" #-}


igraphArpackNew :: IO ((ArpackOpt))
igraphArpackNew =
  C2HSImp.mallocForeignPtrBytes 200 >>= \a1'' -> C2HSImp.withForeignPtr a1'' $ \a1' ->
  igraphArpackNew'_ a1' >>
  return (ArpackOpt a1'')

{-# LINE 13 "src/IGraph/Internal/Arpack.chs" #-}


foreign import ccall safe "IGraph/Internal/Arpack.chs.h igraph_arpack_options_init"
  igraphArpackNew'_ :: ((C2HSImp.Ptr (ArpackOpt)) -> (IO ()))