module GI.GObject.Structs.TypeInfo
(
TypeInfo(..) ,
noTypeInfo ,
typeInfoReadClassData ,
typeInfoReadClassSize ,
typeInfoReadInstanceSize ,
typeInfoReadNPreallocs ,
typeInfoReadValueTable ,
) where
import Prelude ()
import Data.GI.Base.ShortPrelude
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import GI.GObject.Types
import GI.GObject.Callbacks
newtype TypeInfo = TypeInfo (ForeignPtr TypeInfo)
noTypeInfo :: Maybe TypeInfo
noTypeInfo = Nothing
typeInfoReadClassSize :: TypeInfo -> IO Word16
typeInfoReadClassSize s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 0) :: IO Word16
return val
typeInfoReadClassData :: TypeInfo -> IO (Ptr ())
typeInfoReadClassData s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 40) :: IO (Ptr ())
return val
typeInfoReadInstanceSize :: TypeInfo -> IO Word16
typeInfoReadInstanceSize s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 48) :: IO Word16
return val
typeInfoReadNPreallocs :: TypeInfo -> IO Word16
typeInfoReadNPreallocs s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 50) :: IO Word16
return val
typeInfoReadValueTable :: TypeInfo -> IO TypeValueTable
typeInfoReadValueTable s = withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 64) :: IO (Ptr TypeValueTable)
val' <- (newPtr 64 TypeValueTable) val
return val'