Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- data SparseSmallArray e
- empty :: SparseSmallArray e
- singleton :: Int -> e -> SparseSmallArray e
- maybeList :: [Maybe e] -> SparseSmallArray e
- pair :: Int -> e -> Int -> e -> SparseSmallArray e
- insert :: Int -> e -> SparseSmallArray e -> SparseSmallArray e
- replace :: Int -> e -> SparseSmallArray e -> SparseSmallArray e
- unset :: Int -> SparseSmallArray e -> SparseSmallArray e
- lookup :: Int -> SparseSmallArray e -> Maybe e
- focusAt :: Monad m => Focus a m b -> Int -> SparseSmallArray a -> m (b, SparseSmallArray a)
- toMaybeList :: SparseSmallArray e -> [Maybe e]
- elementsUnfold :: SparseSmallArray e -> Unfold e
- elementsUnfoldM :: Monad m => SparseSmallArray a -> UnfoldM m a
- onElementAtFocus :: Monad m => Int -> Focus a m b -> Focus (SparseSmallArray a) m b
- null :: SparseSmallArray a -> Bool
Documentation
data SparseSmallArray e Source #
An immutable space-efficient sparse array, which can only store not more than 32 or 64 elements depending on the system architecure.
Instances
empty :: SparseSmallArray e Source #
singleton :: Int -> e -> SparseSmallArray e Source #
An array with a single element at the specified index.
maybeList :: [Maybe e] -> SparseSmallArray e Source #
insert :: Int -> e -> SparseSmallArray e -> SparseSmallArray e Source #
Insert an element value at the index. It's your obligation to ensure that the index is empty before the operation.
replace :: Int -> e -> SparseSmallArray e -> SparseSmallArray e Source #
unset :: Int -> SparseSmallArray e -> SparseSmallArray e Source #
Remove an element.
focusAt :: Monad m => Focus a m b -> Int -> SparseSmallArray a -> m (b, SparseSmallArray a) Source #
toMaybeList :: SparseSmallArray e -> [Maybe e] Source #
Convert into a list representation.
elementsUnfold :: SparseSmallArray e -> Unfold e Source #
elementsUnfoldM :: Monad m => SparseSmallArray a -> UnfoldM m a Source #
onElementAtFocus :: Monad m => Int -> Focus a m b -> Focus (SparseSmallArray a) m b Source #
null :: SparseSmallArray a -> Bool Source #