ArrayRef-0.1.2: Unboxed references, dynamic arrays and moreSource codeContentsIndex
Data.ArrayBZ.Internals.Boxed
PortabilityGHC/Hugs
Stabilityexperimental
MaintainerBulat Ziganshin <Bulat.Ziganshin@gmail.com>
Description
Boxed arrays
Synopsis
data BoxedMutableArray s i e = BMA !i !i !MVec s e
type STArray = BoxedMutableArray
type IOArray = IOSpecific3 BoxedMutableArray
data Array i e = BA !i !i !Vec e
withNewArray :: (STorIO t t2, Ix i, MArray (BoxedMutableArray t2) e t) => (i, i) -> e -> (BoxedMutableArray t2 i e -> t t1) -> t (Array i e)
withArrayCopy :: (Ix t, STorIO t2 s) => Array t t1 -> (BoxedMutableArray s t t1 -> t2 t3) -> t2 (Array t t1)
doReplace :: (Ix i, MArray a e t) => [(Int, e)] -> a i e -> t ()
doAccum :: (Ix i, MArray a t1 t2) => (t1 -> t -> t1) -> [(Int, t)] -> a i t1 -> t2 ()
freezeBA :: (STorIO t3 t, Ix t1) => BoxedMutableArray t t1 t2 -> t3 (Array t1 t2)
thawBA :: (STorIO t2 s, Ix t) => Array t t1 -> t2 (BoxedMutableArray s t t1)
unsafeFreezeBA :: STorIO t3 t1 => BoxedMutableArray t1 t t2 -> t3 (Array t t2)
unsafeThawBA :: STorIO t2 s => Array t t1 -> t2 (BoxedMutableArray s t t1)
sizeOfBA :: (Ix a1, HasBounds a) => a a1 e -> Int
freezeIOArray :: Ix i => IOArray i e -> IO (Array i e)
thawIOArray :: Ix i => Array i e -> IO (IOArray i e)
unsafeFreezeIOArray :: Ix i => IOArray i e -> IO (Array i e)
unsafeThawIOArray :: Ix i => Array i e -> IO (IOArray i e)
freezeSTArray :: Ix i => STArray s i e -> ST s (Array i e)
thawSTArray :: Ix i => Array i e -> ST s (STArray s i e)
unsafeFreezeSTArray :: Ix i => STArray s i e -> ST s (Array i e)
unsafeThawSTArray :: Ix i => Array i e -> ST s (STArray s i e)
iOArrayTc :: TyCon
stArrayTc :: TyCon
Documentation
data BoxedMutableArray s i e Source
Boxed mutable arrays
Constructors
BMA !i !i !MVec s e
show/hide Instances
type STArray = BoxedMutableArraySource
Boxed mutable arrays in ST monad
type IOArray = IOSpecific3 BoxedMutableArraySource
Boxed mutable arrays in IO monad
data Array i e Source
Boxed immutable arrays
Constructors
BA !i !i !Vec e
show/hide Instances
HasBounds Array
IArray Array e
(Ix i, Eq i, Eq e) => Eq (Array i e)
(Ix i, Ord i, Ord e) => Ord (Array i e)
(Ix i, Show i, Show e) => Show (Array i e)
withNewArray :: (STorIO t t2, Ix i, MArray (BoxedMutableArray t2) e t) => (i, i) -> e -> (BoxedMutableArray t2 i e -> t t1) -> t (Array i e)Source
withArrayCopy :: (Ix t, STorIO t2 s) => Array t t1 -> (BoxedMutableArray s t t1 -> t2 t3) -> t2 (Array t t1)Source
doReplace :: (Ix i, MArray a e t) => [(Int, e)] -> a i e -> t ()Source
doAccum :: (Ix i, MArray a t1 t2) => (t1 -> t -> t1) -> [(Int, t)] -> a i t1 -> t2 ()Source
freezeBA :: (STorIO t3 t, Ix t1) => BoxedMutableArray t t1 t2 -> t3 (Array t1 t2)Source
thawBA :: (STorIO t2 s, Ix t) => Array t t1 -> t2 (BoxedMutableArray s t t1)Source
unsafeFreezeBA :: STorIO t3 t1 => BoxedMutableArray t1 t t2 -> t3 (Array t t2)Source
unsafeThawBA :: STorIO t2 s => Array t t1 -> t2 (BoxedMutableArray s t t1)Source
sizeOfBA :: (Ix a1, HasBounds a) => a a1 e -> IntSource
Number of array elements
freezeIOArray :: Ix i => IOArray i e -> IO (Array i e)Source
Freeze/thaw rules for IOArray
thawIOArray :: Ix i => Array i e -> IO (IOArray i e)Source
unsafeFreezeIOArray :: Ix i => IOArray i e -> IO (Array i e)Source
unsafeThawIOArray :: Ix i => Array i e -> IO (IOArray i e)Source
freezeSTArray :: Ix i => STArray s i e -> ST s (Array i e)Source
Freeze/thaw rules for STArray
thawSTArray :: Ix i => Array i e -> ST s (STArray s i e)Source
unsafeFreezeSTArray :: Ix i => STArray s i e -> ST s (Array i e)Source
unsafeThawSTArray :: Ix i => Array i e -> ST s (STArray s i e)Source
iOArrayTc :: TyConSource
Instances
stArrayTc :: TyConSource
Produced by Haddock version 2.1.0