vector-0.11.0.0: Efficient Arrays

Copyright(c) Roman Leshchinskiy 2008-2011
LicenseBSD-style
MaintainerRoman Leshchinskiy <rl@cse.unsw.edu.au>
Stabilityexperimental
Portabilitynon-portable
Safe HaskellNone
LanguageHaskell2010

Data.Vector.Generic.Mutable.Base

Description

Class of mutable vectors

Synopsis

Documentation

class MVector v a where #

Class of mutable vectors parametrised with a primitive state token.

Methods

basicLength :: v s a -> Int #

Length of the mutable vector. This method should not be called directly, use length instead.

basicUnsafeSlice :: Int -> Int -> v s a -> v s a #

Yield a part of the mutable vector without copying it. This method should not be called directly, use unsafeSlice instead.

basicOverlaps :: v s a -> v s a -> Bool #

Check whether two vectors overlap. This method should not be called directly, use overlaps instead.

basicUnsafeNew :: PrimMonad m => Int -> m (v (PrimState m) a) #

Create a mutable vector of the given length. This method should not be called directly, use unsafeNew instead.

basicInitialize :: PrimMonad m => v (PrimState m) a -> m () #

Initialize a vector to a standard value. This is intended to be called as part of the safe new operation (and similar operations), to properly blank the newly allocated memory if necessary.

Vectors that are necessarily initialized as part of creation may implement this as a no-op.

basicUnsafeReplicate :: PrimMonad m => Int -> a -> m (v (PrimState m) a) #

Create a mutable vector of the given length and fill it with an initial value. This method should not be called directly, use replicate instead.

basicUnsafeRead :: PrimMonad m => v (PrimState m) a -> Int -> m a #

Yield the element at the given position. This method should not be called directly, use unsafeRead instead.

basicUnsafeWrite :: PrimMonad m => v (PrimState m) a -> Int -> a -> m () #

Replace the element at the given position. This method should not be called directly, use unsafeWrite instead.

basicClear :: PrimMonad m => v (PrimState m) a -> m () #

Reset all elements of the vector to some undefined value, clearing all references to external objects. This is usually a noop for unboxed vectors. This method should not be called directly, use clear instead.

basicSet :: PrimMonad m => v (PrimState m) a -> a -> m () #

Set all elements of the vector to the given value. This method should not be called directly, use set instead.

basicUnsafeCopy :: PrimMonad m => v (PrimState m) a -> v (PrimState m) a -> m () #

Copy a vector. The two vectors may not overlap. This method should not be called directly, use unsafeCopy instead.

basicUnsafeMove :: PrimMonad m => v (PrimState m) a -> v (PrimState m) a -> m () #

Move the contents of a vector. The two vectors may overlap. This method should not be called directly, use unsafeMove instead.

basicUnsafeGrow :: PrimMonad m => v (PrimState m) a -> Int -> m (v (PrimState m) a) #

Grow a vector by the given number of elements. This method should not be called directly, use unsafeGrow instead.

Instances

MVector MVector a # 

Methods

basicLength :: MVector s a -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s a -> MVector s a #

basicOverlaps :: MVector s a -> MVector s a -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) a) #

basicInitialize :: PrimMonad m => MVector (PrimState m) a -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> a -> m (MVector (PrimState m) a) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) a -> Int -> m a #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) a -> Int -> a -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) a -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) a -> a -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) a -> MVector (PrimState m) a -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) a -> MVector (PrimState m) a -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) a -> Int -> m (MVector (PrimState m) a) #

Prim a => MVector MVector a # 

Methods

basicLength :: MVector s a -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s a -> MVector s a #

basicOverlaps :: MVector s a -> MVector s a -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) a) #

basicInitialize :: PrimMonad m => MVector (PrimState m) a -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> a -> m (MVector (PrimState m) a) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) a -> Int -> m a #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) a -> Int -> a -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) a -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) a -> a -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) a -> MVector (PrimState m) a -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) a -> MVector (PrimState m) a -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) a -> Int -> m (MVector (PrimState m) a) #

