{-# LANGUAGE ForeignFunctionInterface #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE NoFieldSelectors #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_HADDOCK prune #-}
module SDL3.Sys.Bindgen.Loadso.FunPtr (
SDL3.Sys.Bindgen.Loadso.FunPtr.sDL_LoadObject,
SDL3.Sys.Bindgen.Loadso.FunPtr.sDL_LoadFunction,
SDL3.Sys.Bindgen.Loadso.FunPtr.sDL_UnloadObject,
)
where
import Prelude (IO, fmap)
import HsBindgen.Runtime.PtrConst qualified as PtrConst
import HsBindgen.Runtime.Support qualified as BG
import HsBindgen.Runtime.Support.CAPI qualified
import SDL3.Sys.Bindgen.Loadso
import SDL3.Sys.Bindgen.Stdinc qualified
$( HsBindgen.Runtime.Support.CAPI.addCSource
( HsBindgen.Runtime.Support.CAPI.unlines
[ "#define SDL_MAIN_HANDLED"
, "#define SDL_SLOW_MEMCPY"
, "#define SDL_SLOW_MEMMOVE"
, "#define SDL_SLOW_MEMSET"
, "#include <SDL3/SDL_loadso.h>"
, "/* sdl3bindgensys_SDL3.Sys.Bindgen.Loadso_get_SDL_LoadObject */"
, "__attribute__ ((const))"
, "SDL_SharedObject *(*hs_bindgen_06ede04ef7bebd95 (void)) ("
, " char const *arg1"
, ")"
, "{"
, " return &SDL_LoadObject;"
, "}"
, "/* sdl3bindgensys_SDL3.Sys.Bindgen.Loadso_get_SDL_LoadFunction */"
, "__attribute__ ((const))"
, "SDL_FunctionPointer (*hs_bindgen_c0b414522c89c9e2 (void)) ("
, " SDL_SharedObject *arg1,"
, " char const *arg2"
, ")"
, "{"
, " return &SDL_LoadFunction;"
, "}"
, "/* sdl3bindgensys_SDL3.Sys.Bindgen.Loadso_get_SDL_UnloadObject */"
, "__attribute__ ((const))"
, "void (*hs_bindgen_a3520810bae0da07 (void)) ("
, " SDL_SharedObject *arg1"
, ")"
, "{"
, " return &SDL_UnloadObject;"
, "}"
]
)
)
foreign import ccall unsafe "hs_bindgen_06ede04ef7bebd95"
hs_bindgen_06ede04ef7bebd95_base
:: IO (BG.FunPtr BG.Void)
hs_bindgen_06ede04ef7bebd95
:: IO (BG.FunPtr (PtrConst.PtrConst BG.CChar -> IO (BG.Ptr SDL_SharedObject)))
hs_bindgen_06ede04ef7bebd95 :: IO (FunPtr (PtrConst CChar -> IO (Ptr SDL_SharedObject)))
hs_bindgen_06ede04ef7bebd95 =
(FunPtr Void
-> FunPtr (PtrConst CChar -> IO (Ptr SDL_SharedObject)))
-> IO (FunPtr Void)
-> IO (FunPtr (PtrConst CChar -> IO (Ptr SDL_SharedObject)))
forall a b. (a -> b) -> IO a -> IO b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap FunPtr Void -> FunPtr (PtrConst CChar -> IO (Ptr SDL_SharedObject))
FFIType (FunPtr (PtrConst CChar -> IO (Ptr SDL_SharedObject)))
-> FunPtr (PtrConst CChar -> IO (Ptr SDL_SharedObject))
forall a. HasFFIType a => FFIType a -> a
BG.fromFFIType IO (FunPtr Void)
hs_bindgen_06ede04ef7bebd95_base
{-# NOINLINE sDL_LoadObject #-}
sDL_LoadObject :: BG.FunPtr (PtrConst.PtrConst BG.CChar -> IO (BG.Ptr SDL_SharedObject))
sDL_LoadObject :: FunPtr (PtrConst CChar -> IO (Ptr SDL_SharedObject))
sDL_LoadObject =
IO (FunPtr (PtrConst CChar -> IO (Ptr SDL_SharedObject)))
-> FunPtr (PtrConst CChar -> IO (Ptr SDL_SharedObject))
forall a. IO a -> a
BG.unsafePerformIO IO (FunPtr (PtrConst CChar -> IO (Ptr SDL_SharedObject)))
hs_bindgen_06ede04ef7bebd95
foreign import ccall unsafe "hs_bindgen_c0b414522c89c9e2"
hs_bindgen_c0b414522c89c9e2_base
:: IO (BG.FunPtr BG.Void)
hs_bindgen_c0b414522c89c9e2
:: IO
( BG.FunPtr
( BG.Ptr SDL_SharedObject
-> PtrConst.PtrConst BG.CChar
-> IO SDL3.Sys.Bindgen.Stdinc.SDL_FunctionPointer
)
)
hs_bindgen_c0b414522c89c9e2 :: IO
(FunPtr
(Ptr SDL_SharedObject -> PtrConst CChar -> IO SDL_FunctionPointer))
hs_bindgen_c0b414522c89c9e2 =
(FunPtr Void
-> FunPtr
(Ptr SDL_SharedObject -> PtrConst CChar -> IO SDL_FunctionPointer))
-> IO (FunPtr Void)
-> IO
(FunPtr
(Ptr SDL_SharedObject -> PtrConst CChar -> IO SDL_FunctionPointer))
forall a b. (a -> b) -> IO a -> IO b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap FunPtr Void
-> FunPtr
(Ptr SDL_SharedObject -> PtrConst CChar -> IO SDL_FunctionPointer)
FFIType
(FunPtr
(Ptr SDL_SharedObject -> PtrConst CChar -> IO SDL_FunctionPointer))
-> FunPtr
(Ptr SDL_SharedObject -> PtrConst CChar -> IO SDL_FunctionPointer)
forall a. HasFFIType a => FFIType a -> a
BG.fromFFIType IO (FunPtr Void)
hs_bindgen_c0b414522c89c9e2_base
{-# NOINLINE sDL_LoadFunction #-}
sDL_LoadFunction
:: BG.FunPtr
( BG.Ptr SDL_SharedObject
-> PtrConst.PtrConst BG.CChar
-> IO SDL3.Sys.Bindgen.Stdinc.SDL_FunctionPointer
)
sDL_LoadFunction :: FunPtr
(Ptr SDL_SharedObject -> PtrConst CChar -> IO SDL_FunctionPointer)
sDL_LoadFunction =
IO
(FunPtr
(Ptr SDL_SharedObject -> PtrConst CChar -> IO SDL_FunctionPointer))
-> FunPtr
(Ptr SDL_SharedObject -> PtrConst CChar -> IO SDL_FunctionPointer)
forall a. IO a -> a
BG.unsafePerformIO IO
(FunPtr
(Ptr SDL_SharedObject -> PtrConst CChar -> IO SDL_FunctionPointer))
hs_bindgen_c0b414522c89c9e2
foreign import ccall unsafe "hs_bindgen_a3520810bae0da07"
hs_bindgen_a3520810bae0da07_base
:: IO (BG.FunPtr BG.Void)
hs_bindgen_a3520810bae0da07 :: IO (BG.FunPtr (BG.Ptr SDL_SharedObject -> IO ()))
hs_bindgen_a3520810bae0da07 :: IO (FunPtr (Ptr SDL_SharedObject -> IO ()))
hs_bindgen_a3520810bae0da07 =
(FunPtr Void -> FunPtr (Ptr SDL_SharedObject -> IO ()))
-> IO (FunPtr Void) -> IO (FunPtr (Ptr SDL_SharedObject -> IO ()))
forall a b. (a -> b) -> IO a -> IO b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap FunPtr Void -> FunPtr (Ptr SDL_SharedObject -> IO ())
FFIType (FunPtr (Ptr SDL_SharedObject -> IO ()))
-> FunPtr (Ptr SDL_SharedObject -> IO ())
forall a. HasFFIType a => FFIType a -> a
BG.fromFFIType IO (FunPtr Void)
hs_bindgen_a3520810bae0da07_base
{-# NOINLINE sDL_UnloadObject #-}
sDL_UnloadObject :: BG.FunPtr (BG.Ptr SDL_SharedObject -> IO ())
sDL_UnloadObject :: FunPtr (Ptr SDL_SharedObject -> IO ())
sDL_UnloadObject =
IO (FunPtr (Ptr SDL_SharedObject -> IO ()))
-> FunPtr (Ptr SDL_SharedObject -> IO ())
forall a. IO a -> a
BG.unsafePerformIO IO (FunPtr (Ptr SDL_SharedObject -> IO ()))
hs_bindgen_a3520810bae0da07