Copyright | (c) Roman Leshchinskiy 2009-2010 |
---|---|
License | BSD-style |
Maintainer | Roman Leshchinskiy <rl@cse.unsw.edu.au> |
Stability | experimental |
Portability | non-portable |
Safe Haskell | None |
Language | Haskell2010 |
Data.Vector.Unboxed.Mutable
Description
Mutable adaptive unboxed vectors
Synopsis
- data family MVector s a
- type IOVector = MVector RealWorld
- type STVector s = MVector s
- class (Vector Vector a, MVector MVector a) => Unbox a
- length :: Unbox a => MVector s a -> Int
- null :: Unbox a => MVector s a -> Bool
- slice :: Unbox a => Int -> Int -> MVector s a -> MVector s a
- init :: Unbox a => MVector s a -> MVector s a
- tail :: Unbox a => MVector s a -> MVector s a
- take :: Unbox a => Int -> MVector s a -> MVector s a
- drop :: Unbox a => Int -> MVector s a -> MVector s a
- splitAt :: Unbox a => Int -> MVector s a -> (MVector s a, MVector s a)
- unsafeSlice :: Unbox a => Int -> Int -> MVector s a -> MVector s a
- unsafeInit :: Unbox a => MVector s a -> MVector s a
- unsafeTail :: Unbox a => MVector s a -> MVector s a
- unsafeTake :: Unbox a => Int -> MVector s a -> MVector s a
- unsafeDrop :: Unbox a => Int -> MVector s a -> MVector s a
- overlaps :: Unbox a => MVector s a -> MVector s a -> Bool
- new :: (PrimMonad m, Unbox a) => Int -> m (MVector (PrimState m) a)
- unsafeNew :: (PrimMonad m, Unbox a) => Int -> m (MVector (PrimState m) a)
- replicate :: (PrimMonad m, Unbox a) => Int -> a -> m (MVector (PrimState m) a)
- replicateM :: (PrimMonad m, Unbox a) => Int -> m a -> m (MVector (PrimState m) a)
- clone :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> m (MVector (PrimState m) a)
- grow :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> Int -> m (MVector (PrimState m) a)
- unsafeGrow :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> Int -> m (MVector (PrimState m) a)
- clear :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> m ()
- zip :: (Unbox a, Unbox b) => MVector s a -> MVector s b -> MVector s (a, b)
- zip3 :: (Unbox a, Unbox b, Unbox c) => MVector s a -> MVector s b -> MVector s c -> MVector s (a, b, c)
- zip4 :: (Unbox a, Unbox b, Unbox c, Unbox d) => MVector s a -> MVector s b -> MVector s c -> MVector s d -> MVector s (a, b, c, d)
- zip5 :: (Unbox a, Unbox b, Unbox c, Unbox d, Unbox e) => MVector s a -> MVector s b -> MVector s c -> MVector s d -> MVector s e -> MVector s (a, b, c, d, e)
- zip6 :: (Unbox a, Unbox b, Unbox c, Unbox d, Unbox e, Unbox f) => MVector s a -> MVector s b -> MVector s c -> MVector s d -> MVector s e -> MVector s f -> MVector s (a, b, c, d, e, f)
- unzip :: (Unbox a, Unbox b) => MVector s (a, b) -> (MVector s a, MVector s b)
- unzip3 :: (Unbox a, Unbox b, Unbox c) => MVector s (a, b, c) -> (MVector s a, MVector s b, MVector s c)
- unzip4 :: (Unbox a, Unbox b, Unbox c, Unbox d) => MVector s (a, b, c, d) -> (MVector s a, MVector s b, MVector s c, MVector s d)
- unzip5 :: (Unbox a, Unbox b, Unbox c, Unbox d, Unbox e) => MVector s (a, b, c, d, e) -> (MVector s a, MVector s b, MVector s c, MVector s d, MVector s e)
- unzip6 :: (Unbox a, Unbox b, Unbox c, Unbox d, Unbox e, Unbox f) => MVector s (a, b, c, d, e, f) -> (MVector s a, MVector s b, MVector s c, MVector s d, MVector s e, MVector s f)
- read :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> Int -> m a
- write :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> Int -> a -> m ()
- modify :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> (a -> a) -> Int -> m ()
- swap :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> Int -> Int -> m ()
- unsafeRead :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> Int -> m a
- unsafeWrite :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> Int -> a -> m ()
- unsafeModify :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> (a -> a) -> Int -> m ()
- unsafeSwap :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> Int -> Int -> m ()
- nextPermutation :: (PrimMonad m, Ord e, Unbox e) => MVector (PrimState m) e -> m Bool
- set :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> a -> m ()
- copy :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> MVector (PrimState m) a -> m ()
- move :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> MVector (PrimState m) a -> m ()
- unsafeCopy :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> MVector (PrimState m) a -> m ()
- unsafeMove :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> MVector (PrimState m) a -> m ()
Mutable vectors of primitive types
Instances
MVector MVector Bool # | |
Defined in Data.Vector.Unboxed.Base 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 # | |
Defined in Data.Vector.Unboxed.Base 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 # | |
Defined in Data.Vector.Unboxed.Base 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 # | |
Defined in Data.Vector.Unboxed.Base 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 # | |
Defined in Data.Vector.Unboxed.Base 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 # | |
Defined in Data.Vector.Unboxed.Base 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 # | |
Defined in Data.Vector.Unboxed.Base 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 # | |
Defined in Data.Vector.Unboxed.Base 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 # | |
Defined in Data.Vector.Unboxed.Base 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 # | |
Defined in Data.Vector.Unboxed.Base 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 # | |
Defined in Data.Vector.Unboxed.Base 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 # | |
Defined in Data.Vector.Unboxed.Base 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 # | |
Defined in Data.Vector.Unboxed.Base 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 # | |
Defined in Data.Vector.Unboxed.Base 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 () # | |
Defined in Data.Vector.Unboxed.Base 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) ()) # | |
MVector MVector Any # | |
Defined in Data.Vector.Unboxed.Base Methods basicLength :: MVector s Any -> Int # basicUnsafeSlice :: Int -> Int -> MVector s Any -> MVector s Any # basicOverlaps :: MVector s Any -> MVector s Any -> Bool # basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) Any) # basicInitialize :: PrimMonad m => MVector (PrimState m) Any -> m () # basicUnsafeReplicate :: PrimMonad m => Int -> Any -> m (MVector (PrimState m) Any) # basicUnsafeRead :: PrimMonad m => MVector (PrimState m) Any -> Int -> m Any # basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) Any -> Int -> Any -> m () # basicClear :: PrimMonad m => MVector (PrimState m) Any -> m () # basicSet :: PrimMonad m => MVector (PrimState m) Any -> Any -> m () # basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) Any -> MVector (PrimState m) Any -> m () # basicUnsafeMove :: PrimMonad m => MVector (PrimState m) Any -> MVector (PrimState m) Any -> m () # basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) Any -> Int -> m (MVector (PrimState m) Any) # | |
MVector MVector All # | |
Defined in Data.Vector.Unboxed.Base Methods basicLength :: MVector s All -> Int # basicUnsafeSlice :: Int -> Int -> MVector s All -> MVector s All # basicOverlaps :: MVector s All -> MVector s All -> Bool # basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) All) # basicInitialize :: PrimMonad m => MVector (PrimState m) All -> m () # basicUnsafeReplicate :: PrimMonad m => Int -> All -> m (MVector (PrimState m) All) # basicUnsafeRead :: PrimMonad m => MVector (PrimState m) All -> Int -> m All # basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) All -> Int -> All -> m () # basicClear :: PrimMonad m => MVector (PrimState m) All -> m () # basicSet :: PrimMonad m => MVector (PrimState m) All -> All -> m () # basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) All -> MVector (PrimState m) All -> m () # basicUnsafeMove :: PrimMonad m => MVector (PrimState m) All -> MVector (PrimState m) All -> m () # basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) All -> Int -> m (MVector (PrimState m) All) # | |
Unbox a => MVector MVector (Dual a) # | |
Defined in Data.Vector.Unboxed.Base Methods basicLength :: MVector s (Dual a) -> Int # basicUnsafeSlice :: Int -> Int -> MVector s (Dual a) -> MVector s (Dual a) # basicOverlaps :: MVector s (Dual a) -> MVector s (Dual a) -> Bool # basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (Dual a)) # basicInitialize :: PrimMonad m => MVector (PrimState m) (Dual a) -> m () # basicUnsafeReplicate :: PrimMonad m => Int -> Dual a -> m (MVector (PrimState m) (Dual a)) # basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (Dual a) -> Int -> m (Dual a) # basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (Dual a) -> Int -> Dual a -> m () # basicClear :: PrimMonad m => MVector (PrimState m) (Dual a) -> m () # basicSet :: PrimMonad m => MVector (PrimState m) (Dual a) -> Dual a -> m () # basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (Dual a) -> MVector (PrimState m) (Dual a) -> m () # basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (Dual a) -> MVector (PrimState m) (Dual a) -> m () # basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (Dual a) -> Int -> m (MVector (PrimState m) (Dual a)) # | |
Unbox a => MVector MVector (Product a) # | |
Defined in Data.Vector.Unboxed.Base Methods basicLength :: MVector s (Product a) -> Int # basicUnsafeSlice :: Int -> Int -> MVector s (Product a) -> MVector s (Product a) # basicOverlaps :: MVector s (Product a) -> MVector s (Product a) -> Bool # basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (Product a)) # basicInitialize :: PrimMonad m => MVector (PrimState m) (Product a) -> m () # basicUnsafeReplicate :: PrimMonad m => Int -> Product a -> m (MVector (PrimState m) (Product a)) # basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (Product a) -> Int -> m (Product a) # basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (Product a) -> Int -> Product a -> m () # basicClear :: PrimMonad m => MVector (PrimState m) (Product a) -> m () # basicSet :: PrimMonad m => MVector (PrimState m) (Product a) -> Product a -> m () # basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (Product a) -> MVector (PrimState m) (Product a) -> m () # basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (Product a) -> MVector (PrimState m) (Product a) -> m () # basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (Product a) -> Int -> m (MVector (PrimState m) (Product a)) # | |
Unbox a => MVector MVector (Sum a) # | |
Defined in Data.Vector.Unboxed.Base Methods basicLength :: MVector s (Sum a) -> Int # basicUnsafeSlice :: Int -> Int -> MVector s (Sum a) -> MVector s (Sum a) # basicOverlaps :: MVector s (Sum a) -> MVector s (Sum a) -> Bool # basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (Sum a)) # basicInitialize :: PrimMonad m => MVector (PrimState m) (Sum a) -> m () # basicUnsafeReplicate :: PrimMonad m => Int -> Sum a -> m (MVector (PrimState m) (Sum a)) # basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (Sum a) -> Int -> m (Sum a) # basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (Sum a) -> Int -> Sum a -> m () # basicClear :: PrimMonad m => MVector (PrimState m) (Sum a) -> m () # basicSet :: PrimMonad m => MVector (PrimState m) (Sum a) -> Sum a -> m () # basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (Sum a) -> MVector (PrimState m) (Sum a) -> m () # basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (Sum a) -> MVector (PrimState m) (Sum a) -> m () # basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (Sum a) -> Int -> m (MVector (PrimState m) (Sum a)) # | |
Unbox a => MVector MVector (Identity a) # | |
Defined in Data.Vector.Unboxed.Base Methods basicLength :: MVector s (Identity a) -> Int # basicUnsafeSlice :: Int -> Int -> MVector s (Identity a) -> MVector s (Identity a) # basicOverlaps :: MVector s (Identity a) -> MVector s (Identity a) -> Bool # basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (Identity a)) # basicInitialize :: PrimMonad m => MVector (PrimState m) (Identity a) -> m () # basicUnsafeReplicate :: PrimMonad m => Int -> Identity a -> m (MVector (PrimState m) (Identity a)) # basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (Identity a) -> Int -> m (Identity a) # basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (Identity a) -> Int -> Identity a -> m () # basicClear :: PrimMonad m => MVector (PrimState m) (Identity a) -> m () # basicSet :: PrimMonad m => MVector (PrimState m) (Identity a) -> Identity a -> m () # basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (Identity a) -> MVector (PrimState m) (Identity a) -> m () # basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (Identity a) -> MVector (PrimState m) (Identity a) -> m () # basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (Identity a) -> Int -> m (MVector (PrimState m) (Identity a)) # | |
Unbox a => MVector MVector (Down a) # | |
Defined in Data.Vector.Unboxed.Base Methods basicLength :: MVector s (Down a) -> Int # basicUnsafeSlice :: Int -> Int -> MVector s (Down a) -> MVector s (Down a) # basicOverlaps :: MVector s (Down a) -> MVector s (Down a) -> Bool # basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (Down a)) # basicInitialize :: PrimMonad m => MVector (PrimState m) (Down a) -> m () # basicUnsafeReplicate :: PrimMonad m => Int -> Down a -> m (MVector (PrimState m) (Down a)) # basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (Down a) -> Int -> m (Down a) # basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (Down a) -> Int -> Down a -> m () # basicClear :: PrimMonad m => MVector (PrimState m) (Down a) -> m () # basicSet :: PrimMonad m => MVector (PrimState m) (Down a) -> Down a -> m () # basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (Down a) -> MVector (PrimState m) (Down a) -> m () # basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (Down a) -> MVector (PrimState m) (Down a) -> m () # basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (Down a) -> Int -> m (MVector (PrimState m) (Down a)) # | |
Unbox a => MVector MVector (First a) # | |
Defined in Data.Vector.Unboxed.Base Methods basicLength :: MVector s (First a) -> Int # basicUnsafeSlice :: Int -> Int -> MVector s (First a) -> MVector s (First a) # basicOverlaps :: MVector s (First a) -> MVector s (First a) -> Bool # basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (First a)) # basicInitialize :: PrimMonad m => MVector (PrimState m) (First a) -> m () # basicUnsafeReplicate :: PrimMonad m => Int -> First a -> m (MVector (PrimState m) (First a)) # basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (First a) -> Int -> m (First a) # basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (First a) -> Int -> First a -> m () # basicClear :: PrimMonad m => MVector (PrimState m) (First a) -> m () # basicSet :: PrimMonad m => MVector (PrimState m) (First a) -> First a -> m () # basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (First a) -> MVector (PrimState m) (First a) -> m () # basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (First a) -> MVector (PrimState m) (First a) -> m () # basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (First a) -> Int -> m (MVector (PrimState m) (First a)) # | |
Unbox a => MVector MVector (Last a) # | |
Defined in Data.Vector.Unboxed.Base Methods basicLength :: MVector s (Last a) -> Int # basicUnsafeSlice :: Int -> Int -> MVector s (Last a) -> MVector s (Last a) # basicOverlaps :: MVector s (Last a) -> MVector s (Last a) -> Bool # basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (Last a)) # basicInitialize :: PrimMonad m => MVector (PrimState m) (Last a) -> m () # basicUnsafeReplicate :: PrimMonad m => Int -> Last a -> m (MVector (PrimState m) (Last a)) # basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (Last a) -> Int -> m (Last a) # basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (Last a) -> Int -> Last a -> m () # basicClear :: PrimMonad m => MVector (PrimState m) (Last a) -> m () # basicSet :: PrimMonad m => MVector (PrimState m) (Last a) -> Last a -> m () # basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (Last a) -> MVector (PrimState m) (Last a) -> m () # basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (Last a) -> MVector (PrimState m) (Last a) -> m () # basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (Last a) -> Int -> m (MVector (PrimState m) (Last a)) # | |
Unbox a => MVector MVector (Max a) # | |
Defined in Data.Vector.Unboxed.Base Methods basicLength :: MVector s (Max a) -> Int # basicUnsafeSlice :: Int -> Int -> MVector s (Max a) -> MVector s (Max a) # basicOverlaps :: MVector s (Max a) -> MVector s (Max a) -> Bool # basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (Max a)) # basicInitialize :: PrimMonad m => MVector (PrimState m) (Max a) -> m () # basicUnsafeReplicate :: PrimMonad m => Int -> Max a -> m (MVector (PrimState m) (Max a)) # basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (Max a) -> Int -> m (Max a) # basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (Max a) -> Int -> Max a -> m () # basicClear :: PrimMonad m => MVector (PrimState m) (Max a) -> m () # basicSet :: PrimMonad m => MVector (PrimState m) (Max a) -> Max a -> m () # basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (Max a) -> MVector (PrimState m) (Max a) -> m () # basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (Max a) -> MVector (PrimState m) (Max a) -> m () # basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (Max a) -> Int -> m (MVector (PrimState m) (Max a)) # | |
Unbox a => MVector MVector (Min a) # | |
Defined in Data.Vector.Unboxed.Base Methods basicLength :: MVector s (Min a) -> Int # basicUnsafeSlice :: Int -> Int -> MVector s (Min a) -> MVector s (Min a) # basicOverlaps :: MVector s (Min a) -> MVector s (Min a) -> Bool # basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (Min a)) # basicInitialize :: PrimMonad m => MVector (PrimState m) (Min a) -> m () # basicUnsafeReplicate :: PrimMonad m => Int -> Min a -> m (MVector (PrimState m) (Min a)) # basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (Min a) -> Int -> m (Min a) # basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (Min a) -> Int -> Min a -> m () # basicClear :: PrimMonad m => MVector (PrimState m) (Min a) -> m () # basicSet :: PrimMonad m => MVector (PrimState m) (Min a) -> Min a -> m () # basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (Min a) -> MVector (PrimState m) (Min a) -> m () # basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (Min a) -> MVector (PrimState m) (Min a) -> m () # basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (Min a) -> Int -> m (MVector (PrimState m) (Min a)) # | |
Unbox a => MVector MVector (WrappedMonoid a) # | |
Defined in Data.Vector.Unboxed.Base Methods basicLength :: MVector s (WrappedMonoid a) -> Int # basicUnsafeSlice :: Int -> Int -> MVector s (WrappedMonoid a) -> MVector s (WrappedMonoid a) # basicOverlaps :: MVector s (WrappedMonoid a) -> MVector s (WrappedMonoid a) -> Bool # basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (WrappedMonoid a)) # basicInitialize :: PrimMonad m => MVector (PrimState m) (WrappedMonoid a) -> m () # basicUnsafeReplicate :: PrimMonad m => Int -> WrappedMonoid a -> m (MVector (PrimState m) (WrappedMonoid a)) # basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (WrappedMonoid a) -> Int -> m (WrappedMonoid a) # basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (WrappedMonoid a) -> Int -> WrappedMonoid a -> m () # basicClear :: PrimMonad m => MVector (PrimState m) (WrappedMonoid a) -> m () # basicSet :: PrimMonad m => MVector (PrimState m) (WrappedMonoid a) -> WrappedMonoid a -> m () # basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (WrappedMonoid a) -> MVector (PrimState m) (WrappedMonoid a) -> m () # basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (WrappedMonoid a) -> MVector (PrimState m) (WrappedMonoid a) -> m () # basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (WrappedMonoid a) -> Int -> m (MVector (PrimState m) (WrappedMonoid a)) # | |
Unbox a => MVector MVector (Complex a) # | |
Defined in Data.Vector.Unboxed.Base 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) # | |
Defined in Data.Vector.Unboxed.Base 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) => MVector MVector (Arg a b) # | |
Defined in Data.Vector.Unboxed.Base Methods basicLength :: MVector s (Arg a b) -> Int # basicUnsafeSlice :: Int -> Int -> MVector s (Arg a b) -> MVector s (Arg a b) # basicOverlaps :: MVector s (Arg a b) -> MVector s (Arg a b) -> Bool # basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (Arg a b)) # basicInitialize :: PrimMonad m => MVector (PrimState m) (Arg a b) -> m () # basicUnsafeReplicate :: PrimMonad m => Int -> Arg a b -> m (MVector (PrimState m) (Arg a b)) # basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (Arg a b) -> Int -> m (Arg a b) # basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (Arg a b) -> Int -> Arg a b -> m () # basicClear :: PrimMonad m => MVector (PrimState m) (Arg a b) -> m () # basicSet :: PrimMonad m => MVector (PrimState m) (Arg a b) -> Arg a b -> m () # basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (Arg a b) -> MVector (PrimState m) (Arg a b) -> m () # basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (Arg a b) -> MVector (PrimState m) (Arg a b) -> m () # basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (Arg a b) -> Int -> m (MVector (PrimState m) (Arg a b)) # | |
(Unbox a, Unbox b, Unbox c) => MVector MVector (a, b, c) # | |
Defined in Data.Vector.Unboxed.Base 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 => MVector MVector (Const a b) # | |
Defined in Data.Vector.Unboxed.Base Methods basicLength :: MVector s (Const a b) -> Int # basicUnsafeSlice :: Int -> Int -> MVector s (Const a b) -> MVector s (Const a b) # basicOverlaps :: MVector s (Const a b) -> MVector s (Const a b) -> Bool # basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (Const a b)) # basicInitialize :: PrimMonad m => MVector (PrimState m) (Const a b) -> m () # basicUnsafeReplicate :: PrimMonad m => Int -> Const a b -> m (MVector (PrimState m) (Const a b)) # basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (Const a b) -> Int -> m (Const a b) # basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (Const a b) -> Int -> Const a b -> m () # basicClear :: PrimMonad m => MVector (PrimState m) (Const a b) -> m () # basicSet :: PrimMonad m => MVector (PrimState m) (Const a b) -> Const a b -> m () # basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (Const a b) -> MVector (PrimState m) (Const a b) -> m () # basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (Const a b) -> MVector (PrimState m) (Const a b) -> m () # basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (Const a b) -> Int -> m (MVector (PrimState m) (Const a b)) # | |
Unbox (f a) => MVector MVector (Alt f a) # | |
Defined in Data.Vector.Unboxed.Base Methods basicLength :: MVector s (Alt f a) -> Int # basicUnsafeSlice :: Int -> Int -> MVector s (Alt f a) -> MVector s (Alt f a) # basicOverlaps :: MVector s (Alt f a) -> MVector s (Alt f a) -> Bool # basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (Alt f a)) # basicInitialize :: PrimMonad m => MVector (PrimState m) (Alt f a) -> m () # basicUnsafeReplicate :: PrimMonad m => Int -> Alt f a -> m (MVector (PrimState m) (Alt f a)) # basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (Alt f a) -> Int -> m (Alt f a) # basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (Alt f a) -> Int -> Alt f a -> m () # basicClear :: PrimMonad m => MVector (PrimState m) (Alt f a) -> m () # basicSet :: PrimMonad m => MVector (PrimState m) (Alt f a) -> Alt f a -> m () # basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (Alt f a) -> MVector (PrimState m) (Alt f a) -> m () # basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (Alt f a) -> MVector (PrimState m) (Alt f a) -> m () # basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (Alt f a) -> Int -> m (MVector (PrimState m) (Alt f a)) # | |
(Unbox a, Unbox b, Unbox c, Unbox d) => MVector MVector (a, b, c, d) # | |
Defined in Data.Vector.Unboxed.Base 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) # | |
Defined in Data.Vector.Unboxed.Base 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 (f (g a)) => MVector MVector (Compose f g a) # | |
Defined in Data.Vector.Unboxed.Base Methods basicLength :: MVector s (Compose f g a) -> Int # basicUnsafeSlice :: Int -> Int -> MVector s (Compose f g a) -> MVector s (Compose f g a) # basicOverlaps :: MVector s (Compose f g a) -> MVector s (Compose f g a) -> Bool # basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (Compose f g a)) # basicInitialize :: PrimMonad m => MVector (PrimState m) (Compose f g a) -> m () # basicUnsafeReplicate :: PrimMonad m => Int -> Compose f g a -> m (MVector (PrimState m) (Compose f g a)) # basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (Compose f g a) -> Int -> m (Compose f g a) # basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (Compose f g a) -> Int -> Compose f g a -> m () # basicClear :: PrimMonad m => MVector (PrimState m) (Compose f g a) -> m () # basicSet :: PrimMonad m => MVector (PrimState m) (Compose f g a) -> Compose f g a -> m () # basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (Compose f g a) -> MVector (PrimState m) (Compose f g a) -> m () # basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (Compose f g a) -> MVector (PrimState m) (Compose f g a) -> m () # basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (Compose f g a) -> Int -> m (MVector (PrimState m) (Compose f g a)) # | |
(Unbox a, Unbox b, Unbox c, Unbox d, Unbox e, Unbox f) => MVector MVector (a, b, c, d, e, f) # | |
Defined in Data.Vector.Unboxed.Base 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)) # | |
NFData1 (MVector s) # | Since: 0.12.1.0 |
Defined in Data.Vector.Unboxed.Base | |
NFData (MVector s a) # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s All # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s Any # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s Bool # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s Char # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s Double # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s Float # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s Word64 # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s Word32 # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s Word16 # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s Word8 # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s Word # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s Int64 # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s Int32 # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s Int16 # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s Int8 # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s Int # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s () # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s (WrappedMonoid a) # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s (Last a) # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s (First a) # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s (Max a) # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s (Min a) # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s (Product a) # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s (Sum a) # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s (Dual a) # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s (Down a) # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s (Identity a) # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s (Complex a) # | |
Defined in Data.Vector.Unboxed.Base | |
data MVector s (a, b) # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s (Arg a b) # | |
Defined in Data.Vector.Unboxed.Base | |
data MVector s (a, b, c) # | |
newtype MVector s (Alt f a) # | |
Defined in Data.Vector.Unboxed.Base | |
newtype MVector s (Const a b) # | |
Defined in Data.Vector.Unboxed.Base | |
data MVector s (a, b, c, d) # | |
data MVector s (a, b, c, d, e) # | |
newtype MVector s (Compose f g a) # | |
Defined in Data.Vector.Unboxed.Base | |
data MVector s (a, b, c, d, e, f) # | |
class (Vector Vector a, MVector MVector a) => Unbox a #
Instances
Accessors
Length information
Extracting subvectors
Yield a part of the mutable vector without copying it. The vector must
contain at least i+n
elements.
Yield a part of the mutable vector without copying it. No bounds checks are performed.
unsafeInit :: Unbox a => MVector s a -> MVector s a #
unsafeTail :: Unbox a => MVector s a -> MVector s a #
unsafeTake :: Unbox a => Int -> MVector s a -> MVector s a #
unsafeDrop :: Unbox a => Int -> MVector s a -> MVector s a #
Overlapping
Construction
Initialisation
new :: (PrimMonad m, Unbox a) => Int -> m (MVector (PrimState m) a) #
Create a mutable vector of the given length.
unsafeNew :: (PrimMonad m, Unbox a) => Int -> m (MVector (PrimState m) a) #
Create a mutable vector of the given length. The memory is not initialized.
replicate :: (PrimMonad m, Unbox a) => Int -> a -> m (MVector (PrimState m) a) #
Create a mutable vector of the given length (0 if the length is negative) and fill it with an initial value.
replicateM :: (PrimMonad m, Unbox a) => Int -> m a -> m (MVector (PrimState m) a) #
Create a mutable vector of the given length (0 if the length is negative) and fill it with values produced by repeatedly executing the monadic action.
clone :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> m (MVector (PrimState m) a) #
Create a copy of a mutable vector.
Growing
grow :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> Int -> m (MVector (PrimState m) a) #
Grow a vector by the given number of elements. The number must be positive.
unsafeGrow :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> Int -> m (MVector (PrimState m) a) #
Grow a vector by the given number of elements. The number must be positive but this is not checked.
Restricting memory usage
clear :: (PrimMonad m, Unbox a) => MVector (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.
Zipping and unzipping
zip3 :: (Unbox a, Unbox b, Unbox c) => MVector s a -> MVector s b -> MVector s c -> MVector s (a, b, c) #
O(1) Zip 3 vectors
zip4 :: (Unbox a, Unbox b, Unbox c, Unbox d) => MVector s a -> MVector s b -> MVector s c -> MVector s d -> MVector s (a, b, c, d) #
O(1) Zip 4 vectors
zip5 :: (Unbox a, Unbox b, Unbox c, Unbox d, Unbox e) => MVector s a -> MVector s b -> MVector s c -> MVector s d -> MVector s e -> MVector s (a, b, c, d, e) #
O(1) Zip 5 vectors
zip6 :: (Unbox a, Unbox b, Unbox c, Unbox d, Unbox e, Unbox f) => MVector s a -> MVector s b -> MVector s c -> MVector s d -> MVector s e -> MVector s f -> MVector s (a, b, c, d, e, f) #
O(1) Zip 6 vectors
unzip3 :: (Unbox a, Unbox b, Unbox c) => MVector s (a, b, c) -> (MVector s a, MVector s b, MVector s c) #
O(1) Unzip 3 vectors
unzip4 :: (Unbox a, Unbox b, Unbox c, Unbox d) => MVector s (a, b, c, d) -> (MVector s a, MVector s b, MVector s c, MVector s d) #
O(1) Unzip 4 vectors
unzip5 :: (Unbox a, Unbox b, Unbox c, Unbox d, Unbox e) => MVector s (a, b, c, d, e) -> (MVector s a, MVector s b, MVector s c, MVector s d, MVector s e) #
O(1) Unzip 5 vectors
unzip6 :: (Unbox a, Unbox b, Unbox c, Unbox d, Unbox e, Unbox f) => MVector s (a, b, c, d, e, f) -> (MVector s a, MVector s b, MVector s c, MVector s d, MVector s e, MVector s f) #
O(1) Unzip 6 vectors
Accessing individual elements
read :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> Int -> m a #
Yield the element at the given position.
write :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> Int -> a -> m () #
Replace the element at the given position.
modify :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> (a -> a) -> Int -> m () #
Modify the element at the given position.
swap :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> Int -> Int -> m () #
Swap the elements at the given positions.
unsafeRead :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> Int -> m a #
Yield the element at the given position. No bounds checks are performed.
unsafeWrite :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> Int -> a -> m () #
Replace the element at the given position. No bounds checks are performed.
unsafeModify :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> (a -> a) -> Int -> m () #
Modify the element at the given position. No bounds checks are performed.
unsafeSwap :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> Int -> Int -> m () #
Swap the elements at the given positions. No bounds checks are performed.
Modifying vectors
nextPermutation :: (PrimMonad m, Ord e, Unbox e) => MVector (PrimState m) e -> m Bool #
Compute the next (lexicographically) permutation of given vector in-place. Returns False when input is the last permutation
Filling and copying
set :: (PrimMonad m, Unbox a) => MVector (PrimState m) a -> a -> m () #
Set all elements of the vector to the given value.
Arguments
:: (PrimMonad m, Unbox a) | |
=> MVector (PrimState m) a | target |
-> MVector (PrimState m) a | source |
-> m () |
Copy a vector. The two vectors must have the same length and may not overlap.
Arguments
:: (PrimMonad m, Unbox a) | |
=> MVector (PrimState m) a | target |
-> MVector (PrimState m) a | source |
-> m () |
Move the contents of a vector. The two vectors must have the same length.
If the vectors do not overlap, then this is equivalent to copy
.
Otherwise, the copying is performed as if the source vector were
copied to a temporary vector and then the temporary vector was copied
to the target vector.
Arguments
:: (PrimMonad m, Unbox a) | |
=> MVector (PrimState m) a | target |
-> MVector (PrimState m) a | source |
-> m () |
Copy a vector. The two vectors must have the same length and may not overlap. This is not checked.
Arguments
:: (PrimMonad m, Unbox a) | |
=> MVector (PrimState m) a | target |
-> MVector (PrimState m) a | source |
-> m () |
Move the contents of a vector. The two vectors must have the same length, but this is not checked.
If the vectors do not overlap, then this is equivalent to unsafeCopy
.
Otherwise, the copying is performed as if the source vector were
copied to a temporary vector and then the temporary vector was copied
to the target vector.