cardano-ledger-test-9.9.9.9: Testing harness, tests and benchmarks for Shelley style cardano ledgers
Safe HaskellSafe-Inferred
LanguageHaskell2010

Test.Cardano.Ledger.Constrained.Conway.ParametricSpec

Description

classes that support Era parametric Specifications. I.e they work in all eras (Shelley,Allegra,Mary,Alonzo,Babbage,Conway) In general, each class (except EraSpecTxOut, see below) navigates the differences of a single type family. The class (EraSpecPParams era) (Defined in ‘Test.Cardano.Ledger.Constrained.Conway.SimplePParams’) and reExported here, supports specifications over the type Family (PParams era). The class EraSpecCert supports specifications over the type Family (TxCert era) The class EraSpecLedger, with methods govStateSpec and newEpochStateSpec, support Parametric Ledger types. The class EraSpecTxOut (with method correctTxOut and others) supports specifcations over the type Family TxOut. Additional support for phased out Type Families like InstantaneousRewards, GenDelegs, FutureGenDelegs, StashedAVVMAddresses, and Ptrs, are handled by methods in EraSpecTxOut

Synopsis

Documentation

class (HasSpec fn (StashedAVVMAddresses era), EraSpecPParams era, EraSpecDeleg era, HasSpec fn (TxOut era), IsNormalType (TxOut era), EraTxOut era, GenScript era, IsConwayUniv fn) ⇒ EraSpecTxOut era fn where Source #

The class EraSpecTxOut supports Era parametric Specifications that primarily navigate the differences in types parameterized type Family TxOut. Additional support for phased out Type Families like InstantaneousRewards, GenDelegs, FutureGenDelegs, StashedAVVMAddresses, and Ptrs, are also provided

Methods

irewardSpecWitUniv era → Term fn AccountStateSpecification fn InstantaneousRewards Source #

hasPtrs ∷ proxy era → Term fn Bool Source #

txOutValue_Term fn (TxOut era) → Term fn (Value era) Source #

Extract a Value from a TxOut

txOutCoin_Term fn (TxOut era) → Term fn Coin Source #

Extract a Coin from a TxOut

txOutAddr_Term fn (TxOut era) → Term fn Addr Source #

Extract an Addr from a TxOut

Instances

Instances details
IsConwayUniv fn ⇒ EraSpecTxOut AllegraEra fn Source # 
Instance details

Defined in Test.Cardano.Ledger.Constrained.Conway.ParametricSpec

IsConwayUniv fn ⇒ EraSpecTxOut AlonzoEra fn Source # 
Instance details

Defined in Test.Cardano.Ledger.Constrained.Conway.ParametricSpec

IsConwayUniv fn ⇒ EraSpecTxOut BabbageEra fn Source # 
Instance details

Defined in Test.Cardano.Ledger.Constrained.Conway.ParametricSpec

IsConwayUniv fn ⇒ EraSpecTxOut ConwayEra fn Source # 
Instance details

Defined in Test.Cardano.Ledger.Constrained.Conway.ParametricSpec

IsConwayUniv fn ⇒ EraSpecTxOut MaryEra fn Source # 
Instance details

Defined in Test.Cardano.Ledger.Constrained.Conway.ParametricSpec

IsConwayUniv fn ⇒ EraSpecTxOut ShelleyEra fn Source # 
Instance details

Defined in Test.Cardano.Ledger.Constrained.Conway.ParametricSpec

txOutSpec ∷ ∀ fn era. EraSpecTxOut era fn ⇒ WitUniv era → Term fn (Map (Credential 'Staking) (KeyHash 'StakePool)) → Term fn (TxOut era) → Pred fn Source #

An Era polymorhic Specification for type family TxOut

class (IsConwayUniv fn, HasSpec fn (TxCert era), Era era) ⇒ EraSpecCert era fn where Source #

Methods

txCertSpecWitUniv era → CertEnv era → CertState era → Specification fn (TxCert era) Source #

txCertKeyTxCert era → CertKey Source #

Instances

Instances details
IsConwayUniv fn ⇒ EraSpecCert AllegraEra fn Source # 
Instance details

Defined in Test.Cardano.Ledger.Constrained.Conway.Cert

IsConwayUniv fn ⇒ EraSpecCert AlonzoEra fn Source # 
Instance details

Defined in Test.Cardano.Ledger.Constrained.Conway.Cert

IsConwayUniv fn ⇒ EraSpecCert BabbageEra fn Source # 
Instance details

Defined in Test.Cardano.Ledger.Constrained.Conway.Cert

IsConwayUniv fn ⇒ EraSpecCert ConwayEra fn Source # 
Instance details

Defined in Test.Cardano.Ledger.Constrained.Conway.Cert

IsConwayUniv fn ⇒ EraSpecCert MaryEra fn Source # 
Instance details

Defined in Test.Cardano.Ledger.Constrained.Conway.Cert

IsConwayUniv fn ⇒ EraSpecCert ShelleyEra fn Source # 
Instance details

Defined in Test.Cardano.Ledger.Constrained.Conway.Cert

delegatedStakeReferenceIsConwayUniv fn ⇒ Term fn (Map (Credential 'Staking) (KeyHash 'StakePool)) → Specification fn StakeReference Source #

Generate random Stake references that have a high probability of being delegated.

data CertKey Source #

Used to aggregate the key used in registering a Certificate. Different certificates use different kinds of Keys, that allows us to use one type to represent all kinds of keys (Similar to DepositPurpose)