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) IterateDelegationDistInfos(ctx sdk.Context, ...)
- func (k Keeper) IterateValidatorDistInfos(ctx sdk.Context, ...)
- func (k Keeper) RemoveDelegationDistInfo(ctx sdk.Context, delAddr sdk.AccAddress, valOperatorAddr sdk.ValAddress)
- func (k Keeper) RemoveDelegationDistInfos(ctx sdk.Context)
- func (k Keeper) RemoveDelegatorWithdrawAddr(ctx sdk.Context, delAddr, withdrawAddr sdk.AccAddress)
- func (k Keeper) RemoveValidatorDistInfo(ctx sdk.Context, valAddr sdk.ValAddress)
- func (k Keeper) RemoveValidatorDistInfos(ctx sdk.Context)
- 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) IterateDelegationDistInfos ¶ added in v0.27.0
func (k Keeper) IterateDelegationDistInfos(ctx sdk.Context, fn func(index int64, distInfo types.DelegationDistInfo) (stop bool))
iterate over all the validator distribution infos
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
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) RemoveDelegationDistInfos ¶ added in v0.27.0
remove all delegation distribution infos
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) RemoveValidatorDistInfos ¶ added in v0.27.0
remove all validator distribution infos
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