| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
RewindableIndex.Index.VSqlite
Contents
Synopsis
- type SqliteIndex e n q r = SplitIndex IO Connection Vector e n q r
- new :: (SqliteIndex e n q r -> q -> [e] -> IO r) -> (SqliteIndex e n q r -> IO ()) -> (SqliteIndex e n q r -> e -> IO [n]) -> Int -> FilePath -> Mutable Vector (PrimState IO) e -> IO (Maybe (SqliteIndex e n q r))
- newBoxed :: (BoxedIndex e n q r -> q -> [e] -> IO r) -> (BoxedIndex e n q r -> IO ()) -> (BoxedIndex e n q r -> e -> IO [n]) -> Int -> Int -> FilePath -> IO (Maybe (BoxedIndex e n q r))
- insert :: forall m h v e n q r. Monad m => PrimMonad m => MVector (Mutable v) e => e -> SplitIndex m h v e n q r -> m (SplitIndex m h v e n q r)
- insertL :: PrimMonad m => MVector (Mutable v) e => [e] -> SplitIndex m h v e n q r -> m (SplitIndex m h v e n q r)
- size :: SplitIndex m h v e n q r -> Int
- rewind :: MVector (Mutable v) e => Int -> SplitIndex m h v e n q r -> Maybe (SplitIndex m h v e n q r)
- getEvents :: forall v m e. MVector (Mutable v) e => PrimMonad m => Show e => Storage v m e -> m [e]
- getBuffer :: forall v m e. MVector (Mutable v) e => PrimMonad m => Show e => Storage v m e -> m [e]
- handle :: forall m h v e n q r. Lens' (SplitIndex m h v e n q r) h
- storage :: forall m h v e n q r. Lens' (SplitIndex m h v e n q r) (Storage v m e)
API
type SqliteIndex e n q r = SplitIndex IO Connection Vector e n q r Source #
new :: (SqliteIndex e n q r -> q -> [e] -> IO r) -> (SqliteIndex e n q r -> IO ()) -> (SqliteIndex e n q r -> e -> IO [n]) -> Int -> FilePath -> Mutable Vector (PrimState IO) e -> IO (Maybe (SqliteIndex e n q r)) Source #
newBoxed :: (BoxedIndex e n q r -> q -> [e] -> IO r) -> (BoxedIndex e n q r -> IO ()) -> (BoxedIndex e n q r -> e -> IO [n]) -> Int -> Int -> FilePath -> IO (Maybe (BoxedIndex e n q r)) Source #
insert :: forall m h v e n q r. Monad m => PrimMonad m => MVector (Mutable v) e => e -> SplitIndex m h v e n q r -> m (SplitIndex m h v e n q r) Source #
insertL :: PrimMonad m => MVector (Mutable v) e => [e] -> SplitIndex m h v e n q r -> m (SplitIndex m h v e n q r) Source #
size :: SplitIndex m h v e n q r -> Int Source #
rewind :: MVector (Mutable v) e => Int -> SplitIndex m h v e n q r -> Maybe (SplitIndex m h v e n q r) Source #
getEvents :: forall v m e. MVector (Mutable v) e => PrimMonad m => Show e => Storage v m e -> m [e] Source #
getBuffer :: forall v m e. MVector (Mutable v) e => PrimMonad m => Show e => Storage v m e -> m [e] Source #
handle :: forall m h v e n q r. Lens' (SplitIndex m h v e n q r) h Source #