rio-0.1.22.0: A standard library for Haskell
Safe HaskellNone
LanguageHaskell2010

RIO.Vector.Boxed.Unsafe

Description

Boxed Vector unsafe functions. These perform no bounds checking, and may cause segmentation faults etc.! Import as:

import qualified RIO.Vector.Boxed.Unsafe as VB'
Synopsis

Accessors

Indexing

unsafeIndex :: Vector a -> Int -> a #

unsafeHead :: Vector a -> a #

unsafeLast :: Vector a -> a #

Monadic indexing

unsafeIndexM :: Monad m => Vector a -> Int -> m a #

unsafeHeadM :: Monad m => Vector a -> m a #

unsafeLastM :: Monad m => Vector a -> m a #

Extracting subvectors

unsafeSlice :: Int -> Int -> Vector a -> Vector a #

Modifying vectors

Bulk updates

unsafeUpd :: Vector a -> [(Int, a)] -> Vector a #

unsafeUpdate :: Vector a -> Vector (Int, a) -> Vector a #

Accumulations

unsafeAccum :: (a -> b -> a) -> Vector a -> [(Int, b)] -> Vector a #

unsafeAccumulate :: (a -> b -> a) -> Vector a -> Vector (Int, b) -> Vector a #

unsafeAccumulate_ :: (a -> b -> a) -> Vector a -> Vector Int -> Vector b -> Vector a #

Permutations

Conversions

Mutable vectors

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

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