dear-imgui-raw-internal-1.0.0: src/DearImGui/Raw/Internal/ImGuiErrorRecoveryState.hsc
{-# LANGUAGE CApiFFI #-}
{-# LANGUAGE PatternSynonyms #-}
-- This file was generated by dear-bindings-ffi. Do not edit by hand.
module DearImGui.Raw.Internal.ImGuiErrorRecoveryState
( ImGuiErrorRecoveryState (..)
, destroy
, init
, withDefault
) where
import Control.Exception (bracket_)
import Foreign.C.Types
import Foreign.Marshal.Alloc (alloca)
import Foreign.Ptr (Ptr, plusPtr)
import Foreign.Storable (Storable (..))
import GHC.Records (HasField (..))
import Prelude hiding (init)
#include "dcimgui_nodefaultargfunctions_internal.h"
-- structs (opaque)
data {-# CTYPE "dcimgui_nodefaultargfunctions_internal.h" "ImGuiErrorRecoveryState" #-} ImGuiErrorRecoveryState = ImGuiErrorRecoveryState
{ sizeOfWindowStack :: CShort
, sizeOfIDStack :: CShort
, sizeOfTreeStack :: CShort
, sizeOfColorStack :: CShort
, sizeOfStyleVarStack :: CShort
, sizeOfFontStack :: CShort
, sizeOfFocusScopeStack :: CShort
, sizeOfGroupStack :: CShort
, sizeOfItemFlagsStack :: CShort
, sizeOfBeginPopupStack :: CShort
, sizeOfDisabledStack :: CShort
}
deriving (Eq, Show)
instance Storable ImGuiErrorRecoveryState where
sizeOf _ = #{size ImGuiErrorRecoveryState}
alignment _ = #{alignment ImGuiErrorRecoveryState}
peek p = ImGuiErrorRecoveryState <$> #{peek ImGuiErrorRecoveryState, SizeOfWindowStack} p <*> #{peek ImGuiErrorRecoveryState, SizeOfIDStack} p <*> #{peek ImGuiErrorRecoveryState, SizeOfTreeStack} p <*> #{peek ImGuiErrorRecoveryState, SizeOfColorStack} p <*> #{peek ImGuiErrorRecoveryState, SizeOfStyleVarStack} p <*> #{peek ImGuiErrorRecoveryState, SizeOfFontStack} p <*> #{peek ImGuiErrorRecoveryState, SizeOfFocusScopeStack} p <*> #{peek ImGuiErrorRecoveryState, SizeOfGroupStack} p <*> #{peek ImGuiErrorRecoveryState, SizeOfItemFlagsStack} p <*> #{peek ImGuiErrorRecoveryState, SizeOfBeginPopupStack} p <*> #{peek ImGuiErrorRecoveryState, SizeOfDisabledStack} p
poke p v = do
#{poke ImGuiErrorRecoveryState, SizeOfWindowStack} p v.sizeOfWindowStack
#{poke ImGuiErrorRecoveryState, SizeOfIDStack} p v.sizeOfIDStack
#{poke ImGuiErrorRecoveryState, SizeOfTreeStack} p v.sizeOfTreeStack
#{poke ImGuiErrorRecoveryState, SizeOfColorStack} p v.sizeOfColorStack
#{poke ImGuiErrorRecoveryState, SizeOfStyleVarStack} p v.sizeOfStyleVarStack
#{poke ImGuiErrorRecoveryState, SizeOfFontStack} p v.sizeOfFontStack
#{poke ImGuiErrorRecoveryState, SizeOfFocusScopeStack} p v.sizeOfFocusScopeStack
#{poke ImGuiErrorRecoveryState, SizeOfGroupStack} p v.sizeOfGroupStack
#{poke ImGuiErrorRecoveryState, SizeOfItemFlagsStack} p v.sizeOfItemFlagsStack
#{poke ImGuiErrorRecoveryState, SizeOfBeginPopupStack} p v.sizeOfBeginPopupStack
#{poke ImGuiErrorRecoveryState, SizeOfDisabledStack} p v.sizeOfDisabledStack
instance HasField "sizeOfWindowStack" (Ptr ImGuiErrorRecoveryState) (Ptr CShort) where
getField = #{ptr ImGuiErrorRecoveryState, SizeOfWindowStack}
instance HasField "sizeOfIDStack" (Ptr ImGuiErrorRecoveryState) (Ptr CShort) where
getField = #{ptr ImGuiErrorRecoveryState, SizeOfIDStack}
instance HasField "sizeOfTreeStack" (Ptr ImGuiErrorRecoveryState) (Ptr CShort) where
getField = #{ptr ImGuiErrorRecoveryState, SizeOfTreeStack}
instance HasField "sizeOfColorStack" (Ptr ImGuiErrorRecoveryState) (Ptr CShort) where
getField = #{ptr ImGuiErrorRecoveryState, SizeOfColorStack}
instance HasField "sizeOfStyleVarStack" (Ptr ImGuiErrorRecoveryState) (Ptr CShort) where
getField = #{ptr ImGuiErrorRecoveryState, SizeOfStyleVarStack}
instance HasField "sizeOfFontStack" (Ptr ImGuiErrorRecoveryState) (Ptr CShort) where
getField = #{ptr ImGuiErrorRecoveryState, SizeOfFontStack}
instance HasField "sizeOfFocusScopeStack" (Ptr ImGuiErrorRecoveryState) (Ptr CShort) where
getField = #{ptr ImGuiErrorRecoveryState, SizeOfFocusScopeStack}
instance HasField "sizeOfGroupStack" (Ptr ImGuiErrorRecoveryState) (Ptr CShort) where
getField = #{ptr ImGuiErrorRecoveryState, SizeOfGroupStack}
instance HasField "sizeOfItemFlagsStack" (Ptr ImGuiErrorRecoveryState) (Ptr CShort) where
getField = #{ptr ImGuiErrorRecoveryState, SizeOfItemFlagsStack}
instance HasField "sizeOfBeginPopupStack" (Ptr ImGuiErrorRecoveryState) (Ptr CShort) where
getField = #{ptr ImGuiErrorRecoveryState, SizeOfBeginPopupStack}
instance HasField "sizeOfDisabledStack" (Ptr ImGuiErrorRecoveryState) (Ptr CShort) where
getField = #{ptr ImGuiErrorRecoveryState, SizeOfDisabledStack}
foreign import capi unsafe "DearImGuiWrappers.h ImGuiErrorRecoveryState_Init_wrap"
init
:: Ptr ImGuiErrorRecoveryState
-> IO ()
foreign import capi unsafe "DearImGuiWrappers.h ImGuiErrorRecoveryState_Destroy_wrap"
destroy
:: Ptr ImGuiErrorRecoveryState
-> IO ()
withDefault :: (Ptr ImGuiErrorRecoveryState -> IO a) -> IO a
withDefault k = alloca $ \p -> bracket_ (init p) (destroy p) (k p)