156 lines
3.9 KiB
Haskell
156 lines
3.9 KiB
Haskell
{-# LANGUAGE CApiFFI #-}
|
|
{-# LANGUAGE NoImplicitPrelude #-}
|
|
{-# LANGUAGE TemplateHaskell #-}
|
|
{-# OPTIONS_HADDOCK prune #-}
|
|
|
|
module GarnetRs.Safe where
|
|
|
|
import qualified Foreign as F
|
|
import qualified Foreign.C as FC
|
|
import qualified GHC.Int
|
|
import qualified GHC.Ptr as Ptr
|
|
import qualified HsBindgen.Runtime.Internal.CAPI
|
|
import qualified HsBindgen.Runtime.Internal.HasFFIType
|
|
import qualified HsBindgen.Runtime.LibC
|
|
import qualified HsBindgen.Runtime.PtrConst
|
|
import Data.Void (Void)
|
|
import GarnetRs
|
|
import Prelude (IO)
|
|
|
|
$(HsBindgen.Runtime.Internal.CAPI.addCSource (HsBindgen.Runtime.Internal.CAPI.unlines
|
|
[ "#include <garnet_rs.h>"
|
|
, "void hs_bindgen_433ea2a26af4e593 ("
|
|
, " char const *arg1"
|
|
, ")"
|
|
, "{"
|
|
, " hello(arg1);"
|
|
, "}"
|
|
, "void hs_bindgen_51157946af5519c9 ("
|
|
, " struct T *arg1"
|
|
, ")"
|
|
, "{"
|
|
, " hello_struct(*arg1);"
|
|
, "}"
|
|
, "void hs_bindgen_7de06f1fd827ca60 ("
|
|
, " struct Shape *arg1"
|
|
, ")"
|
|
, "{"
|
|
, " hello_shape(*arg1);"
|
|
, "}"
|
|
, "int64_t hs_bindgen_1c0c71fa74c428a9 ("
|
|
, " int64_t arg1,"
|
|
, " int64_t arg2"
|
|
, ")"
|
|
, "{"
|
|
, " return add(arg1, arg2);"
|
|
, "}"
|
|
]))
|
|
|
|
-- __unique:__ @com_garnet_GarnetRs_Safe_hello@
|
|
foreign import ccall safe "hs_bindgen_433ea2a26af4e593" hs_bindgen_433ea2a26af4e593_base ::
|
|
Ptr.Ptr Void
|
|
-> IO ()
|
|
|
|
-- __unique:__ @com_garnet_GarnetRs_Safe_hello@
|
|
hs_bindgen_433ea2a26af4e593 ::
|
|
HsBindgen.Runtime.PtrConst.PtrConst FC.CChar
|
|
-> IO ()
|
|
hs_bindgen_433ea2a26af4e593 =
|
|
HsBindgen.Runtime.Internal.HasFFIType.fromFFIType hs_bindgen_433ea2a26af4e593_base
|
|
|
|
{-| __C declaration:__ @hello@
|
|
|
|
__defined at:__ @garnet_rs.h 32:6@
|
|
|
|
__exported by:__ @garnet_rs.h@
|
|
-}
|
|
hello ::
|
|
HsBindgen.Runtime.PtrConst.PtrConst FC.CChar
|
|
-- ^ __C declaration:__ @c@
|
|
-> IO ()
|
|
hello = hs_bindgen_433ea2a26af4e593
|
|
|
|
-- __unique:__ @com_garnet_GarnetRs_Safe_hello_struct@
|
|
foreign import ccall safe "hs_bindgen_51157946af5519c9" hs_bindgen_51157946af5519c9_base ::
|
|
Ptr.Ptr Void
|
|
-> IO ()
|
|
|
|
-- __unique:__ @com_garnet_GarnetRs_Safe_hello_struct@
|
|
hs_bindgen_51157946af5519c9 ::
|
|
Ptr.Ptr T
|
|
-> IO ()
|
|
hs_bindgen_51157946af5519c9 =
|
|
HsBindgen.Runtime.Internal.HasFFIType.fromFFIType hs_bindgen_51157946af5519c9_base
|
|
|
|
{-| __C declaration:__ @hello_struct@
|
|
|
|
__defined at:__ @garnet_rs.h 34:6@
|
|
|
|
__exported by:__ @garnet_rs.h@
|
|
-}
|
|
hello_struct ::
|
|
T
|
|
-- ^ __C declaration:__ @t@
|
|
-> IO ()
|
|
hello_struct =
|
|
\t0 ->
|
|
F.with t0 (\t1 -> hs_bindgen_51157946af5519c9 t1)
|
|
|
|
-- __unique:__ @com_garnet_GarnetRs_Safe_hello_shape@
|
|
foreign import ccall safe "hs_bindgen_7de06f1fd827ca60" hs_bindgen_7de06f1fd827ca60_base ::
|
|
Ptr.Ptr Void
|
|
-> IO ()
|
|
|
|
-- __unique:__ @com_garnet_GarnetRs_Safe_hello_shape@
|
|
hs_bindgen_7de06f1fd827ca60 ::
|
|
Ptr.Ptr Shape
|
|
-> IO ()
|
|
hs_bindgen_7de06f1fd827ca60 =
|
|
HsBindgen.Runtime.Internal.HasFFIType.fromFFIType hs_bindgen_7de06f1fd827ca60_base
|
|
|
|
{-| __C declaration:__ @hello_shape@
|
|
|
|
__defined at:__ @garnet_rs.h 36:6@
|
|
|
|
__exported by:__ @garnet_rs.h@
|
|
-}
|
|
hello_shape ::
|
|
Shape
|
|
-- ^ __C declaration:__ @s@
|
|
-> IO ()
|
|
hello_shape =
|
|
\s0 ->
|
|
F.with s0 (\s1 -> hs_bindgen_7de06f1fd827ca60 s1)
|
|
|
|
-- __unique:__ @com_garnet_GarnetRs_Safe_add@
|
|
foreign import ccall safe "hs_bindgen_1c0c71fa74c428a9" hs_bindgen_1c0c71fa74c428a9_base ::
|
|
GHC.Int.Int64
|
|
-> GHC.Int.Int64
|
|
-> GHC.Int.Int64
|
|
|
|
-- __unique:__ @com_garnet_GarnetRs_Safe_add@
|
|
hs_bindgen_1c0c71fa74c428a9 ::
|
|
HsBindgen.Runtime.LibC.Int64
|
|
-> HsBindgen.Runtime.LibC.Int64
|
|
-> HsBindgen.Runtime.LibC.Int64
|
|
hs_bindgen_1c0c71fa74c428a9 =
|
|
HsBindgen.Runtime.Internal.HasFFIType.fromFFIType hs_bindgen_1c0c71fa74c428a9_base
|
|
|
|
{-|
|
|
|
|
Marked @__attribute((const))__@
|
|
|
|
__C declaration:__ @add@
|
|
|
|
__defined at:__ @garnet_rs.h 38:32@
|
|
|
|
__exported by:__ @garnet_rs.h@
|
|
-}
|
|
add ::
|
|
HsBindgen.Runtime.LibC.Int64
|
|
-- ^ __C declaration:__ @a@
|
|
-> HsBindgen.Runtime.LibC.Int64
|
|
-- ^ __C declaration:__ @b@
|
|
-> HsBindgen.Runtime.LibC.Int64
|
|
add = hs_bindgen_1c0c71fa74c428a9
|