@@ -88,9 +88,6 @@ instance IArray (MArray s) where
88 length (MArray len _ba) = len
88 length (MArray len _ba) = len
89 {-# INLINE length #-}
89 {-# INLINE length #-}
91−-- | Freeze a mutable array. Do not mutate the 'MArray' afterwards!
92−unsafeFreeze :: MArray s -> ST s (Array)
94-- | Create an uninitialized mutable array.
91-- | Create an uninitialized mutable array.
95unsafeNew :: forall s. Int -> ST s (MArray s)
92unsafeNew :: forall s. Int -> ST s (MArray s)
96unsafeNew n =
93unsafeNew n =
@@ -107,6 +104,8 @@ unsafeNew n =
107 (# s2#, marr# #) -> (# s2#, MArray n marr# #)
104 (# s2#, marr# #) -> (# s2#, MArray n marr# #)
108{-# INLINE unsafeNew #-}
105{-# INLINE unsafeNew #-}
107+-- | Freeze a mutable array. Do not mutate the 'MArray' afterwards!
108+unsafeFreeze :: MArray s -> ST s (Array)
110unsafeFreeze (MArray len mba#) = ST $ \s# ->
109unsafeFreeze (MArray len mba#) = ST $ \s# ->
111 (# s#, Array len (unsafeCoerce# mba#) #)
110 (# s#, Array len (unsafeCoerce# mba#) #)
112{-# INLINE unsafeFreeze #-}
111{-# INLINE unsafeFreeze #-}