ProtocolParamUpdate

scalus.cardano.ledger.ProtocolParamUpdate
See theProtocolParamUpdate companion object
case class ProtocolParamUpdate(minFeeA: Option[Coin] = ..., minFeeB: Option[Coin] = ..., maxBlockBodySize: Option[Int] = ..., maxTxSize: Option[Int] = ..., maxBlockHeaderSize: Option[Int] = ..., keyDeposit: Option[Coin] = ..., poolDeposit: Option[Coin] = ..., maxEpoch: Option[Int] = ..., nOpt: Option[Int] = ..., poolPledgeInfluence: Option[NonNegativeInterval] = ..., expansionRate: Option[UnitInterval] = ..., treasuryGrowthRate: Option[UnitInterval] = ..., minPoolCost: Option[Coin] = ..., adaPerUtxoByte: Option[Coin] = ..., costModels: Option[CostModels] = ..., executionCosts: Option[ExUnitPrices] = ..., maxTxExUnits: Option[ExUnits] = ..., maxBlockExUnits: Option[ExUnits] = ..., maxValueSize: Option[Int] = ..., collateralPercentage: Option[Int] = ..., maxCollateralInputs: Option[Int] = ..., poolVotingThresholds: Option[PoolVotingThresholds] = ..., drepVotingThresholds: Option[DRepVotingThresholds] = ..., minCommitteeSize: Option[Int] = ..., committeeTermLimit: Option[Int] = ..., governanceActionValidityPeriod: Option[Int] = ..., governanceActionDeposit: Option[Coin] = ..., drepDeposit: Option[Coin] = ..., drepInactivityPeriod: Option[Int] = ..., minFeeRefScriptCoinsPerByte: Option[NonNegativeInterval] = ...)

Represents a protocol parameter update in the Cardano blockchain.

Protocol parameter updates are proposals to change various parameters that govern the behavior of the Cardano blockchain.

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

params with each field this update holds set to its value, and every other field kept, protocolVersion included: the enactment of a ParameterChange (conwayApplyPPUpdates, eras/conway/impl/src/Cardano/Ledger/Conway/PParams.hs:1182-1229), ledger-rules spec [EN-2a], D89.

params with each field this update holds set to its value, and every other field kept, protocolVersion included: the enactment of a ParameterChange (conwayApplyPPUpdates, eras/conway/impl/src/Cardano/Ledger/Conway/PParams.hs:1182-1229), ledger-rules spec [EN-2a], D89.

Cost models merge per language and the update wins (updateCostModels, libs/cardano-ledger-core/src/Cardano/Ledger/Plutus/CostModels.hs:401-411). Key 33 is an interval in the ledger and a Long in ProtocolParams, so it takes the floor, as ConwayProtocolParams.toProtocolParams does. Rho, tau and a0 are reduced, as the ledger's decoder and toProtocolParams reduce them. The voting thresholds and executionUnitPrices are kept as given, so an enacted threshold can differ from the same one read from JSON (D89).

Attributes

Inherited methods

def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product