Copyright | (c) The University of Glasgow 2001-2012 |
---|---|
License | BSD-style (see the file libraries/base/LICENSE) |
Maintainer | libraries@haskell.org |
Stability | experimental |
Portability | non-portable (uses Data.Array.Base) |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Data.Array.IO.Internals
Description
Mutable boxed and unboxed arrays in the IO monad.
WARNING
This module is considered internal.
The Package Versioning Policy does not apply.
The contents of this module may change in any way whatsoever and without any warning between minor versions of this package.
Authors importing this module are expected to track development closely.
Documentation
An IOArray
is a mutable, boxed, non-strict array in the IO
monad.
The type arguments are as follows:
i
: the index type of the array (should be an instance ofIx
)e
: the element type of the array.
Instances
Instances details
Instance details
Defined in Data.Array.Base
Methods
getBounds :: Ix i => IOArray i e -> IO (i, i) Source #
getNumElements :: Ix i => IOArray i e -> IO Int Source #
newArray :: Ix i => (i, i) -> e -> IO (IOArray i e) Source #
newArray_ :: Ix i => (i, i) -> IO (IOArray i e) Source #
unsafeNewArray_ :: Ix i => (i, i) -> IO (IOArray i e) Source #
unsafeRead :: Ix i => IOArray i e -> Int -> IO e Source #
unsafeWrite :: Ix i => IOArray i e -> Int -> e -> IO () Source #
Mutable, unboxed, strict arrays in the IO
monad. The type
arguments are as follows:
i
: the index type of the array (should be an instance ofIx
)e
: the element type of the array. Only certain element types are supported: see Data.Array.MArray for a list of instances.
Instances
Instances details
Instance details
Defined in Data.Array.IO.Internals
Methods
getBounds :: Ix i => IOUArray i Int16 -> IO (i, i) Source #
getNumElements :: Ix i => IOUArray i Int16 -> IO Int Source #
newArray :: Ix i => (i, i) -> Int16 -> IO (IOUArray i Int16) Source #
newArray_ :: Ix i => (i, i) -> IO (IOUArray i Int16) Source #
unsafeNewArray_ :: Ix i => (i, i) -> IO (IOUArray i Int16) Source #
unsafeRead :: Ix i => IOUArray i Int16 -> Int -> IO Int16 Source #
unsafeWrite :: Ix i => IOUArray i Int16 -> Int -> Int16 -> IO () Source #
Instance details
Defined in Data.Array.IO.Internals
Methods
getBounds :: Ix i => IOUArray i Int32 -> IO (i, i) Source #
getNumElements :: Ix i => IOUArray i Int32 -> IO Int Source #
newArray :: Ix i => (i, i) -> Int32 -> IO (IOUArray i Int32) Source #
newArray_ :: Ix i => (i, i) -> IO (IOUArray i Int32) Source #
unsafeNewArray_ :: Ix i => (i, i) -> IO (IOUArray i Int32) Source #
unsafeRead :: Ix i => IOUArray i Int32 -> Int -> IO Int32 Source #
unsafeWrite :: Ix i => IOUArray i Int32 -> Int -> Int32 -> IO () Source #
Instance details
Defined in Data.Array.IO.Internals
Methods
getBounds :: Ix i => IOUArray i Int64 -> IO (i, i) Source #
getNumElements :: Ix i => IOUArray i Int64 -> IO Int Source #
newArray :: Ix i => (i, i) -> Int64 -> IO (IOUArray i Int64) Source #
newArray_ :: Ix i => (i, i) -> IO (IOUArray i Int64) Source #
unsafeNewArray_ :: Ix i => (i, i) -> IO (IOUArray i Int64) Source #
unsafeRead :: Ix i => IOUArray i Int64 -> Int -> IO Int64 Source #
unsafeWrite :: Ix i => IOUArray i Int64 -> Int -> Int64 -> IO () Source #
Instance details
Defined in Data.Array.IO.Internals
Methods
getBounds :: Ix i => IOUArray i Int8 -> IO (i, i) Source #
getNumElements :: Ix i => IOUArray i Int8 -> IO Int Source #
newArray :: Ix i => (i, i) -> Int8 -> IO (IOUArray i Int8) Source #
newArray_ :: Ix i => (i, i) -> IO (IOUArray i Int8) Source #
unsafeNewArray_ :: Ix i => (i, i) -> IO (IOUArray i Int8) Source #
unsafeRead :: Ix i => IOUArray i Int8 -> Int -> IO Int8 Source #
unsafeWrite :: Ix i => IOUArray i Int8 -> Int -> Int8 -> IO () Source #
Instance details
Defined in Data.Array.IO.Internals
Methods
getBounds :: Ix i => IOUArray i Word16 -> IO (i, i) Source #
getNumElements :: Ix i => IOUArray i Word16 -> IO Int Source #
newArray :: Ix i => (i, i) -> Word16 -> IO (IOUArray i Word16) Source #
newArray_ :: Ix i => (i, i) -> IO (IOUArray i Word16) Source #
unsafeNewArray_ :: Ix i => (i, i) -> IO (IOUArray i Word16) Source #
unsafeRead :: Ix i => IOUArray i Word16 -> Int -> IO Word16 Source #
unsafeWrite :: Ix i => IOUArray i Word16 -> Int -> Word16 -> IO () Source #
Instance details
Defined in Data.Array.IO.Internals
Methods
getBounds :: Ix i => IOUArray i Word32 -> IO (i, i) Source #
getNumElements :: Ix i => IOUArray i Word32 -> IO Int Source #
newArray :: Ix i => (i, i) -> Word32 -> IO (IOUArray i Word32) Source #
newArray_ :: Ix i => (i, i) -> IO (IOUArray i Word32) Source #
unsafeNewArray_ :: Ix i => (i, i) -> IO (IOUArray i Word32) Source #
unsafeRead :: Ix i => IOUArray i Word32 -> Int -> IO Word32 Source #
unsafeWrite :: Ix i => IOUArray i Word32 -> Int -> Word32 -> IO () Source #
Instance details
Defined in Data.Array.IO.Internals
Methods
getBounds :: Ix i => IOUArray i Word64 -> IO (i, i) Source #
getNumElements :: Ix i => IOUArray i Word64 -> IO Int Source #
newArray :: Ix i => (i, i) -> Word64 -> IO (IOUArray i Word64) Source #
newArray_ :: Ix i => (i, i) -> IO (IOUArray i Word64) Source #
unsafeNewArray_ :: Ix i => (i, i) -> IO (IOUArray i Word64) Source #
unsafeRead :: Ix i => IOUArray i Word64 -> Int -> IO Word64 Source #
unsafeWrite :: Ix i => IOUArray i Word64 -> Int -> Word64 -> IO () Source #
Instance details
Defined in Data.Array.IO.Internals
Methods
getBounds :: Ix i => IOUArray i Word8 -> IO (i, i) Source #
getNumElements :: Ix i => IOUArray i Word8 -> IO Int Source #
newArray :: Ix i => (i, i) -> Word8 -> IO (IOUArray i Word8) Source #
newArray_ :: Ix i => (i, i) -> IO (IOUArray i Word8) Source #
unsafeNewArray_ :: Ix i => (i, i) -> IO (IOUArray i Word8) Source #
unsafeRead :: Ix i => IOUArray i Word8 -> Int -> IO Word8 Source #
unsafeWrite :: Ix i => IOUArray i Word8 -> Int -> Word8 -> IO () Source #
Instance details
Defined in Data.Array.IO.Internals
Methods
getBounds :: Ix i => IOUArray i Bool -> IO (i, i) Source #
getNumElements :: Ix i => IOUArray i Bool -> IO Int Source #
newArray :: Ix i => (i, i) -> Bool -> IO (IOUArray i Bool) Source #
newArray_ :: Ix i => (i, i) -> IO (IOUArray i Bool) Source #
unsafeNewArray_ :: Ix i => (i, i) -> IO (IOUArray i Bool) Source #
unsafeRead :: Ix i => IOUArray i Bool -> Int -> IO Bool Source #
unsafeWrite :: Ix i => IOUArray i Bool -> Int -> Bool -> IO () Source #
Instance details
Defined in Data.Array.IO.Internals
Methods
getBounds :: Ix i => IOUArray i Char -> IO (i, i) Source #
getNumElements :: Ix i => IOUArray i Char -> IO Int Source #
newArray :: Ix i => (i, i) -> Char -> IO (IOUArray i Char) Source #
newArray_ :: Ix i => (i, i) -> IO (IOUArray i Char) Source #
unsafeNewArray_ :: Ix i => (i, i) -> IO (IOUArray i Char) Source #
unsafeRead :: Ix i => IOUArray i Char -> Int -> IO Char Source #
unsafeWrite :: Ix i => IOUArray i Char -> Int -> Char -> IO () Source #
Instance details
Defined in Data.Array.IO.Internals
Methods
getBounds :: Ix i => IOUArray i Double -> IO (i, i) Source #
getNumElements :: Ix i => IOUArray i Double -> IO Int Source #
newArray :: Ix i => (i, i) -> Double -> IO (IOUArray i Double) Source #
newArray_ :: Ix i => (i, i) -> IO (IOUArray i Double) Source #
unsafeNewArray_ :: Ix i => (i, i) -> IO (IOUArray i Double) Source #
unsafeRead :: Ix i => IOUArray i Double -> Int -> IO Double Source #
unsafeWrite :: Ix i => IOUArray i Double -> Int -> Double -> IO () Source #
Instance details
Defined in Data.Array.IO.Internals
Methods
getBounds :: Ix i => IOUArray i Float -> IO (i, i) Source #
getNumElements :: Ix i => IOUArray i Float -> IO Int Source #
newArray :: Ix i => (i, i) -> Float -> IO (IOUArray i Float) Source #
newArray_ :: Ix i => (i, i) -> IO (IOUArray i Float) Source #
unsafeNewArray_ :: Ix i => (i, i) -> IO (IOUArray i Float) Source #
unsafeRead :: Ix i => IOUArray i Float -> Int -> IO Float Source #
unsafeWrite :: Ix i => IOUArray i Float -> Int -> Float -> IO () Source #
Instance details
Defined in Data.Array.IO.Internals
Methods
getBounds :: Ix i => IOUArray i Int -> IO (i, i) Source #
getNumElements :: Ix i => IOUArray i Int -> IO Int Source #
newArray :: Ix i => (i, i) -> Int -> IO (IOUArray i Int) Source #
newArray_ :: Ix i => (i, i) -> IO (IOUArray i Int) Source #
unsafeNewArray_ :: Ix i => (i, i) -> IO (IOUArray i Int) Source #
unsafeRead :: Ix i => IOUArray i Int -> Int -> IO Int Source #
unsafeWrite :: Ix i => IOUArray i Int -> Int -> Int -> IO () Source #
Instance details
Defined in Data.Array.IO.Internals
Methods
getBounds :: Ix i => IOUArray i Word -> IO (i, i) Source #
getNumElements :: Ix i => IOUArray i Word -> IO Int Source #
newArray :: Ix i => (i, i) -> Word -> IO (IOUArray i Word) Source #
newArray_ :: Ix i => (i, i) -> IO (IOUArray i Word) Source #
unsafeNewArray_ :: Ix i => (i, i) -> IO (IOUArray i Word) Source #
unsafeRead :: Ix i => IOUArray i Word -> Int -> IO Word Source #
unsafeWrite :: Ix i => IOUArray i Word -> Int -> Word -> IO () Source #
Instance details
Defined in Data.Array.IO.Internals
Methods
getBounds :: Ix i => IOUArray i (FunPtr a) -> IO (i, i) Source #
getNumElements :: Ix i => IOUArray i (FunPtr a) -> IO Int Source #
newArray :: Ix i => (i, i) -> FunPtr a -> IO (IOUArray i (FunPtr a)) Source #
newArray_ :: Ix i => (i, i) -> IO (IOUArray i (FunPtr a)) Source #
unsafeNewArray_ :: Ix i => (i, i) -> IO (IOUArray i (FunPtr a)) Source #
unsafeRead :: Ix i => IOUArray i (FunPtr a) -> Int -> IO (FunPtr a) Source #
unsafeWrite :: Ix i => IOUArray i (FunPtr a) -> Int -> FunPtr a -> IO () Source #
Instance details
Defined in Data.Array.IO.Internals
Methods
getBounds :: Ix i => IOUArray i (Ptr a) -> IO (i, i) Source #
getNumElements :: Ix i => IOUArray i (Ptr a) -> IO Int Source #
newArray :: Ix i => (i, i) -> Ptr a -> IO (IOUArray i (Ptr a)) Source #
newArray_ :: Ix i => (i, i) -> IO (IOUArray i (Ptr a)) Source #
unsafeNewArray_ :: Ix i => (i, i) -> IO (IOUArray i (Ptr a)) Source #
unsafeRead :: Ix i => IOUArray i (Ptr a) -> Int -> IO (Ptr a) Source #
unsafeWrite :: Ix i => IOUArray i (Ptr a) -> Int -> Ptr a -> IO () Source #
Instance details
Defined in Data.Array.IO.Internals
Methods
getBounds :: Ix i => IOUArray i (StablePtr a) -> IO (i, i) Source #
getNumElements :: Ix i => IOUArray i (StablePtr a) -> IO Int Source #
newArray :: Ix i => (i, i) -> StablePtr a -> IO (IOUArray i (StablePtr a)) Source #
newArray_ :: Ix i => (i, i) -> IO (IOUArray i (StablePtr a)) Source #
unsafeNewArray_ :: Ix i => (i, i) -> IO (IOUArray i (StablePtr a)) Source #
unsafeRead :: Ix i => IOUArray i (StablePtr a) -> Int -> IO (StablePtr a) Source #
unsafeWrite :: Ix i => IOUArray i (StablePtr a) -> Int -> StablePtr a -> IO () Source #