| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Data.Primitive.SmallArray
- data SmallArray a :: * -> * = SmallArray (SmallArray# a)
- data SmallMutableArray s a :: * -> * -> * = SmallMutableArray (SmallMutableArray# s a)
- newSmallArray :: (HasCallStack, PrimMonad m) => Int -> a -> m (SmallMutableArray (PrimState m) a)
- readSmallArray :: (HasCallStack, PrimMonad m) => SmallMutableArray (PrimState m) a -> Int -> m a
- writeSmallArray :: (HasCallStack, PrimMonad m) => SmallMutableArray (PrimState m) a -> Int -> a -> m ()
- indexSmallArray :: HasCallStack => SmallArray a -> Int -> a
- indexSmallArrayM :: (HasCallStack, Monad m) => SmallArray a -> Int -> m a
- freezeSmallArray :: (HasCallStack, PrimMonad m) => SmallMutableArray (PrimState m) a -> Int -> Int -> m (SmallArray a)
- thawSmallArray :: (HasCallStack, PrimMonad m) => SmallArray a -> Int -> Int -> m (SmallMutableArray (PrimState m) a)
- unsafeFreezeSmallArray :: PrimMonad m => SmallMutableArray (PrimState m) a -> m (SmallArray a)
- unsafeThawSmallArray :: PrimMonad m => SmallArray a -> m (SmallMutableArray (PrimState m) a)
- copySmallArray :: (HasCallStack, PrimMonad m) => SmallMutableArray (PrimState m) a -> Int -> SmallArray a -> Int -> Int -> m ()
- copySmallMutableArray :: (HasCallStack, PrimMonad m) => SmallMutableArray (PrimState m) a -> Int -> SmallMutableArray (PrimState m) a -> Int -> Int -> m ()
- cloneSmallArray :: HasCallStack => SmallArray a -> Int -> Int -> SmallArray a
- cloneSmallMutableArray :: (HasCallStack, PrimMonad m) => SmallMutableArray (PrimState m) a -> Int -> Int -> m (SmallMutableArray (PrimState m) a)
- sizeofSmallArray :: SmallArray a -> Int
- sizeofSmallMutableArray :: SmallMutableArray s a -> Int
Documentation
data SmallArray a :: * -> * #
Constructors
| SmallArray (SmallArray# a) |
Instances
| Monad SmallArray | |
| Functor SmallArray | |
| MonadFix SmallArray | |
| Applicative SmallArray | |
| Foldable SmallArray | |
| Traversable SmallArray | |
| Eq1 SmallArray | Since: 0.6.4.0 |
| Ord1 SmallArray | Since: 0.6.4.0 |
| Read1 SmallArray | Since: 0.6.4.0 |
| Show1 SmallArray | Since: 0.6.4.0 |
| MonadZip SmallArray | |
| Alternative SmallArray | |
| MonadPlus SmallArray | |
| IsList (SmallArray a) | |
| Eq a => Eq (SmallArray a) | |
| Data a => Data (SmallArray a) | |
| Ord a => Ord (SmallArray a) | Lexicographic ordering. Subject to change between major versions. |
| Read a => Read (SmallArray a) | |
| Show a => Show (SmallArray a) | |
| Semigroup (SmallArray a) | Since: 0.6.3.0 |
| Monoid (SmallArray a) | |
| PrimUnlifted (SmallArray a) | |
| type Item (SmallArray a) | |
data SmallMutableArray s a :: * -> * -> * #
Constructors
| SmallMutableArray (SmallMutableArray# s a) |
Instances
| Eq (SmallMutableArray s a) | |
| (Typeable * s, Typeable * a) => Data (SmallMutableArray s a) | |
| PrimUnlifted (SmallMutableArray s a) | |
newSmallArray :: (HasCallStack, PrimMonad m) => Int -> a -> m (SmallMutableArray (PrimState m) a) Source #
readSmallArray :: (HasCallStack, PrimMonad m) => SmallMutableArray (PrimState m) a -> Int -> m a Source #
writeSmallArray :: (HasCallStack, PrimMonad m) => SmallMutableArray (PrimState m) a -> Int -> a -> m () Source #
indexSmallArray :: HasCallStack => SmallArray a -> Int -> a Source #
indexSmallArrayM :: (HasCallStack, Monad m) => SmallArray a -> Int -> m a Source #
Arguments
| :: (HasCallStack, PrimMonad m) | |
| => SmallMutableArray (PrimState m) a | source |
| -> Int | offset |
| -> Int | length |
| -> m (SmallArray a) |
Arguments
| :: (HasCallStack, PrimMonad m) | |
| => SmallArray a | source |
| -> Int | offset |
| -> Int | length |
| -> m (SmallMutableArray (PrimState m) a) |
unsafeFreezeSmallArray :: PrimMonad m => SmallMutableArray (PrimState m) a -> m (SmallArray a) #
Render a mutable array immutable.
This operation performs no copying, so care must be taken not to modify the input array after freezing.
unsafeThawSmallArray :: PrimMonad m => SmallArray a -> m (SmallMutableArray (PrimState m) a) #
Render an immutable array mutable.
This operation performs no copying, so care must be taken with its use.
Arguments
| :: (HasCallStack, PrimMonad m) | |
| => SmallMutableArray (PrimState m) a | destination array |
| -> Int | offset into destination array |
| -> SmallArray a | source array |
| -> Int | offset into source array |
| -> Int | number of elements to copy |
| -> m () |
copySmallMutableArray Source #
Arguments
| :: (HasCallStack, PrimMonad m) | |
| => SmallMutableArray (PrimState m) a | destination array |
| -> Int | offset into destination array |
| -> SmallMutableArray (PrimState m) a | source array |
| -> Int | offset into source array |
| -> Int | number of elements to copy |
| -> m () |
Arguments
| :: HasCallStack | |
| => SmallArray a | source array |
| -> Int | offset into destination array |
| -> Int | number of elements to copy |
| -> SmallArray a |
cloneSmallMutableArray Source #
Arguments
| :: (HasCallStack, PrimMonad m) | |
| => SmallMutableArray (PrimState m) a | source array |
| -> Int | offset into destination array |
| -> Int | number of elements to copy |
| -> m (SmallMutableArray (PrimState m) a) |
sizeofSmallArray :: SmallArray a -> Int #
sizeofSmallMutableArray :: SmallMutableArray s a -> Int #