Data.Array.Unboxed
| Copyright | (c) The University of Glasgow 2001 |
|---|---|
| License | BSD-style (see the file libraries/base/LICENSE) |
| Maintainer | libraries@haskell.org |
| Stability | experimental |
| Portability | non-portable (uses Data.Array.IArray) |
| Safe Haskell | Trustworthy |
| Language | Haskell2010 |
Описание
Неизменяемые массивы с распакованными элементами.
Массивы с распакованными элементами
Массивы с распакованными элементами. Экземпляры IArray предоставляются для UArray с определенными типами элементов (Int, Float, Char, и т.д.; см. класс UArray для полного списка).
UArray обычно будет более эффективным (с точки зрения времени и пространства) по сравнению с эквивалентным Array с тем же типом элементов. Однако, UArray является строгим в своих элементах — поэтому не используйте UArray, если вам нужна нестрогость, которую обеспечивает Array.
Поскольку IArray интерфейс предоставляет операции, перегруженные по типу массива, должно быть возможно просто изменить тип используемого массива в программе, например, с Array на UArray, чтобы получить преимущества распакованных массивов (не забудьте импортировать Data.Array.Unboxed вместо Data.Array).
Экземпляры
Определено в Data.Array.Base Методыbounds :: Ix i => UArray i (StablePtr a) -> (i, i) Исходный код numElements :: Ix i => UArray i (StablePtr a) -> Int unsafeArray :: Ix i => (i, i) -> [(Int, StablePtr a)] -> UArray i (StablePtr a) unsafeAt :: Ix i => UArray i (StablePtr a) -> Int -> StablePtr a unsafeReplace :: Ix i => UArray i (StablePtr a) -> [(Int, StablePtr a)] -> UArray i (StablePtr a) unsafeAccum :: Ix i => (StablePtr a -> e' -> StablePtr a) -> UArray i (StablePtr a) -> [(Int, e')] -> UArray i (StablePtr a) unsafeAccumArray :: Ix i => (StablePtr a -> e' -> StablePtr a) -> StablePtr a -> (i, i) -> [(Int, e')] -> UArray i (StablePtr a) | |
| IArray UArray (Ptr a) | |
Определено в Data.Array.Base Методыbounds :: Ix i => UArray i (Ptr a) -> (i, i) Исходный код numElements :: Ix i => UArray i (Ptr a) -> Int unsafeArray :: Ix i => (i, i) -> [(Int, Ptr a)] -> UArray i (Ptr a) unsafeAt :: Ix i => UArray i (Ptr a) -> Int -> Ptr a unsafeReplace :: Ix i => UArray i (Ptr a) -> [(Int, Ptr a)] -> UArray i (Ptr a) unsafeAccum :: Ix i => (Ptr a -> e' -> Ptr a) -> UArray i (Ptr a) -> [(Int, e')] -> UArray i (Ptr a) unsafeAccumArray :: Ix i => (Ptr a -> e' -> Ptr a) -> Ptr a -> (i, i) -> [(Int, e')] -> UArray i (Ptr a) | |
| IArray UArray (FunPtr a) | |
© 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/array-0.5.4.0/Data-Array-Unboxed.html