2026-02-19 11:08:20 +00:00
|
|
|
{-# LANGUAGE CApiFFI #-}
|
|
|
|
|
{-# LANGUAGE NoImplicitPrelude #-}
|
|
|
|
|
{-# LANGUAGE TemplateHaskell #-}
|
|
|
|
|
{-# OPTIONS_HADDOCK prune #-}
|
|
|
|
|
|
|
|
|
|
module GarnetRs.Unsafe where
|
|
|
|
|
|
2026-02-19 11:15:38 +00:00
|
|
|
import qualified Foreign as F
|
2026-02-19 11:08:20 +00:00
|
|
|
import qualified Foreign.C as FC
|
|
|
|
|
import qualified GHC.Ptr as Ptr
|
|
|
|
|
import qualified HsBindgen.Runtime.Internal.CAPI
|
|
|
|
|
import qualified HsBindgen.Runtime.Internal.HasFFIType
|
|
|
|
|
import qualified HsBindgen.Runtime.PtrConst
|
|
|
|
|
import Data.Void (Void)
|
2026-02-19 11:11:23 +00:00
|
|
|
import GarnetRs
|
2026-02-19 11:08:20 +00:00
|
|
|
import Prelude (IO)
|
|
|
|
|
|
|
|
|
|
$(HsBindgen.Runtime.Internal.CAPI.addCSource (HsBindgen.Runtime.Internal.CAPI.unlines
|
|
|
|
|
[ "#include <garnet_rs.h>"
|
|
|
|
|
, "void hs_bindgen_2dfe97662a4d6377 ("
|
|
|
|
|
, " char const *arg1"
|
|
|
|
|
, ")"
|
|
|
|
|
, "{"
|
|
|
|
|
, " hello(arg1);"
|
|
|
|
|
, "}"
|
2026-02-19 11:11:23 +00:00
|
|
|
, "void hs_bindgen_29d823ada2bc7302 ("
|
2026-02-19 11:15:38 +00:00
|
|
|
, " struct T *arg1"
|
2026-02-19 11:11:23 +00:00
|
|
|
, ")"
|
|
|
|
|
, "{"
|
2026-02-19 11:15:38 +00:00
|
|
|
, " hello_struct(*arg1);"
|
2026-02-19 11:11:23 +00:00
|
|
|
, "}"
|
|
|
|
|
, "void hs_bindgen_b3f40a03f07eaa85 ("
|
2026-02-19 11:15:38 +00:00
|
|
|
, " struct Shape *arg1"
|
2026-02-19 11:11:23 +00:00
|
|
|
, ")"
|
|
|
|
|
, "{"
|
2026-02-19 11:15:38 +00:00
|
|
|
, " hello_shape(*arg1);"
|
2026-02-19 11:11:23 +00:00
|
|
|
, "}"
|
2026-02-19 11:08:20 +00:00
|
|
|
]))
|
|
|
|
|
|
|
|
|
|
-- __unique:__ @com_garnet_GarnetRs_Unsafe_hello@
|
|
|
|
|
foreign import ccall unsafe "hs_bindgen_2dfe97662a4d6377" hs_bindgen_2dfe97662a4d6377_base ::
|
|
|
|
|
Ptr.Ptr Void
|
|
|
|
|
-> IO ()
|
|
|
|
|
|
|
|
|
|
-- __unique:__ @com_garnet_GarnetRs_Unsafe_hello@
|
|
|
|
|
hs_bindgen_2dfe97662a4d6377 ::
|
|
|
|
|
HsBindgen.Runtime.PtrConst.PtrConst FC.CChar
|
|
|
|
|
-> IO ()
|
|
|
|
|
hs_bindgen_2dfe97662a4d6377 =
|
|
|
|
|
HsBindgen.Runtime.Internal.HasFFIType.fromFFIType hs_bindgen_2dfe97662a4d6377_base
|
|
|
|
|
|
|
|
|
|
{-| __C declaration:__ @hello@
|
|
|
|
|
|
2026-02-19 11:11:23 +00:00
|
|
|
__defined at:__ @garnet_rs.h 32:6@
|
2026-02-19 11:08:20 +00:00
|
|
|
|
|
|
|
|
__exported by:__ @garnet_rs.h@
|
|
|
|
|
-}
|
|
|
|
|
hello ::
|
|
|
|
|
HsBindgen.Runtime.PtrConst.PtrConst FC.CChar
|
|
|
|
|
-- ^ __C declaration:__ @c@
|
|
|
|
|
-> IO ()
|
|
|
|
|
hello = hs_bindgen_2dfe97662a4d6377
|
2026-02-19 11:11:23 +00:00
|
|
|
|
|
|
|
|
-- __unique:__ @com_garnet_GarnetRs_Unsafe_hello_struct@
|
|
|
|
|
foreign import ccall unsafe "hs_bindgen_29d823ada2bc7302" hs_bindgen_29d823ada2bc7302_base ::
|
|
|
|
|
Ptr.Ptr Void
|
|
|
|
|
-> IO ()
|
|
|
|
|
|
|
|
|
|
-- __unique:__ @com_garnet_GarnetRs_Unsafe_hello_struct@
|
|
|
|
|
hs_bindgen_29d823ada2bc7302 ::
|
2026-02-19 11:15:38 +00:00
|
|
|
Ptr.Ptr T
|
2026-02-19 11:11:23 +00:00
|
|
|
-> IO ()
|
|
|
|
|
hs_bindgen_29d823ada2bc7302 =
|
|
|
|
|
HsBindgen.Runtime.Internal.HasFFIType.fromFFIType hs_bindgen_29d823ada2bc7302_base
|
|
|
|
|
|
|
|
|
|
{-| __C declaration:__ @hello_struct@
|
|
|
|
|
|
|
|
|
|
__defined at:__ @garnet_rs.h 34:6@
|
|
|
|
|
|
|
|
|
|
__exported by:__ @garnet_rs.h@
|
|
|
|
|
-}
|
|
|
|
|
hello_struct ::
|
2026-02-19 11:15:38 +00:00
|
|
|
T
|
2026-02-19 11:11:23 +00:00
|
|
|
-- ^ __C declaration:__ @t@
|
|
|
|
|
-> IO ()
|
2026-02-19 11:15:38 +00:00
|
|
|
hello_struct =
|
|
|
|
|
\t0 ->
|
|
|
|
|
F.with t0 (\t1 -> hs_bindgen_29d823ada2bc7302 t1)
|
2026-02-19 11:11:23 +00:00
|
|
|
|
|
|
|
|
-- __unique:__ @com_garnet_GarnetRs_Unsafe_hello_shape@
|
|
|
|
|
foreign import ccall unsafe "hs_bindgen_b3f40a03f07eaa85" hs_bindgen_b3f40a03f07eaa85_base ::
|
|
|
|
|
Ptr.Ptr Void
|
|
|
|
|
-> IO ()
|
|
|
|
|
|
|
|
|
|
-- __unique:__ @com_garnet_GarnetRs_Unsafe_hello_shape@
|
|
|
|
|
hs_bindgen_b3f40a03f07eaa85 ::
|
2026-02-19 11:15:38 +00:00
|
|
|
Ptr.Ptr Shape
|
2026-02-19 11:11:23 +00:00
|
|
|
-> IO ()
|
|
|
|
|
hs_bindgen_b3f40a03f07eaa85 =
|
|
|
|
|
HsBindgen.Runtime.Internal.HasFFIType.fromFFIType hs_bindgen_b3f40a03f07eaa85_base
|
|
|
|
|
|
|
|
|
|
{-| __C declaration:__ @hello_shape@
|
|
|
|
|
|
|
|
|
|
__defined at:__ @garnet_rs.h 36:6@
|
|
|
|
|
|
|
|
|
|
__exported by:__ @garnet_rs.h@
|
|
|
|
|
-}
|
|
|
|
|
hello_shape ::
|
2026-02-19 11:15:38 +00:00
|
|
|
Shape
|
2026-02-19 11:11:23 +00:00
|
|
|
-- ^ __C declaration:__ @s@
|
|
|
|
|
-> IO ()
|
2026-02-19 11:15:38 +00:00
|
|
|
hello_shape =
|
|
|
|
|
\s0 ->
|
|
|
|
|
F.with s0 (\s1 -> hs_bindgen_b3f40a03f07eaa85 s1)
|