Storable a => MVector MVector a # 

Methods

basicLength :: MVector s a -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s a -> MVector s a #

basicOverlaps :: MVector s a -> MVector s a -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) a) #

basicInitialize :: PrimMonad m => MVector (PrimState m) a -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> a -> m (MVector (PrimState m) a) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) a -> Int -> m a #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) a -> Int -> a -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) a -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) a -> a -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) a -> MVector (PrimState m) a -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) a -> MVector (PrimState m) a -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) a -> Int -> m (MVector (PrimState m) a) #

MVector MVector Bool # 

Methods

basicLength :: MVector s Bool -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s Bool -> MVector s Bool #

basicOverlaps :: MVector s Bool -> MVector s Bool -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) Bool) #

basicInitialize :: PrimMonad m => MVector (PrimState m) Bool -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> Bool -> m (MVector (PrimState m) Bool) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) Bool -> Int -> m Bool #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) Bool -> Int -> Bool -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) Bool -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) Bool -> Bool -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) Bool -> MVector (PrimState m) Bool -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) Bool -> MVector (PrimState m) Bool -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) Bool -> Int -> m (MVector (PrimState m) Bool) #

MVector MVector Char # 

Methods

basicLength :: MVector s Char -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s Char -> MVector s Char #

basicOverlaps :: MVector s Char -> MVector s Char -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) Char) #

basicInitialize :: PrimMonad m => MVector (PrimState m) Char -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> Char -> m (MVector (PrimState m) Char) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) Char -> Int -> m Char #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) Char -> Int -> Char -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) Char -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) Char -> Char -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) Char -> MVector (PrimState m) Char -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) Char -> MVector (PrimState m) Char -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) Char -> Int -> m (MVector (PrimState m) Char) #

MVector MVector Double # 

Methods

basicLength :: MVector s Double -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s Double -> MVector s Double #

basicOverlaps :: MVector s Double -> MVector s Double -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) Double) #

basicInitialize :: PrimMonad m => MVector (PrimState m) Double -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> Double -> m (MVector (PrimState m) Double) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) Double -> Int -> m Double #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) Double -> Int -> Double -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) Double -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) Double -> Double -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) Double -> MVector (PrimState m) Double -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) Double -> MVector (PrimState m) Double -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) Double -> Int -> m (MVector (PrimState m) Double) #

MVector MVector Float # 

Methods

basicLength :: MVector s Float -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s Float -> MVector s Float #

basicOverlaps :: MVector s Float -> MVector s Float -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) Float) #

basicInitialize :: PrimMonad m => MVector (PrimState m) Float -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> Float -> m (MVector (PrimState m) Float) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) Float -> Int -> m Float #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) Float -> Int -> Float -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) Float -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) Float -> Float -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) Float -> MVector (PrimState m) Float -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) Float -> MVector (PrimState m) Float -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) Float -> Int -> m (MVector (PrimState m) Float) #

MVector MVector Int # 

Methods

basicLength :: MVector s Int -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s Int -> MVector s Int #

basicOverlaps :: MVector s Int -> MVector s Int -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) Int) #

basicInitialize :: PrimMonad m => MVector (PrimState m) Int -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> Int -> m (MVector (PrimState m) Int) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) Int -> Int -> m Int #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) Int -> Int -> Int -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) Int -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) Int -> Int -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) Int -> MVector (PrimState m) Int -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) Int -> MVector (PrimState m) Int -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) Int -> Int -> m (MVector (PrimState m) Int) #

MVector MVector Int8 # 

Methods

basicLength :: MVector s Int8 -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s Int8 -> MVector s Int8 #

basicOverlaps :: MVector s Int8 -> MVector s Int8 -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) Int8) #

basicInitialize :: PrimMonad m => MVector (PrimState m) Int8 -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> Int8 -> m (MVector (PrimState m) Int8) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) Int8 -> Int -> m Int8 #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) Int8 -> Int -> Int8 -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) Int8 -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) Int8 -> Int8 -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) Int8 -> MVector (PrimState m) Int8 -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) Int8 -> MVector (PrimState m) Int8 -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) Int8 -> Int -> m (MVector (PrimState m) Int8) #

