Spec-Zone.ru › Haskell 8

Foreign.Storable

Copyright (c) The FFI task force 2001
License see libraries/base/LICENSE
Maintainer ffi@haskell.org
Stability provisional
Portability portable
Safe Haskell Trustworthy
Language Haskell2010

Описание

Модуль Foreign.Storable предоставляет базовые средства для маршалинга и является частью языконезависимой части Foreign Function Interface (FFI), и обычно импортируется через модуль Foreign.

class Storable a where Исходный код

Члены этого класса облегчают запись значений примитивных типов в сырую память (которая могла быть выделена с помощью вышеупомянутых процедур) и чтение значений из блоков сырой памяти. Кроме того, класс включает поддержку вычисления требований к хранению и ограничениям выравнивания для типов storable.

Адреса памяти представлены значениями типа Ptr a, для некоторого a, который является экземпляром класса Storable. Аргумент типа в Ptr помогает обеспечить некоторую ценную типовую безопасность в коде FFI (вы не можете смешивать указатели разных типов без явного приведения), помогая системе типов Haskell определить, какой метод маршалинга необходим для данного указателя.

Любой маршалинг между Haskell и иностранным языком в конечном итоге сводится к преобразованию структур данных Haskell в двоичное представление соответствующей структуры данных иностранного языка и наоборот. Для кодирования этого маршалинга в Haskell необходимо манипулировать примитивными типами данных, хранящимися в неупорядоченных блоках памяти. Класс Storable облегчает эту манипуляцию для всех типов, для которых он инстанцирован, включая стандартные базовые типы Haskell, типы фиксированной длины Int (Int8, Int16, Int32, Int64), типы фиксированной длины Word (Word8, Word16, Word32, Word64), StablePtr, все типы из Foreign.C.Types, а также Ptr.

Минимальное полное определение

sizeOf, alignment, (peek | peekElemOff | peekByteOff), (poke | pokeElemOff | pokeByteOff)

Методы

sizeOf :: a -> Int Исходный код

Вычисляет потребность в памяти (в байтах) аргумента. Значение аргумента не используется.

alignment :: a -> Int Исходный код

Вычисляет ограничение выравнивания аргумента. Ограничение выравнивания x выполняется для любого адреса, делящегося на x. Значение аргумента не используется.

peekElemOff :: Ptr a -> Int -> IO a Исходный код

Чтение значения из области памяти, рассматриваемой как массив значений одного типа. Первый аргумент указывает начальный адрес массива, а второй — индекс в массиве (первый элемент массива имеет индекс 0). Следующее равенство верно,

peekElemOff addr idx = IOExts.fixIO $ \result ->
  peek (addr `plusPtr` (idx * sizeOf result))

Обратите внимание, что это только спецификация, а не обязательно конкретная реализация функции.

pokeElemOff :: Ptr a -> Int -> a -> IO () Исходный код

Запись значения в область памяти, рассматриваемую как массив значений одного типа. Следующее равенство верно:

pokeElemOff addr idx x = 
  poke (addr `plusPtr` (idx * sizeOf x)) x

peekByteOff :: Ptr b -> Int -> IO a Исходный код

Чтение значения из местоположения в памяти, заданного базовым адресом и смещением. Следующее равенство верно:

peekByteOff addr off = peek (addr `plusPtr` off)

pokeByteOff :: Ptr b -> Int -> a -> IO () Исходный код

Запись значения в местоположение в памяти, заданное базовым адресом и смещением. Следующее равенство верно:

pokeByteOff addr off x = poke (addr `plusPtr` off) x

peek :: Ptr a -> IO a Исходный код

Чтение значения из заданного местоположения в памяти.

Обратите внимание, что функции peek и poke могут потребовать правильно выровненных адресов для корректной работы. Это зависит от архитектуры; поэтому в переносимом коде необходимо гарантировать, что при чтении или записи значений некоторого типа a, ограничение выравнивания для a, как задано функцией alignment, выполняется.

poke :: Ptr a -> a -> IO () Исходный код

Запись заданного значения в заданное местоположение в памяти. Могут применяться ограничения выравнивания; см. peek.

Примеры
Подробности о реализациях
Storable Bool

С версии: base-2.1

Подробности о реализации

Определено в Foreign.Storable

Краткое описание методов

sizeOf :: Bool -> Int Source

alignment :: Bool -> Int Source

peekElemOff :: Ptr Bool -> Int -> IO Bool Source

pokeElemOff :: Ptr Bool -> Int -> Bool -> IO () Source

peekByteOff :: Ptr b -> Int -> IO Bool Source

pokeByteOff :: Ptr b -> Int -> Bool -> IO () Source

peek :: Ptr Bool -> IO Bool Source

poke :: Ptr Bool -> Bool -> IO () Source

Storable Char

С версии: base-2.1

Подробности о реализации

Определено в Foreign.Storable

Краткое описание методов

sizeOf :: Char -> Int Source

alignment :: Char -> Int Source

peekElemOff :: Ptr Char -> Int -> IO Char Source

pokeElemOff :: Ptr Char -> Int -> Char -> IO () Source

peekByteOff :: Ptr b -> Int -> IO Char Source

pokeByteOff :: Ptr b -> Int -> Char -> IO () Source

peek :: Ptr Char -> IO Char Source

poke :: Ptr Char -> Char -> IO () Source

Storable Double

С версии: base-2.1

Подробности о реализации

Определено в Foreign.Storable

Краткое описание методов

sizeOf :: Double -> Int Source

alignment :: Double -> Int Source

peekElemOff :: Ptr Double -> Int -> IO Double Source

pokeElemOff :: Ptr Double -> Int -> Double -> IO () Source

peekByteOff :: Ptr b -> Int -> IO Double Source

pokeByteOff :: Ptr b -> Int -> Double -> IO () Source

peek :: Ptr Double -> IO Double Source

poke :: Ptr Double -> Double -> IO () Source

Storable Float

С версии: base-2.1

Подробности экземпляра

Определено в Foreign.Storable

Методы

sizeOf :: Float -> Int Исходный код

alignment :: Float -> Int Исходный код

peekElemOff :: Ptr Float -> Int -> IO Float Исходный код

pokeElemOff :: Ptr Float -> Int -> Float -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO Float Исходный код

pokeByteOff :: Ptr b -> Int -> Float -> IO () Исходный код

peek :: Ptr Float -> IO Float Исходный код

poke :: Ptr Float -> Float -> IO () Исходный код

Storable Int

С момента: base-2.1

