lsm-tree-0.1.0.0: Log-structured merge-trees
Safe HaskellSafe-Inferred
LanguageGHC2021

Database.LSMTree.Internal.Arena

Contents

Synopsis

Documentation

data ArenaManager s Source #

Instances

Instances details
NFData (ArenaManager s) Source #

For use in bencmark environments

Instance details

Defined in Database.LSMTree.Internal.Arena

Methods

rnf :: ArenaManager s -> () #

data Arena s Source #

Instances

Instances details
NFData (Arena s) Source # 
Instance details

Defined in Database.LSMTree.Internal.Arena

Methods

rnf :: Arena s -> () #

type Size = Int Source #

withArena :: PrimMonad m => ArenaManager (PrimState m) -> (Arena (PrimState m) -> m a) -> m a Source #

allocateFromArena :: PrimMonad m => Arena (PrimState m) -> Size -> Alignment -> m (Offset, MutableByteArray (PrimState m)) Source #

Allocate a slice of mutable byte array from the arena.

Test helpers

withUnmanagedArena :: PrimMonad m => (Arena (PrimState m) -> m a) -> m a Source #

Create unmanaged arena.

Never use this in non-tests code.