-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Runtime for fficxx-generated library -- -- Runtime for fficxx-generated library @package fficxx-runtime @version 0.3 module FFICXX.Runtime.TH con :: String -> Type mkInstance :: Cxt -> Type -> [Dec] -> Dec mkTFunc :: (Name, String, String -> String, Name -> Q Type) -> ExpQ mkMember :: String -> (Name -> String -> Q Exp) -> Name -> String -> Q Dec mkNew :: String -> (Name -> String -> Q Exp) -> Name -> String -> Q Dec mkDelete :: String -> (Name -> String -> Q Exp) -> Name -> String -> Q Dec module FFICXX.Runtime.Cast class IsRawType a class Castable a b cast :: Castable a b => a -> (b -> IO r) -> IO r uncast :: Castable a b => b -> (a -> IO r) -> IO r class FPtr a where type Raw a :: * where { type family Raw a :: *; } get_fptr :: FPtr a => a -> Ptr (Raw a) cast_fptr_to_obj :: FPtr a => Ptr (Raw a) -> a class FunPtrWrappable a where type FunPtrHsType a :: * type FunPtrType a :: * data FunPtrWrapped a :: * where { type family FunPtrHsType a :: *; type family FunPtrType a :: *; data family FunPtrWrapped a :: *; } fptrWrap :: FunPtrWrappable a => FunPtrWrapped a -> IO (FunPtr (FunPtrType a)) wrap :: FunPtrWrappable a => FunPtrHsType a -> FunPtrWrapped a class IsCType a xformnull :: (Castable a ca) => (IO ca) -> IO a xform0 :: (Castable a ca, Castable y cy) => (ca -> IO cy) -> a -> IO y xform1 :: (Castable a ca, Castable x1 cx1, Castable y cy) => (ca -> cx1 -> IO cy) -> a -> x1 -> IO y xform2 :: (Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable y cy) => (ca -> cx1 -> cx2 -> IO cy) -> a -> x1 -> x2 -> IO y xform3 :: (Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable x3 cx3, Castable y cy) => (ca -> cx1 -> cx2 -> cx3 -> IO cy) -> a -> x1 -> x2 -> x3 -> IO y xform4 :: (Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable x3 cx3, Castable x4 cx4, Castable y cy) => (ca -> cx1 -> cx2 -> cx3 -> cx4 -> IO cy) -> a -> x1 -> x2 -> x3 -> x4 -> IO y xform5 :: (Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable x3 cx3, Castable x4 cx4, Castable x5 cx5, Castable y cy) => (ca -> cx1 -> cx2 -> cx3 -> cx4 -> cx5 -> IO cy) -> a -> x1 -> x2 -> x3 -> x4 -> x5 -> IO y xform6 :: (Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable x3 cx3, Castable x4 cx4, Castable x5 cx5, Castable x6 cx6, Castable y cy) => (ca -> cx1 -> cx2 -> cx3 -> cx4 -> cx5 -> cx6 -> IO cy) -> a -> x1 -> x2 -> x3 -> x4 -> x5 -> x6 -> IO y xform7 :: (Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable x3 cx3, Castable x4 cx4, Castable x5 cx5, Castable x6 cx6, Castable x7 cx7, Castable y cy) => (ca -> cx1 -> cx2 -> cx3 -> cx4 -> cx5 -> cx6 -> cx7 -> IO cy) -> a -> x1 -> x2 -> x3 -> x4 -> x5 -> x6 -> x7 -> IO y xform8 :: (Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable x3 cx3, Castable x4 cx4, Castable x5 cx5, Castable x6 cx6, Castable x7 cx7, Castable x8 cx8, Castable y cy) => (ca -> cx1 -> cx2 -> cx3 -> cx4 -> cx5 -> cx6 -> cx7 -> cx8 -> IO cy) -> a -> x1 -> x2 -> x3 -> x4 -> x5 -> x6 -> x7 -> x8 -> IO y xform9 :: (Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable x3 cx3, Castable x4 cx4, Castable x5 cx5, Castable x6 cx6, Castable x7 cx7, Castable x8 cx8, Castable x9 cx9, Castable y cy) => (ca -> cx1 -> cx2 -> cx3 -> cx4 -> cx5 -> cx6 -> cx7 -> cx8 -> cx9 -> IO cy) -> a -> x1 -> x2 -> x3 -> x4 -> x5 -> x6 -> x7 -> x8 -> x9 -> IO y xform10 :: (Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable x3 cx3, Castable x4 cx4, Castable x5 cx5, Castable x6 cx6, Castable x7 cx7, Castable x8 cx8, Castable x9 cx9, Castable x10 cx10, Castable y cy) => (ca -> cx1 -> cx2 -> cx3 -> cx4 -> cx5 -> cx6 -> cx7 -> cx8 -> cx9 -> cx10 -> IO cy) -> a -> x1 -> x2 -> x3 -> x4 -> x5 -> x6 -> x7 -> x8 -> x9 -> x10 -> IO y xform11 :: (Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable x3 cx3, Castable x4 cx4, Castable x5 cx5, Castable x6 cx6, Castable x7 cx7, Castable x8 cx8, Castable x9 cx9, Castable x10 cx10, Castable x11 cx11, Castable y cy) => (ca -> cx1 -> cx2 -> cx3 -> cx4 -> cx5 -> cx6 -> cx7 -> cx8 -> cx9 -> cx10 -> cx11 -> IO cy) -> a -> x1 -> x2 -> x3 -> x4 -> x5 -> x6 -> x7 -> x8 -> x9 -> x10 -> x11 -> IO y instance FFICXX.Runtime.Cast.IsCType Foreign.C.Types.CChar instance FFICXX.Runtime.Cast.IsCType Foreign.C.Types.CInt instance FFICXX.Runtime.Cast.IsCType Foreign.C.Types.CUInt instance FFICXX.Runtime.Cast.IsCType Foreign.C.String.CString instance FFICXX.Runtime.Cast.IsCType Foreign.C.Types.CULong instance FFICXX.Runtime.Cast.IsCType Foreign.C.Types.CLong instance FFICXX.Runtime.Cast.Castable () () instance FFICXX.Runtime.Cast.Castable Foreign.C.Types.CDouble Foreign.C.Types.CDouble instance FFICXX.Runtime.Cast.Castable Foreign.C.Types.CUInt Foreign.C.Types.CUInt instance FFICXX.Runtime.Cast.Castable Foreign.C.Types.CInt Foreign.C.Types.CInt instance FFICXX.Runtime.Cast.Castable Foreign.C.Types.CLong Foreign.C.Types.CLong instance FFICXX.Runtime.Cast.Castable Foreign.C.Types.CULong Foreign.C.Types.CULong instance FFICXX.Runtime.Cast.Castable (GHC.Ptr.Ptr Foreign.C.Types.CInt) (GHC.Ptr.Ptr Foreign.C.Types.CInt) instance FFICXX.Runtime.Cast.Castable (GHC.Ptr.Ptr Foreign.C.Types.CChar) (GHC.Ptr.Ptr Foreign.C.Types.CChar) instance FFICXX.Runtime.Cast.Castable (GHC.Ptr.Ptr Foreign.C.Types.CUInt) (GHC.Ptr.Ptr Foreign.C.Types.CUInt) instance FFICXX.Runtime.Cast.Castable (GHC.Ptr.Ptr Foreign.C.Types.CULong) (GHC.Ptr.Ptr Foreign.C.Types.CULong) instance FFICXX.Runtime.Cast.Castable (GHC.Ptr.Ptr Foreign.C.Types.CLong) (GHC.Ptr.Ptr Foreign.C.Types.CLong) instance FFICXX.Runtime.Cast.Castable (GHC.Ptr.Ptr Foreign.C.Types.CDouble) (GHC.Ptr.Ptr Foreign.C.Types.CDouble) instance FFICXX.Runtime.Cast.Castable (GHC.Ptr.Ptr Foreign.C.String.CString) (GHC.Ptr.Ptr Foreign.C.String.CString) instance FFICXX.Runtime.Cast.Castable (GHC.Ptr.Ptr ()) (GHC.Ptr.Ptr ()) instance FFICXX.Runtime.Cast.Castable GHC.Types.Int Foreign.C.Types.CInt instance FFICXX.Runtime.Cast.Castable GHC.Types.Word Foreign.C.Types.CUInt instance FFICXX.Runtime.Cast.Castable GHC.Word.Word8 Foreign.C.Types.CChar instance FFICXX.Runtime.Cast.Castable GHC.Types.Double Foreign.C.Types.CDouble instance FFICXX.Runtime.Cast.Castable [GHC.Types.Double] (GHC.Ptr.Ptr Foreign.C.Types.CDouble) instance FFICXX.Runtime.Cast.Castable [GHC.Types.Int] (GHC.Ptr.Ptr Foreign.C.Types.CInt) instance FFICXX.Runtime.Cast.Castable Data.ByteString.Internal.ByteString Foreign.C.String.CString instance FFICXX.Runtime.Cast.Castable [Data.ByteString.Internal.ByteString] (GHC.Ptr.Ptr Foreign.C.String.CString)