Documentation ¶
Index ¶
- Constants
- Variables
- func CreateTestInputAdvanced(t *testing.T, isCheckTx bool, initCoins int64, communityTax sdk.Dec) (sdk.Context, auth.AccountKeeper, Keeper, stake.Keeper, ...)
- func CreateTestInputDefault(t *testing.T, isCheckTx bool, initCoins int64) (sdk.Context, auth.AccountKeeper, Keeper, stake.Keeper, ...)
- func GetDelegationDistInfoKey(delAddr sdk.AccAddress, valAddr sdk.ValAddress) []byte
- func GetDelegationDistInfosKey(delAddr sdk.AccAddress) []byte
- func GetDelegatorWithdrawAddrKey(delAddr sdk.AccAddress) []byte
- func GetDelegatorWithdrawInfoAddress(key []byte) (delAddr sdk.AccAddress)
- func GetValidatorDistInfoKey(operatorAddr sdk.ValAddress) []byte
- func MakeTestCodec() *codec.Codec
- func ParamTypeTable() params.TypeTable
- type DummyFeeCollectionKeeper
- type Hooks
- func (h Hooks) OnDelegationCreated(ctx sdk.Context, delAddr sdk.AccAddress, valAddr sdk.ValAddress)
- func (h Hooks) OnDelegationRemoved(ctx sdk.Context, delAddr sdk.AccAddress, valAddr sdk.ValAddress)
- func (h Hooks) OnDelegationSharesModified(ctx sdk.Context, delAddr sdk.AccAddress, valAddr sdk.ValAddress)
- func (h Hooks) OnValidatorBeginUnbonding(ctx sdk.Context, _ sdk.ConsAddress, valAddr sdk.ValAddress)
- func (h Hooks) OnValidatorBonded(ctx sdk.Context, _ sdk.ConsAddress, valAddr sdk.ValAddress)
- func (h Hooks) OnValidatorCreated(ctx sdk.Context, valAddr sdk.ValAddress)
- func (h Hooks) OnValidatorModified(ctx sdk.Context, valAddr sdk.ValAddress)
- func (h Hooks) OnValidatorPowerDidChange(ctx sdk.Context, _ sdk.ConsAddress, valAddr sdk.ValAddress)
- func (h Hooks) OnValidatorRemoved(ctx sdk.Context, _ sdk.ConsAddress, valAddr sdk.ValAddress)
- type Keeper
- func (k Keeper) AllocateTokens(ctx sdk.Context, percentVotes sdk.Dec, proposer sdk.ConsAddress)
- func (k Keeper) CurrentDelegationReward(ctx sdk.Context, delAddr sdk.AccAddress, valAddr sdk.ValAddress) (sdk.Coins, sdk.Error)
- func (k Keeper) CurrentDelegationRewardsAll(ctx sdk.Context, delAddr sdk.AccAddress) types.DecCoins
- func (k Keeper) CurrentValidatorRewardsAll(ctx sdk.Context, operatorAddr sdk.ValAddress) (sdk.Coins, sdk.Error)
- func (k Keeper) GetAllDelegationDistInfos(ctx sdk.Context) (ddis []types.DelegationDistInfo)
- func (k Keeper) GetAllDelegatorWithdrawInfos(ctx sdk.Context) (dwis []types.DelegatorWithdrawInfo)
- func (k Keeper) GetAllValidatorDistInfos(ctx sdk.Context) (vdis []types.ValidatorDistInfo)
- func (k Keeper) GetBaseProposerReward(ctx sdk.Context) sdk.Dec
- func (k Keeper) GetBonusProposerReward(ctx sdk.Context) sdk.Dec
- func (k Keeper) GetCommunityTax(ctx sdk.Context) sdk.Dec
- func (k Keeper) GetDelegationDistInfo(ctx sdk.Context, delAddr sdk.AccAddress, valOperatorAddr sdk.ValAddress) (ddi types.DelegationDistInfo)
- func (k Keeper) GetDelegatorWithdrawAddr(ctx sdk.Context, delAddr sdk.AccAddress) sdk.AccAddress
- func (k Keeper) GetFeePool(ctx sdk.Context) (feePool types.FeePool)
- func (k Keeper) GetFeePoolValAccum(ctx sdk.Context) sdk.Dec
- func (k Keeper) GetPreviousProposerConsAddr(ctx sdk.Context) (consAddr sdk.ConsAddress)
- func (k Keeper) GetValidatorAccum(ctx sdk.Context, operatorAddr sdk.ValAddress) (sdk.Dec, sdk.Error)
- func (k Keeper) GetValidatorDistInfo(ctx sdk.Context, operatorAddr sdk.ValAddress) (vdi types.ValidatorDistInfo)
- func (k Keeper) GetWithdrawContext(ctx sdk.Context, valOperatorAddr sdk.ValAddress) types.WithdrawContext
- func (k Keeper) HasDelegationDistInfo(ctx sdk.Context, delAddr sdk.AccAddress, valOperatorAddr sdk.ValAddress) (has bool)
- func (k Keeper) HasValidatorDistInfo(ctx sdk.Context, operatorAddr sdk.ValAddress) (exists bool)
- func (k Keeper) Hooks() Hooks
- func (k Keeper) IterateValidatorDistInfos(ctx sdk.Context, ...)
- func (k Keeper) RemoveDelegationDistInfo(ctx sdk.Context, delAddr sdk.AccAddress, valOperatorAddr sdk.ValAddress)
- func (k Keeper) RemoveDelegatorWithdrawAddr(ctx sdk.Context, delAddr, withdrawAddr sdk.AccAddress)
- func (k Keeper) RemoveValidatorDistInfo(ctx sdk.Context, valAddr sdk.ValAddress)
- func (k Keeper) SetBaseProposerReward(ctx sdk.Context, percent sdk.Dec)
- func (k Keeper) SetBonusProposerReward(ctx sdk.Context, percent sdk.Dec)
- func (k Keeper) SetCommunityTax(ctx sdk.Context, percent sdk.Dec)
- func (k Keeper) SetDelegationDistInfo(ctx sdk.Context, ddi types.DelegationDistInfo)
- func (k Keeper) SetDelegatorWithdrawAddr(ctx sdk.Context, delAddr, withdrawAddr sdk.AccAddress)
- func (k Keeper) SetFeePool(ctx sdk.Context, feePool types.FeePool)
- func (k Keeper) SetPreviousProposerConsAddr(ctx sdk.Context, consAddr sdk.ConsAddress)
- func (k Keeper) SetValidatorDistInfo(ctx sdk.Context, vdi types.ValidatorDistInfo)
- func (k Keeper) WithdrawDelegationReward(ctx sdk.Context, delAddr sdk.AccAddress, valAddr sdk.ValAddress) sdk.Error
- func (k Keeper) WithdrawDelegationRewardsAll(ctx sdk.Context, delAddr sdk.AccAddress)
- func (k Keeper) WithdrawToDelegator(ctx sdk.Context, feePool types.FeePool, delAddr sdk.AccAddress, ...)
- func (k Keeper) WithdrawValidatorRewardsAll(ctx sdk.Context, operatorAddr sdk.ValAddress) sdk.Error
Constants ¶
const (
// default paramspace for params keeper
DefaultParamspace = "distr"
)
Variables ¶
var ( FeePoolKey = []byte{0x00} // key for global distribution state ValidatorDistInfoKey = []byte{0x01} // prefix for each key to a validator distribution DelegationDistInfoKey = []byte{0x02} // prefix for each key to a delegation distribution DelegatorWithdrawInfoKey = []byte{0x03} // prefix for each key to a delegator withdraw info ProposerKey = []byte{0x04} // key for storing the proposer operator address // params store ParamStoreKeyCommunityTax = []byte("communitytax") ParamStoreKeyBaseProposerReward = []byte("baseproposerreward") ParamStoreKeyBonusProposerReward = []byte("bonusproposerreward") )
keys/key-prefixes
Functions ¶
func CreateTestInputAdvanced ¶ added in v0.25.0
func CreateTestInputAdvanced(t *testing.T, isCheckTx bool, initCoins int64, communityTax sdk.Dec) ( sdk.Context, auth.AccountKeeper, Keeper, stake.Keeper, DummyFeeCollectionKeeper)
hogpodge of all sorts of input required for testing
func CreateTestInputDefault ¶ added in v0.25.0
func CreateTestInputDefault(t *testing.T, isCheckTx bool, initCoins int64) ( sdk.Context, auth.AccountKeeper, Keeper, stake.Keeper, DummyFeeCollectionKeeper)
test input with default values
func GetDelegationDistInfoKey ¶ added in v0.25.0
func GetDelegationDistInfoKey(delAddr sdk.AccAddress, valAddr sdk.ValAddress) []byte
gets the key for delegator distribution for a validator VALUE: distribution/types.DelegationDistInfo
func GetDelegationDistInfosKey ¶ added in v0.25.0
func GetDelegationDistInfosKey(delAddr sdk.AccAddress) []byte
gets the prefix for a delegator's distributions across all validators
func GetDelegatorWithdrawAddrKey ¶ added in v0.25.0
func GetDelegatorWithdrawAddrKey(delAddr sdk.AccAddress) []byte
gets the prefix for a delegator's withdraw info
func GetDelegatorWithdrawInfoAddress ¶ added in v0.26.0
func GetDelegatorWithdrawInfoAddress(key []byte) (delAddr sdk.AccAddress)
gets an address from a delegator's withdraw info key
func GetValidatorDistInfoKey ¶ added in v0.25.0
func GetValidatorDistInfoKey(operatorAddr sdk.ValAddress) []byte
gets the key for the validator distribution info from address VALUE: distribution/types.ValidatorDistInfo
func MakeTestCodec ¶ added in v0.25.0
create a codec used only for testing
func ParamTypeTable ¶ added in v0.25.0
Type declaration for parameters
Types ¶
type DummyFeeCollectionKeeper ¶ added in v0.25.0
type DummyFeeCollectionKeeper struct{}
__________________________________________________________________________________ fee collection keeper used only for testing
func (DummyFeeCollectionKeeper) ClearCollectedFees ¶ added in v0.25.0
func (fck DummyFeeCollectionKeeper) ClearCollectedFees(_ sdk.Context)
func (DummyFeeCollectionKeeper) GetCollectedFees ¶ added in v0.25.0
func (fck DummyFeeCollectionKeeper) GetCollectedFees(_ sdk.Context) sdk.Coins
nolint
func (DummyFeeCollectionKeeper) SetCollectedFees ¶ added in v0.25.0
func (fck DummyFeeCollectionKeeper) SetCollectedFees(in sdk.Coins)
type Hooks ¶
type Hooks struct {
// contains filtered or unexported fields
}
Wrapper struct
func (Hooks) OnDelegationCreated ¶ added in v0.25.0
func (h Hooks) OnDelegationCreated(ctx sdk.Context, delAddr sdk.AccAddress, valAddr sdk.ValAddress)
func (Hooks) OnDelegationRemoved ¶ added in v0.25.0
func (h Hooks) OnDelegationRemoved(ctx sdk.Context, delAddr sdk.AccAddress, valAddr sdk.ValAddress)
func (Hooks) OnDelegationSharesModified ¶ added in v0.25.0
func (h Hooks) OnDelegationSharesModified(ctx sdk.Context, delAddr sdk.AccAddress, valAddr sdk.ValAddress)
func (Hooks) OnValidatorBeginUnbonding ¶ added in v0.25.0
func (h Hooks) OnValidatorBeginUnbonding(ctx sdk.Context, _ sdk.ConsAddress, valAddr sdk.ValAddress)
func (Hooks) OnValidatorBonded ¶ added in v0.25.0
func (h Hooks) OnValidatorBonded(ctx sdk.Context, _ sdk.ConsAddress, valAddr sdk.ValAddress)
func (Hooks) OnValidatorCreated ¶ added in v0.25.0
func (h Hooks) OnValidatorCreated(ctx sdk.Context, valAddr sdk.ValAddress)
nolint
func (Hooks) OnValidatorModified ¶ added in v0.25.0
func (h Hooks) OnValidatorModified(ctx sdk.Context, valAddr sdk.ValAddress)
func (Hooks) OnValidatorPowerDidChange ¶ added in v0.25.0
func (h Hooks) OnValidatorPowerDidChange(ctx sdk.Context, _ sdk.ConsAddress, valAddr sdk.ValAddress)
func (Hooks) OnValidatorRemoved ¶ added in v0.25.0
func (h Hooks) OnValidatorRemoved(ctx sdk.Context, _ sdk.ConsAddress, valAddr sdk.ValAddress)
type Keeper ¶
type Keeper struct {
// contains filtered or unexported fields
}
keeper of the stake store
func NewKeeper ¶
func NewKeeper(cdc *codec.Codec, key sdk.StoreKey, paramSpace params.Subspace, ck types.BankKeeper, sk types.StakeKeeper, fck types.FeeCollectionKeeper, codespace sdk.CodespaceType) Keeper
func (Keeper) AllocateTokens ¶
Allocate fees handles distribution of the collected fees
func (Keeper) CurrentDelegationReward ¶ added in v0.25.0
func (k Keeper) CurrentDelegationReward(ctx sdk.Context, delAddr sdk.AccAddress, valAddr sdk.ValAddress) (sdk.Coins, sdk.Error)
current rewards for a single delegation
func (Keeper) CurrentDelegationRewardsAll ¶ added in v0.25.0
get all rewards for all delegations of a delegator
func (Keeper) CurrentValidatorRewardsAll ¶ added in v0.25.0
func (k Keeper) CurrentValidatorRewardsAll(ctx sdk.Context, operatorAddr sdk.ValAddress) (sdk.Coins, sdk.Error)
get all the validator rewards including the commission
func (Keeper) GetAllDelegationDistInfos ¶ added in v0.25.0
func (k Keeper) GetAllDelegationDistInfos(ctx sdk.Context) (ddis []types.DelegationDistInfo)
Get the set of all delegator-distribution-info's with no limits, used during genesis dump
func (Keeper) GetAllDelegatorWithdrawInfos ¶ added in v0.25.0
func (k Keeper) GetAllDelegatorWithdrawInfos(ctx sdk.Context) (dwis []types.DelegatorWithdrawInfo)
Get the set of all delegator-withdraw addresses with no limits, used during genesis dump
func (Keeper) GetAllValidatorDistInfos ¶ added in v0.25.0
func (k Keeper) GetAllValidatorDistInfos(ctx sdk.Context) (vdis []types.ValidatorDistInfo)
Get the set of all validator-distribution-info's with no limits, used during genesis dump
func (Keeper) GetBaseProposerReward ¶
Returns the current BaseProposerReward rate from the global param store nolint: errcheck
func (Keeper) GetBonusProposerReward ¶
Returns the current BaseProposerReward rate from the global param store nolint: errcheck
func (Keeper) GetCommunityTax ¶
Returns the current CommunityTax rate from the global param store nolint: errcheck
func (Keeper) GetDelegationDistInfo ¶ added in v0.25.0
func (k Keeper) GetDelegationDistInfo(ctx sdk.Context, delAddr sdk.AccAddress, valOperatorAddr sdk.ValAddress) (ddi types.DelegationDistInfo)
get the delegator distribution info
func (Keeper) GetDelegatorWithdrawAddr ¶
func (k Keeper) GetDelegatorWithdrawAddr(ctx sdk.Context, delAddr sdk.AccAddress) sdk.AccAddress
get the delegator withdraw address, return the delegator address if not set
func (Keeper) GetFeePool ¶
get the global fee pool distribution info
func (Keeper) GetFeePoolValAccum ¶ added in v0.25.0
get the total validator accum for the ctx height in the fee pool
func (Keeper) GetPreviousProposerConsAddr ¶
func (k Keeper) GetPreviousProposerConsAddr(ctx sdk.Context) (consAddr sdk.ConsAddress)
set the proposer public key for this block
func (Keeper) GetValidatorAccum ¶ added in v0.25.0
func (k Keeper) GetValidatorAccum(ctx sdk.Context, operatorAddr sdk.ValAddress) (sdk.Dec, sdk.Error)
Get the calculated accum of a validator at the current block without affecting the state.
func (Keeper) GetValidatorDistInfo ¶ added in v0.25.0
func (k Keeper) GetValidatorDistInfo(ctx sdk.Context, operatorAddr sdk.ValAddress) (vdi types.ValidatorDistInfo)
get the validator distribution info
func (Keeper) GetWithdrawContext ¶ added in v0.25.0
func (k Keeper) GetWithdrawContext(ctx sdk.Context, valOperatorAddr sdk.ValAddress) types.WithdrawContext
get context required for withdraw operations
func (Keeper) HasDelegationDistInfo ¶ added in v0.25.0
func (k Keeper) HasDelegationDistInfo(ctx sdk.Context, delAddr sdk.AccAddress, valOperatorAddr sdk.ValAddress) (has bool)
check whether a delegator distribution info exists
func (Keeper) HasValidatorDistInfo ¶ added in v0.25.0
check whether a validator has distribution info
func (Keeper) IterateValidatorDistInfos ¶ added in v0.25.0
func (k Keeper) IterateValidatorDistInfos(ctx sdk.Context, fn func(index int64, distInfo types.ValidatorDistInfo) (stop bool))
iterate over all the validator distribution infos (inefficient, just used to check invariants)
func (Keeper) RemoveDelegationDistInfo ¶ added in v0.25.0
func (k Keeper) RemoveDelegationDistInfo(ctx sdk.Context, delAddr sdk.AccAddress, valOperatorAddr sdk.ValAddress)
remove a delegator distribution info
func (Keeper) RemoveDelegatorWithdrawAddr ¶ added in v0.25.0
func (k Keeper) RemoveDelegatorWithdrawAddr(ctx sdk.Context, delAddr, withdrawAddr sdk.AccAddress)
remove a delegator withdraw info
func (Keeper) RemoveValidatorDistInfo ¶ added in v0.25.0
func (k Keeper) RemoveValidatorDistInfo(ctx sdk.Context, valAddr sdk.ValAddress)
remove a validator distribution info
func (Keeper) SetBaseProposerReward ¶ added in v0.25.0
nolint: errcheck
func (Keeper) SetBonusProposerReward ¶ added in v0.25.0
nolint: errcheck
func (Keeper) SetCommunityTax ¶ added in v0.25.0
nolint: errcheck
func (Keeper) SetDelegationDistInfo ¶ added in v0.25.0
func (k Keeper) SetDelegationDistInfo(ctx sdk.Context, ddi types.DelegationDistInfo)
set the delegator distribution info
func (Keeper) SetDelegatorWithdrawAddr ¶
func (k Keeper) SetDelegatorWithdrawAddr(ctx sdk.Context, delAddr, withdrawAddr sdk.AccAddress)
set the delegator withdraw address
func (Keeper) SetFeePool ¶
set the global fee pool distribution info
func (Keeper) SetPreviousProposerConsAddr ¶
func (k Keeper) SetPreviousProposerConsAddr(ctx sdk.Context, consAddr sdk.ConsAddress)
get the proposer public key for this block
func (Keeper) SetValidatorDistInfo ¶ added in v0.25.0
func (k Keeper) SetValidatorDistInfo(ctx sdk.Context, vdi types.ValidatorDistInfo)
set the validator distribution info
func (Keeper) WithdrawDelegationReward ¶ added in v0.25.0
func (k Keeper) WithdrawDelegationReward(ctx sdk.Context, delAddr sdk.AccAddress, valAddr sdk.ValAddress) sdk.Error
withdraw all rewards for a single delegation NOTE: This gets called "onDelegationSharesModified", meaning any changes to bonded coins
func (Keeper) WithdrawDelegationRewardsAll ¶ added in v0.25.0
func (k Keeper) WithdrawDelegationRewardsAll(ctx sdk.Context, delAddr sdk.AccAddress)
return all rewards for all delegations of a delegator
func (Keeper) WithdrawToDelegator ¶ added in v0.25.0
func (k Keeper) WithdrawToDelegator(ctx sdk.Context, feePool types.FeePool, delAddr sdk.AccAddress, amount types.DecCoins)
withdraw all rewards for a single delegation NOTE: This gets called "onDelegationSharesModified", meaning any changes to bonded coins
func (Keeper) WithdrawValidatorRewardsAll ¶ added in v0.25.0
withdrawal all the validator rewards including the commission