rewindable-index-1.1.0.0: Indexers that can rewind the state to a previous version.
Safe HaskellNone
LanguageHaskell2010

RewindableIndex.Index.VSqlite

Contents

Synopsis

API

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 #

storage :: forall m h v e n q r. Lens' (SplitIndex m h v e n q r) (Storage v m e) Source #