MVector MVector Int16 # 

Methods

basicLength :: MVector s Int16 -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s Int16 -> MVector s Int16 #

basicOverlaps :: MVector s Int16 -> MVector s Int16 -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) Int16) #

basicInitialize :: PrimMonad m => MVector (PrimState m) Int16 -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> Int16 -> m (MVector (PrimState m) Int16) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) Int16 -> Int -> m Int16 #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) Int16 -> Int -> Int16 -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) Int16 -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) Int16 -> Int16 -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) Int16 -> MVector (PrimState m) Int16 -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) Int16 -> MVector (PrimState m) Int16 -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) Int16 -> Int -> m (MVector (PrimState m) Int16) #

MVector MVector Int32 # 

Methods

basicLength :: MVector s Int32 -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s Int32 -> MVector s Int32 #

basicOverlaps :: MVector s Int32 -> MVector s Int32 -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) Int32) #

basicInitialize :: PrimMonad m => MVector (PrimState m) Int32 -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> Int32 -> m (MVector (PrimState m) Int32) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) Int32 -> Int -> m Int32 #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) Int32 -> Int -> Int32 -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) Int32 -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) Int32 -> Int32 -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) Int32 -> MVector (PrimState m) Int32 -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) Int32 -> MVector (PrimState m) Int32 -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) Int32 -> Int -> m (MVector (PrimState m) Int32) #

MVector MVector Int64 # 

Methods

basicLength :: MVector s Int64 -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s Int64 -> MVector s Int64 #

basicOverlaps :: MVector s Int64 -> MVector s Int64 -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) Int64) #

basicInitialize :: PrimMonad m => MVector (PrimState m) Int64 -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> Int64 -> m (MVector (PrimState m) Int64) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) Int64 -> Int -> m Int64 #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) Int64 -> Int -> Int64 -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) Int64 -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) Int64 -> Int64 -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) Int64 -> MVector (PrimState m) Int64 -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) Int64 -> MVector (PrimState m) Int64 -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) Int64 -> Int -> m (MVector (PrimState m) Int64) #

MVector MVector Word # 

Methods

basicLength :: MVector s Word -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s Word -> MVector s Word #

basicOverlaps :: MVector s Word -> MVector s Word -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) Word) #

basicInitialize :: PrimMonad m => MVector (PrimState m) Word -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> Word -> m (MVector (PrimState m) Word) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) Word -> Int -> m Word #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) Word -> Int -> Word -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) Word -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) Word -> Word -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) Word -> MVector (PrimState m) Word -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) Word -> MVector (PrimState m) Word -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) Word -> Int -> m (MVector (PrimState m) Word) #

MVector MVector Word8 # 

Methods

basicLength :: MVector s Word8 -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s Word8 -> MVector s Word8 #

basicOverlaps :: MVector s Word8 -> MVector s Word8 -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) Word8) #

basicInitialize :: PrimMonad m => MVector (PrimState m) Word8 -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> Word8 -> m (MVector (PrimState m) Word8) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) Word8 -> Int -> m Word8 #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) Word8 -> Int -> Word8 -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) Word8 -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) Word8 -> Word8 -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) Word8 -> MVector (PrimState m) Word8 -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) Word8 -> MVector (PrimState m) Word8 -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) Word8 -> Int -> m (MVector (PrimState m) Word8) #

MVector MVector Word16 # 

Methods

basicLength :: MVector s Word16 -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s Word16 -> MVector s Word16 #

basicOverlaps :: MVector s Word16 -> MVector s Word16 -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) Word16) #

basicInitialize :: PrimMonad m => MVector (PrimState m) Word16 -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> Word16 -> m (MVector (PrimState m) Word16) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) Word16 -> Int -> m Word16 #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) Word16 -> Int -> Word16 -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) Word16 -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) Word16 -> Word16 -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) Word16 -> MVector (PrimState m) Word16 -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) Word16 -> MVector (PrimState m) Word16 -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) Word16 -> Int -> m (MVector (PrimState m) Word16) #

