{-# LANGUAGE ForeignFunctionInterface #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE NoFieldSelectors #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_HADDOCK prune #-}
module SDL3.Sys.Bindgen.StdincShims.FunPtr (
SDL3.Sys.Bindgen.StdincShims.FunPtr.lithon_SDL_FOURCC,
)
where
import Prelude (IO, fmap)
import HsBindgen.Runtime.Support qualified as BG
import HsBindgen.Runtime.Support.CAPI qualified
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-bindgen-sys/SDL_stdinc_shims.h>"
, "/* sdl3bindgensys_SDL3.Sys.Bindgen.StdincShims_get_lithon_SDL_FOURCC */"
, "__attribute__ ((const))"
, "Uint32 (*hs_bindgen_be790970a60241f5 (void)) ("
, " Uint8 arg1,"
, " Uint8 arg2,"
, " Uint8 arg3,"
, " Uint8 arg4"
, ")"
, "{"
, " return &lithon_SDL_FOURCC;"
, "}"
]
)
)
foreign import ccall unsafe "hs_bindgen_be790970a60241f5"
hs_bindgen_be790970a60241f5_base
:: IO (BG.FunPtr BG.Void)
hs_bindgen_be790970a60241f5
:: IO
( BG.FunPtr
( SDL3.Sys.Bindgen.Stdinc.Uint8
-> SDL3.Sys.Bindgen.Stdinc.Uint8
-> SDL3.Sys.Bindgen.Stdinc.Uint8
-> SDL3.Sys.Bindgen.Stdinc.Uint8
-> IO SDL3.Sys.Bindgen.Stdinc.Uint32
)
)
hs_bindgen_be790970a60241f5 :: IO (FunPtr (Uint8 -> Uint8 -> Uint8 -> Uint8 -> IO Uint32))
hs_bindgen_be790970a60241f5 =
(FunPtr Void
-> FunPtr (Uint8 -> Uint8 -> Uint8 -> Uint8 -> IO Uint32))
-> IO (FunPtr Void)
-> IO (FunPtr (Uint8 -> Uint8 -> Uint8 -> Uint8 -> IO Uint32))
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 (Uint8 -> Uint8 -> Uint8 -> Uint8 -> IO Uint32)
FFIType (FunPtr (Uint8 -> Uint8 -> Uint8 -> Uint8 -> IO Uint32))
-> FunPtr (Uint8 -> Uint8 -> Uint8 -> Uint8 -> IO Uint32)
forall a. HasFFIType a => FFIType a -> a
BG.fromFFIType IO (FunPtr Void)
hs_bindgen_be790970a60241f5_base
{-# NOINLINE lithon_SDL_FOURCC #-}
lithon_SDL_FOURCC
:: BG.FunPtr
( SDL3.Sys.Bindgen.Stdinc.Uint8
-> SDL3.Sys.Bindgen.Stdinc.Uint8
-> SDL3.Sys.Bindgen.Stdinc.Uint8
-> SDL3.Sys.Bindgen.Stdinc.Uint8
-> IO SDL3.Sys.Bindgen.Stdinc.Uint32
)
lithon_SDL_FOURCC :: FunPtr (Uint8 -> Uint8 -> Uint8 -> Uint8 -> IO Uint32)
lithon_SDL_FOURCC =
IO (FunPtr (Uint8 -> Uint8 -> Uint8 -> Uint8 -> IO Uint32))
-> FunPtr (Uint8 -> Uint8 -> Uint8 -> Uint8 -> IO Uint32)
forall a. IO a -> a
BG.unsafePerformIO IO (FunPtr (Uint8 -> Uint8 -> Uint8 -> Uint8 -> IO Uint32))
hs_bindgen_be790970a60241f5