base-4.20.0.0: src/GHC/Arr.hs
{-# OPTIONS_HADDOCK not-home #-}
-- |
--
-- Module : GHC.Arr
-- Copyright : (c) The University of Glasgow, 1994-2000
-- License : see libraries/base/LICENSE
--
-- Maintainer : ghc-devs@haskell.org
-- Stability : internal
-- Portability : non-portable (GHC extensions)
--
-- GHC\'s array implementation.
--
-- /The API of this module is unstable and not meant to be consumed by the general public./
-- If you absolutely must depend on it, make sure to use a tight upper
-- bound, e.g., @base < 4.X@ rather than @base < 5@, because the interface can
-- change rapidly without much warning.
--
module GHC.Arr
(Ix(..),
Array(..),
STArray(..),
arrEleBottom,
array,
listArray,
(!),
safeRangeSize,
negRange,
safeIndex,
badSafeIndex,
bounds,
numElements,
numElementsSTArray,
indices,
elems,
assocs,
accumArray,
adjust,
(//),
accum,
amap,
ixmap,
eqArray,
cmpArray,
cmpIntArray,
newSTArray,
boundsSTArray,
readSTArray,
writeSTArray,
freezeSTArray,
thawSTArray,
foldlElems,
foldlElems',
foldl1Elems,
foldrElems,
foldrElems',
foldr1Elems,
-- * Unsafe operations
fill,
done,
unsafeArray,
unsafeArray',
lessSafeIndex,
unsafeAt,
unsafeReplace,
unsafeAccumArray,
unsafeAccumArray',
unsafeAccum,
unsafeReadSTArray,
unsafeWriteSTArray,
unsafeFreezeSTArray,
unsafeThawSTArray
) where
import GHC.Internal.Arr