{-# LINE 1 "src/IGraph/Internal/Isomorphism.chs" #-}
{-# LANGUAGE ForeignFunctionInterface #-}
module IGraph.Internal.Isomorphism where
import qualified Foreign.C.Types as C2HSImp
import qualified Foreign.Ptr as C2HSImp
import Foreign
import Foreign.C.Types
import IGraph.Internal.Graph
{-# LINE 7 "src/IGraph/Internal/Isomorphism.chs" #-}
import IGraph.Internal.Data
{-# LINE 8 "src/IGraph/Internal/Isomorphism.chs" #-}
igraphGetSubisomorphismsVf2 :: (IGraph) -> (IGraph) -> (Ptr ()) -> (Ptr ()) -> (Ptr ()) -> (Ptr ()) -> (VectorPtr) -> (FunPtr (Ptr IGraph -> Ptr IGraph -> CInt -> CInt -> Ptr () -> IO CInt)) -> (FunPtr (Ptr IGraph -> Ptr IGraph -> CInt -> CInt -> Ptr () -> IO CInt)) -> (Ptr ()) -> IO ((Int))
igraphGetSubisomorphismsVf2 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 =
(withIGraph) a1 $ \a1' ->
(withIGraph) a2 $ \a2' ->
let {a3' = id a3} in
let {a4' = id a4} in
let {a5' = id a5} in
let {a6' = id a6} in
(withVectorPtr) a7 $ \a7' ->
let {a8' = id a8} in
let {a9' = id a9} in
let {a10' = id a10} in
igraphGetSubisomorphismsVf2'_ a1' a2' a3' a4' a5' a6' a7' a8' a9' a10' >>= \res ->
let {res' = fromIntegral res} in
return (res')
{-# LINE 16 "src/IGraph/Internal/Isomorphism.chs" #-}
igraphIsomorphic :: (IGraph) -> (IGraph) -> (Ptr CInt) -> IO ((Int))
igraphIsomorphic a1 a2 a3 =
(withIGraph) a1 $ \a1' ->
(withIGraph) a2 $ \a2' ->
let {a3' = id a3} in
igraphIsomorphic'_ a1' a2' a3' >>= \res ->
let {res' = fromIntegral res} in
return (res')
{-# LINE 18 "src/IGraph/Internal/Isomorphism.chs" #-}
foreign import ccall safe "IGraph/Internal/Isomorphism.chs.h igraph_get_subisomorphisms_vf2"
igraphGetSubisomorphismsVf2'_ :: ((C2HSImp.Ptr (IGraph)) -> ((C2HSImp.Ptr (IGraph)) -> ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr ()) -> ((C2HSImp.Ptr (VectorPtr)) -> ((C2HSImp.FunPtr ((C2HSImp.Ptr (IGraph)) -> ((C2HSImp.Ptr (IGraph)) -> (C2HSImp.CInt -> (C2HSImp.CInt -> ((C2HSImp.Ptr ()) -> (IO C2HSImp.CInt))))))) -> ((C2HSImp.FunPtr ((C2HSImp.Ptr (IGraph)) -> ((C2HSImp.Ptr (IGraph)) -> (C2HSImp.CInt -> (C2HSImp.CInt -> ((C2HSImp.Ptr ()) -> (IO C2HSImp.CInt))))))) -> ((C2HSImp.Ptr ()) -> (IO C2HSImp.CInt)))))))))))
foreign import ccall safe "IGraph/Internal/Isomorphism.chs.h igraph_isomorphic"
igraphIsomorphic'_ :: ((C2HSImp.Ptr (IGraph)) -> ((C2HSImp.Ptr (IGraph)) -> ((C2HSImp.Ptr C2HSImp.CInt) -> (IO C2HSImp.CInt))))