Подробности экземпляра

Определено в Foreign.Storable

Методы

sizeOf :: Int -> Int Исходный код

alignment :: Int -> Int Исходный код

peekElemOff :: Ptr Int -> Int -> IO Int Исходный код

pokeElemOff :: Ptr Int -> Int -> Int -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO Int Исходный код

pokeByteOff :: Ptr b -> Int -> Int -> IO () Исходный код

peek :: Ptr Int -> IO Int Исходный код

poke :: Ptr Int -> Int -> IO () Исходный код

Storable Int8

С момента: base-2.1

Подробности экземпляра

Определено в Foreign.Storable

Методы

sizeOf :: Int8 -> Int Исходный код

alignment :: Int8 -> Int Исходный код

peekElemOff :: Ptr Int8 -> Int -> IO Int8 Исходный код

pokeElemOff :: Ptr Int8 -> Int -> Int8 -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO Int8 Исходный код

pokeByteOff :: Ptr b -> Int -> Int8 -> IO () Исходный код

peek :: Ptr Int8 -> IO Int8 Исходный код

poke :: Ptr Int8 -> Int8 -> IO () Исходный код

Storable Int16

С момента: base-2.1

Информация о экземпляре

Определено в Foreign.Storable

Краткое описание методов

sizeOf :: Int16 -> Int Source

alignment :: Int16 -> Int Source

peekElemOff :: Ptr Int16 -> Int -> IO Int16 Source

pokeElemOff :: Ptr Int16 -> Int -> Int16 -> IO () Source

peekByteOff :: Ptr b -> Int -> IO Int16 Source

pokeByteOff :: Ptr b -> Int -> Int16 -> IO () Source

peek :: Ptr Int16 -> IO Int16 Source

poke :: Ptr Int16 -> Int16 -> IO () Source

Storable Int32

С версии: base-2.1

Информация о экземпляре

Определено в Foreign.Storable

Краткое описание методов

sizeOf :: Int32 -> Int Source

alignment :: Int32 -> Int Source

peekElemOff :: Ptr Int32 -> Int -> IO Int32 Source

pokeElemOff :: Ptr Int32 -> Int -> Int32 -> IO () Source

peekByteOff :: Ptr b -> Int -> IO Int32 Source

pokeByteOff :: Ptr b -> Int -> Int32 -> IO () Source

peek :: Ptr Int32 -> IO Int32 Source

poke :: Ptr Int32 -> Int32 -> IO () Source

Storable Int64

С версии: base-2.1

Информация о экземпляре

Определено в Foreign.Storable

Краткое описание методов

sizeOf :: Int64 -> Int Source

alignment :: Int64 -> Int Source

peekElemOff :: Ptr Int64 -> Int -> IO Int64 Source

pokeElemOff :: Ptr Int64 -> Int -> Int64 -> IO () Source

peekByteOff :: Ptr b -> Int -> IO Int64 Source

pokeByteOff :: Ptr b -> Int -> Int64 -> IO () Source

peek :: Ptr Int64 -> IO Int64 Source

poke :: Ptr Int64 -> Int64 -> IO () Source

Storable Word

С версии: base-2.1

Информация о реализации

Определено в Foreign.Storable

Краткое описание методов

sizeOf :: Word -> Int Источник

alignment :: Word -> Int Источник

peekElemOff :: Ptr Word -> Int -> IO Word Источник

pokeElemOff :: Ptr Word -> Int -> Word -> IO () Источник

peekByteOff :: Ptr b -> Int -> IO Word Источник

pokeByteOff :: Ptr b -> Int -> Word -> IO () Источник

peek :: Ptr Word -> IO Word Источник

poke :: Ptr Word -> Word -> IO () Источник

Storable Word8

С версии: base-2.1

Информация о реализации

Определено в Foreign.Storable

Краткое описание методов

sizeOf :: Word8 -> Int Источник

alignment :: Word8 -> Int Источник

peekElemOff :: Ptr Word8 -> Int -> IO Word8 Источник

pokeElemOff :: Ptr Word8 -> Int -> Word8 -> IO () Источник

peekByteOff :: Ptr b -> Int -> IO Word8 Источник

pokeByteOff :: Ptr b -> Int -> Word8 -> IO () Источник

peek :: Ptr Word8 -> IO Word8 Источник

poke :: Ptr Word8 -> Word8 -> IO () Источник

Storable Word16

С версии: base-2.1

Информация о реализации

Определено в Foreign.Storable

Краткое описание методов

sizeOf :: Word16 -> Int Источник

alignment :: Word16 -> Int Источник

peekElemOff :: Ptr Word16 -> Int -> IO Word16 Источник

pokeElemOff :: Ptr Word16 -> Int -> Word16 -> IO () Источник

peekByteOff :: Ptr b -> Int -> IO Word16 Источник

pokeByteOff :: Ptr b -> Int -> Word16 -> IO () Источник

peek :: Ptr Word16 -> IO Word16 Источник

poke :: Ptr Word16 -> Word16 -> IO () Источник

Storable Word32

С версии: base-2.1

Информация об экземпляре

Определено в Foreign.Storable

Краткое описание методов

sizeOf :: Word32 -> Int Source

alignment :: Word32 -> Int Source

peekElemOff :: Ptr Word32 -> Int -> IO Word32 Source

pokeElemOff :: Ptr Word32 -> Int -> Word32 -> IO () Source

peekByteOff :: Ptr b -> Int -> IO Word32 Source

pokeByteOff :: Ptr b -> Int -> Word32 -> IO () Source

peek :: Ptr Word32 -> IO Word32 Source

poke :: Ptr Word32 -> Word32 -> IO () Source

Storable Word64

С версии: base-2.1

Информация об экземпляре

Определено в Foreign.Storable

Краткое описание методов

sizeOf :: Word64 -> Int Source

alignment :: Word64 -> Int Source

peekElemOff :: Ptr Word64 -> Int -> IO Word64 Source

pokeElemOff :: Ptr Word64 -> Int -> Word64 -> IO () Source

peekByteOff :: Ptr b -> Int -> IO Word64 Source

pokeByteOff :: Ptr b -> Int -> Word64 -> IO () Source

peek :: Ptr Word64 -> IO Word64 Source

poke :: Ptr Word64 -> Word64 -> IO () Source

Storable ()

С версии: base-4.9.0.0

Информация об экземпляре

Определено в Foreign.Storable

Краткое описание методов

sizeOf :: () -> Int Source

alignment :: () -> Int Source

