Safe Haskell | None |
---|---|
Language | Haskell98 |
Shelley.Spec.Ledger.STS.Utxow
Synopsis
- data UTXOW era
- data UtxowPredicateFailure era
- = InvalidWitnessesUTXOW ![VKey 'Witness (Crypto era)]
- | MissingVKeyWitnessesUTXOW !(WitHashes era)
- | MissingScriptWitnessesUTXOW !(Set (ScriptHash era))
- | ScriptWitnessNotValidatingUTXOW !(Set (ScriptHash era))
- | UtxoFailure (PredicateFailure (UTXO era))
- | MIRInsufficientGenesisSigsUTXOW (Set (KeyHash 'Witness (Crypto era)))
- | MissingTxBodyMetaDataHash !(MetaDataHash era)
- | MissingTxMetaData !(MetaDataHash era)
- | ConflictingMetaDataHash !(MetaDataHash era) !(MetaDataHash era)
- | InvalidMetaData
- type family PredicateFailure a = (b ∷ Type) | b → a
- utxoWitnessed ∷ ∀ era. (ShelleyBased era, ValidateScript era, STS (UTXOW era), BaseM (UTXOW era) ~ ShelleyBase, Embed (UTXO era) (UTXOW era), DSignable (Crypto era) (Hash (Crypto era) EraIndependentTxBody), Environment (UTXO era) ~ UtxoEnv era, State (UTXO era) ~ UTxOState era, Signal (UTXO era) ~ Tx era, Environment (UTXOW era) ~ UtxoEnv era, State (UTXOW era) ~ UTxOState era, Signal (UTXOW era) ~ Tx era, PredicateFailure (UTXOW era) ~ UtxowPredicateFailure era, HasField "inputs" (TxBody era) (Set (TxIn era)), HasField "wdrls" (TxBody era) (Wdrl era), HasField "certs" (TxBody era) (StrictSeq (DCert era)), HasField "mdHash" (TxBody era) (StrictMaybe (MetaDataHash era)), HasField "update" (TxBody era) (StrictMaybe (Update era))) ⇒ (UTxO era → Tx era → Set (ScriptHash era)) → TransitionRule (UTXOW era)
- initialLedgerStateUTXOW ∷ ∀ era. (Embed (UTXO era) (UTXOW era), Environment (UTXOW era) ~ UtxoEnv era, State (UTXOW era) ~ UTxOState era, Environment (UTXO era) ~ UtxoEnv era, State (UTXO era) ~ UTxOState era) ⇒ InitialRule (UTXOW era)
Documentation
Instances
data UtxowPredicateFailure era Source #
Constructors
InvalidWitnessesUTXOW ![VKey 'Witness (Crypto era)] | |
MissingVKeyWitnessesUTXOW !(WitHashes era) | |
MissingScriptWitnessesUTXOW !(Set (ScriptHash era)) | |
ScriptWitnessNotValidatingUTXOW !(Set (ScriptHash era)) | |
UtxoFailure (PredicateFailure (UTXO era)) | |
MIRInsufficientGenesisSigsUTXOW (Set (KeyHash 'Witness (Crypto era))) | |
MissingTxBodyMetaDataHash !(MetaDataHash era) | |
MissingTxMetaData !(MetaDataHash era) | |
ConflictingMetaDataHash !(MetaDataHash era) !(MetaDataHash era) | |
InvalidMetaData |
Instances
type family PredicateFailure a = (b ∷ Type) | b → a Source #
Descriptive type for the possible failures which might cause a transition to fail.
As a convention, PredicateFailure
s which are "structural" (meaning that
they are not "throwable" in practice, and are used to pass control from
one transition rule to another) are prefixed with S_
.
Structural PredicateFailure
s represent conditions between rules where
the disjunction of all rules' preconditions is equal to True
. That is,
either one rule will throw a structural PredicateFailure
and the other
will succeed, or vice-versa.
Instances
utxoWitnessed ∷ ∀ era. (ShelleyBased era, ValidateScript era, STS (UTXOW era), BaseM (UTXOW era) ~ ShelleyBase, Embed (UTXO era) (UTXOW era), DSignable (Crypto era) (Hash (Crypto era) EraIndependentTxBody), Environment (UTXO era) ~ UtxoEnv era, State (UTXO era) ~ UTxOState era, Signal (UTXO era) ~ Tx era, Environment (UTXOW era) ~ UtxoEnv era, State (UTXOW era) ~ UTxOState era, Signal (UTXOW era) ~ Tx era, PredicateFailure (UTXOW era) ~ UtxowPredicateFailure era, HasField "inputs" (TxBody era) (Set (TxIn era)), HasField "wdrls" (TxBody era) (Wdrl era), HasField "certs" (TxBody era) (StrictSeq (DCert era)), HasField "mdHash" (TxBody era) (StrictMaybe (MetaDataHash era)), HasField "update" (TxBody era) (StrictMaybe (Update era))) ⇒ (UTxO era → Tx era → Set (ScriptHash era)) → TransitionRule (UTXOW era) Source #
initialLedgerStateUTXOW ∷ ∀ era. (Embed (UTXO era) (UTXOW era), Environment (UTXOW era) ~ UtxoEnv era, State (UTXOW era) ~ UTxOState era, Environment (UTXO era) ~ UtxoEnv era, State (UTXO era) ~ UTxOState era) ⇒ InitialRule (UTXOW era) Source #