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 ¶
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 ¶
func CreateTestInputDefault(t *testing.T, isCheckTx bool, initCoins int64) ( sdk.Context, auth.AccountKeeper, Keeper, stake.Keeper, DummyFeeCollectionKeeper)
test input with default values
func GetDelegationDistInfoKey ¶
func GetDelegationDistInfoKey(delAddr sdk.AccAddress, valAddr sdk.ValAddress) []byte
gets the key for delegator distribution for a validator VALUE: distribution/types.DelegationDistInfo
func GetDelegationDistInfosKey ¶
func GetDelegationDistInfosKey(delAddr sdk.AccAddress) []byte
gets the prefix for a delegator's distributions across all validators
func GetDelegatorWithdrawAddrKey ¶
func GetDelegatorWithdrawAddrKey(delAddr sdk.AccAddress) []byte
gets the prefix for a delegator's withdraw info
func GetDelegatorWithdrawInfoAddress ¶
func GetDelegatorWithdrawInfoAddress(key []byte) (delAddr sdk.AccAddress)
gets an address from a delegator's withdraw info key
func GetValidatorDistInfoKey ¶
func GetValidatorDistInfoKey(operatorAddr sdk.ValAddress) []byte
gets the key for the validator distribution info from address VALUE: distribution/types.ValidatorDistInfo
Types ¶
type DummyFeeCollectionKeeper ¶
type DummyFeeCollectionKeeper struct{}
__________________________________________________________________________________ fee collection keeper used only for testing
func (DummyFeeCollectionKeeper) ClearCollectedFees ¶
func (fck DummyFeeCollectionKeeper) ClearCollectedFees(_ sdk.Context)
func (DummyFeeCollectionKeeper) GetCollectedFees ¶
func (fck DummyFeeCollectionKeeper) GetCollectedFees(_ sdk.Context) sdk.Coins
nolint
func (DummyFeeCollectionKeeper) SetCollectedFees ¶
func (fck DummyFeeCollectionKeeper) SetCollectedFees(in sdk.Coins)
type Hooks ¶
type Hooks struct {
// contains filtered or unexported fields
}
Wrapper struct
func (Hooks) OnDelegationCreated ¶
func (h Hooks) OnDelegationCreated(ctx sdk.Context, delAddr sdk.AccAddress, valAddr sdk.ValAddress)
func (Hooks) OnDelegationRemoved ¶
func (h Hooks) OnDelegationRemoved(ctx sdk.Context, delAddr sdk.AccAddress, valAddr sdk.ValAddress)
func (Hooks) OnDelegationSharesModified ¶
func (h Hooks) OnDelegationSharesModified(ctx sdk.Context, delAddr sdk.AccAddress, valAddr sdk.ValAddress)
func (Hooks) OnValidatorBeginUnbonding ¶
func (h Hooks) OnValidatorBeginUnbonding(ctx sdk.Context, _ sdk.ConsAddress, valAddr sdk.ValAddress)
func (Hooks) OnValidatorBonded ¶
func (h Hooks) OnValidatorBonded(ctx sdk.Context, _ sdk.ConsAddress, valAddr sdk.ValAddress)
func (Hooks) OnValidatorCreated ¶
func (h Hooks) OnValidatorCreated(ctx sdk.Context, valAddr sdk.ValAddress)
nolint
func (Hooks) OnValidatorModified ¶
func (h Hooks) OnValidatorModified(ctx sdk.Context, valAddr sdk.ValAddress)
func (Hooks) OnValidatorPowerDidChange ¶
func (h Hooks) OnValidatorPowerDidChange(ctx sdk.Context, _ sdk.ConsAddress, valAddr sdk.ValAddress)
func (Hooks) OnValidatorRemoved ¶
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 ¶
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 ¶
get all rewards for all delegations of a delegator
func (Keeper) CurrentValidatorRewardsAll ¶
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 ¶
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 ¶
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 ¶
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 ¶
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 ¶
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 ¶
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 ¶
func (k Keeper) GetValidatorDistInfo(ctx sdk.Context, operatorAddr sdk.ValAddress) (vdi types.ValidatorDistInfo)
get the validator distribution info
func (Keeper) GetWithdrawContext ¶
func (k Keeper) GetWithdrawContext(ctx sdk.Context, valOperatorAddr sdk.ValAddress) types.WithdrawContext
get context required for withdraw operations
func (Keeper) HasDelegationDistInfo ¶
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 ¶
check whether a validator has distribution info
func (Keeper) IterateValidatorDistInfos ¶
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 ¶
func (k Keeper) RemoveDelegationDistInfo(ctx sdk.Context, delAddr sdk.AccAddress, valOperatorAddr sdk.ValAddress)
remove a delegator distribution info
func (Keeper) RemoveDelegatorWithdrawAddr ¶
func (k Keeper) RemoveDelegatorWithdrawAddr(ctx sdk.Context, delAddr, withdrawAddr sdk.AccAddress)
remove a delegator withdraw info
func (Keeper) RemoveValidatorDistInfo ¶
func (k Keeper) RemoveValidatorDistInfo(ctx sdk.Context, valAddr sdk.ValAddress)
remove a validator distribution info
func (Keeper) SetBaseProposerReward ¶
nolint: errcheck
func (Keeper) SetBonusProposerReward ¶
nolint: errcheck
func (Keeper) SetCommunityTax ¶
nolint: errcheck
func (Keeper) SetDelegationDistInfo ¶
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 ¶
func (k Keeper) SetValidatorDistInfo(ctx sdk.Context, vdi types.ValidatorDistInfo)
set the validator distribution info
func (Keeper) WithdrawDelegationReward ¶
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 ¶
func (k Keeper) WithdrawDelegationRewardsAll(ctx sdk.Context, delAddr sdk.AccAddress)
return all rewards for all delegations of a delegator
func (Keeper) WithdrawToDelegator ¶
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 ¶
withdrawal all the validator rewards including the commission