peekElemOff :: Ptr () -> Int -> IO () Source

pokeElemOff :: Ptr () -> Int -> () -> IO () Source

peekByteOff :: Ptr b -> Int -> IO () Source

pokeByteOff :: Ptr b -> Int -> () -> IO () Source

peek :: Ptr () -> IO () Source

poke :: Ptr () -> () -> IO () Source

Storable Fingerprint

С версии: base-4.4.0.0

Подробности экземпляра

Определено в Foreign.Storable

Методы

sizeOf :: Fingerprint -> Int Исходный код

alignment :: Fingerprint -> Int Исходный код

peekElemOff :: Ptr Fingerprint -> Int -> IO Fingerprint Исходный код

pokeElemOff :: Ptr Fingerprint -> Int -> Fingerprint -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO Fingerprint Исходный код

pokeByteOff :: Ptr b -> Int -> Fingerprint -> IO () Исходный код

peek :: Ptr Fingerprint -> IO Fingerprint Исходный код

poke :: Ptr Fingerprint -> Fingerprint -> IO () Исходный код

Storable IntPtr
Подробности экземпляра

Определено в Foreign.Ptr

Методы

sizeOf :: IntPtr -> Int Исходный код

alignment :: IntPtr -> Int Исходный код

peekElemOff :: Ptr IntPtr -> Int -> IO IntPtr Исходный код

pokeElemOff :: Ptr IntPtr -> Int -> IntPtr -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO IntPtr Исходный код

pokeByteOff :: Ptr b -> Int -> IntPtr -> IO () Исходный код

peek :: Ptr IntPtr -> IO IntPtr Исходный код

poke :: Ptr IntPtr -> IntPtr -> IO () Исходный код

Storable WordPtr
Подробности экземпляра

Определено в Foreign.Ptr

Методы

sizeOf :: WordPtr -> Int Исходный код

alignment :: WordPtr -> Int Исходный код

peekElemOff :: Ptr WordPtr -> Int -> IO WordPtr Исходный код

pokeElemOff :: Ptr WordPtr -> Int -> WordPtr -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO WordPtr Исходный код

pokeByteOff :: Ptr b -> Int -> WordPtr -> IO () Исходный код

peek :: Ptr WordPtr -> IO WordPtr Исходный код

poke :: Ptr WordPtr -> WordPtr -> IO () Исходный код

Storable CUIntMax
Подробности экземпляра

Определено в Foreign.C.Types

Методы

sizeOf :: CUIntMax -> Целое Источник

alignment :: CUIntMax -> Целое Источник

peekElemOff :: Указатель CUIntMax -> Целое -> IO CUIntMax Источник

pokeElemOff :: Указатель CUIntMax -> Целое -> CUIntMax -> IO () Источник

peekByteOff :: Указатель b -> Целое -> IO CUIntMax Источник

pokeByteOff :: Указатель b -> Целое -> CUIntMax -> IO () Источник

peek :: Указатель CUIntMax -> IO CUIntMax Источник

poke :: Указатель CUIntMax -> CUIntMax -> IO () Источник

Storable CIntMax
Подробности экземпляра

Определено в Foreign.C.Types

Методы

sizeOf :: CIntMax -> Целое Источник

alignment :: CIntMax -> Целое Источник

peekElemOff :: Указатель CIntMax -> Целое -> IO CIntMax Источник

pokeElemOff :: Указатель CIntMax -> Целое -> CIntMax -> IO () Источник

peekByteOff :: Указатель b -> Целое -> IO CIntMax Источник

pokeByteOff :: Указатель b -> Целое -> CIntMax -> IO () Источник

peek :: Указатель CIntMax -> IO CIntMax Источник

poke :: Указатель CIntMax -> CIntMax -> IO () Источник

Storable CUIntPtr
Подробности экземпляра

Определено в Foreign.C.Types

Методы

sizeOf :: CUIntPtr -> Int Исходный код

alignment :: CUIntPtr -> Int Исходный код

peekElemOff :: Ptr CUIntPtr -> Int -> IO CUIntPtr Исходный код

pokeElemOff :: Ptr CUIntPtr -> Int -> CUIntPtr -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CUIntPtr Исходный код

pokeByteOff :: Ptr b -> Int -> CUIntPtr -> IO () Исходный код

peek :: Ptr CUIntPtr -> IO CUIntPtr Исходный код

poke :: Ptr CUIntPtr -> CUIntPtr -> IO () Исходный код

Storable CIntPtr
Подробности экземпляра

Определено в Foreign.C.Types

Методы

sizeOf :: CIntPtr -> Int Исходный код

alignment :: CIntPtr -> Int Исходный код

peekElemOff :: Ptr CIntPtr -> Int -> IO CIntPtr Исходный код

pokeElemOff :: Ptr CIntPtr -> Int -> CIntPtr -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CIntPtr Исходный код

pokeByteOff :: Ptr b -> Int -> CIntPtr -> IO () Исходный код

peek :: Ptr CIntPtr -> IO CIntPtr Исходный код

poke :: Ptr CIntPtr -> CIntPtr -> IO () Исходный код

Storable CSUSeconds
Подробности экземпляра

Определено в Foreign.C.Types

Методы

sizeOf :: CSUSeconds -> Int Исходный код

alignment :: CSUSeconds -> Int Исходный код

peekElemOff :: Ptr CSUSeconds -> Int -> IO CSUSeconds Исходный код

pokeElemOff :: Ptr CSUSeconds -> Int -> CSUSeconds -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CSUSeconds Исходный код

pokeByteOff :: Ptr b -> Int -> CSUSeconds -> IO () Исходный код

peek :: Ptr CSUSeconds -> IO CSUSeconds Исходный код

poke :: Ptr CSUSeconds -> CSUSeconds -> IO () Исходный код

Storable CUSeconds
Подробности экземпляра

Определено в Foreign.C.Types

Методы

sizeOf :: CUSeconds -> Int Исходный код

alignment :: CUSeconds -> Int Исходный код

peekElemOff :: Ptr CUSeconds -> Int -> IO CUSeconds Исходный код

pokeElemOff :: Ptr CUSeconds -> Int -> CUSeconds -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CUSeconds Исходный код

pokeByteOff :: Ptr b -> Int -> CUSeconds -> IO () Исходный код

peek :: Ptr CUSeconds -> IO CUSeconds Исходный код

poke :: Ptr CUSeconds -> CUSeconds -> IO () Исходный код

Storable CTime
Подробности экземпляра

Определено в Foreign.C.Types

