| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Cardano.Ledger.Babbage.Rules
Synopsis
- data LEDGER c
- data UTXO era
- utxoTransition ∷ (EraUTxO era, BabbageEraTxBody era, AlonzoEraTx era, EraCertState era, EraStake era, GovState era ~ ShelleyGovState era, InjectRuleFailure "UTXO" ShelleyUtxoPredFailure era, InjectRuleFailure "UTXO" AllegraUtxoPredFailure era, InjectRuleFailure "UTXO" AlonzoUtxoPredFailure era, InjectRuleFailure "UTXO" BabbageUtxoPredFailure era, Environment (EraRule "UTXO" era) ~ UtxoEnv era, State (EraRule "UTXO" era) ~ UTxOState era, Signal (EraRule "UTXO" era) ~ StAnnTx 'TopTx era, BaseM (EraRule "UTXO" era) ~ ShelleyBase, Event (EraRule "UTXO" era) ~ AlonzoUtxoEvent era, STS (EraRule "UTXO" era), Embed (EraRule "UTXOS" era) (EraRule "UTXO" era), Environment (EraRule "UTXOS" era) ~ UtxosEnv era, State (EraRule "UTXOS" era) ~ ShelleyGovState era, Signal (EraRule "UTXOS" era) ~ StAnnTx 'TopTx era) ⇒ TransitionRule (EraRule "UTXO" era)
- validateOutputTooSmallUTxO ∷ (EraTxOut era, Foldable f) ⇒ PParams era → f (Sized (TxOut era)) → Test (BabbageUtxoPredFailure era)
- feesOK ∷ ∀ era (rule ∷ Symbol). (EraUTxO era, BabbageEraTxBody era, AlonzoEraTxWits era, InjectRuleFailure rule AlonzoUtxoPredFailure era, InjectRuleFailure rule BabbageUtxoPredFailure era) ⇒ PParams era → Tx 'TopTx era → UTxO era → Test (EraRuleFailure rule era)
- data BabbageUtxoPredFailure era
- babbageUtxoValidation ∷ (EraUTxO era, BabbageEraTxBody era, AlonzoEraTxWits era, InjectRuleFailure "UTXO" ShelleyUtxoPredFailure era, InjectRuleFailure "UTXO" AllegraUtxoPredFailure era, InjectRuleFailure "UTXO" AlonzoUtxoPredFailure era, InjectRuleFailure "UTXO" BabbageUtxoPredFailure era, Environment (EraRule "UTXO" era) ~ UtxoEnv era, State (EraRule "UTXO" era) ~ UTxOState era, Signal (EraRule "UTXO" era) ~ StAnnTx 'TopTx era, BaseM (EraRule "UTXO" era) ~ ShelleyBase, STS (EraRule "UTXO" era), EraCertState era) ⇒ Rule (EraRule "UTXO" era) 'Transition ()
- validateTotalCollateral ∷ ∀ era (rule ∷ Symbol). (BabbageEraTxBody era, InjectRuleFailure rule AlonzoUtxoPredFailure era, InjectRuleFailure rule BabbageUtxoPredFailure era) ⇒ PParams era → TxBody 'TopTx era → Map TxIn (TxOut era) → Test (EraRuleFailure rule era)
- validateCollateralEqBalance ∷ DeltaCoin → StrictMaybe Coin → Validation (NonEmpty (BabbageUtxoPredFailure era)) ()
- disjointRefInputs ∷ EraPParams era ⇒ PParams era → Set TxIn → Set TxIn → Test (BabbageUtxoPredFailure era)
- updateUTxOStateByTxValidity ∷ (AlonzoEraTx era, BabbageEraTxBody era, EraStake era, EraCertState era, Event (EraRule "UTXO" era) ~ AlonzoUtxoEvent era) ⇒ PParams era → CertState era → GovState era → Tx 'TopTx era → UTxOState era → Rule (EraRule "UTXO" era) 'Transition (UTxOState era)
- data UTXOS era
- utxosTransition ∷ (AlonzoEraTx era, ShelleyEraTxBody era, AlonzoEraUTxO era, EraCertState era, Environment (EraRule "PPUP" era) ~ PpupEnv era, Signal (EraRule "PPUP" era) ~ StrictMaybe (Update era), Embed (EraRule "PPUP" era) (UTXOS era), State (EraRule "PPUP" era) ~ ShelleyGovState era, EraRule "UTXOS" era ~ UTXOS era, InjectRuleFailure "UTXOS" AlonzoUtxosPredFailure era, InjectRuleEvent "UTXOS" AlonzoUtxosEvent era) ⇒ TransitionRule (UTXOS era)
- expectScriptsToPass ∷ (AlonzoEraTx era, AlonzoEraUTxO era, InjectRuleFailure "UTXOS" AlonzoUtxosPredFailure era, InjectRuleEvent "UTXOS" AlonzoUtxosEvent era) ⇒ StAnnTx 'TopTx era → Rule (EraRule "UTXOS" era) 'Transition ()
- babbageEvalScriptsTxInvalid ∷ (AlonzoEraTx era, AlonzoEraUTxO era, InjectRuleFailure "UTXOS" AlonzoUtxosPredFailure era, InjectRuleEvent "UTXOS" AlonzoUtxosEvent era) ⇒ StAnnTx 'TopTx era → Rule (EraRule "UTXOS" era) 'Transition ()
- data UTXOW era
- data BabbageUtxowPredFailure era
- = AlonzoInBabbageUtxowPredFailure (AlonzoUtxowPredFailure era)
- | UtxoFailure (PredicateFailure (EraRule "UTXO" era))
- | MalformedScriptWitnesses (NonEmptySet ScriptHash)
- | MalformedReferenceScripts (NonEmptySet ScriptHash)
- | ScriptIntegrityHashMismatch (Mismatch 'RelEQ (StrictMaybe ScriptIntegrityHash)) (StrictMaybe ByteString)
- babbageMissingScripts ∷ PParams era → Set ScriptHash → Set ScriptHash → Set ScriptHash → Test (ShelleyUtxowPredFailure era)
- validateFailedBabbageScripts ∷ ∀ era (l ∷ TxLevel). EraTx era ⇒ Tx l era → ScriptsProvided era → Set ScriptHash → Test (ShelleyUtxowPredFailure era)
- validateScriptsWellFormed ∷ (EraTx era, BabbageEraTxBody era) ⇒ PParams era → Tx 'TopTx era → Test (BabbageUtxowPredFailure era)
- validateScriptsWellFormedTxOuts ∷ (BabbageEraTxOut era, Foldable f) ⇒ PParams era → Map ScriptHash (Script era) → f (TxOut era) → Test (BabbageUtxowPredFailure era)
- babbageUtxowTransition ∷ (AlonzoEraTx era, AlonzoEraUTxO era, ScriptsNeeded era ~ AlonzoScriptsNeeded era, BabbageEraTxBody era, Environment (EraRule "UTXOW" era) ~ UtxoEnv era, Signal (EraRule "UTXOW" era) ~ StAnnTx 'TopTx era, State (EraRule "UTXOW" era) ~ UTxOState era, InjectRuleFailure "UTXOW" ShelleyUtxowPredFailure era, InjectRuleFailure "UTXOW" AlonzoUtxowPredFailure era, InjectRuleFailure "UTXOW" BabbageUtxowPredFailure era, Embed (EraRule "UTXO" era) (EraRule "UTXOW" era), Environment (EraRule "UTXO" era) ~ UtxoEnv era, Signal (EraRule "UTXO" era) ~ StAnnTx 'TopTx era, State (EraRule "UTXO" era) ~ UTxOState era) ⇒ TransitionRule (EraRule "UTXOW" era)
Documentation
Instances
Instances
| (EraTx era, EraUTxO era, BabbageEraTxBody era, AlonzoEraTx era, AlonzoEraTxWits era, EraCertState era, EraStake era, GovState era ~ ShelleyGovState era, EraRule "UTXO" era ~ UTXO era, InjectRuleFailure "UTXO" ShelleyUtxoPredFailure era, InjectRuleFailure "UTXO" AllegraUtxoPredFailure era, InjectRuleFailure "UTXO" AlonzoUtxoPredFailure era, InjectRuleFailure "UTXO" BabbageUtxoPredFailure era, Embed (EraRule "UTXOS" era) (UTXO era), Environment (EraRule "UTXOS" era) ~ UtxosEnv era, State (EraRule "UTXOS" era) ~ ShelleyGovState era, Signal (EraRule "UTXOS" era) ~ StAnnTx 'TopTx era, SafeToHash (TxWits era)) ⇒ STS (UTXO era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxo Associated Types
Methods initialRules ∷ [InitialRule (UTXO era)] Source # transitionRules ∷ [TransitionRule (UTXO era)] Source # assertions ∷ [Assertion (UTXO era)] Source # renderAssertionViolation ∷ AssertionViolation (UTXO era) → String Source # | |||||||||||||||||||||||||
| (Era era, STS (UTXO era), PredicateFailure (EraRule "UTXO" era) ~ BabbageUtxoPredFailure era, Event (EraRule "UTXO" era) ~ AlonzoUtxoEvent era, BaseM (UTXOW era) ~ ShelleyBase, PredicateFailure (UTXOW era) ~ BabbageUtxowPredFailure era, Event (UTXOW era) ~ AlonzoUtxowEvent era) ⇒ Embed (UTXO era) (UTXOW era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxow Methods wrapFailed ∷ PredicateFailure (UTXO era) → PredicateFailure (UTXOW era) Source # | |||||||||||||||||||||||||
| (Era era, STS (UTXOS era), PredicateFailure (EraRule "UTXOS" era) ~ AlonzoUtxosPredFailure era, Event (EraRule "UTXOS" era) ~ Event (UTXOS era)) ⇒ Embed (UTXOS era) (UTXO era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxo Methods wrapFailed ∷ PredicateFailure (UTXOS era) → PredicateFailure (UTXO era) Source # | |||||||||||||||||||||||||
| type BaseM (UTXO era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxo | |||||||||||||||||||||||||
| type Environment (UTXO era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxo | |||||||||||||||||||||||||
| type Event (UTXO era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxo | |||||||||||||||||||||||||
| type PredicateFailure (UTXO era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxo | |||||||||||||||||||||||||
| type Signal (UTXO era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxo | |||||||||||||||||||||||||
| type State (UTXO era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxo | |||||||||||||||||||||||||
utxoTransition ∷ (EraUTxO era, BabbageEraTxBody era, AlonzoEraTx era, EraCertState era, EraStake era, GovState era ~ ShelleyGovState era, InjectRuleFailure "UTXO" ShelleyUtxoPredFailure era, InjectRuleFailure "UTXO" AllegraUtxoPredFailure era, InjectRuleFailure "UTXO" AlonzoUtxoPredFailure era, InjectRuleFailure "UTXO" BabbageUtxoPredFailure era, Environment (EraRule "UTXO" era) ~ UtxoEnv era, State (EraRule "UTXO" era) ~ UTxOState era, Signal (EraRule "UTXO" era) ~ StAnnTx 'TopTx era, BaseM (EraRule "UTXO" era) ~ ShelleyBase, Event (EraRule "UTXO" era) ~ AlonzoUtxoEvent era, STS (EraRule "UTXO" era), Embed (EraRule "UTXOS" era) (EraRule "UTXO" era), Environment (EraRule "UTXOS" era) ~ UtxosEnv era, State (EraRule "UTXOS" era) ~ ShelleyGovState era, Signal (EraRule "UTXOS" era) ~ StAnnTx 'TopTx era) ⇒ TransitionRule (EraRule "UTXO" era) Source #
The UTxO transition rule for the Babbage eras.
validateOutputTooSmallUTxO ∷ (EraTxOut era, Foldable f) ⇒ PParams era → f (Sized (TxOut era)) → Test (BabbageUtxoPredFailure era) Source #
feesOK ∷ ∀ era (rule ∷ Symbol). (EraUTxO era, BabbageEraTxBody era, AlonzoEraTxWits era, InjectRuleFailure rule AlonzoUtxoPredFailure era, InjectRuleFailure rule BabbageUtxoPredFailure era) ⇒ PParams era → Tx 'TopTx era → UTxO era → Test (EraRuleFailure rule era) Source #
feesOK is a predicate with several parts. Some parts only apply in special circumstances. 1) The fee paid is >= the minimum fee 2) If the total ExUnits are 0 in both Memory and Steps, no further part needs to be checked. 3) The collateral consists only of VKey addresses 4) The collateral inputs do not contain any non-ADA part 5) The collateral is sufficient to cover the appropriate percentage of the fee marked in the transaction 6) The collateral is equivalent to total collateral asserted by the transaction 7) There is at least one collateral input
feesOK can differ from Era to Era, as new notions of fees arise. This is the Babbage version See: Figure 2: Functions related to fees and collateral, in the Babbage specification In the spec feesOK is a boolean function. Because wee need to handle predicate failures in the implementaion, it is coded as a Test. Which is a validation. This version is generic in that it can be lifted to any PredicateFailure type that embeds BabbageUtxoPred era. This makes it possibly useful in future Eras.
data BabbageUtxoPredFailure era Source #
Predicate failure for the Babbage Era
Constructors
| AlonzoInBabbageUtxoPredFailure (AlonzoUtxoPredFailure era) | |
| IncorrectTotalCollateralField | The collateral is not equivalent to the total collateral asserted by the transaction |
| BabbageOutputTooSmallUTxO (NonEmpty (TxOut era, Coin)) | list of supplied transaction outputs that are too small, together with the minimum value for the given output. |
| BabbageNonDisjointRefInputs (NonEmpty TxIn) | TxIns that appear in both inputs and reference inputs |
Instances
| InjectRuleFailure "BBODY" BabbageUtxoPredFailure BabbageEra Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Bbody Methods injectFailure ∷ BabbageUtxoPredFailure BabbageEra → EraRuleFailure "BBODY" BabbageEra Source # | |||||
| InjectRuleFailure "LEDGER" BabbageUtxoPredFailure BabbageEra Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Ledger Methods injectFailure ∷ BabbageUtxoPredFailure BabbageEra → EraRuleFailure "LEDGER" BabbageEra Source # | |||||
| InjectRuleFailure "LEDGERS" BabbageUtxoPredFailure BabbageEra Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Ledgers Methods injectFailure ∷ BabbageUtxoPredFailure BabbageEra → EraRuleFailure "LEDGERS" BabbageEra Source # | |||||
| InjectRuleFailure "UTXO" BabbageUtxoPredFailure BabbageEra Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Utxo Methods injectFailure ∷ BabbageUtxoPredFailure BabbageEra → EraRuleFailure "UTXO" BabbageEra Source # | |||||
| InjectRuleFailure "UTXOW" BabbageUtxoPredFailure BabbageEra Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Utxow Methods injectFailure ∷ BabbageUtxoPredFailure BabbageEra → EraRuleFailure "UTXOW" BabbageEra Source # | |||||
| (Era era, DecCBOR (TxOut era), EncCBOR (Value era), DecCBOR (Value era), DecCBOR (PredicateFailure (EraRule "UTXOS" era)), DecCBOR (PredicateFailure (EraRule "UTXO" era)), Typeable (Script era), Typeable (TxAuxData era)) ⇒ DecCBOR (BabbageUtxoPredFailure era) Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Utxo | |||||
| (Era era, EncCBOR (TxOut era), EncCBOR (Value era), EncCBOR (PredicateFailure (EraRule "UTXOS" era)), EncCBOR TxIn) ⇒ EncCBOR (BabbageUtxoPredFailure era) Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Utxo Methods encCBOR ∷ BabbageUtxoPredFailure era → Encoding Source # | |||||
| (Era era, NFData (Value era), NFData (TxOut era), NFData (PredicateFailure (EraRule "UTXOS" era))) ⇒ NFData (BabbageUtxoPredFailure era) Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Utxo Methods rnf ∷ BabbageUtxoPredFailure era → () # | |||||
| Generic (BabbageUtxoPredFailure era) Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Utxo Associated Types
Methods from ∷ BabbageUtxoPredFailure era → Rep (BabbageUtxoPredFailure era) x # to ∷ Rep (BabbageUtxoPredFailure era) x → BabbageUtxoPredFailure era # | |||||
| (Era era, Show (AlonzoUtxoPredFailure era), Show (PredicateFailure (EraRule "UTXO" era)), Show (TxOut era), Show (Script era), Show TxIn) ⇒ Show (BabbageUtxoPredFailure era) Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Utxo Methods showsPrec ∷ Int → BabbageUtxoPredFailure era → ShowS # show ∷ BabbageUtxoPredFailure era → String # showList ∷ [BabbageUtxoPredFailure era] → ShowS # | |||||
| (Era era, Eq (AlonzoUtxoPredFailure era), Eq (PredicateFailure (EraRule "UTXO" era)), Eq (TxOut era), Eq (Script era), Eq TxIn) ⇒ Eq (BabbageUtxoPredFailure era) Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Utxo Methods (==) ∷ BabbageUtxoPredFailure era → BabbageUtxoPredFailure era → Bool # (/=) ∷ BabbageUtxoPredFailure era → BabbageUtxoPredFailure era → Bool # | |||||
| type Rep (BabbageUtxoPredFailure era) Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Utxo type Rep (BabbageUtxoPredFailure era) = D1 ('MetaData "BabbageUtxoPredFailure" "Cardano.Ledger.Babbage.Rules.Utxo" "cardano-ledger-babbage-1.14.0.0-inplace" 'False) ((C1 ('MetaCons "AlonzoInBabbageUtxoPredFailure" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (AlonzoUtxoPredFailure era))) :+: C1 ('MetaCons "IncorrectTotalCollateralField" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DeltaCoin) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Coin))) :+: (C1 ('MetaCons "BabbageOutputTooSmallUTxO" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (NonEmpty (TxOut era, Coin)))) :+: C1 ('MetaCons "BabbageNonDisjointRefInputs" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (NonEmpty TxIn))))) | |||||
babbageUtxoValidation ∷ (EraUTxO era, BabbageEraTxBody era, AlonzoEraTxWits era, InjectRuleFailure "UTXO" ShelleyUtxoPredFailure era, InjectRuleFailure "UTXO" AllegraUtxoPredFailure era, InjectRuleFailure "UTXO" AlonzoUtxoPredFailure era, InjectRuleFailure "UTXO" BabbageUtxoPredFailure era, Environment (EraRule "UTXO" era) ~ UtxoEnv era, State (EraRule "UTXO" era) ~ UTxOState era, Signal (EraRule "UTXO" era) ~ StAnnTx 'TopTx era, BaseM (EraRule "UTXO" era) ~ ShelleyBase, STS (EraRule "UTXO" era), EraCertState era) ⇒ Rule (EraRule "UTXO" era) 'Transition () Source #
validateTotalCollateral ∷ ∀ era (rule ∷ Symbol). (BabbageEraTxBody era, InjectRuleFailure rule AlonzoUtxoPredFailure era, InjectRuleFailure rule BabbageUtxoPredFailure era) ⇒ PParams era → TxBody 'TopTx era → Map TxIn (TxOut era) → Test (EraRuleFailure rule era) Source #
validateCollateralEqBalance ∷ DeltaCoin → StrictMaybe Coin → Validation (NonEmpty (BabbageUtxoPredFailure era)) () Source #
disjointRefInputs ∷ EraPParams era ⇒ PParams era → Set TxIn → Set TxIn → Test (BabbageUtxoPredFailure era) Source #
Test that inputs and refInpts are disjoint, in Conway and later Eras.
updateUTxOStateByTxValidity ∷ (AlonzoEraTx era, BabbageEraTxBody era, EraStake era, EraCertState era, Event (EraRule "UTXO" era) ~ AlonzoUtxoEvent era) ⇒ PParams era → CertState era → GovState era → Tx 'TopTx era → UTxOState era → Rule (EraRule "UTXO" era) 'Transition (UTxOState era) Source #
Instances
| (AlonzoEraTx era, AlonzoEraPParams era, ShelleyEraTxBody era, BabbageEraTxBody era, AlonzoEraUTxO era, EraPlutusContext era, EraStake era, EraCertState era, ScriptsNeeded era ~ AlonzoScriptsNeeded era, EraGov era, GovState era ~ ShelleyGovState era, Embed (EraRule "PPUP" era) (UTXOS era), Environment (EraRule "PPUP" era) ~ PpupEnv era, Signal (EraRule "PPUP" era) ~ StrictMaybe (Update era), State (EraRule "PPUP" era) ~ ShelleyGovState era, Signal (UTXOS era) ~ StAnnTx 'TopTx era, EncCBOR (EraRuleFailure "PPUP" era), Eq (EraRuleFailure "PPUP" era), Show (EraRuleFailure "PPUP" era), InjectRuleFailure "UTXOS" AlonzoUtxosPredFailure era, InjectRuleEvent "UTXOS" AlonzoUtxosEvent era, EraRule "UTXOS" era ~ UTXOS era) ⇒ STS (UTXOS era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxos Associated Types
Methods initialRules ∷ [InitialRule (UTXOS era)] Source # transitionRules ∷ [TransitionRule (UTXOS era)] Source # assertions ∷ [Assertion (UTXOS era)] Source # renderAssertionViolation ∷ AssertionViolation (UTXOS era) → String Source # | |||||||||||||||||||||||||
| (Era era, STS (UTXOS era), PredicateFailure (EraRule "UTXOS" era) ~ AlonzoUtxosPredFailure era, Event (EraRule "UTXOS" era) ~ Event (UTXOS era)) ⇒ Embed (UTXOS era) (UTXO era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxo Methods wrapFailed ∷ PredicateFailure (UTXOS era) → PredicateFailure (UTXO era) Source # | |||||||||||||||||||||||||
| (Era era, STS (PPUP era), EraRuleFailure "PPUP" era ~ ShelleyPpupPredFailure era, EraRuleEvent "PPUP" era ~ PpupEvent era) ⇒ Embed (PPUP era) (UTXOS era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxos Methods wrapFailed ∷ PredicateFailure (PPUP era) → PredicateFailure (UTXOS era) Source # | |||||||||||||||||||||||||
| type BaseM (UTXOS era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxos | |||||||||||||||||||||||||
| type Environment (UTXOS era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxos | |||||||||||||||||||||||||
| type Event (UTXOS era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxos | |||||||||||||||||||||||||
| type PredicateFailure (UTXOS era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxos | |||||||||||||||||||||||||
| type Signal (UTXOS era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxos | |||||||||||||||||||||||||
| type State (UTXOS era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxos | |||||||||||||||||||||||||
utxosTransition ∷ (AlonzoEraTx era, ShelleyEraTxBody era, AlonzoEraUTxO era, EraCertState era, Environment (EraRule "PPUP" era) ~ PpupEnv era, Signal (EraRule "PPUP" era) ~ StrictMaybe (Update era), Embed (EraRule "PPUP" era) (UTXOS era), State (EraRule "PPUP" era) ~ ShelleyGovState era, EraRule "UTXOS" era ~ UTXOS era, InjectRuleFailure "UTXOS" AlonzoUtxosPredFailure era, InjectRuleEvent "UTXOS" AlonzoUtxosEvent era) ⇒ TransitionRule (UTXOS era) Source #
expectScriptsToPass ∷ (AlonzoEraTx era, AlonzoEraUTxO era, InjectRuleFailure "UTXOS" AlonzoUtxosPredFailure era, InjectRuleEvent "UTXOS" AlonzoUtxosEvent era) ⇒ StAnnTx 'TopTx era → Rule (EraRule "UTXOS" era) 'Transition () Source #
babbageEvalScriptsTxInvalid ∷ (AlonzoEraTx era, AlonzoEraUTxO era, InjectRuleFailure "UTXOS" AlonzoUtxosPredFailure era, InjectRuleEvent "UTXOS" AlonzoUtxosEvent era) ⇒ StAnnTx 'TopTx era → Rule (EraRule "UTXOS" era) 'Transition () Source #
Instances
| (AlonzoEraTx era, AlonzoEraUTxO era, ShelleyEraTxBody era, ScriptsNeeded era ~ AlonzoScriptsNeeded era, BabbageEraTxBody era, EraRule "UTXOW" era ~ UTXOW era, InjectRuleFailure "UTXOW" ShelleyUtxowPredFailure era, InjectRuleFailure "UTXOW" AlonzoUtxowPredFailure era, InjectRuleFailure "UTXOW" BabbageUtxowPredFailure era, Embed (EraRule "UTXO" era) (UTXOW era), Environment (EraRule "UTXO" era) ~ UtxoEnv era, State (EraRule "UTXO" era) ~ UTxOState era, Signal (EraRule "UTXO" era) ~ StAnnTx 'TopTx era, Eq (PredicateFailure (EraRule "UTXOS" era)), Show (PredicateFailure (EraRule "UTXOS" era)), EraCertState era) ⇒ STS (UTXOW era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxow Associated Types
Methods initialRules ∷ [InitialRule (UTXOW era)] Source # transitionRules ∷ [TransitionRule (UTXOW era)] Source # assertions ∷ [Assertion (UTXOW era)] Source # renderAssertionViolation ∷ AssertionViolation (UTXOW era) → String Source # | |||||||||||||||||||||||||
| (Era era, STS (UTXO era), PredicateFailure (EraRule "UTXO" era) ~ BabbageUtxoPredFailure era, Event (EraRule "UTXO" era) ~ AlonzoUtxoEvent era, BaseM (UTXOW era) ~ ShelleyBase, PredicateFailure (UTXOW era) ~ BabbageUtxowPredFailure era, Event (UTXOW era) ~ AlonzoUtxowEvent era) ⇒ Embed (UTXO era) (UTXOW era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxow Methods wrapFailed ∷ PredicateFailure (UTXO era) → PredicateFailure (UTXOW era) Source # | |||||||||||||||||||||||||
| (Era era, STS (UTXOW era), Event (EraRule "UTXOW" era) ~ AlonzoUtxowEvent era, PredicateFailure (EraRule "UTXOW" era) ~ BabbageUtxowPredFailure era) ⇒ Embed (UTXOW era) (LEDGER era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Ledger Methods wrapFailed ∷ PredicateFailure (UTXOW era) → PredicateFailure (LEDGER era) Source # | |||||||||||||||||||||||||
| type BaseM (UTXOW era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxow | |||||||||||||||||||||||||
| type Environment (UTXOW era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxow | |||||||||||||||||||||||||
| type Event (UTXOW era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxow | |||||||||||||||||||||||||
| type PredicateFailure (UTXOW era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxow | |||||||||||||||||||||||||
| type Signal (UTXOW era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxow | |||||||||||||||||||||||||
| type State (UTXOW era) Source # | |||||||||||||||||||||||||
Defined in Cardano.Ledger.Babbage.Rules.Utxow | |||||||||||||||||||||||||
data BabbageUtxowPredFailure era Source #
Constructors
| AlonzoInBabbageUtxowPredFailure (AlonzoUtxowPredFailure era) | |
| UtxoFailure (PredicateFailure (EraRule "UTXO" era)) | Embed UTXO rule failures |
| MalformedScriptWitnesses (NonEmptySet ScriptHash) | the set of malformed script witnesses |
| MalformedReferenceScripts (NonEmptySet ScriptHash) | the set of malformed script witnesses |
| ScriptIntegrityHashMismatch (Mismatch 'RelEQ (StrictMaybe ScriptIntegrityHash)) (StrictMaybe ByteString) | The computed script integrity hash does not match the provided script integrity hash |
Instances
| InjectRuleFailure "BBODY" BabbageUtxowPredFailure BabbageEra Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Bbody Methods injectFailure ∷ BabbageUtxowPredFailure BabbageEra → EraRuleFailure "BBODY" BabbageEra Source # | |||||
| InjectRuleFailure "LEDGER" BabbageUtxowPredFailure BabbageEra Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Ledger Methods injectFailure ∷ BabbageUtxowPredFailure BabbageEra → EraRuleFailure "LEDGER" BabbageEra Source # | |||||
| InjectRuleFailure "LEDGERS" BabbageUtxowPredFailure BabbageEra Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Ledgers Methods injectFailure ∷ BabbageUtxowPredFailure BabbageEra → EraRuleFailure "LEDGERS" BabbageEra Source # | |||||
| InjectRuleFailure "UTXOW" BabbageUtxowPredFailure BabbageEra Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Utxow Methods injectFailure ∷ BabbageUtxowPredFailure BabbageEra → EraRuleFailure "UTXOW" BabbageEra Source # | |||||
| (AlonzoEraScript era, DecCBOR (TxOut era), DecCBOR (TxCert era), DecCBOR (Value era), DecCBOR (PredicateFailure (EraRule "UTXOS" era)), DecCBOR (PredicateFailure (EraRule "UTXO" era)), Typeable (TxAuxData era)) ⇒ DecCBOR (BabbageUtxowPredFailure era) Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Utxow | |||||
| (AlonzoEraScript era, EncCBOR (PredicateFailure (EraRule "UTXO" era))) ⇒ EncCBOR (BabbageUtxowPredFailure era) Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Utxow Methods encCBOR ∷ BabbageUtxowPredFailure era → Encoding Source # | |||||
| (AlonzoEraScript era, NFData (TxCert era), NFData (PredicateFailure (EraRule "UTXO" era))) ⇒ NFData (BabbageUtxowPredFailure era) Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Utxow Methods rnf ∷ BabbageUtxowPredFailure era → () # | |||||
| Generic (BabbageUtxowPredFailure era) Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Utxow Associated Types
Methods from ∷ BabbageUtxowPredFailure era → Rep (BabbageUtxowPredFailure era) x # to ∷ Rep (BabbageUtxowPredFailure era) x → BabbageUtxowPredFailure era # | |||||
| (AlonzoEraScript era, Show (ShelleyUtxowPredFailure era), Show (PredicateFailure (EraRule "UTXO" era)), Show (PredicateFailure (EraRule "UTXOS" era)), Show (TxOut era), Show (TxCert era), Show (Value era)) ⇒ Show (BabbageUtxowPredFailure era) Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Utxow Methods showsPrec ∷ Int → BabbageUtxowPredFailure era → ShowS # show ∷ BabbageUtxowPredFailure era → String # showList ∷ [BabbageUtxowPredFailure era] → ShowS # | |||||
| (AlonzoEraScript era, Eq (ShelleyUtxowPredFailure era), Eq (PredicateFailure (EraRule "UTXO" era)), Eq (PredicateFailure (EraRule "UTXOS" era)), Eq (TxOut era), Eq (TxCert era)) ⇒ Eq (BabbageUtxowPredFailure era) Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Utxow Methods (==) ∷ BabbageUtxowPredFailure era → BabbageUtxowPredFailure era → Bool # (/=) ∷ BabbageUtxowPredFailure era → BabbageUtxowPredFailure era → Bool # | |||||
| type Rep (BabbageUtxowPredFailure era) Source # | |||||
Defined in Cardano.Ledger.Babbage.Rules.Utxow type Rep (BabbageUtxowPredFailure era) = D1 ('MetaData "BabbageUtxowPredFailure" "Cardano.Ledger.Babbage.Rules.Utxow" "cardano-ledger-babbage-1.14.0.0-inplace" 'False) ((C1 ('MetaCons "AlonzoInBabbageUtxowPredFailure" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (AlonzoUtxowPredFailure era))) :+: C1 ('MetaCons "UtxoFailure" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (PredicateFailure (EraRule "UTXO" era))))) :+: (C1 ('MetaCons "MalformedScriptWitnesses" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (NonEmptySet ScriptHash))) :+: (C1 ('MetaCons "MalformedReferenceScripts" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (NonEmptySet ScriptHash))) :+: C1 ('MetaCons "ScriptIntegrityHashMismatch" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Mismatch 'RelEQ (StrictMaybe ScriptIntegrityHash))) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (StrictMaybe ByteString)))))) | |||||
babbageMissingScripts ∷ PParams era → Set ScriptHash → Set ScriptHash → Set ScriptHash → Test (ShelleyUtxowPredFailure era) Source #
validateFailedBabbageScripts ∷ ∀ era (l ∷ TxLevel). EraTx era ⇒ Tx l era → ScriptsProvided era → Set ScriptHash → Test (ShelleyUtxowPredFailure era) Source #
validateScriptsWellFormed ∷ (EraTx era, BabbageEraTxBody era) ⇒ PParams era → Tx 'TopTx era → Test (BabbageUtxowPredFailure era) Source #
validateScriptsWellFormedTxOuts ∷ (BabbageEraTxOut era, Foldable f) ⇒ PParams era → Map ScriptHash (Script era) → f (TxOut era) → Test (BabbageUtxowPredFailure era) Source #
babbageUtxowTransition ∷ (AlonzoEraTx era, AlonzoEraUTxO era, ScriptsNeeded era ~ AlonzoScriptsNeeded era, BabbageEraTxBody era, Environment (EraRule "UTXOW" era) ~ UtxoEnv era, Signal (EraRule "UTXOW" era) ~ StAnnTx 'TopTx era, State (EraRule "UTXOW" era) ~ UTxOState era, InjectRuleFailure "UTXOW" ShelleyUtxowPredFailure era, InjectRuleFailure "UTXOW" AlonzoUtxowPredFailure era, InjectRuleFailure "UTXOW" BabbageUtxowPredFailure era, Embed (EraRule "UTXO" era) (EraRule "UTXOW" era), Environment (EraRule "UTXO" era) ~ UtxoEnv era, Signal (EraRule "UTXO" era) ~ StAnnTx 'TopTx era, State (EraRule "UTXO" era) ~ UTxOState era) ⇒ TransitionRule (EraRule "UTXOW" era) Source #
UTXOW transition rule that is used in Babbage and Conway era.