ouroboros-consensus
Safe HaskellNone
LanguageHaskell2010

Ouroboros.Consensus.Storage.LedgerDB.V2.Forker

Contents

Synopsis

Documentation

data ForkerEnv (m ∷ Type → Type) (l ∷ Type → (Type → Type → Type) → Type) blk Source #

The state inside a forker.

Constructors

ForkerEnv 

Fields

Instances

Instances details
Generic (ForkerEnv m l blk) Source # 
Instance details

Defined in Ouroboros.Consensus.Storage.LedgerDB.V2.Forker

Associated Types

type Rep (ForkerEnv m l blk) 
Instance details

Defined in Ouroboros.Consensus.Storage.LedgerDB.V2.Forker

type Rep (ForkerEnv m l blk) = D1 ('MetaData "ForkerEnv" "Ouroboros.Consensus.Storage.LedgerDB.V2.Forker" "ouroboros-consensus-4.0.0.0-inplace" 'False) (C1 ('MetaCons "ForkerEnv" 'PrefixI 'True) ((S1 ('MetaSel ('Just "foeLedgerSeq") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictTVar m (LedgerSeq m l blk))) :*: S1 ('MetaSel ('Just "foeSwitchVar") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictTVar m (LedgerSeq m l blk)))) :*: (S1 ('MetaSel ('Just "foeTracer") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Tracer m TraceForkerEvent)) :*: (S1 ('MetaSel ('Just "foeLedgerDbLock") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (RAWLock m ())) :*: S1 ('MetaSel ('Just "foeWasCommitted") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictTVar m Bool))))))

Methods

from ∷ ForkerEnv m l blk → Rep (ForkerEnv m l blk) x #

to ∷ Rep (ForkerEnv m l blk) x → ForkerEnv m l blk #

(IOLike m, NoThunks (l blk EmptyMK), NoThunks (TxIn blk), NoThunks (TxOut blk)) ⇒ NoThunks (ForkerEnv m l blk) Source # 
Instance details

Defined in Ouroboros.Consensus.Storage.LedgerDB.V2.Forker

Methods

noThunks ∷ Context → ForkerEnv m l blk → IO (Maybe ThunkInfo) Source #

wNoThunks ∷ Context → ForkerEnv m l blk → IO (Maybe ThunkInfo) Source #

showTypeOf ∷ Proxy (ForkerEnv m l blk) → String Source #

type Rep (ForkerEnv m l blk) Source # 
Instance details

Defined in Ouroboros.Consensus.Storage.LedgerDB.V2.Forker

type Rep (ForkerEnv m l blk) = D1 ('MetaData "ForkerEnv" "Ouroboros.Consensus.Storage.LedgerDB.V2.Forker" "ouroboros-consensus-4.0.0.0-inplace" 'False) (C1 ('MetaCons "ForkerEnv" 'PrefixI 'True) ((S1 ('MetaSel ('Just "foeLedgerSeq") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictTVar m (LedgerSeq m l blk))) :*: S1 ('MetaSel ('Just "foeSwitchVar") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictTVar m (LedgerSeq m l blk)))) :*: (S1 ('MetaSel ('Just "foeTracer") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Tracer m TraceForkerEvent)) :*: (S1 ('MetaSel ('Just "foeLedgerDbLock") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (RAWLock m ())) :*: S1 ('MetaSel ('Just "foeWasCommitted") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (StrictTVar m Bool))))))

implForkerCommit ∷ ∀ m (l ∷ Type → LedgerStateKind) blk. (IOLike m, GetTip (l blk), StandardHash (l blk)) ⇒ ForkerEnv m l blk → STM m (m ()) Source #

implForkerGetLedgerState ∷ ∀ (m ∷ Type → Type) l blk. (MonadSTM m, GetTip (l blk)) ⇒ ForkerEnv m l blk → STM m (l blk EmptyMK) Source #

implForkerPush ∷ (IOLike m, GetTip (l blk), HasLedgerTables l blk, HasCallStack) ⇒ ForkerEnv m l blk → l blk DiffMK → m () Source #

implForkerRangeReadTables ∷ ∀ m (l ∷ Type → LedgerStateKind) blk. (IOLike m, GetTip (l blk), HasLedgerTables l blk) ⇒ QueryBatchSize → ForkerEnv m l blk → RangeQueryPrevious blk → m (LedgerTables blk ValuesMK, Maybe (TxIn blk)) Source #

implForkerReadStatistics ∷ ∀ m (l ∷ Type → LedgerStateKind) blk. (MonadSTM m, GetTip (l blk)) ⇒ ForkerEnv m l blk → m Statistics Source #

implForkerReadTables ∷ ∀ m (l ∷ Type → LedgerStateKind) blk. (IOLike m, GetTip (l blk)) ⇒ ForkerEnv m l blk → LedgerTables blk KeysMK → m (LedgerTables blk ValuesMK) Source #

The API