Методы

sizeOf :: CTime -> Int Исходный код

alignment :: CTime -> Int Исходный код

peekElemOff :: Ptr CTime -> Int -> IO CTime Исходный код

pokeElemOff :: Ptr CTime -> Int -> CTime -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CTime Исходный код

pokeByteOff :: Ptr b -> Int -> CTime -> IO () Исходный код

peek :: Ptr CTime -> IO CTime Исходный код

poke :: Ptr CTime -> CTime -> IO () Исходный код

Storable CClock
Подробности экземпляра

Определено в Foreign.C.Types

Методы

sizeOf :: CClock -> Int Исходный код

alignment :: CClock -> Int Исходный код

peekElemOff :: Ptr CClock -> Int -> IO CClock Исходный код

pokeElemOff :: Ptr CClock -> Int -> CClock -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CClock Исходный код

pokeByteOff :: Ptr b -> Int -> CClock -> IO () Исходный код

peek :: Ptr CClock -> IO CClock Исходный код

poke :: Ptr CClock -> CClock -> IO () Исходный код

Storable CSigAtomic
Детали экземпляра

Определено в Foreign.C.Types

Методы

sizeOf :: CSigAtomic -> Int Исходный код

alignment :: CSigAtomic -> Int Исходный код

peekElemOff :: Ptr CSigAtomic -> Int -> IO CSigAtomic Исходный код

pokeElemOff :: Ptr CSigAtomic -> Int -> CSigAtomic -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CSigAtomic Исходный код

pokeByteOff :: Ptr b -> Int -> CSigAtomic -> IO () Исходный код

peek :: Ptr CSigAtomic -> IO CSigAtomic Исходный код

poke :: Ptr CSigAtomic -> CSigAtomic -> IO () Исходный код

Storable CWchar
Детали экземпляра

Определено в Foreign.C.Types

Методы

sizeOf :: CWchar -> Int Исходный код

alignment :: CWchar -> Int Исходный код

peekElemOff :: Ptr CWchar -> Int -> IO CWchar Исходный код

pokeElemOff :: Ptr CWchar -> Int -> CWchar -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CWchar Исходный код

pokeByteOff :: Ptr b -> Int -> CWchar -> IO () Исходный код

peek :: Ptr CWchar -> IO CWchar Исходный код

poke :: Ptr CWchar -> CWchar -> IO () Исходный код

Storable CSize
Информация об экземпляре

Определено в Foreign.C.Types

Краткое описание методов

sizeOf :: CSize -> Int Источник

alignment :: CSize -> Int Источник

peekElemOff :: Ptr CSize -> Int -> IO CSize Источник

pokeElemOff :: Ptr CSize -> Int -> CSize -> IO () Источник

peekByteOff :: Ptr b -> Int -> IO CSize Источник

pokeByteOff :: Ptr b -> Int -> CSize -> IO () Источник

peek :: Ptr CSize -> IO CSize Источник

poke :: Ptr CSize -> CSize -> IO () Источник

Storable CPtrdiff
Информация об экземпляре

Определено в Foreign.C.Types

Краткое описание методов

sizeOf :: CPtrdiff -> Int Источник

alignment :: CPtrdiff -> Int Источник

peekElemOff :: Ptr CPtrdiff -> Int -> IO CPtrdiff Источник

pokeElemOff :: Ptr CPtrdiff -> Int -> CPtrdiff -> IO () Источник

peekByteOff :: Ptr b -> Int -> IO CPtrdiff Источник

pokeByteOff :: Ptr b -> Int -> CPtrdiff -> IO () Источник

peek :: Ptr CPtrdiff -> IO CPtrdiff Источник

poke :: Ptr CPtrdiff -> CPtrdiff -> IO () Источник

Storable CDouble
Информация об экземпляре

Определено в Foreign.C.Types

Краткое описание методов

sizeOf :: CDouble -> Int Источник

alignment :: CDouble -> Int Источник

peekElemOff :: Ptr CDouble -> Int -> IO CDouble Источник

pokeElemOff :: Ptr CDouble -> Int -> CDouble -> IO () Источник

peekByteOff :: Ptr b -> Int -> IO CDouble Источник

pokeByteOff :: Ptr b -> Int -> CDouble -> IO () Источник

peek :: Ptr CDouble -> IO CDouble Источник

poke :: Ptr CDouble -> CDouble -> IO () Источник

Storable CFloat
Подробности экземпляра

Определено в Foreign.C.Types

Методы

sizeOf :: CFloat -> Int Исходный код

alignment :: CFloat -> Int Исходный код

peekElemOff :: Ptr CFloat -> Int -> IO CFloat Исходный код

pokeElemOff :: Ptr CFloat -> Int -> CFloat -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CFloat Исходный код

pokeByteOff :: Ptr b -> Int -> CFloat -> IO () Исходный код

peek :: Ptr CFloat -> IO CFloat Исходный код

poke :: Ptr CFloat -> CFloat -> IO () Исходный код

Storable CBool
Подробности экземпляра

Определено в Foreign.C.Types

Методы

sizeOf :: CBool -> Int Исходный код

alignment :: CBool -> Int Исходный код

peekElemOff :: Ptr CBool -> Int -> IO CBool Исходный код

pokeElemOff :: Ptr CBool -> Int -> CBool -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CBool Исходный код

pokeByteOff :: Ptr b -> Int -> CBool -> IO () Исходный код

peek :: Ptr CBool -> IO CBool Исходный код

poke :: Ptr CBool -> CBool -> IO () Исходный код

Storable CULLong
Подробности экземпляра

Определено в Foreign.C.Types

Методы

sizeOf :: CULLong -> Int Исходный код

alignment :: CULLong -> Int Исходный код

peekElemOff :: Ptr CULLong -> Int -> IO CULLong Исходный код

pokeElemOff :: Ptr CULLong -> Int -> CULLong -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CULLong Исходный код

pokeByteOff :: Ptr b -> Int -> CULLong -> IO () Исходный код

peek :: Ptr CULLong -> IO CULLong Исходный код

poke :: Ptr CULLong -> CULLong -> IO () Исходный код

Storable CLLong
Подробности экземпляра

Определено в Foreign.C.Types

Методы

sizeOf :: CLLong -> Int Исходный код

alignment :: CLLong -> Int Исходный код

peekElemOff :: Ptr CLLong -> Int -> IO CLLong Исходный код

pokeElemOff :: Ptr CLLong -> Int -> CLLong -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CLLong Исходный код

