| Safe Haskell | Safe-Inferred | 
|---|---|
| Language | GHC2021 | 
Database.LSMTree.Internal.UniqCounter
Synopsis
- newtype UniqCounter m = UniqCounter (PrimVar (PrimState m) Int)
 - newUniqCounter :: PrimMonad m => Int -> m (UniqCounter m)
 - incrUniqCounter :: PrimMonad m => UniqCounter m -> m Unique
 - data Unique
 - uniqueToInt :: Unique -> Int
 - uniqueToRunNumber :: Unique -> RunNumber
 - uniqueToTableId :: Unique -> TableId
 - uniqueToCursorId :: Unique -> CursorId
 
Documentation
newtype UniqCounter m Source #
An atomic counter for producing Unique values.
Constructors
| UniqCounter (PrimVar (PrimState m) Int) | 
Instances
| NFData (UniqCounter m) Source # | |
Defined in Database.LSMTree.Internal.UniqCounter Methods rnf :: UniqCounter m -> () #  | |
newUniqCounter :: PrimMonad m => Int -> m (UniqCounter m) Source #
incrUniqCounter :: PrimMonad m => UniqCounter m -> m Unique Source #
Atomically, return the current state of the counter, and increment the counter.
A unique value derived from a UniqCounter.
uniqueToInt :: Unique -> Int Source #
Use specialised versions like uniqueToRunNumber where possible.
uniqueToRunNumber :: Unique -> RunNumber Source #
uniqueToTableId :: Unique -> TableId Source #
uniqueToCursorId :: Unique -> CursorId Source #