{-# LANGUAGE EmptyDataDecls, FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, IncoherentInstances, MultiParamTypeClasses, OverlappingInstances, TemplateHaskell, TypeFamilies, TypeSynonymInstances #-} module OGDF.NodeElement.Implementation where import Data.Monoid import Data.Word import Data.Int import Foreign.C import Foreign.Ptr import Language.Haskell.TH import Language.Haskell.TH.Syntax import System.IO.Unsafe import FFICXX.Runtime.Cast import FFICXX.Runtime.CodeGen.Cxx import FFICXX.Runtime.TH import OGDF.NodeElement.RawType import OGDF.NodeElement.FFI import OGDF.NodeElement.Interface import OGDF.NodeElement.Cast import OGDF.NodeElement.RawType import OGDF.NodeElement.Cast import OGDF.NodeElement.Interface import STD.Deletable.RawType import STD.Deletable.Cast import STD.Deletable.Interface instance () => INodeElement (NodeElement) where instance () => IDeletable (NodeElement) where delete :: NodeElement -> IO () delete = (Ptr RawNodeElement -> IO ()) -> NodeElement -> IO () forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawNodeElement -> IO () c_nodeelement_delete nodeElement_index :: () => NodeElement -> IO CInt nodeElement_index :: NodeElement -> IO CInt nodeElement_index = (Ptr RawNodeElement -> IO CInt) -> NodeElement -> IO CInt forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawNodeElement -> IO CInt c_nodeelement_nodeelement_index nodeElement_indeg :: () => NodeElement -> IO CInt nodeElement_indeg :: NodeElement -> IO CInt nodeElement_indeg = (Ptr RawNodeElement -> IO CInt) -> NodeElement -> IO CInt forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawNodeElement -> IO CInt c_nodeelement_nodeelement_indeg nodeElement_outdeg :: () => NodeElement -> IO CInt nodeElement_outdeg :: NodeElement -> IO CInt nodeElement_outdeg = (Ptr RawNodeElement -> IO CInt) -> NodeElement -> IO CInt forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawNodeElement -> IO CInt c_nodeelement_nodeelement_outdeg nodeElement_degree :: () => NodeElement -> IO CInt nodeElement_degree :: NodeElement -> IO CInt nodeElement_degree = (Ptr RawNodeElement -> IO CInt) -> NodeElement -> IO CInt forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawNodeElement -> IO CInt c_nodeelement_nodeelement_degree nodeElement_succ :: () => NodeElement -> IO NodeElement nodeElement_succ :: NodeElement -> IO NodeElement nodeElement_succ = (Ptr RawNodeElement -> IO (Ptr RawNodeElement)) -> NodeElement -> IO NodeElement forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawNodeElement -> IO (Ptr RawNodeElement) c_nodeelement_nodeelement_succ nodeElement_pred :: () => NodeElement -> IO NodeElement nodeElement_pred :: NodeElement -> IO NodeElement nodeElement_pred = (Ptr RawNodeElement -> IO (Ptr RawNodeElement)) -> NodeElement -> IO NodeElement forall a ca y cy. (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform0 Ptr RawNodeElement -> IO (Ptr RawNodeElement) c_nodeelement_nodeelement_pred