Add unsafeBackpermute
[darcs-mirrors/vector.git] / Data / Vector / Unboxed.hs
index a1e4859..3c8bbde 100644 (file)
@@ -32,6 +32,9 @@ module Data.Vector.Unboxed (
   accum, accumulate, accumulate_,
   (//), update, update_,
   backpermute, reverse,
+  unsafeAccum, unsafeAccumulate, unsafeAccumulate_,
+  unsafeUpd, unsafeUpdate, unsafeUpdate_,
+  unsafeBackpermute,
 
   -- * Mapping
   map, imap, concatMap,
@@ -71,11 +74,7 @@ module Data.Vector.Unboxed (
   enumFromTo, enumFromThenTo,
 
   -- * Conversion to/from lists
-  toList, fromList,
-
-  -- * Unsafe operations
-  unsafeAccum, unsafeAccumulate, unsafeAccumulate_,
-  unsafeUpd, unsafeUpdate, unsafeUpdate_
+  toList, fromList
 ) where
 
 import Data.Vector.Unboxed.Base
@@ -339,6 +338,10 @@ backpermute :: Unbox a => Vector a -> Vector Int -> Vector a
 {-# INLINE backpermute #-}
 backpermute = G.backpermute
 
+unsafeBackpermute :: Unbox a => Vector a -> Vector Int -> Vector a
+{-# INLINE unsafeBackpermute #-}
+unsafeBackpermute = G.unsafeBackpermute
+
 reverse :: Unbox a => Vector a -> Vector a
 {-# INLINE reverse #-}
 reverse = G.reverse