{-# LANGUAGE ForeignFunctionInterface #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE NoFieldSelectors #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_HADDOCK prune #-}
module SDL3.Sys.Bindgen.Guid.Unsafe (
SDL3.Sys.Bindgen.Guid.Unsafe.sDL_GUIDToString,
SDL3.Sys.Bindgen.Guid.Unsafe.sDL_StringToGUID,
)
where
import Prelude (IO)
import HsBindgen.Runtime.PtrConst qualified as PtrConst
import HsBindgen.Runtime.Support qualified as BG
import HsBindgen.Runtime.Support.CAPI qualified
import SDL3.Sys.Bindgen.Guid
$( 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_guid.h>"
, "void hs_bindgen_8df1ca830111b8be ("
, " SDL_GUID *arg1,"
, " char *arg2,"
, " signed int arg3"
, ")"
, "{"
, " (SDL_GUIDToString)(*arg1, arg2, arg3);"
, "}"
, "void hs_bindgen_5e01e589522eb138 ("
, " char const *arg1,"
, " SDL_GUID *arg2"
, ")"
, "{"
, " *arg2 = (SDL_StringToGUID)(arg1);"
, "}"
]
)
)
foreign import ccall unsafe "hs_bindgen_8df1ca830111b8be"
hs_bindgen_8df1ca830111b8be_base
:: BG.Ptr BG.Void
-> BG.Ptr BG.Void
-> BG.CInt
-> IO ()
hs_bindgen_8df1ca830111b8be
:: BG.Ptr SDL_GUID
-> BG.Ptr BG.CChar
-> BG.CInt
-> IO ()
hs_bindgen_8df1ca830111b8be :: Ptr SDL_GUID -> Ptr CChar -> CInt -> IO ()
hs_bindgen_8df1ca830111b8be =
\Ptr SDL_GUID
x0 ->
\Ptr CChar
x1 ->
\CInt
x2 ->
Ptr Void -> Ptr Void -> CInt -> IO ()
hs_bindgen_8df1ca830111b8be_base (Ptr SDL_GUID -> FFIType (Ptr SDL_GUID)
forall a. HasFFIType a => a -> FFIType a
BG.toFFIType Ptr SDL_GUID
x0) (Ptr CChar -> FFIType (Ptr CChar)
forall a. HasFFIType a => a -> FFIType a
BG.toFFIType Ptr CChar
x1) (CInt -> FFIType CInt
forall a. HasFFIType a => a -> FFIType a
BG.toFFIType CInt
x2)
sDL_GUIDToString
:: SDL_GUID
-> BG.Ptr BG.CChar
-> BG.CInt
-> IO ()
sDL_GUIDToString :: SDL_GUID -> Ptr CChar -> CInt -> IO ()
sDL_GUIDToString =
\SDL_GUID
guid0 ->
\Ptr CChar
pszGUID1 ->
\CInt
cbGUID2 ->
SDL_GUID -> (Ptr SDL_GUID -> IO ()) -> IO ()
forall a b. Storable a => a -> (Ptr a -> IO b) -> IO b
BG.with
SDL_GUID
guid0
( \Ptr SDL_GUID
guid3 ->
Ptr SDL_GUID -> Ptr CChar -> CInt -> IO ()
hs_bindgen_8df1ca830111b8be Ptr SDL_GUID
guid3 Ptr CChar
pszGUID1 CInt
cbGUID2
)
foreign import ccall unsafe "hs_bindgen_5e01e589522eb138"
hs_bindgen_5e01e589522eb138_base
:: BG.Ptr BG.Void
-> BG.Ptr BG.Void
-> IO ()
hs_bindgen_5e01e589522eb138
:: PtrConst.PtrConst BG.CChar
-> BG.Ptr SDL_GUID
-> IO ()
hs_bindgen_5e01e589522eb138 :: PtrConst CChar -> Ptr SDL_GUID -> IO ()
hs_bindgen_5e01e589522eb138 =
\PtrConst CChar
x0 ->
\Ptr SDL_GUID
x1 ->
Ptr Void -> Ptr Void -> IO ()
hs_bindgen_5e01e589522eb138_base (PtrConst CChar -> FFIType (PtrConst CChar)
forall a. HasFFIType a => a -> FFIType a
BG.toFFIType PtrConst CChar
x0) (Ptr SDL_GUID -> FFIType (Ptr SDL_GUID)
forall a. HasFFIType a => a -> FFIType a
BG.toFFIType Ptr SDL_GUID
x1)
sDL_StringToGUID
:: PtrConst.PtrConst BG.CChar
-> IO SDL_GUID
sDL_StringToGUID :: PtrConst CChar -> IO SDL_GUID
sDL_StringToGUID =
\PtrConst CChar
pchGUID0 ->
(Ptr SDL_GUID -> IO ()) -> IO SDL_GUID
forall a. Storable a => (Ptr a -> IO ()) -> IO a
BG.allocaAndPeek
( \Ptr SDL_GUID
res1 ->
PtrConst CChar -> Ptr SDL_GUID -> IO ()
hs_bindgen_5e01e589522eb138 PtrConst CChar
pchGUID0 Ptr SDL_GUID
res1
)