pokeByteOff :: Ptr b -> Int -> CLLong -> IO () Исходный код

peek :: Ptr CLLong -> IO CLLong Исходный код

poke :: Ptr CLLong -> CLLong -> IO () Исходный код

Storable CULong
Подробности экземпляра

Определено в Foreign.C.Types

Методы

sizeOf :: CULong -> Int Исходный код

alignment :: CULong -> Int Исходный код

peekElemOff :: Ptr CULong -> Int -> IO CULong Исходный код

pokeElemOff :: Ptr CULong -> Int -> CULong -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CULong Исходный код

pokeByteOff :: Ptr b -> Int -> CULong -> IO () Исходный код

peek :: Ptr CULong -> IO CULong Исходный код

poke :: Ptr CULong -> CULong -> IO () Исходный код

Storable CLong
Подробности экземпляра

Определено в Foreign.C.Types

Методы

sizeOf :: CLong -> Int Исходный код

alignment :: CLong -> Int Исходный код

peekElemOff :: Ptr CLong -> Int -> IO CLong Исходный код

pokeElemOff :: Ptr CLong -> Int -> CLong -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CLong Исходный код

pokeByteOff :: Ptr b -> Int -> CLong -> IO () Исходный код

peek :: Ptr CLong -> IO CLong Исходный код

poke :: Ptr CLong -> CLong -> IO () Исходный код

Storable CUInt
Подробности экземпляра

Определено в Foreign.C.Types

Методы

sizeOf :: CUInt -> Int Исходный код

alignment :: CUInt -> Int Исходный код

peekElemOff :: Ptr CUInt -> Int -> IO CUInt Исходный код

pokeElemOff :: Ptr CUInt -> Int -> CUInt -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CUInt Исходный код

pokeByteOff :: Ptr b -> Int -> CUInt -> IO () Исходный код

peek :: Ptr CUInt -> IO CUInt Исходный код

poke :: Ptr CUInt -> CUInt -> IO () Исходный код

Storable CInt
Подробности экземпляра

Определено в Foreign.C.Types

Краткое описание методов

sizeOf :: CInt -> Int Source

alignment :: CInt -> Int Source

peekElemOff :: Ptr CInt -> Int -> IO CInt Source

pokeElemOff :: Ptr CInt -> Int -> CInt -> IO () Source

peekByteOff :: Ptr b -> Int -> IO CInt Source

pokeByteOff :: Ptr b -> Int -> CInt -> IO () Source

peek :: Ptr CInt -> IO CInt Source

poke :: Ptr CInt -> CInt -> IO () Source

Storable CUShort
Подробности экземпляра

Определено в Foreign.C.Types

Краткое описание методов

sizeOf :: CUShort -> Int Source

alignment :: CUShort -> Int Source

peekElemOff :: Ptr CUShort -> Int -> IO CUShort Source

pokeElemOff :: Ptr CUShort -> Int -> CUShort -> IO () Source

peekByteOff :: Ptr b -> Int -> IO CUShort Source

pokeByteOff :: Ptr b -> Int -> CUShort -> IO () Source

peek :: Ptr CUShort -> IO CUShort Source

poke :: Ptr CUShort -> CUShort -> IO () Source

Storable CShort
Подробности экземпляра

Определено в Foreign.C.Types

Краткое описание методов

sizeOf :: CShort -> Int Source

alignment :: CShort -> Int Source

peekElemOff :: Ptr CShort -> Int -> IO CShort Source

pokeElemOff :: Ptr CShort -> Int -> CShort -> IO () Source

peekByteOff :: Ptr b -> Int -> IO CShort Source

pokeByteOff :: Ptr b -> Int -> CShort -> IO () Source

peek :: Ptr CShort -> IO CShort Source

poke :: Ptr CShort -> CShort -> IO () Source

Storable CUChar
Подробности экземпляра

Определено в Foreign.C.Types

Методы

sizeOf :: CUChar -> Int Исходный код

alignment :: CUChar -> Int Исходный код

peekElemOff :: Ptr CUChar -> Int -> IO CUChar Исходный код

pokeElemOff :: Ptr CUChar -> Int -> CUChar -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CUChar Исходный код

pokeByteOff :: Ptr b -> Int -> CUChar -> IO () Исходный код

peek :: Ptr CUChar -> IO CUChar Исходный код

poke :: Ptr CUChar -> CUChar -> IO () Исходный код

Storable CSChar
Подробности экземпляра

Определено в Foreign.C.Types

Методы

sizeOf :: CSChar -> Int Исходный код

alignment :: CSChar -> Int Исходный код

peekElemOff :: Ptr CSChar -> Int -> IO CSChar Исходный код

pokeElemOff :: Ptr CSChar -> Int -> CSChar -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CSChar Исходный код

pokeByteOff :: Ptr b -> Int -> CSChar -> IO () Исходный код

peek :: Ptr CSChar -> IO CSChar Исходный код

poke :: Ptr CSChar -> CSChar -> IO () Исходный код

Storable CChar
Подробности экземпляра

Определено в Foreign.C.Types

Краткое описание методов

sizeOf :: CChar -> Int Source

alignment :: CChar -> Int Source

peekElemOff :: Ptr CChar -> Int -> IO CChar Source

pokeElemOff :: Ptr CChar -> Int -> CChar -> IO () Source

peekByteOff :: Ptr b -> Int -> IO CChar Source

pokeByteOff :: Ptr b -> Int -> CChar -> IO () Source

peek :: Ptr CChar -> IO CChar Source

poke :: Ptr CChar -> CChar -> IO () Source

Storable Fd
Подробности экземпляра

Определено в System.Posix.Types

Краткое описание методов

sizeOf :: Fd -> Int Source

alignment :: Fd -> Int Source

peekElemOff :: Ptr Fd -> Int -> IO Fd Source

pokeElemOff :: Ptr Fd -> Int -> Fd -> IO () Source

peekByteOff :: Ptr b -> Int -> IO Fd Source

pokeByteOff :: Ptr b -> Int -> Fd -> IO () Source

peek :: Ptr Fd -> IO Fd Source

poke :: Ptr Fd -> Fd -> IO () Source

Storable CNfds
Подробности экземпляра

Определено в System.Posix.Types

Краткое описание методов

sizeOf :: CNfds -> Int Source

alignment :: CNfds -> Int Source

peekElemOff :: Ptr CNfds -> Int -> IO CNfds Source

pokeElemOff :: Ptr CNfds -> Int -> CNfds -> IO () Source

