Spec-Zone.ru › Haskell 9

Data.Array.Byte

Авторские права (c) Roman Leshchinskiy 2009-2012
Лицензия BSD-style
Сопровождающий libraries@haskell.org
Переносимость непереносимый
Безопасность Haskell Trustworthy
Язык Haskell2010

Описание

Производный от пакета primitive.

data ByteArray Исходный код

Обёртка с поднятым типом для ByteArray#.

Поскольку ByteArray# — тип без поднятия и не является членом рода Type, такие выражения, как [ByteArray#] или IO ByteArray#, имеют некорректные типы. Чтобы обойти это неудобство, данный модуль предоставляет стандартную обёртку с поднятым типом, принадлежащую Type. Предполагается, что в API более высокого уровня клиенты будут использовать ByteArray, а внутри оборачивать и разворачивать ByteArray по своему усмотрению и использовать функции из GHC.Exts.

Представление ByteArray в памяти:

╭─────────────┬───╮  ╭────────┬──────┬─────────╮
│ Constructor │ * ┼─►│ Header │ Size │ Payload │
╰─────────────┴───╯  ╰────────┴──────┴─────────╯

Его накладные расходы составляют:

  • ByteArray конструктор: 1 слово
  • Указатель на ByteArray#: 1 слово
  • ByteArray# заголовок: 1 слово
  • ByteArray# размер: 1 слово

Слово — это единица выделения памяти в куче; его размер составляет 8 байт в 64-разрядных системах и 4 байта в 32-разрядных системах.

Начиная с: base-4.17.0.0

Конструкторы

ByteArray ByteArray#
Экземпляры
Подробности экземпляров
Monoid ByteArray Исходный код

Начиная с: base-4.17.0.0

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

Определён в Data.Array.Byte

Методы

mempty :: ByteArray Исходный код

mappend :: ByteArray -> ByteArray -> ByteArray Исходный код

mconcat :: [ByteArray] -> ByteArray Исходный код

Semigroup ByteArray Исходный код

Начиная с: base-4.17.0.0

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

Определён в Data.Array.Byte

Методы

(<>) :: ByteArray -> ByteArray -> ByteArray Исходный код

sconcat :: NonEmpty ByteArray -> ByteArray Исходный код

stimes :: Integral b => b -> ByteArray -> ByteArray Исходный код

Eq ByteArray Исходный код

Начиная с: base-4.17.0.0

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

Определён в Data.Array.Byte

Методы

(==) :: ByteArray -> ByteArray -> Bool Исходный код

(/=) :: ByteArray -> ByteArray -> Bool Исходный код

Ord ByteArray Исходный код

Нелексикографический порядок. Сначала сравнивается длина байтовых массивов, а если длины равны, используется лексикографический порядок. Может измениться между основными версиями.

Начиная с: base-4.17.0.0

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

Определён в Data.Array.Byte

Методы

compare :: ByteArray -> ByteArray -> Ordering Исходный код

(<) :: ByteArray -> ByteArray -> Bool Исходный код

(<=) :: ByteArray -> ByteArray -> Bool Исходный код

(>) :: ByteArray -> ByteArray -> Bool Исходный код

(>=) :: ByteArray -> ByteArray -> Bool Исходный код

max :: ByteArray -> ByteArray -> ByteArray Исходный код

min :: ByteArray -> ByteArray -> ByteArray Исходный код

Data ByteArray Исходный код

Начиная с: base-4.17.0.0

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

Определён в Data.Array.Byte

Методы

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ByteArray -> c ByteArray Исходный код

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ByteArray Исходный код

toConstr :: ByteArray -> Constr Исходный код

dataTypeOf :: ByteArray -> DataType Исходный код

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ByteArray) Исходный код

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ByteArray) Исходный код

gmapT :: (forall b. Data b => b -> b) -> ByteArray -> ByteArray Исходный код

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ByteArray -> r Исходный код

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ByteArray -> r Исходный код

gmapQ :: (forall d. Data d => d -> u) -> ByteArray -> [u] Исходный код

gmapQi :: Int -> (forall d. Data d => d -> u) -> ByteArray -> u Исходный код

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ByteArray -> m ByteArray Исходный код

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ByteArray -> m ByteArray Исходный код

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ByteArray -> m ByteArray Исходный код

IsList ByteArray Исходный код

Начиная с: base-4.17.0.0

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

Определён в Data.Array.Byte

Ассоциированные типы

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

Определён в Data.Array.Byte

type Item ByteArray = Word8

Методы

fromList :: [Item ByteArray] -> ByteArray Исходный код

fromListN :: Int -> [Item ByteArray] -> ByteArray Исходный код

toList :: ByteArray -> [Item ByteArray] Исходный код

Show ByteArray Исходный код

Начиная с: base-4.17.0.0

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

Определён в Data.Array.Byte

Методы

showsPrec :: Int -> ByteArray -> ShowS Исходный код

show :: ByteArray -> String Исходный код

showList :: [ByteArray] -> ShowS Исходный код

Lift ByteArray Исходный код
Подробности экземпляра

Определён в Data.Array.Byte

Методы

lift :: Quote m => ByteArray -> m Exp Исходный код

liftTyped :: forall (m :: Type -> Type). Quote m => ByteArray -> Code m ByteArray Исходный код

type Item ByteArray Исходный код
Подробности экземпляра

Определён в Data.Array.Byte

type Item ByteArray = Word8

data MutableByteArray s Исходный код

Обёртка с поднятым типом для MutableByteArray#.

Поскольку MutableByteArray# — тип без поднятия и не является членом рода Type, такие выражения, как [MutableByteArray#] или IO MutableByteArray#, имеют некорректные типы. Чтобы обойти это неудобство, данный модуль предоставляет стандартную обёртку с поднятым типом, принадлежащую Type. Предполагается, что в API более высокого уровня клиенты будут использовать MutableByteArray, а внутри оборачивать и разворачивать MutableByteArray по своему усмотрению и использовать функции из GHC.Exts.

Начиная с: base-4.17.0.0

Конструкторы

MutableByteArray (MutableByteArray# s)
Экземпляры
Подробности экземпляров
Eq (MutableByteArray s) Источник

Начиная с: base-4.17.0.0

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

Определён в Data.Array.Byte

Методы

(==) :: MutableByteArray s -> MutableByteArray s -> Bool Источник

(/=) :: MutableByteArray s -> MutableByteArray s -> Bool Источник

Typeable s => Data (MutableByteArray s) Источник

Начиная с: base-4.17.0.0

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

Определён в Data.Array.Byte

Методы

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> MutableByteArray s -> c (MutableByteArray s) Источник

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (MutableByteArray s) Источник

toConstr :: MutableByteArray s -> Constr Источник

dataTypeOf :: MutableByteArray s -> DataType Источник

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (MutableByteArray s)) Источник

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (MutableByteArray s)) Источник

gmapT :: (forall b. Data b => b -> b) -> MutableByteArray s -> MutableByteArray s Источник

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> MutableByteArray s -> r Источник

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> MutableByteArray s -> r Источник

gmapQ :: (forall d. Data d => d -> u) -> MutableByteArray s -> [u] Источник

gmapQi :: Int -> (forall d. Data d => d -> u) -> MutableByteArray s -> u Источник

gmapM :: Monad m => (forall d. Data d => d -> m d) -> MutableByteArray s -> m (MutableByteArray s) Источник

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> MutableByteArray s -> m (MutableByteArray s) Источник

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> MutableByteArray s -> m (MutableByteArray s) Источник

© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/9.14.1/docs/libraries/base-4.22.0.0-66f8/Data-Array-Byte.html

Spec-Zone.ru

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