Go to the first, previous, next, last section, table of contents.

The `MutableArray' interface

The `MutableArray' interface defines a general set of operations over mutable arrays (`MutableArray') and mutable chunks of memory (`MutableByteArray'):
data MutableArray s ix elt -- abstract
data MutableByteArray s ix -- abstract
                           -- instance of : CCallable
-- Creators:
newArray           :: Ix ix => (ix,ix) -> elt -> ST s (MutableArray s ix elt)
newCharArray       :: Ix ix => (ix,ix) -> ST s (MutableByteArray s ix) 
newAddrArray       :: Ix ix => (ix,ix) -> ST s (MutableByteArray s ix) 
newIntArray        :: Ix ix => (ix,ix) -> ST s (MutableByteArray s ix) 
newFloatArray      :: Ix ix => (ix,ix) -> ST s (MutableByteArray s ix) 
newDoubleArray     :: Ix ix => (ix,ix) -> ST s (MutableByteArray s ix) 

boundsOfArray      :: Ix ix => MutableArray s ix elt -> (ix, ix)  
boundsOfByteArray  :: Ix ix => MutableByteArray s ix -> (ix, ix)


readArray          :: Ix ix => MutableArray s ix elt -> ix -> ST s elt 

readCharArray      :: Ix ix => MutableByteArray s ix -> ix -> ST s Char 
readIntArray       :: Ix ix => MutableByteArray s ix -> ix -> ST s Int
readAddrArray      :: Ix ix => MutableByteArray s ix -> ix -> ST s Addr
readFloatArray     :: Ix ix => MutableByteArray s ix -> ix -> ST s Float
readDoubleArray    :: Ix ix => MutableByteArray s ix -> ix -> ST s Double

writeArray         :: Ix ix => MutableArray s ix elt -> ix -> elt -> ST s () 
writeCharArray     :: Ix ix => MutableByteArray s ix -> ix -> Char -> ST s () 
writeIntArray      :: Ix ix => MutableByteArray s ix -> ix -> Int  -> ST s () 
writeAddrArray     :: Ix ix => MutableByteArray s ix -> ix -> Addr -> ST s () 
writeFloatArray    :: Ix ix => MutableByteArray s ix -> ix -> Float -> ST s () 
writeDoubleArray   :: Ix ix => MutableByteArray s ix -> ix -> Double -> ST s () 

freezeArray        :: Ix ix => MutableArray s ix elt -> ST s (Array ix elt)
freezeCharArray    :: Ix ix => MutableByteArray s ix -> ST s (ByteArray ix)
freezeIntArray     :: Ix ix => MutableByteArray s ix -> ST s (ByteArray ix)
freezeAddrArray    :: Ix ix => MutableByteArray s ix -> ST s (ByteArray ix)
freezeFloatArray   :: Ix ix => MutableByteArray s ix -> ST s (ByteArray ix)
freezeDoubleArray  :: Ix ix => MutableByteArray s ix -> ST s (ByteArray ix)

unsafeFreezeArray     :: Ix ix => MutableArray s ix elt -> ST s (Array ix elt)  
unsafeFreezeByteArray :: Ix ix => MutableByteArray s ix -> ST s (ByteArray ix)
thawArray             :: Ix ix => Array ix elt -> ST s (MutableArray s ix elt)

Go to the first, previous, next, last section, table of contents.