peekByteOff :: Ptr b -> Int -> IO CNfds Source

pokeByteOff :: Ptr b -> Int -> CNfds -> IO () Source

peek :: Ptr CNfds -> IO CNfds Source

poke :: Ptr CNfds -> CNfds -> IO () Source

Storable CSocklen
Подробности экземпляра

Определено в System.Posix.Types

Методы

sizeOf :: CSocklen -> Int Исходный код

alignment :: CSocklen -> Int Исходный код

peekElemOff :: Ptr CSocklen -> Int -> IO CSocklen Исходный код

pokeElemOff :: Ptr CSocklen -> Int -> CSocklen -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CSocklen Исходный код

pokeByteOff :: Ptr b -> Int -> CSocklen -> IO () Исходный код

peek :: Ptr CSocklen -> IO CSocklen Исходный код

poke :: Ptr CSocklen -> CSocklen -> IO () Исходный код

Storable CTimer
Подробности экземпляра

Определено в System.Posix.Types

Методы

sizeOf :: CTimer -> Int Исходный код

alignment :: CTimer -> Int Исходный код

peekElemOff :: Ptr CTimer -> Int -> IO CTimer Исходный код

pokeElemOff :: Ptr CTimer -> Int -> CTimer -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CTimer Исходный код

pokeByteOff :: Ptr b -> Int -> CTimer -> IO () Исходный код

peek :: Ptr CTimer -> IO CTimer Исходный код

poke :: Ptr CTimer -> CTimer -> IO () Исходный код

Storable CKey
Подробности экземпляра

Определено в System.Posix.Types

Методы

sizeOf :: CKey -> Int Исходный код

alignment :: CKey -> Int Исходный код

peekElemOff :: Ptr CKey -> Int -> IO CKey Исходный код

pokeElemOff :: Ptr CKey -> Int -> CKey -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CKey Исходный код

pokeByteOff :: Ptr b -> Int -> CKey -> IO () Исходный код

peek :: Ptr CKey -> IO CKey Исходный код

poke :: Ptr CKey -> CKey -> IO () Исходный код

Storable CId
Подробности экземпляра

Определено в System.Posix.Types

Методы

sizeOf :: CId -> Int Исходный код

alignment :: CId -> Int Исходный код

peekElemOff :: Ptr CId -> Int -> IO CId Исходный код

pokeElemOff :: Ptr CId -> Int -> CId -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CId Исходный код

pokeByteOff :: Ptr b -> Int -> CId -> IO () Исходный код

peek :: Ptr CId -> IO CId Исходный код

poke :: Ptr CId -> CId -> IO () Исходный код

Storable CFsFilCnt
Подробности экземпляра

Определено в System.Posix.Types

Методы

sizeOf :: CFsFilCnt -> Int Исходный код

alignment :: CFsFilCnt -> Int Исходный код

peekElemOff :: Ptr CFsFilCnt -> Int -> IO CFsFilCnt Исходный код

pokeElemOff :: Ptr CFsFilCnt -> Int -> CFsFilCnt -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CFsFilCnt Исходный код

pokeByteOff :: Ptr b -> Int -> CFsFilCnt -> IO () Исходный код

peek :: Ptr CFsFilCnt -> IO CFsFilCnt Исходный код

poke :: Ptr CFsFilCnt -> CFsFilCnt -> IO () Исходный код

Storable CFsBlkCnt
Подробности экземпляра

Определено в System.Posix.Types

Методы

sizeOf :: CFsBlkCnt -> Int Исходный код

alignment :: CFsBlkCnt -> Int Исходный код

peekElemOff :: Ptr CFsBlkCnt -> Int -> IO CFsBlkCnt Исходный код

pokeElemOff :: Ptr CFsBlkCnt -> Int -> CFsBlkCnt -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CFsBlkCnt Исходный код

pokeByteOff :: Ptr b -> Int -> CFsBlkCnt -> IO () Исходный код

peek :: Ptr CFsBlkCnt -> IO CFsBlkCnt Исходный код

poke :: Ptr CFsBlkCnt -> CFsBlkCnt -> IO () Исходный код

Storable CClockId
Сведения об экземпляре

Определено в System.Posix.Types

Методы

sizeOf :: CClockId -> Int Исходный код

alignment :: CClockId -> Int Исходный код

peekElemOff :: Ptr CClockId -> Int -> IO CClockId Исходный код

pokeElemOff :: Ptr CClockId -> Int -> CClockId -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CClockId Исходный код

pokeByteOff :: Ptr b -> Int -> CClockId -> IO () Исходный код

peek :: Ptr CClockId -> IO CClockId Исходный код

poke :: Ptr CClockId -> CClockId -> IO () Исходный код

Storable CBlkCnt
Сведения об экземпляре

Определено в System.Posix.Types

Методы

sizeOf :: CBlkCnt -> Int Исходный код

alignment :: CBlkCnt -> Int Исходный код

peekElemOff :: Ptr CBlkCnt -> Int -> IO CBlkCnt Исходный код

pokeElemOff :: Ptr CBlkCnt -> Int -> CBlkCnt -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CBlkCnt Исходный код

pokeByteOff :: Ptr b -> Int -> CBlkCnt -> IO () Исходный код

peek :: Ptr CBlkCnt -> IO CBlkCnt Исходный код

poke :: Ptr CBlkCnt -> CBlkCnt -> IO () Исходный код

Storable CBlkSize
Подробности экземпляра

Определено в System.Posix.Types

Методы

sizeOf :: CBlkSize -> Int Исходный код

alignment :: CBlkSize -> Int Исходный код

peekElemOff :: Ptr CBlkSize -> Int -> IO CBlkSize Исходный код

pokeElemOff :: Ptr CBlkSize -> Int -> CBlkSize -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CBlkSize Исходный код

pokeByteOff :: Ptr b -> Int -> CBlkSize -> IO () Исходный код

peek :: Ptr CBlkSize -> IO CBlkSize Исходный код

poke :: Ptr CBlkSize -> CBlkSize -> IO () Исходный код

Storable CRLim
Подробности экземпляра

Определено в System.Posix.Types

Методы

sizeOf :: CRLim -> Int Исходный код

alignment :: CRLim -> Int Исходный код

peekElemOff :: Ptr CRLim -> Int -> IO CRLim Исходный код

pokeElemOff :: Ptr CRLim -> Int -> CRLim -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CRLim Исходный код

pokeByteOff :: Ptr b -> Int -> CRLim -> IO () Исходный код

peek :: Ptr CRLim -> IO CRLim Исходный код