MVector MVector Word32 # 

Methods

basicLength :: MVector s Word32 -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s Word32 -> MVector s Word32 #

basicOverlaps :: MVector s Word32 -> MVector s Word32 -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) Word32) #

basicInitialize :: PrimMonad m => MVector (PrimState m) Word32 -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> Word32 -> m (MVector (PrimState m) Word32) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) Word32 -> Int -> m Word32 #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) Word32 -> Int -> Word32 -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) Word32 -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) Word32 -> Word32 -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) Word32 -> MVector (PrimState m) Word32 -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) Word32 -> MVector (PrimState m) Word32 -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) Word32 -> Int -> m (MVector (PrimState m) Word32) #

MVector MVector Word64 # 

Methods

basicLength :: MVector s Word64 -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s Word64 -> MVector s Word64 #

basicOverlaps :: MVector s Word64 -> MVector s Word64 -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) Word64) #

basicInitialize :: PrimMonad m => MVector (PrimState m) Word64 -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> Word64 -> m (MVector (PrimState m) Word64) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) Word64 -> Int -> m Word64 #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) Word64 -> Int -> Word64 -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) Word64 -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) Word64 -> Word64 -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) Word64 -> MVector (PrimState m) Word64 -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) Word64 -> MVector (PrimState m) Word64 -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) Word64 -> Int -> m (MVector (PrimState m) Word64) #

MVector MVector () # 

Methods

basicLength :: MVector s () -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s () -> MVector s () #

basicOverlaps :: MVector s () -> MVector s () -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) ()) #

basicInitialize :: PrimMonad m => MVector (PrimState m) () -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> () -> m (MVector (PrimState m) ()) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) () -> Int -> m () #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) () -> Int -> () -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) () -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) () -> () -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) () -> MVector (PrimState m) () -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) () -> MVector (PrimState m) () -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) () -> Int -> m (MVector (PrimState m) ()) #

(RealFloat a, Unbox a) => MVector MVector (Complex a) # 

Methods

basicLength :: MVector s (Complex a) -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s (Complex a) -> MVector s (Complex a) #

basicOverlaps :: MVector s (Complex a) -> MVector s (Complex a) -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (Complex a)) #

basicInitialize :: PrimMonad m => MVector (PrimState m) (Complex a) -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> Complex a -> m (MVector (PrimState m) (Complex a)) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (Complex a) -> Int -> m (Complex a) #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (Complex a) -> Int -> Complex a -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) (Complex a) -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) (Complex a) -> Complex a -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (Complex a) -> MVector (PrimState m) (Complex a) -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (Complex a) -> MVector (PrimState m) (Complex a) -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (Complex a) -> Int -> m (MVector (PrimState m) (Complex a)) #

(Unbox a, Unbox b) => MVector MVector (a, b) # 

Methods

basicLength :: MVector s (a, b) -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s (a, b) -> MVector s (a, b) #

basicOverlaps :: MVector s (a, b) -> MVector s (a, b) -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (a, b)) #

basicInitialize :: PrimMonad m => MVector (PrimState m) (a, b) -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> (a, b) -> m (MVector (PrimState m) (a, b)) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (a, b) -> Int -> m (a, b) #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (a, b) -> Int -> (a, b) -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) (a, b) -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) (a, b) -> (a, b) -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (a, b) -> MVector (PrimState m) (a, b) -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (a, b) -> MVector (PrimState m) (a, b) -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (a, b) -> Int -> m (MVector (PrimState m) (a, b)) #

(Unbox a, Unbox b, Unbox c) => MVector MVector (a, b, c) # 

Methods

basicLength :: MVector s (a, b, c) -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s (a, b, c) -> MVector s (a, b, c) #

basicOverlaps :: MVector s (a, b, c) -> MVector s (a, b, c) -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (a, b, c)) #

