|
1 | 1 | {-# LANGUAGE CPP #-} |
2 | | - |
| 2 | +{-# LANGUAGE PatternSynonyms #-} |
3 | 3 | -- | |
4 | 4 | -- Module : Data.Vector.Unboxed.Mutable |
5 | 5 | -- Copyright : (c) Roman Leshchinskiy 2009-2010 |
|
16 | 16 |
|
17 | 17 | module Data.Vector.Unboxed.Mutable ( |
18 | 18 | -- * Mutable vectors of primitive types |
19 | | - MVector(..), IOVector, STVector, Unbox, |
| 19 | + MVector(MV_UnboxViaPrim, MV_UnboxViaStorable, MV_DoNotUnboxLazy, MV_DoNotUnboxStrict, MV_DoNotUnboxNormalForm, MV_UnboxAs, |
| 20 | + MV_Int,MV_Int8,MV_Int16,MV_Int32,MV_Int64,MV_Word,MV_Word8,MV_Word16,MV_Word32,MV_Word64,MV_Float,MV_Double, |
| 21 | + MV_Char,MV_Bool,MV_Complex,MV_Identity,MV_Down,MV_Dual,MV_Sum,MV_Product,MV_Min,MV_Max,MV_First,MV_Last, |
| 22 | + MV_WrappedMonoid,MV_Arg,MV_Any,MV_All,MV_Const,MV_Alt,MV_Compose), |
| 23 | + IOVector, STVector, Unbox, |
20 | 24 |
|
21 | 25 | -- * Accessors |
22 | 26 |
|
@@ -65,7 +69,10 @@ module Data.Vector.Unboxed.Mutable ( |
65 | 69 | -- ** Filling and copying |
66 | 70 | set, copy, move, unsafeCopy, unsafeMove, |
67 | 71 | -- * Re-exports |
68 | | - PrimMonad, PrimState, RealWorld |
| 72 | + PrimMonad, PrimState, RealWorld, |
| 73 | + -- * Deprecated |
| 74 | + pattern MV_Unit, |
| 75 | + pattern MV_2, pattern MV_3, pattern MV_4, pattern MV_5, pattern MV_6 |
69 | 76 | ) where |
70 | 77 |
|
71 | 78 | import Data.Vector.Unboxed.Unsafe (MVector, STVector,Unbox,IOVector) |
@@ -803,3 +810,36 @@ unzip6 (U.MV_6 _ as bs cs ds es fs) = (as, bs, cs, ds, es, fs) |
803 | 810 |
|
804 | 811 | -- $setup |
805 | 812 | -- >>> import Prelude (Char, (*), ($)) |
| 813 | + |
| 814 | + |
| 815 | +pattern MV_Unit :: Int -> MVector s () |
| 816 | +pattern MV_Unit i = U.MV_Unit i |
| 817 | +{-# COMPLETE MV_Unit #-} |
| 818 | +{-# DEPRECATED MV_Unit "Import constructor from Data.Vector.Unboxed.Unsafe" #-} |
| 819 | + |
| 820 | +pattern MV_2 :: Int -> MVector s a -> MVector s b -> MVector s (a,b) |
| 821 | +pattern MV_2 i va vb = U.MV_2 i va vb |
| 822 | +{-# COMPLETE MV_2 #-} |
| 823 | +{-# DEPRECATED MV_2 "Import constructor from Data.Vector.Unboxed.Unsafe" #-} |
| 824 | + |
| 825 | +pattern MV_3 :: Int -> MVector s a -> MVector s b -> MVector s c -> MVector s (a,b,c) |
| 826 | +pattern MV_3 i va vb vc = U.MV_3 i va vb vc |
| 827 | +{-# COMPLETE MV_3 #-} |
| 828 | +{-# DEPRECATED MV_3 "Import constructor from Data.Vector.Unboxed.Unsafe" #-} |
| 829 | + |
| 830 | +pattern MV_4 :: Int -> MVector s a -> MVector s b -> MVector s c -> MVector s d -> MVector s (a,b,c,d) |
| 831 | +pattern MV_4 i va vb vc vd = U.MV_4 i va vb vc vd |
| 832 | +{-# COMPLETE MV_4 #-} |
| 833 | +{-# DEPRECATED MV_4 "Import constructor from Data.Vector.Unboxed.Unsafe" #-} |
| 834 | + |
| 835 | +pattern MV_5 :: Int -> MVector s a -> MVector s b -> MVector s c -> MVector s d |
| 836 | + -> MVector s e -> MVector s (a,b,c,d,e) |
| 837 | +pattern MV_5 i va vb vc vd ve = U.MV_5 i va vb vc vd ve |
| 838 | +{-# COMPLETE MV_5 #-} |
| 839 | +{-# DEPRECATED MV_5 "Import constructor from Data.Vector.Unboxed.Unsafe" #-} |
| 840 | + |
| 841 | +pattern MV_6 :: Int -> MVector s a -> MVector s b -> MVector s c -> MVector s d |
| 842 | + -> MVector s e -> MVector s f -> MVector s (a,b,c,d,e,f) |
| 843 | +pattern MV_6 i va vb vc vd ve vf = U.MV_6 i va vb vc vd ve vf |
| 844 | +{-# COMPLETE MV_6 #-} |
| 845 | +{-# DEPRECATED MV_6 "Import constructor from Data.Vector.Unboxed.Unsafe" #-} |
0 commit comments