poke :: Ptr CRLim -> CRLim -> IO () Исходный код

Storable CTcflag
Сведения об экземпляре

Определено в System.Posix.Types

Методы

sizeOf :: CTcflag -> Int Исходный код

alignment :: CTcflag -> Int Исходный код

peekElemOff :: Ptr CTcflag -> Int -> IO CTcflag Исходный код

pokeElemOff :: Ptr CTcflag -> Int -> CTcflag -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CTcflag Исходный код

pokeByteOff :: Ptr b -> Int -> CTcflag -> IO () Исходный код

peek :: Ptr CTcflag -> IO CTcflag Исходный код

poke :: Ptr CTcflag -> CTcflag -> IO () Исходный код

Storable CSpeed
Сведения об экземпляре

Определено в System.Posix.Types

Методы

sizeOf :: CSpeed -> Int Исходный код

alignment :: CSpeed -> Int Исходный код

peekElemOff :: Ptr CSpeed -> Int -> IO CSpeed Исходный код

pokeElemOff :: Ptr CSpeed -> Int -> CSpeed -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CSpeed Исходный код

pokeByteOff :: Ptr b -> Int -> CSpeed -> IO () Исходный код

peek :: Ptr CSpeed -> IO CSpeed Исходный код

poke :: Ptr CSpeed -> CSpeed -> IO () Исходный код

Storable CCc
Подробности экземпляра

Определено в System.Posix.Types

Методы

sizeOf :: CCc -> Int Исходный код

alignment :: CCc -> Int Исходный код

peekElemOff :: Ptr CCc -> Int -> IO CCc Исходный код

pokeElemOff :: Ptr CCc -> Int -> CCc -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CCc Исходный код

pokeByteOff :: Ptr b -> Int -> CCc -> IO () Исходный код

peek :: Ptr CCc -> IO CCc Исходный код

poke :: Ptr CCc -> CCc -> IO () Исходный код

Storable CUid
Подробности экземпляра

Определено в System.Posix.Types

Методы

sizeOf :: CUid -> Int Исходный код

alignment :: CUid -> Int Исходный код

peekElemOff :: Ptr CUid -> Int -> IO CUid Исходный код

pokeElemOff :: Ptr CUid -> Int -> CUid -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CUid Исходный код

pokeByteOff :: Ptr b -> Int -> CUid -> IO () Исходный код

peek :: Ptr CUid -> IO CUid Исходный код

poke :: Ptr CUid -> CUid -> IO () Исходный код

Storable CNlink
Подробности экземпляра

Определено в System.Posix.Types

Методы

sizeOf :: CNlink -> Int Исходный код

alignment :: CNlink -> Int Исходный код

peekElemOff :: Ptr CNlink -> Int -> IO CNlink Исходный код

pokeElemOff :: Ptr CNlink -> Int -> CNlink -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CNlink Исходный код

pokeByteOff :: Ptr b -> Int -> CNlink -> IO () Исходный код

peek :: Ptr CNlink -> IO CNlink Исходный код

poke :: Ptr CNlink -> CNlink -> IO () Исходный код

Storable CGid
Подробности экземпляра

Определено в System.Posix.Types

Методы

sizeOf :: CGid -> Int Исходный код

alignment :: CGid -> Int Исходный код

peekElemOff :: Ptr CGid -> Int -> IO CGid Исходный код

pokeElemOff :: Ptr CGid -> Int -> CGid -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CGid Исходный код

pokeByteOff :: Ptr b -> Int -> CGid -> IO () Исходный код

peek :: Ptr CGid -> IO CGid Исходный код

poke :: Ptr CGid -> CGid -> IO () Исходный код

Storable CSsize
Подробности экземпляра

Определено в System.Posix.Types

Методы

sizeOf :: CSsize -> Int Исходный код

alignment :: CSsize -> Int Исходный код

peekElemOff :: Ptr CSsize -> Int -> IO CSsize Исходный код

pokeElemOff :: Ptr CSsize -> Int -> CSsize -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CSsize Исходный код

pokeByteOff :: Ptr b -> Int -> CSsize -> IO () Исходный код

peek :: Ptr CSsize -> IO CSsize Исходный код

poke :: Ptr CSsize -> CSsize -> IO () Исходный код

Storable CPid
Подробности экземпляра

Определено в System.Posix.Types

Методы

sizeOf :: CPid -> Int Исходный код

alignment :: CPid -> Int Исходный код

peekElemOff :: Ptr CPid -> Int -> IO CPid Исходный код

pokeElemOff :: Ptr CPid -> Int -> CPid -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CPid Исходный код

pokeByteOff :: Ptr b -> Int -> CPid -> IO () Исходный код

peek :: Ptr CPid -> IO CPid Исходный код

poke :: Ptr CPid -> CPid -> IO () Исходный код

Storable COff
Подробности экземпляра

Определено в System.Posix.Types

Методы

sizeOf :: COff -> Int Исходный код

alignment :: COff -> Int Исходный код

peekElemOff :: Ptr COff -> Int -> IO COff Исходный код

pokeElemOff :: Ptr COff -> Int -> COff -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO COff Исходный код

pokeByteOff :: Ptr b -> Int -> COff -> IO () Исходный код

peek :: Ptr COff -> IO COff Исходный код

poke :: Ptr COff -> COff -> IO () Исходный код

Storable CMode
Подробности экземпляра

Определено в System.Posix.Types

Методы

sizeOf :: CMode -> Int Исходный код

alignment :: CMode -> Int Исходный код

peekElemOff :: Ptr CMode -> Int -> IO CMode Исходный код

pokeElemOff :: Ptr CMode -> Int -> CMode -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CMode Исходный код

pokeByteOff :: Ptr b -> Int -> CMode -> IO () Исходный код

peek :: Ptr CMode -> IO CMode Исходный код

poke :: Ptr CMode -> CMode -> IO () Исходный код

Storable CIno
Подробности экземпляра

Определено в System.Posix.Types

Методы

sizeOf :: CIno -> Int Исходный код

alignment :: CIno -> Int Исходный код

peekElemOff :: Ptr CIno -> Int -> IO CIno Исходный код

pokeElemOff :: Ptr CIno -> Int -> CIno -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CIno Исходный код

pokeByteOff :: Ptr b -> Int -> CIno -> IO () Исходный код

peek :: Ptr CIno -> IO CIno Исходный код

poke :: Ptr CIno -> CIno -> IO () Исходный код

Storable CDev
Подробности экземпляра