basicInitialize :: PrimMonad m => MVector (PrimState m) (a, b, c) -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> (a, b, c) -> m (MVector (PrimState m) (a, b, c)) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (a, b, c) -> Int -> m (a, b, c) #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (a, b, c) -> Int -> (a, b, c) -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) (a, b, c) -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) (a, b, c) -> (a, b, c) -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (a, b, c) -> MVector (PrimState m) (a, b, c) -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (a, b, c) -> MVector (PrimState m) (a, b, c) -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (a, b, c) -> Int -> m (MVector (PrimState m) (a, b, c)) #

(Unbox a, Unbox b, Unbox c, Unbox d) => MVector MVector (a, b, c, d) # 

Methods

basicLength :: MVector s (a, b, c, d) -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s (a, b, c, d) -> MVector s (a, b, c, d) #

basicOverlaps :: MVector s (a, b, c, d) -> MVector s (a, b, c, d) -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (a, b, c, d)) #

basicInitialize :: PrimMonad m => MVector (PrimState m) (a, b, c, d) -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> (a, b, c, d) -> m (MVector (PrimState m) (a, b, c, d)) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (a, b, c, d) -> Int -> m (a, b, c, d) #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (a, b, c, d) -> Int -> (a, b, c, d) -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) (a, b, c, d) -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) (a, b, c, d) -> (a, b, c, d) -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (a, b, c, d) -> MVector (PrimState m) (a, b, c, d) -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (a, b, c, d) -> MVector (PrimState m) (a, b, c, d) -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (a, b, c, d) -> Int -> m (MVector (PrimState m) (a, b, c, d)) #

(Unbox a, Unbox b, Unbox c, Unbox d, Unbox e) => MVector MVector (a, b, c, d, e) # 

Methods

basicLength :: MVector s (a, b, c, d, e) -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s (a, b, c, d, e) -> MVector s (a, b, c, d, e) #

basicOverlaps :: MVector s (a, b, c, d, e) -> MVector s (a, b, c, d, e) -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (a, b, c, d, e)) #

basicInitialize :: PrimMonad m => MVector (PrimState m) (a, b, c, d, e) -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> (a, b, c, d, e) -> m (MVector (PrimState m) (a, b, c, d, e)) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (a, b, c, d, e) -> Int -> m (a, b, c, d, e) #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (a, b, c, d, e) -> Int -> (a, b, c, d, e) -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) (a, b, c, d, e) -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) (a, b, c, d, e) -> (a, b, c, d, e) -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (a, b, c, d, e) -> MVector (PrimState m) (a, b, c, d, e) -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (a, b, c, d, e) -> MVector (PrimState m) (a, b, c, d, e) -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (a, b, c, d, e) -> Int -> m (MVector (PrimState m) (a, b, c, d, e)) #

(Unbox a, Unbox b, Unbox c, Unbox d, Unbox e, Unbox f) => MVector MVector (a, b, c, d, e, f) # 

Methods

basicLength :: MVector s (a, b, c, d, e, f) -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s (a, b, c, d, e, f) -> MVector s (a, b, c, d, e, f) #

basicOverlaps :: MVector s (a, b, c, d, e, f) -> MVector s (a, b, c, d, e, f) -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (a, b, c, d, e, f)) #

basicInitialize :: PrimMonad m => MVector (PrimState m) (a, b, c, d, e, f) -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> (a, b, c, d, e, f) -> m (MVector (PrimState m) (a, b, c, d, e, f)) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (a, b, c, d, e, f) -> Int -> m (a, b, c, d, e, f) #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (a, b, c, d, e, f) -> Int -> (a, b, c, d, e, f) -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) (a, b, c, d, e, f) -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) (a, b, c, d, e, f) -> (a, b, c, d, e, f) -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (a, b, c, d, e, f) -> MVector (PrimState m) (a, b, c, d, e, f) -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (a, b, c, d, e, f) -> MVector (PrimState m) (a, b, c, d, e, f) -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (a, b, c, d, e, f) -> Int -> m (MVector (PrimState m) (a, b, c, d, e, f)) #