Documentation ¶
Overview ¶
Package constants contains all the constants used by thorchain by default all the settings in this is for mainnet
Index ¶
Constants ¶
const ( CtxMetricLabels contextKey = "metricLabels" CtxLoanTxID contextKey = "loan-txid" CtxLoanToAddress contextKey = "loan-toaddress" )
const DollarMulti = 1e9
used to preserve precision when determining the dollar price of rune.
const MaxETHGas = 50000000
MaxETHGas define the maximum gas for a single transaction on ETH
const MaxMemoSize = 250
MaxMemoSize Maximum Memo Size
const MimirKeyRegex = `^[a-zA-Z0-9-]+$`
Variables ¶
var ( GitCommit = "null" // sha1 revision used to build the program BuildTime = "null" // when the executable was built Version = "0.1.0" // software version )
var SWVersion, _ = semver.Make(Version)
var ThorchainBlockTime = 5 * time.Second
ThorchainBlockTime Block time of THORChain
Functions ¶
This section is empty.
Types ¶
type ConstantName ¶
type ConstantName int
ConstantName the name we used to get constant values
const ( EmissionCurve ConstantName = iota IncentiveCurve MaxRuneSupply BlocksPerYear OutboundTransactionFee NativeTransactionFee KillSwitchStart KillSwitchDuration PoolCycle MinRunePoolDepth MaxAvailablePools StagedPoolCost MinimumNodesForYggdrasil MinimumNodesForBFT DesiredValidatorSet AsgardSize DerivedDepthBasisPts DerivedMinDepth MaxAnchorSlip MaxAnchorBlocks ChurnInterval ChurnRetryInterval ValidatorsChangeWindow LeaveProcessPerBlockHeight BadValidatorRedline LackOfObservationPenalty SigningTransactionPeriod DoubleSignMaxAge PauseBond PauseUnbond MinimumBondInRune FundMigrationInterval ArtificialRagnarokBlockHeight MaximumLiquidityRune StrictBondLiquidityRatio DefaultPoolStatus MaxOutboundAttempts SlashPenalty PauseOnSlashThreshold FailKeygenSlashPoints FailKeysignSlashPoints LiquidityLockUpBlocks ObserveSlashPoints ObservationDelayFlexibility YggFundLimit YggFundRetry JailTimeKeygen JailTimeKeysign NodePauseChainBlocks EnableDerivedAssets MinSwapsPerBlock MaxSwapsPerBlock EnableOrderBooks MaxSynthPerAssetDepth // TODO: remove me on hard fork MaxSynthPerPoolDepth MaxSynthsForSaversYield VirtualMultSynths VirtualMultSynthsBasisPoints MinSlashPointsForBadValidator FullImpLossProtectionBlocks BondLockupPeriod MaxBondProviders NumberOfNewNodesPerChurn MinTxOutVolumeThreshold TxOutDelayRate TxOutDelayMax MaxTxOutOffset TNSRegisterFee TNSFeeOnSale TNSFeePerBlock PauseStreamingSwaps MinBPStreamingSwap MaxStreamingSwapLength MinCR MaxCR PauseLoans LoanRepaymentMaturity LendingLever PermittedSolvencyGap NodeOperatorFee ValidatorMaxRewardRatio PoolDepthForYggFundingMin MaxNodeToChurnOutForLowVersion ChurnOutForLowVersionBlocks POLMaxNetworkDeposit POLMaxPoolMovement POLSynthUtilization // TODO: remove me on hard fork POLTargetSynthPerPoolDepth POLBuffer RagnarokProcessNumOfLPPerIteration SwapOutDexAggregationDisabled SynthYieldBasisPoints SynthYieldCycle MinimumL1OutboundFeeUSD MinimumPoolLiquidityFee ILPCutoff ChurnMigrateRounds AllowWideBlame MaxAffiliateFeeBasisPoints TargetOutboundFeeSurplusRune MaxOutboundFeeMultiplierBasisPoints MinOutboundFeeMultiplierBasisPoints OutboundTransactionFeeUSD NativeTransactionFeeUSD TNSRegisterFeeUSD TNSFeePerBlockUSD EnableUSDFees )
type ConstantVals ¶
type ConstantVals struct {
// contains filtered or unexported fields
}
ConstantVals implement ConstantValues interface
func NewConstantValue ¶
func NewConstantValue() *ConstantVals
NewConstantValue get new instance of ConstantValue
func (*ConstantVals) GetBoolValue ¶
func (cv *ConstantVals) GetBoolValue(name ConstantName) bool
GetBoolValue retrieve a bool constant value from the map
func (*ConstantVals) GetInt64Value ¶
func (cv *ConstantVals) GetInt64Value(name ConstantName) int64
GetInt64Value get value in int64 type, if it doesn't exist then it will return the default value of int64, which is 0
func (*ConstantVals) GetStringValue ¶
func (cv *ConstantVals) GetStringValue(name ConstantName) string
GetStringValue retrieve a string const value from the map
func (ConstantVals) MarshalJSON ¶
func (cv ConstantVals) MarshalJSON() ([]byte, error)
MarshalJSON marshal result to json format
func (*ConstantVals) String ¶
func (cv *ConstantVals) String() string
type ConstantValues ¶
type ConstantValues interface { fmt.Stringer GetInt64Value(name ConstantName) int64 GetBoolValue(name ConstantName) bool GetStringValue(name ConstantName) string }
ConstantValues define methods used to get constant values
func GetConstantValues ¶
func GetConstantValues(_ semver.Version) ConstantValues
GetConstantValues will return an implementation of ConstantValues which provide ways to get constant values TODO hard fork remove unused version parameter
type DummyConstants ¶
type DummyConstants struct {
// contains filtered or unexported fields
}
func NewDummyConstants ¶
func NewDummyConstants(int64Values map[ConstantName]int64, boolValues map[ConstantName]bool, stringValues map[ConstantName]string) *DummyConstants
NewDummyConstants create a new instance of DummyConstants for test purpose
func (*DummyConstants) GetBoolValue ¶
func (dc *DummyConstants) GetBoolValue(name ConstantName) bool
func (*DummyConstants) GetInt64Value ¶
func (dc *DummyConstants) GetInt64Value(name ConstantName) int64
func (*DummyConstants) GetStringValue ¶
func (dc *DummyConstants) GetStringValue(name ConstantName) string
func (*DummyConstants) String ¶
func (dc *DummyConstants) String() string