Add convert
authorRoman Leshchinskiy <rl@cse.unsw.edu.au>
Wed, 5 May 2010 15:14:07 +0000 (15:14 +0000)
committerRoman Leshchinskiy <rl@cse.unsw.edu.au>
Wed, 5 May 2010 15:14:07 +0000 (15:14 +0000)
Data/Vector.hs
Data/Vector/Generic.hs
Data/Vector/Primitive.hs
Data/Vector/Storable.hs
Data/Vector/Unboxed.hs

index 7b4f48e..cb67f39 100644 (file)
@@ -136,6 +136,9 @@ module Data.Vector (
   -- ** Lists
   toList, fromList, fromListN,
 
+  -- ** Other vector types
+  G.convert,
+
   -- ** Mutable vectors
   thaw, thawMany, copy, unsafeCopy
 ) where
index 74e4bd3..184ed58 100644 (file)
@@ -126,6 +126,9 @@ module Data.Vector.Generic (
   -- ** Lists
   toList, fromList, fromListN,
 
+  -- ** Different vector types
+  convert,
+
   -- ** Mutable vectors
   thaw, thawMany, copy, unsafeCopy,
 
@@ -1538,6 +1541,14 @@ fromListN :: Vector v a => Int -> [a] -> v a
 {-# INLINE fromListN #-}
 fromListN n = unstream . Stream.fromListN n
 
+-- Conversions - Immutable vectors
+-- -------------------------------
+
+-- | /O(n)/ Convert different vector types
+convert :: (Vector v a, Vector w a) => v a -> w a
+{-# INLINE convert #-}
+convert = unstream . stream
+
 -- Conversions - Mutable vectors
 -- -----------------------------
 
index 5b7d1cc..5b136d2 100644 (file)
@@ -125,6 +125,9 @@ module Data.Vector.Primitive (
   -- ** Lists
   toList, fromList, fromListN,
 
+  -- ** Other vector types
+  G.convert,
+
   -- ** Mutable vectors
   thaw, thawMany, copy, unsafeCopy
 ) where
index 51dbe7d..919c848 100644 (file)
@@ -122,6 +122,9 @@ module Data.Vector.Storable (
   -- ** Lists
   toList, fromList, fromListN,
 
+  -- ** Other vector types
+  G.convert,
+
   -- ** Mutable vectors
   thaw, thawMany, copy, unsafeCopy,
 
index f023560..8c3c386 100644 (file)
@@ -149,6 +149,9 @@ module Data.Vector.Unboxed (
   -- ** Lists
   toList, fromList, fromListN,
 
+  -- ** Other vector types
+  G.convert,
+
   -- ** Mutable vectors
   thaw, thawMany, copy, unsafeCopy
 ) where