de.sciss.lucre.confluent.impl

Type members

Classlikes

object CacheMapImpl
Companion
class
sealed trait CacheMapImpl[T <: Txn[T], K, Store] extends CacheMap[T, K, Store]

A cache map puts an in-memory transaction local cache in front of a persistent store. Entries written during the transaction are held in this cache for fast retrieval. But the cache serves a second purpose: In the confluent system, the write paths are incomplete during the transaction, as it is not known in advance whether a meld forces a new index tree to be generated or not. In this case, the implementation needs to gather this information during the transaction, and when the flush is performed, the new terminal version is appended before writing the cached entries to the persistent store.

A cache map puts an in-memory transaction local cache in front of a persistent store. Entries written during the transaction are held in this cache for fast retrieval. But the cache serves a second purpose: In the confluent system, the write paths are incomplete during the transaction, as it is not known in advance whether a meld forces a new index tree to be generated or not. In this case, the implementation needs to gather this information during the transaction, and when the flush is performed, the new terminal version is appended before writing the cached entries to the persistent store.

Type Params
K

the key type (typically Int for a variable map or Long for an identifier map)

T

the underlying system's transaction type

Companion
object
final class ConfluentIntMapImpl[T <: Txn[T]](val store: DataStore, val handler: IndexMapHandler[T], val isOblivious: Boolean) extends DurableConfluentMapImpl[T, Int]
final class ConfluentLongMapImpl[T <: Txn[T]](val store: DataStore, val handler: IndexMapHandler[T], val isOblivious: Boolean) extends DurableConfluentMapImpl[T, Long]
object CursorImpl
Companion
class
trait DurableCacheMapImpl[T <: Txn[T], K] extends Durable[T, K, DurablePersistentMap[T, K]] with CacheMapImpl[T, K, DurablePersistentMap[T, K]]
Companion
object
sealed trait DurableConfluentMapImpl[T <: Txn[T], K] extends DurablePersistentMap[T, K]
Companion
object
Companion
class
trait InMemoryCacheMapImpl[T <: Txn[T], K] extends InMemory[T, K, InMemoryConfluentMap[T, K]] with CacheMapImpl[T, K, InMemoryConfluentMap[T, K]]
Companion
object
final class InMemoryConfluentMapImpl[T <: Txn[T], K] extends InMemoryConfluentMap[T, K]
Companion
object
trait Mixin[Tx <: Txn[Tx]] extends ConfluentLike[Tx] with IndexMapHandler[Tx] with PartialMapHandler[Tx] with Mixin[Tx]
trait RegularTxnMixin[Tx <: Txn[Tx], D1 <: Txn[D1], I1 <: Txn[I1]] extends TxnMixin[Tx, D1, I1]
trait RootTxnMixin[Tx <: Txn[Tx], D1 <: Txn[D1], I1 <: Txn[I1]] extends TxnMixin[Tx, D1, I1]
trait TxnMixin[Tx <: Txn[Tx], D1 <: Txn[D1], I1 <: Txn[I1]] extends Txn[Tx] with BasicTxnImpl[Tx, I1] with Modifiable