{-# LANGUAGE CApiFFI #-}
-- This file was generated by dear-bindings-ffi. Do not edit by hand.
module DearImGui.Raw.Internal.ImSpan
( ImSpan (..)
) where
import Foreign.Ptr (Ptr, castPtr)
import Foreign.Storable (Storable (..))
#include "dcimgui_nodefaultargfunctions_internal.h"
-- | Generic counterpart to dear_bindings's flattened
-- @ImSpan_T@ instantiations. Two pointers delimiting the span.
data ImSpan t = ImSpan
{ dataPtr :: Ptr t
, dataEnd :: Ptr t
}
deriving (Eq, Show)
instance Storable (ImSpan t) where
sizeOf _ = #{size ImSpan_ImGuiTableCellData}
alignment _ = #{alignment ImSpan_ImGuiTableCellData}
peek p = ImSpan
<$> (castPtr <$> #{peek ImSpan_ImGuiTableCellData, Data} p)
<*> (castPtr <$> #{peek ImSpan_ImGuiTableCellData, DataEnd} p)
poke p v = do
#{poke ImSpan_ImGuiTableCellData, Data} p (castPtr v.dataPtr)
#{poke ImSpan_ImGuiTableCellData, DataEnd} p (castPtr v.dataEnd)