cardano-ledger-allegra-1.6.0.1: Allegra ledger era that introduces time lock support.
Safe HaskellSafe-Inferred
LanguageHaskell2010

Cardano.Ledger.Allegra.Rules

Synopsis

Documentation

data AllegraUTXO era Source #

Instances

Instances details
(EraTx era, EraUTxO era, ShelleyEraTxBody era, AllegraEraTxBody era, Embed (EraRule "PPUP" era) (AllegraUTXO era), Environment (EraRule "PPUP" era) ~ PpupEnv era, State (EraRule "PPUP" era) ~ ShelleyGovState era, Signal (EraRule "PPUP" era) ~ StrictMaybe (Update era), ProtVerAtMost era 8, Eq (EraRuleFailure "PPUP" era), Show (EraRuleFailure "PPUP" era), EraRule "UTXO" era ~ AllegraUTXO era, GovState era ~ ShelleyGovState era, InjectRuleFailure "UTXO" AllegraUtxoPredFailure era, InjectRuleFailure "UTXO" ShelleyUtxoPredFailure era) ⇒ STS (AllegraUTXO era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

Associated Types

type State (AllegraUTXO era) Source #

type Signal (AllegraUTXO era) Source #

type Environment (AllegraUTXO era) Source #

type BaseM (AllegraUTXO era) ∷ TypeType Source #

type Event (AllegraUTXO era) Source #

type PredicateFailure (AllegraUTXO era) Source #

(Era era, STS (AllegraUTXO era), PredicateFailure (EraRule "UTXO" era) ~ AllegraUtxoPredFailure era, Event (EraRule "UTXO" era) ~ Event (AllegraUTXO era)) ⇒ Embed (AllegraUTXO era) (AllegraUTXOW era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxow

(Era era, STS (ShelleyPPUP era), EraRuleFailure "PPUP" era ~ ShelleyPpupPredFailure era, Event (EraRule "PPUP" era) ~ Event (ShelleyPPUP era)) ⇒ Embed (ShelleyPPUP era) (AllegraUTXO era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

type BaseM (AllegraUTXO era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

type Environment (AllegraUTXO era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

type Event (AllegraUTXO era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

type PredicateFailure (AllegraUTXO era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

type Signal (AllegraUTXO era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

type Signal (AllegraUTXO era) = Tx era
type State (AllegraUTXO era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

type State (AllegraUTXO era) = UTxOState era

data AllegraUtxoEvent era Source #

Constructors

UpdateEvent (Event (EraRule "PPUP" era)) 
TotalDeposits (SafeHash (EraCrypto era) EraIndependentTxBody) Coin 
TxUTxODiff

The UTxOs consumed and created by a signal tx

Fields

  • (UTxO era)

    UTxO consumed

  • (UTxO era)

    UTxO created

Instances

Instances details
Generic (AllegraUtxoEvent era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

Associated Types

type Rep (AllegraUtxoEvent era) ∷ TypeType Source #

(Era era, NFData (TxOut era), NFData (Event (EraRule "PPUP" era))) ⇒ NFData (AllegraUtxoEvent era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

Methods

rnfAllegraUtxoEvent era → () Source #

(Era era, Eq (TxOut era), Eq (Event (EraRule "PPUP" era))) ⇒ Eq (AllegraUtxoEvent era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

type Rep (AllegraUtxoEvent era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

data AllegraUtxoPredFailure era Source #

Instances

Instances details
InjectRuleFailure "UTXO" AllegraUtxoPredFailure (AllegraEra c) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

InjectRuleFailure "UTXOW" AllegraUtxoPredFailure (AllegraEra c) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxow

Generic (AllegraUtxoPredFailure era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

Associated Types

type Rep (AllegraUtxoPredFailure era) ∷ TypeType Source #

(Show (TxOut era), Show (Value era), Show (EraRuleFailure "PPUP" era)) ⇒ Show (AllegraUtxoPredFailure era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

(EraTxOut era, DecCBOR (EraRuleFailure "PPUP" era)) ⇒ DecCBOR (AllegraUtxoPredFailure era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

(Era era, Crypto (EraCrypto era), EncCBOR (Value era), EncCBOR (TxOut era), EncCBOR (EraRuleFailure "PPUP" era)) ⇒ EncCBOR (AllegraUtxoPredFailure era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

(Era era, NFData (TxOut era), NFData (Value era), NFData (EraRuleFailure "PPUP" era)) ⇒ NFData (AllegraUtxoPredFailure era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

Methods

rnfAllegraUtxoPredFailure era → () Source #

(Eq (TxOut era), Eq (Value era), Eq (EraRuleFailure "PPUP" era)) ⇒ Eq (AllegraUtxoPredFailure era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

(NoThunks (TxOut era), NoThunks (Value era), NoThunks (EraRuleFailure "PPUP" era)) ⇒ NoThunks (AllegraUtxoPredFailure era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

type Rep (AllegraUtxoPredFailure era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxo

type Rep (AllegraUtxoPredFailure era) = D1 ('MetaData "AllegraUtxoPredFailure" "Cardano.Ledger.Allegra.Rules.Utxo" "cardano-ledger-allegra-1.6.0.1-inplace" 'False) (((C1 ('MetaCons "BadInputsUTxO" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Set (TxIn (EraCrypto era))))) :+: (C1 ('MetaCons "OutsideValidityIntervalUTxO" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ValidityInterval) :*: S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 SlotNo)) :+: C1 ('MetaCons "MaxTxSizeUTxO" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Integer) :*: S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Integer)))) :+: (C1 ('MetaCons "InputSetEmptyUTxO" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "FeeTooSmallUTxO" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Coin) :*: S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Coin)) :+: C1 ('MetaCons "ValueNotConservedUTxO" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Value era)) :*: S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Value era)))))) :+: ((C1 ('MetaCons "WrongNetwork" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Network) :*: S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Set (Addr (EraCrypto era))))) :+: (C1 ('MetaCons "WrongNetworkWithdrawal" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Network) :*: S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Set (RewardAccount (EraCrypto era))))) :+: C1 ('MetaCons "OutputTooSmallUTxO" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 [TxOut era])))) :+: ((C1 ('MetaCons "UpdateFailure" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (EraRuleFailure "PPUP" era))) :+: C1 ('MetaCons "OutputBootAddrAttrsTooBig" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 [TxOut era]))) :+: (C1 ('MetaCons "TriesToForgeADA" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "OutputTooBigUTxO" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 [TxOut era]))))))

validateOutsideValidityIntervalUTxOAllegraEraTxBody era ⇒ SlotNoTxBody era → Test (AllegraUtxoPredFailure era) Source #

Ensure the transaction is within the validity window.

ininterval slot (txvld tx)

data AllegraUTXOW era Source #

Instances

Instances details
(EraTx era, EraUTxO era, ShelleyEraTxBody era, ScriptsNeeded era ~ ShelleyScriptsNeeded era, Embed (EraRule "UTXO" era) (AllegraUTXOW era), Environment (EraRule "UTXO" era) ~ UtxoEnv era, State (EraRule "UTXO" era) ~ UTxOState era, Signal (EraRule "UTXO" era) ~ Tx era, EraRule "UTXOW" era ~ AllegraUTXOW era, InjectRuleFailure "UTXOW" ShelleyUtxowPredFailure era, DSignable (EraCrypto era) (Hash (EraCrypto era) EraIndependentTxBody)) ⇒ STS (AllegraUTXOW era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxow

(Era era, STS (AllegraUTXO era), PredicateFailure (EraRule "UTXO" era) ~ AllegraUtxoPredFailure era, Event (EraRule "UTXO" era) ~ Event (AllegraUTXO era)) ⇒ Embed (AllegraUTXO era) (AllegraUTXOW era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxow

(Era era, STS (AllegraUTXOW era), PredicateFailure (EraRule "UTXOW" era) ~ ShelleyUtxowPredFailure era, Event (EraRule "UTXOW" era) ~ Event (AllegraUTXOW era)) ⇒ Embed (AllegraUTXOW era) (ShelleyLEDGER era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxow

type BaseM (AllegraUTXOW era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxow

type Environment (AllegraUTXOW era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxow

type Event (AllegraUTXOW era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxow

type PredicateFailure (AllegraUTXOW era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxow

type Signal (AllegraUTXOW era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxow

type Signal (AllegraUTXOW era) = Tx era
type State (AllegraUTXOW era) Source # 
Instance details

Defined in Cardano.Ledger.Allegra.Rules.Utxow

type State (AllegraUTXOW era) = UTxOState era