Определено в System.Posix.Types

Методы

sizeOf :: CDev -> Int Исходный код

alignment :: CDev -> Int Исходный код

peekElemOff :: Ptr CDev -> Int -> IO CDev Исходный код

pokeElemOff :: Ptr CDev -> Int -> CDev -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO CDev Исходный код

pokeByteOff :: Ptr b -> Int -> CDev -> IO () Исходный код

peek :: Ptr CDev -> IO CDev Исходный код

poke :: Ptr CDev -> CDev -> IO () Исходный код

(Storable a, Integral a) => Storable (Ratio a)

Since: base-4.8.0.0

Подробности экземпляра

Определено в Foreign.Storable

Краткое описание методов

sizeOf :: Ratio a -> Int Source

alignment :: Ratio a -> Int Source

peekElemOff :: Ptr (Ratio a) -> Int -> IO (Ratio a) Source

pokeElemOff :: Ptr (Ratio a) -> Int -> Ratio a -> IO () Source

peekByteOff :: Ptr b -> Int -> IO (Ratio a) Source

pokeByteOff :: Ptr b -> Int -> Ratio a -> IO () Source

peek :: Ptr (Ratio a) -> IO (Ratio a) Source

poke :: Ptr (Ratio a) -> Ratio a -> IO () Source

Storable (StablePtr a)

С версии: base-2.1

Подробности экземпляра

Определено в Foreign.Storable

Краткое описание методов

sizeOf :: StablePtr a -> Int Source

alignment :: StablePtr a -> Int Source

peekElemOff :: Ptr (StablePtr a) -> Int -> IO (StablePtr a) Source

pokeElemOff :: Ptr (StablePtr a) -> Int -> StablePtr a -> IO () Source

peekByteOff :: Ptr b -> Int -> IO (StablePtr a) Source

pokeByteOff :: Ptr b -> Int -> StablePtr a -> IO () Source

peek :: Ptr (StablePtr a) -> IO (StablePtr a) Source

poke :: Ptr (StablePtr a) -> StablePtr a -> IO () Source

Storable (Ptr a)

С версии: base-2.1

Подробности экземпляра

Определено в Foreign.Storable

Краткое описание методов

sizeOf :: Ptr a -> Int Source

alignment :: Ptr a -> Int Source

peekElemOff :: Ptr (Ptr a) -> Int -> IO (Ptr a) Source

pokeElemOff :: Ptr (Ptr a) -> Int -> Ptr a -> IO () Source

peekByteOff :: Ptr b -> Int -> IO (Ptr a) Source

pokeByteOff :: Ptr b -> Int -> Ptr a -> IO () Source

peek :: Ptr (Ptr a) -> IO (Ptr a) Source

poke :: Ptr (Ptr a) -> Ptr a -> IO () Source

Storable (FunPtr a)

Since: base-2.1

Подробности экземпляра

Определено в Foreign.Storable

Методы

sizeOf :: FunPtr a -> Int Источник

alignment :: FunPtr a -> Int Источник

peekElemOff :: Ptr (FunPtr a) -> Int -> IO (FunPtr a) Источник

pokeElemOff :: Ptr (FunPtr a) -> Int -> FunPtr a -> IO () Источник

peekByteOff :: Ptr b -> Int -> IO (FunPtr a) Источник

pokeByteOff :: Ptr b -> Int -> FunPtr a -> IO () Источник

peek :: Ptr (FunPtr a) -> IO (FunPtr a) Источник

poke :: Ptr (FunPtr a) -> FunPtr a -> IO () Источник

Storable a => Storable (Down a)

Since: base-4.14.0.0

Подробности экземпляра

Определено в Data.Ord

Методы

sizeOf :: Down a -> Int Источник

alignment :: Down a -> Int Источник

peekElemOff :: Ptr (Down a) -> Int -> IO (Down a) Источник

pokeElemOff :: Ptr (Down a) -> Int -> Down a -> IO () Источник

peekByteOff :: Ptr b -> Int -> IO (Down a) Источник

pokeByteOff :: Ptr b -> Int -> Down a -> IO () Источник

peek :: Ptr (Down a) -> IO (Down a) Источник

poke :: Ptr (Down a) -> Down a -> IO () Источник

Storable a => Storable (Identity a)

Since: base-4.9.0.0

Подробности экземпляра

Определено в Data.Functor.Identity

Методы

sizeOf :: Identity a -> Int Источник

alignment :: Identity a -> Int Источник

peekElemOff :: Ptr (Identity a) -> Int -> IO (Identity a) Источник

pokeElemOff :: Ptr (Identity a) -> Int -> Identity a -> IO () Источник

peekByteOff :: Ptr b -> Int -> IO (Identity a) Источник

pokeByteOff :: Ptr b -> Int -> Identity a -> IO () Источник

peek :: Ptr (Identity a) -> IO (Identity a) Источник

poke :: Ptr (Identity a) -> Identity a -> IO () Источник

Storable a => Storable (Complex a)

С момента: base-4.8.0.0

Подробности экземпляра

Определено в Data.Complex

Методы

sizeOf :: Complex a -> Int Источник

alignment :: Complex a -> Int Источник

peekElemOff :: Ptr (Complex a) -> Int -> IO (Complex a) Источник

pokeElemOff :: Ptr (Complex a) -> Int -> Complex a -> IO () Источник

peekByteOff :: Ptr b -> Int -> IO (Complex a) Источник

pokeByteOff :: Ptr b -> Int -> Complex a -> IO () Источник

peek :: Ptr (Complex a) -> IO (Complex a) Источник

poke :: Ptr (Complex a) -> Complex a -> IO () Источник

Storable a => Storable (Const a b)

С момента: base-4.9.0.0

Подробности экземпляра

Определено в Data.Functor.Const

Методы

sizeOf :: Const a b -> Int Исходный код

alignment :: Const a b -> Int Исходный код

peekElemOff :: Ptr (Const a b) -> Int -> IO (Const a b) Исходный код

pokeElemOff :: Ptr (Const a b) -> Int -> Const a b -> IO () Исходный код

peekByteOff :: Ptr b0 -> Int -> IO (Const a b) Исходный код

pokeByteOff :: Ptr b0 -> Int -> Const a b -> IO () Исходный код

peek :: Ptr (Const a b) -> IO (Const a b) Исходный код

poke :: Ptr (Const a b) -> Const a b -> IO () Исходный код

© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/8.10.2/docs/html/libraries/base-4.14.1.0/Foreign-Storable.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API