Safe Haskell | None |
---|---|
Language | Haskell2010 |
Ouroboros.Consensus.Fragment.Validated
Contents
Description
Intended for qualified import
import Ouroboros.Consensus.Fragment.Validated (ValidatedFragment) import qualified Ouroboros.Consensus.Fragment.Validated as VF
Synopsis
- data ValidatedFragment b l where
- pattern ValidatedFragment ∷ ∀ l b (mk ∷ MapKind). (GetTip l, HasHeader b, HeaderHash b ~ HeaderHash l, HasCallStack) ⇒ AnchoredFragment b → l mk → ValidatedFragment b (l mk)
- validatedFragment ∷ ValidatedFragment b l → AnchoredFragment b
- validatedLedger ∷ ValidatedFragment b l → l
- validatedTip ∷ HasHeader b ⇒ ValidatedFragment b l → Point b
- newM ∷ (MonadSTM m, GetTipSTM m l, HasHeader b, HeaderHash b ~ HeaderHash l, HasCallStack) ⇒ AnchoredFragment b → l → m (ValidatedFragment b l)
Documentation
data ValidatedFragment b l where Source #
Validated chain fragment along with the ledger state after validation
INVARIANT:
AF.headPoint validatedFragment == ledgerTipPoint validatedLedger
The invariant is only checked on construction, maintaining it afterwards is up to the user.
Bundled Patterns
pattern ValidatedFragment ∷ ∀ l b (mk ∷ MapKind). (GetTip l, HasHeader b, HeaderHash b ~ HeaderHash l, HasCallStack) ⇒ AnchoredFragment b → l mk → ValidatedFragment b (l mk) |
Instances
validatedFragment ∷ ValidatedFragment b l → AnchoredFragment b Source #
Chain fragment
validatedLedger ∷ ValidatedFragment b l → l Source #
Ledger after validation
validatedTip ∷ HasHeader b ⇒ ValidatedFragment b l → Point b Source #
Monadic
newM ∷ (MonadSTM m, GetTipSTM m l, HasHeader b, HeaderHash b ~ HeaderHash l, HasCallStack) ⇒ AnchoredFragment b → l → m (ValidatedFragment b l) Source #
Constructor for ValidatedFragment
that checks the invariant