ConwayProtocolParams

scalus.cardano.ledger.ConwayProtocolParams
See theConwayProtocolParams companion object
case class ConwayProtocolParams(minFeeA: Long, minFeeB: Long, maxBBSize: Long, maxTxSize: Long, maxBHSize: Long, keyDeposit: Long, poolDeposit: Long, eMax: Long, nOpt: Long, a0: NonNegativeInterval, rho: UnitInterval, tau: UnitInterval, protocolVersion: ProtocolVersion, minPoolCost: Long, coinsPerUTxOByte: Long, costModels: CostModels, prices: ExUnitPrices, maxTxExUnits: ExUnits, maxBlockExUnits: ExUnits, maxValSize: Long, collateralPercentage: Long, maxCollateralInputs: Long, poolVotingThresholds: PoolVotingThresholds, dRepVotingThresholds: DRepVotingThresholds, committeeMinSize: Long, committeeMaxTermLength: Long, govActionLifetime: Long, govActionDeposit: Long, dRepDeposit: Long, dRepActivity: Long, minFeeRefScriptCostPerByte: NonNegativeInterval)

Conway protocol parameters as encoded by cardano-ledger's EncCBOR (PParams Conway) instance — the same shape returned by the LocalStateQuery mini-protocol's GetCurrentPParams and the on-disk pparams-by-hash files used by conformance test vectors.

Conway PParams is encoded as an array of 31 elements in this order (from eraPParams in cardano-ledger/Conway/PParams.hs):

  • 0: minFeeA (Coin)
  • 1: minFeeB (Coin)
  • 2: maxBBSize (Word32)
  • 3: maxTxSize (Word32)
  • 4: maxBHSize (Word16)
  • 5: keyDeposit (Coin)
  • 6: poolDeposit (CompactForm Coin)
  • 7: eMax (EpochInterval)
  • 8: nOpt (Word16)
  • 9: a0 (NonNegativeInterval)
  • 10: rho (UnitInterval)
  • 11: tau (UnitInterval)
  • 12: protocolVersion (ProtVer)
  • 13: minPoolCost (Coin)
  • 14: coinsPerUTxOByte (CoinPerByte)
  • 15: costModels (CostModels)
  • 16: prices (Prices - [memPrice, stepPrice])
  • 17: maxTxExUnits (ExUnits)
  • 18: maxBlockExUnits (ExUnits)
  • 19: maxValSize (Word32)
  • 20: collateralPercentage (Word16)
  • 21: maxCollateralInputs (Word16)
  • 22: poolVotingThresholds
  • 23: dRepVotingThresholds
  • 24: committeeMinSize (Word16)
  • 25: committeeMaxTermLength (EpochInterval)
  • 26: govActionLifetime (EpochInterval)
  • 27: govActionDeposit (Coin)
  • 28: dRepDeposit (CompactForm Coin)
  • 29: dRepActivity (EpochInterval)
  • 30: minFeeRefScriptCostPerByte (NonNegativeInterval)

Arrays larger than 31 elements are tolerated for forward-compatibility with future era extensions: trailing entries are read and discarded with a single warn-level log.

Attributes

Companion
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

Convert to scalus's ProtocolParams type. All fields come from the decoded CBOR; no external baseline is consulted.

Convert to scalus's ProtocolParams type. All fields come from the decoded CBOR; no external baseline is consulted.

Attributes

Inherited methods

def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product