-- * Boxed arrays
STArray, -- instance of: Eq, MArray
-#ifdef __GLASGOW_HASKELL__
-- * Unboxed arrays
STUArray, -- instance of: Eq, MArray
castSTUArray, -- :: STUArray s i a -> ST s (STUArray s i b)
-#endif
-- * Overloaded mutable array interface
module Data.Array.MArray,
import Prelude
import Data.Array.MArray
+import Data.Array.Base ( STUArray, castSTUArray )
+
#ifdef __HUGS__
-import Hugs.ST
-#else
-import Data.Array.Base hiding (MArray(..))
+import Hugs.ST ( STArray )
#endif
#ifdef __GLASGOW_HASKELL__
-import GHC.Arr
-import GHC.ST
-
--- | Casts an 'STUArray' with one element type into one with a
--- different element type. All the elements of the resulting array
--- are undefined (unless you know what you\'re doing...).
-castSTUArray :: STUArray s ix a -> ST s (STUArray s ix b)
-castSTUArray (STUArray l u marr#) = return (STUArray l u marr#)
+import GHC.Arr ( STArray )
#endif