23
23
-- Immutable strict boxed vectors (that is, polymorphic arrays capable
24
24
-- of holding any Haskell value). It is possible to create vector
25
25
-- which contain bottom elements, either by using mutable interfaces
26
- -- (see "Data.Vector.Strict.Mutable") or functions that don't preserve
27
- -- strictness ('lazyFromArray').
26
+ -- (see "Data.Vector.Strict.Mutable")
28
27
--
29
28
-- For unboxed arrays, use "Data.Vector.Unboxed".
30
-
31
29
module Data.Vector.Strict (
32
30
-- * Boxed vectors
33
31
Vector , MVector ,
@@ -163,9 +161,9 @@ module Data.Vector.Strict (
163
161
-- ** Lists
164
162
toList , Data.Vector.Strict. fromList , Data.Vector.Strict. fromListN ,
165
163
-- ** Lazy vectors
166
- toLazy , fromLazy , lazyFromLazy ,
164
+ toLazy , fromLazy ,
167
165
-- ** Arrays
168
- toArray , fromArray , lazyFromArray , toArraySlice , unsafeFromArraySlice , unsafeLazyFromArraySlice ,
166
+ toArray , fromArray , toArraySlice , unsafeFromArraySlice ,
169
167
170
168
-- ** Other vector types
171
169
G. convert ,
@@ -2476,11 +2474,6 @@ toLazy (Vector v) = v
2476
2474
fromLazy :: V. Vector a -> Vector a
2477
2475
fromLazy vec = liftRnfV (`seq` () ) v `seq` v where v = Vector vec
2478
2476
2479
- -- | /O(1)/ Convert lazy array to strict array. This function does not
2480
- -- evaluate vector elements.
2481
- lazyFromLazy :: V. Vector a -> Vector a
2482
- lazyFromLazy = Vector
2483
-
2484
2477
2485
2478
-- Conversions - Arrays
2486
2479
-- -----------------------------
@@ -2492,15 +2485,7 @@ fromArray :: Array a -> Vector a
2492
2485
{-# INLINE fromArray #-}
2493
2486
fromArray arr = liftRnfV (`seq` () ) vec `seq` vec
2494
2487
where
2495
- vec = lazyFromArray arr
2496
-
2497
- -- | /O(1)/ Convert an array to a vector. This function does not touch
2498
- -- content of array so resulting vector may contain bottoms.
2499
- --
2500
- -- @since NEXT
2501
- lazyFromArray :: Array a -> Vector a
2502
- {-# INLINE lazyFromArray #-}
2503
- lazyFromArray = Vector . V. fromArray
2488
+ vec = Vector $ V. fromArray arr
2504
2489
2505
2490
-- | /O(n)/ Convert a vector to an array.
2506
2491
--
@@ -2537,25 +2522,8 @@ unsafeFromArraySlice ::
2537
2522
-> Vector a
2538
2523
{-# INLINE unsafeFromArraySlice #-}
2539
2524
unsafeFromArraySlice arr offset len = liftRnfV (`seq` () ) vec `seq` vec
2540
- where vec = unsafeLazyFromArraySlice arr offset len
2525
+ where vec = Vector ( V. unsafeFromArraySlice arr offset len)
2541
2526
2542
- -- | /O(1)/ Convert an array slice to a vector. This function does not touch
2543
- -- content of array so resulting vector may contain bottoms.
2544
- --
2545
- -- This function is very unsafe, because constructing an invalid
2546
- -- vector can yield almost all other safe functions in this module
2547
- -- unsafe. These are equivalent:
2548
- --
2549
- -- > unsafeFromArraySlice len offset === unsafeTake len . unsafeDrop offset . fromArray
2550
- --
2551
- -- @since 0.13.0.0
2552
- unsafeLazyFromArraySlice ::
2553
- Array a -- ^ Immutable boxed array.
2554
- -> Int -- ^ Offset
2555
- -> Int -- ^ Length
2556
- -> Vector a
2557
- {-# INLINE unsafeLazyFromArraySlice #-}
2558
- unsafeLazyFromArraySlice arr o l = Vector (V. unsafeFromArraySlice arr o l)
2559
2527
2560
2528
2561
2529
-- Conversions - Mutable vectors
0 commit comments