Documentation ¶
Index ¶
Constants ¶
View Source
const PercentDenominator = 1_000_000
PercentDenominator is the denominator used to calculate percentages
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Calculator ¶
type Calculator interface {
Calculate(stakedDuration time.Duration, stakedAmount, currentSupply uint64) uint64
}
func NewCalculator ¶
func NewCalculator(c Config) Calculator
type Config ¶
type Config struct { // MaxConsumptionRate is the rate to allocate funds if the validator's stake // duration is equal to [MintingPeriod] MaxConsumptionRate uint64 `json:"maxConsumptionRate"` // MinConsumptionRate is the rate to allocate funds if the validator's stake // duration is 0. MinConsumptionRate uint64 `json:"minConsumptionRate"` // MintingPeriod is period that the staking calculator runs on. It is // not valid for a validator's stake duration to be larger than this. MintingPeriod time.Duration `json:"mintingPeriod"` // SupplyCap is the target value that the reward calculation should be // asymptotic to. SupplyCap uint64 `json:"supplyCap"` }
Click to show internal directories.
Click to hide internal directories.