Documentation ¶
Overview ¶
nolint
Index ¶
- Constants
- Variables
- func ErrBadDelegationAddr(codespace sdk.CodespaceType) sdk.Error
- func ErrBadDelegationAmount(codespace sdk.CodespaceType) sdk.Error
- func ErrBadDelegatorAddr(codespace sdk.CodespaceType) sdk.Error
- func ErrBadDenom(codespace sdk.CodespaceType) sdk.Error
- func ErrBadRedelegationAddr(codespace sdk.CodespaceType) sdk.Error
- func ErrBadRedelegationDst(codespace sdk.CodespaceType) sdk.Error
- func ErrBadRemoveValidator(codespace sdk.CodespaceType) sdk.Error
- func ErrBadSharesAmount(codespace sdk.CodespaceType) sdk.Error
- func ErrBadSharesPercent(codespace sdk.CodespaceType) sdk.Error
- func ErrBadValidatorAddr(codespace sdk.CodespaceType) sdk.Error
- func ErrBothShareMsgsGiven(codespace sdk.CodespaceType) sdk.Error
- func ErrCommissionChangeRateGTMaxRate(codespace sdk.CodespaceType) sdk.Error
- func ErrCommissionChangeRateNegative(codespace sdk.CodespaceType) sdk.Error
- func ErrCommissionGTMaxChangeRate(codespace sdk.CodespaceType) sdk.Error
- func ErrCommissionGTMaxRate(codespace sdk.CodespaceType) sdk.Error
- func ErrCommissionHuge(codespace sdk.CodespaceType) sdk.Error
- func ErrCommissionNegative(codespace sdk.CodespaceType) sdk.Error
- func ErrCommissionUpdateTime(codespace sdk.CodespaceType) sdk.Error
- func ErrConflictingRedelegation(codespace sdk.CodespaceType) sdk.Error
- func ErrDelegationValidatorEmpty(codespace sdk.CodespaceType) sdk.Error
- func ErrDelegatorShareExRateInvalid(codespace sdk.CodespaceType) sdk.Error
- func ErrDescriptionLength(codespace sdk.CodespaceType, descriptor string, got, max int) sdk.Error
- func ErrExistingUnbondingDelegation(codespace sdk.CodespaceType) sdk.Error
- func ErrInsufficientShares(codespace sdk.CodespaceType) sdk.Error
- func ErrMissingSignature(codespace sdk.CodespaceType) sdk.Error
- func ErrNeitherShareMsgsGiven(codespace sdk.CodespaceType) sdk.Error
- func ErrNilDelegatorAddr(codespace sdk.CodespaceType) sdk.Error
- func ErrNilValidatorAddr(codespace sdk.CodespaceType) sdk.Error
- func ErrNoDelegation(codespace sdk.CodespaceType) sdk.Error
- func ErrNoDelegatorForAddress(codespace sdk.CodespaceType) sdk.Error
- func ErrNoRedelegation(codespace sdk.CodespaceType) sdk.Error
- func ErrNoUnbondingDelegation(codespace sdk.CodespaceType) sdk.Error
- func ErrNoValidatorFound(codespace sdk.CodespaceType) sdk.Error
- func ErrNotEnoughDelegationShares(codespace sdk.CodespaceType, shares string) sdk.Error
- func ErrNotMature(codespace sdk.CodespaceType, operation, descriptor string, got, min time.Time) sdk.Error
- func ErrSelfRedelegation(codespace sdk.CodespaceType) sdk.Error
- func ErrTransitiveRedelegation(codespace sdk.CodespaceType) sdk.Error
- func ErrValidatorJailed(codespace sdk.CodespaceType) sdk.Error
- func ErrValidatorOwnerExists(codespace sdk.CodespaceType) sdk.Error
- func ErrValidatorPubKeyExists(codespace sdk.CodespaceType) sdk.Error
- func ErrValidatorPubKeyTypeNotSupported(codespace sdk.CodespaceType, keyType string, supportedTypes []string) sdk.Error
- func ErrVerySmallRedelegation(codespace sdk.CodespaceType) sdk.Error
- func MustMarshalDelegation(cdc *codec.Codec, delegation Delegation) []byte
- func MustMarshalRED(cdc *codec.Codec, red Redelegation) []byte
- func MustMarshalUBD(cdc *codec.Codec, ubd UnbondingDelegation) []byte
- func MustMarshalValidator(cdc *codec.Codec, validator Validator) []byte
- func RegisterCodec(cdc *codec.Codec)
- type CodeType
- type Commission
- type CommissionMsg
- type DVPair
- type DVVTriplet
- type Delegation
- type Description
- type GenesisState
- type LastValidatorPower
- type MsgBeginRedelegate
- type MsgBeginUnbonding
- type MsgCreateValidator
- type MsgDelegate
- type MsgEditValidator
- type Params
- type Pool
- type Redelegation
- type UnbondingDelegation
- type Validator
- func (v Validator) ABCIValidatorUpdate() abci.ValidatorUpdate
- func (v Validator) ABCIValidatorUpdateZero() abci.ValidatorUpdate
- func (v Validator) AddTokensFromDel(pool Pool, amount sdk.Int) (Validator, Pool, sdk.Dec)
- func (v Validator) BondedTokens() sdk.Dec
- func (v Validator) ConsAddress() sdk.ConsAddress
- func (v Validator) DelegatorShareExRate() sdk.Dec
- func (v Validator) Equal(v2 Validator) bool
- func (v Validator) GetBondHeight() int64
- func (v Validator) GetCommission() sdk.Dec
- func (v Validator) GetConsAddr() sdk.ConsAddress
- func (v Validator) GetConsPubKey() crypto.PubKey
- func (v Validator) GetDelegatorShares() sdk.Dec
- func (v Validator) GetJailed() bool
- func (v Validator) GetMoniker() string
- func (v Validator) GetOperator() sdk.ValAddress
- func (v Validator) GetPower() sdk.Dec
- func (v Validator) GetStatus() sdk.BondStatus
- func (v Validator) GetTokens() sdk.Dec
- func (v Validator) HumanReadableString() (string, error)
- func (v Validator) MarshalJSON() ([]byte, error)
- func (v Validator) RemoveDelShares(pool Pool, delShares sdk.Dec) (Validator, Pool, sdk.Dec)
- func (v Validator) RemoveTokens(pool Pool, tokens sdk.Dec) (Validator, Pool)
- func (v Validator) SetInitialCommission(commission Commission) (Validator, sdk.Error)
- func (v *Validator) UnmarshalJSON(data []byte) error
- func (v Validator) UpdateStatus(pool Pool, NewStatus sdk.BondStatus) (Validator, Pool)
Constants ¶
const ( // Delay, in blocks, between when validator updates are returned to Tendermint and when they are applied // For example, if this is 0, the validator set at the end of a block will sign the next block, or // if this is 1, the validator set at the end of a block will sign the block after the next. // Constant as this should not change without a hard fork. ValidatorUpdateDelay int64 = 1 // Default bondable coin denomination DefaultBondDenom = "STAKE" )
const DoNotModifyDesc = "[do-not-modify]"
constant used in flags to indicate that description field should not be updated
const MsgRoute = "stake"
name to identify transaction routes
Variables ¶
var ( KeyUnbondingTime = []byte("UnbondingTime") KeyMaxValidators = []byte("MaxValidators") KeyBondDenom = []byte("BondDenom") )
nolint - Keys for parameter access
var MsgCdc *codec.Codec
generic sealed codec to be used throughout sdk
Functions ¶
func ErrBadDelegationAddr ¶ added in v0.25.0
func ErrBadDelegationAddr(codespace sdk.CodespaceType) sdk.Error
func ErrBadDelegationAmount ¶
func ErrBadDelegationAmount(codespace sdk.CodespaceType) sdk.Error
func ErrBadDelegatorAddr ¶
func ErrBadDelegatorAddr(codespace sdk.CodespaceType) sdk.Error
func ErrBadDenom ¶
func ErrBadDenom(codespace sdk.CodespaceType) sdk.Error
func ErrBadRedelegationAddr ¶ added in v0.25.0
func ErrBadRedelegationAddr(codespace sdk.CodespaceType) sdk.Error
func ErrBadRedelegationDst ¶
func ErrBadRedelegationDst(codespace sdk.CodespaceType) sdk.Error
func ErrBadRemoveValidator ¶
func ErrBadRemoveValidator(codespace sdk.CodespaceType) sdk.Error
func ErrBadSharesAmount ¶
func ErrBadSharesAmount(codespace sdk.CodespaceType) sdk.Error
func ErrBadSharesPercent ¶
func ErrBadSharesPercent(codespace sdk.CodespaceType) sdk.Error
func ErrBadValidatorAddr ¶ added in v0.25.0
func ErrBadValidatorAddr(codespace sdk.CodespaceType) sdk.Error
func ErrBothShareMsgsGiven ¶
func ErrBothShareMsgsGiven(codespace sdk.CodespaceType) sdk.Error
func ErrCommissionChangeRateGTMaxRate ¶ added in v0.25.0
func ErrCommissionChangeRateGTMaxRate(codespace sdk.CodespaceType) sdk.Error
func ErrCommissionChangeRateNegative ¶ added in v0.25.0
func ErrCommissionChangeRateNegative(codespace sdk.CodespaceType) sdk.Error
func ErrCommissionGTMaxChangeRate ¶ added in v0.25.0
func ErrCommissionGTMaxChangeRate(codespace sdk.CodespaceType) sdk.Error
func ErrCommissionGTMaxRate ¶ added in v0.25.0
func ErrCommissionGTMaxRate(codespace sdk.CodespaceType) sdk.Error
func ErrCommissionHuge ¶
func ErrCommissionHuge(codespace sdk.CodespaceType) sdk.Error
func ErrCommissionNegative ¶
func ErrCommissionNegative(codespace sdk.CodespaceType) sdk.Error
func ErrCommissionUpdateTime ¶ added in v0.25.0
func ErrCommissionUpdateTime(codespace sdk.CodespaceType) sdk.Error
func ErrConflictingRedelegation ¶ added in v0.25.0
func ErrConflictingRedelegation(codespace sdk.CodespaceType) sdk.Error
func ErrDelegationValidatorEmpty ¶
func ErrDelegationValidatorEmpty(codespace sdk.CodespaceType) sdk.Error
func ErrDelegatorShareExRateInvalid ¶ added in v0.26.0
func ErrDelegatorShareExRateInvalid(codespace sdk.CodespaceType) sdk.Error
func ErrDescriptionLength ¶
func ErrExistingUnbondingDelegation ¶ added in v0.24.0
func ErrExistingUnbondingDelegation(codespace sdk.CodespaceType) sdk.Error
func ErrInsufficientShares ¶
func ErrInsufficientShares(codespace sdk.CodespaceType) sdk.Error
func ErrMissingSignature ¶
func ErrMissingSignature(codespace sdk.CodespaceType) sdk.Error
func ErrNeitherShareMsgsGiven ¶
func ErrNeitherShareMsgsGiven(codespace sdk.CodespaceType) sdk.Error
func ErrNilDelegatorAddr ¶
func ErrNilDelegatorAddr(codespace sdk.CodespaceType) sdk.Error
func ErrNilValidatorAddr ¶
func ErrNilValidatorAddr(codespace sdk.CodespaceType) sdk.Error
validator
func ErrNoDelegation ¶
func ErrNoDelegation(codespace sdk.CodespaceType) sdk.Error
func ErrNoDelegatorForAddress ¶
func ErrNoDelegatorForAddress(codespace sdk.CodespaceType) sdk.Error
func ErrNoRedelegation ¶
func ErrNoRedelegation(codespace sdk.CodespaceType) sdk.Error
func ErrNoUnbondingDelegation ¶
func ErrNoUnbondingDelegation(codespace sdk.CodespaceType) sdk.Error
func ErrNoValidatorFound ¶
func ErrNoValidatorFound(codespace sdk.CodespaceType) sdk.Error
func ErrNotEnoughDelegationShares ¶
func ErrNotEnoughDelegationShares(codespace sdk.CodespaceType, shares string) sdk.Error
func ErrNotMature ¶
func ErrSelfRedelegation ¶ added in v0.26.0
func ErrSelfRedelegation(codespace sdk.CodespaceType) sdk.Error
func ErrTransitiveRedelegation ¶
func ErrTransitiveRedelegation(codespace sdk.CodespaceType) sdk.Error
func ErrValidatorJailed ¶ added in v0.25.0
func ErrValidatorJailed(codespace sdk.CodespaceType) sdk.Error
func ErrValidatorOwnerExists ¶
func ErrValidatorOwnerExists(codespace sdk.CodespaceType) sdk.Error
func ErrValidatorPubKeyExists ¶
func ErrValidatorPubKeyExists(codespace sdk.CodespaceType) sdk.Error
func ErrValidatorPubKeyTypeNotSupported ¶ added in v0.27.0
func ErrVerySmallRedelegation ¶ added in v0.27.0
func ErrVerySmallRedelegation(codespace sdk.CodespaceType) sdk.Error
func MustMarshalDelegation ¶
func MustMarshalDelegation(cdc *codec.Codec, delegation Delegation) []byte
return the delegation without fields contained within the key for the store
func MustMarshalRED ¶
func MustMarshalRED(cdc *codec.Codec, red Redelegation) []byte
return the redelegation without fields contained within the key for the store
func MustMarshalUBD ¶
func MustMarshalUBD(cdc *codec.Codec, ubd UnbondingDelegation) []byte
return the unbonding delegation without fields contained within the key for the store
func MustMarshalValidator ¶
return the redelegation without fields contained within the key for the store
func RegisterCodec ¶ added in v0.25.0
Register concrete types on codec codec
Types ¶
type CodeType ¶
const ( DefaultCodespace sdk.CodespaceType = "STAKE" CodeInvalidValidator CodeType = 101 CodeInvalidDelegation CodeType = 102 CodeInvalidInput CodeType = 103 CodeValidatorJailed CodeType = 104 CodeInvalidAddress CodeType = sdk.CodeInvalidAddress CodeInternal CodeType = sdk.CodeInternal CodeUnknownRequest CodeType = sdk.CodeUnknownRequest )
type Commission ¶ added in v0.25.0
type Commission struct { Rate sdk.Dec `json:"rate"` // the commission rate charged to delegators MaxRate sdk.Dec `json:"max_rate"` // maximum commission rate which this validator can ever charge MaxChangeRate sdk.Dec `json:"max_change_rate"` // maximum daily increase of the validator commission UpdateTime time.Time `json:"update_time"` // the last time the commission rate was changed }
Commission defines a commission parameters for a given validator.
func NewCommission ¶ added in v0.25.0
func NewCommission(rate, maxRate, maxChangeRate sdk.Dec) Commission
NewCommission returns an initialized validator commission.
func NewCommissionWithTime ¶ added in v0.25.0
func NewCommissionWithTime(rate, maxRate, maxChangeRate sdk.Dec, updatedAt time.Time) Commission
NewCommission returns an initialized validator commission with a specified update time which should be the current block BFT time.
func (Commission) Equal ¶ added in v0.25.0
func (c Commission) Equal(c2 Commission) bool
Equal checks if the given Commission object is equal to the receiving Commission object.
func (Commission) String ¶ added in v0.25.0
func (c Commission) String() string
String implements the Stringer interface for a Commission.
func (Commission) Validate ¶ added in v0.25.0
func (c Commission) Validate() sdk.Error
Validate performs basic sanity validation checks of initial commission parameters. If validation fails, an SDK error is returned.
func (Commission) ValidateNewRate ¶ added in v0.25.0
ValidateNewRate performs basic sanity validation checks of a new commission rate. If validation fails, an SDK error is returned.
type CommissionMsg ¶ added in v0.25.0
type CommissionMsg struct { Rate sdk.Dec `json:"rate"` // the commission rate charged to delegators MaxRate sdk.Dec `json:"max_rate"` // maximum commission rate which validator can ever charge MaxChangeRate sdk.Dec `json:"max_change_rate"` // maximum daily increase of the validator commission }
CommissionMsg defines a commission message to be used for creating a validator.
func NewCommissionMsg ¶ added in v0.25.0
func NewCommissionMsg(rate, maxRate, maxChangeRate sdk.Dec) CommissionMsg
NewCommissionMsg returns an initialized validator commission message.
type DVPair ¶ added in v0.25.0
type DVPair struct { DelegatorAddr sdk.AccAddress ValidatorAddr sdk.ValAddress }
DVPair is struct that just has a delegator-validator pair with no other data. It is intended to be used as a marshalable pointer. For example, a DVPair can be used to construct the key to getting an UnbondingDelegation from state.
type DVVTriplet ¶ added in v0.25.0
type DVVTriplet struct { DelegatorAddr sdk.AccAddress ValidatorSrcAddr sdk.ValAddress ValidatorDstAddr sdk.ValAddress }
DVVTriplet is struct that just has a delegator-validator-validator triplet with no other data. It is intended to be used as a marshalable pointer. For example, a DVVTriplet can be used to construct the key to getting a Redelegation from state.
type Delegation ¶
type Delegation struct { DelegatorAddr sdk.AccAddress `json:"delegator_addr"` ValidatorAddr sdk.ValAddress `json:"validator_addr"` }
Delegation represents the bond with tokens held by an account. It is owned by one delegator, and is associated with the voting power of one pubKey.
func MustUnmarshalDelegation ¶
func MustUnmarshalDelegation(cdc *codec.Codec, key, value []byte) Delegation
return the delegation without fields contained within the key for the store
func UnmarshalDelegation ¶
func UnmarshalDelegation(cdc *codec.Codec, key, value []byte) (delegation Delegation, err error)
return the delegation without fields contained within the key for the store
func (Delegation) GetDelegatorAddr ¶ added in v0.25.0
func (d Delegation) GetDelegatorAddr() sdk.AccAddress
nolint - for sdk.Delegation
func (Delegation) GetShares ¶ added in v0.25.0
func (d Delegation) GetShares() sdk.Dec
func (Delegation) GetValidatorAddr ¶ added in v0.25.0
func (d Delegation) GetValidatorAddr() sdk.ValAddress
func (Delegation) HumanReadableString ¶
func (d Delegation) HumanReadableString() (string, error)
HumanReadableString returns a human readable string representation of a Delegation. An error is returned if the Delegation's delegator or validator addresses cannot be Bech32 encoded.
type Description ¶
type Description struct { Moniker string `json:"moniker"` // name Identity string `json:"identity"` // optional identity signature (ex. UPort or Keybase) Website string `json:"website"` // optional website link Details string `json:"details"` // optional details }
Description - description fields for a validator
func NewDescription ¶
func NewDescription(moniker, identity, website, details string) Description
NewDescription returns a new Description with the provided values.
func (Description) EnsureLength ¶
func (d Description) EnsureLength() (Description, sdk.Error)
EnsureLength ensures the length of a validator's description.
func (Description) UpdateDescription ¶
func (d Description) UpdateDescription(d2 Description) (Description, sdk.Error)
UpdateDescription updates the fields of a given description. An error is returned if the resulting description contains an invalid length.
type GenesisState ¶
type GenesisState struct { Pool Pool `json:"pool"` Params Params `json:"params"` LastTotalPower sdk.Int `json:"last_total_power"` LastValidatorPowers []LastValidatorPower `json:"last_validator_powers"` Validators []Validator `json:"validators"` Bonds []Delegation `json:"bonds"` UnbondingDelegations []UnbondingDelegation `json:"unbonding_delegations"` Redelegations []Redelegation `json:"redelegations"` Exported bool `json:"exported"` }
GenesisState - all staking state that must be provided at genesis
func DefaultGenesisState ¶
func DefaultGenesisState() GenesisState
get raw genesis raw message for testing
func NewGenesisState ¶
func NewGenesisState(pool Pool, params Params, validators []Validator, bonds []Delegation) GenesisState
type LastValidatorPower ¶ added in v0.27.0
type LastValidatorPower struct { Address sdk.ValAddress Power sdk.Int }
Last validator power, needed for validator set update logic
type MsgBeginRedelegate ¶
type MsgBeginRedelegate struct { DelegatorAddr sdk.AccAddress `json:"delegator_addr"` ValidatorSrcAddr sdk.ValAddress `json:"validator_src_addr"` ValidatorDstAddr sdk.ValAddress `json:"validator_dst_addr"` }
MsgDelegate - struct for bonding transactions
func NewMsgBeginRedelegate ¶
func NewMsgBeginRedelegate(delAddr sdk.AccAddress, valSrcAddr, valDstAddr sdk.ValAddress, sharesAmount sdk.Dec) MsgBeginRedelegate
func (MsgBeginRedelegate) GetSignBytes ¶
func (msg MsgBeginRedelegate) GetSignBytes() []byte
get the bytes for the message signer to sign on
func (MsgBeginRedelegate) GetSigners ¶
func (msg MsgBeginRedelegate) GetSigners() []sdk.AccAddress
func (MsgBeginRedelegate) Route ¶ added in v0.25.0
func (msg MsgBeginRedelegate) Route() string
nolint
func (MsgBeginRedelegate) Type ¶
func (msg MsgBeginRedelegate) Type() string
func (MsgBeginRedelegate) ValidateBasic ¶
func (msg MsgBeginRedelegate) ValidateBasic() sdk.Error
quick validity check
type MsgBeginUnbonding ¶
type MsgBeginUnbonding struct { DelegatorAddr sdk.AccAddress `json:"delegator_addr"` ValidatorAddr sdk.ValAddress `json:"validator_addr"` }
MsgBeginUnbonding - struct for unbonding transactions
func NewMsgBeginUnbonding ¶
func NewMsgBeginUnbonding(delAddr sdk.AccAddress, valAddr sdk.ValAddress, sharesAmount sdk.Dec) MsgBeginUnbonding
func (MsgBeginUnbonding) GetSignBytes ¶
func (msg MsgBeginUnbonding) GetSignBytes() []byte
get the bytes for the message signer to sign on
func (MsgBeginUnbonding) GetSigners ¶
func (msg MsgBeginUnbonding) GetSigners() []sdk.AccAddress
func (MsgBeginUnbonding) Route ¶ added in v0.25.0
func (msg MsgBeginUnbonding) Route() string
nolint
func (MsgBeginUnbonding) Type ¶
func (msg MsgBeginUnbonding) Type() string
func (MsgBeginUnbonding) ValidateBasic ¶
func (msg MsgBeginUnbonding) ValidateBasic() sdk.Error
quick validity check
type MsgCreateValidator ¶
type MsgCreateValidator struct { Description Commission CommissionMsg DelegatorAddr sdk.AccAddress `json:"delegator_address"` ValidatorAddr sdk.ValAddress `json:"validator_address"` PubKey crypto.PubKey `json:"pubkey"` Delegation sdk.Coin `json:"delegation"` }
MsgCreateValidator - struct for bonding transactions
func NewMsgCreateValidator ¶
func NewMsgCreateValidator(valAddr sdk.ValAddress, pubkey crypto.PubKey, selfDelegation sdk.Coin, description Description, commission CommissionMsg) MsgCreateValidator
Default way to create validator. Delegator address and validator address are the same
func NewMsgCreateValidatorOnBehalfOf ¶ added in v0.21.0
func NewMsgCreateValidatorOnBehalfOf(delAddr sdk.AccAddress, valAddr sdk.ValAddress, pubkey crypto.PubKey, delegation sdk.Coin, description Description, commission CommissionMsg) MsgCreateValidator
Creates validator msg by delegator address on behalf of validator address
func (MsgCreateValidator) GetSignBytes ¶
func (msg MsgCreateValidator) GetSignBytes() []byte
get the bytes for the message signer to sign on
func (MsgCreateValidator) GetSigners ¶
func (msg MsgCreateValidator) GetSigners() []sdk.AccAddress
Return address(es) that must sign over msg.GetSignBytes()
func (MsgCreateValidator) Route ¶ added in v0.25.0
func (msg MsgCreateValidator) Route() string
nolint
func (MsgCreateValidator) Type ¶
func (msg MsgCreateValidator) Type() string
func (MsgCreateValidator) ValidateBasic ¶
func (msg MsgCreateValidator) ValidateBasic() sdk.Error
quick validity check
type MsgDelegate ¶
type MsgDelegate struct { DelegatorAddr sdk.AccAddress `json:"delegator_addr"` ValidatorAddr sdk.ValAddress `json:"validator_addr"` Delegation sdk.Coin `json:"delegation"` }
MsgDelegate - struct for bonding transactions
func NewMsgDelegate ¶
func NewMsgDelegate(delAddr sdk.AccAddress, valAddr sdk.ValAddress, delegation sdk.Coin) MsgDelegate
func (MsgDelegate) GetSignBytes ¶
func (msg MsgDelegate) GetSignBytes() []byte
get the bytes for the message signer to sign on
func (MsgDelegate) GetSigners ¶
func (msg MsgDelegate) GetSigners() []sdk.AccAddress
func (MsgDelegate) Type ¶
func (msg MsgDelegate) Type() string
func (MsgDelegate) ValidateBasic ¶
func (msg MsgDelegate) ValidateBasic() sdk.Error
quick validity check
type MsgEditValidator ¶
type MsgEditValidator struct { Description ValidatorAddr sdk.ValAddress `json:"address"` // We pass a reference to the new commission rate as it's not mandatory to // update. If not updated, the deserialized rate will be zero with no way to // distinguish if an update was intended. // // REF: #2373 CommissionRate *sdk.Dec `json:"commission_rate"` }
MsgEditValidator - struct for editing a validator
func NewMsgEditValidator ¶
func NewMsgEditValidator(valAddr sdk.ValAddress, description Description, newRate *sdk.Dec) MsgEditValidator
func (MsgEditValidator) GetSignBytes ¶
func (msg MsgEditValidator) GetSignBytes() []byte
get the bytes for the message signer to sign on
func (MsgEditValidator) GetSigners ¶
func (msg MsgEditValidator) GetSigners() []sdk.AccAddress
func (MsgEditValidator) Type ¶
func (msg MsgEditValidator) Type() string
func (MsgEditValidator) ValidateBasic ¶
func (msg MsgEditValidator) ValidateBasic() sdk.Error
quick validity check
type Params ¶
type Params struct { UnbondingTime time.Duration `json:"unbonding_time"` MaxValidators uint16 `json:"max_validators"` // maximum number of validators BondDenom string `json:"bond_denom"` // bondable coin denomination }
Params defines the high level settings for staking
func MustUnmarshalParams ¶ added in v0.25.0
unmarshal the current staking params value from store key or panic
func UnmarshalParams ¶ added in v0.25.0
unmarshal the current staking params value from store key
func (Params) HumanReadableString ¶ added in v0.25.0
HumanReadableString returns a human readable string representation of the parameters.
func (*Params) KeyValuePairs ¶ added in v0.25.0
func (p *Params) KeyValuePairs() params.KeyValuePairs
Implements params.ParamSet
type Pool ¶
type Pool struct { LooseTokens sdk.Dec `json:"loose_tokens"` // tokens which are not bonded in a validator BondedTokens sdk.Dec `json:"bonded_tokens"` // reserve of bonded tokens }
Pool - dynamic parameters of the current state
func MustUnmarshalPool ¶ added in v0.25.0
unmarshal the current pool value from store key or panics
func UnmarshalPool ¶ added in v0.25.0
unmarshal the current pool value from store key
func (Pool) BondedRatio ¶
get the bond ratio of the global state
func (Pool) HumanReadableString ¶ added in v0.25.0
HumanReadableString returns a human readable string representation of a pool.
func (Pool) TokenSupply ¶
Sum total of all staking tokens in the pool
type Redelegation ¶
type Redelegation struct { DelegatorAddr sdk.AccAddress `json:"delegator_addr"` // delegator ValidatorSrcAddr sdk.ValAddress `json:"validator_src_addr"` // validator redelegation source operator addr ValidatorDstAddr sdk.ValAddress `json:"validator_dst_addr"` // validator redelegation destination operator addr CreationHeight int64 `json:"creation_height"` // height which the redelegation took place MinTime time.Time `json:"min_time"` // unix time for redelegation completion InitialBalance sdk.Coin `json:"initial_balance"` // initial balance when redelegation started Balance sdk.Coin `json:"balance"` // current balance }
Redelegation reflects a delegation's passive re-delegation queue.
func MustUnmarshalRED ¶
func MustUnmarshalRED(cdc *codec.Codec, key, value []byte) Redelegation
unmarshal a redelegation from a store key and value
func UnmarshalRED ¶
func UnmarshalRED(cdc *codec.Codec, key, value []byte) (red Redelegation, err error)
unmarshal a redelegation from a store key and value
func (Redelegation) HumanReadableString ¶
func (d Redelegation) HumanReadableString() (string, error)
HumanReadableString returns a human readable string representation of a Redelegation. An error is returned if the UnbondingDelegation's delegator or validator addresses cannot be Bech32 encoded.
type UnbondingDelegation ¶
type UnbondingDelegation struct { DelegatorAddr sdk.AccAddress `json:"delegator_addr"` // delegator ValidatorAddr sdk.ValAddress `json:"validator_addr"` // validator unbonding from operator addr CreationHeight int64 `json:"creation_height"` // height which the unbonding took place MinTime time.Time `json:"min_time"` // unix time for unbonding completion InitialBalance sdk.Coin `json:"initial_balance"` // atoms initially scheduled to receive at completion Balance sdk.Coin `json:"balance"` // atoms to receive at completion }
UnbondingDelegation reflects a delegation's passive unbonding queue.
func MustUnmarshalUBD ¶
func MustUnmarshalUBD(cdc *codec.Codec, key, value []byte) UnbondingDelegation
unmarshal a unbonding delegation from a store key and value
func UnmarshalUBD ¶
func UnmarshalUBD(cdc *codec.Codec, key, value []byte) (ubd UnbondingDelegation, err error)
unmarshal a unbonding delegation from a store key and value
func (UnbondingDelegation) Equal ¶
func (d UnbondingDelegation) Equal(d2 UnbondingDelegation) bool
nolint
func (UnbondingDelegation) HumanReadableString ¶
func (d UnbondingDelegation) HumanReadableString() (string, error)
HumanReadableString returns a human readable string representation of an UnbondingDelegation. An error is returned if the UnbondingDelegation's delegator or validator addresses cannot be Bech32 encoded.
type Validator ¶
type Validator struct { OperatorAddr sdk.ValAddress `json:"operator_address"` // address of the validator's operator; bech encoded in JSON ConsPubKey crypto.PubKey `json:"consensus_pubkey"` // the consensus public key of the validator; bech encoded in JSON Jailed bool `json:"jailed"` // has the validator been jailed from bonded status? Status sdk.BondStatus `json:"status"` // validator status (bonded/unbonding/unbonded) Tokens sdk.Dec `json:"tokens"` // delegated tokens (incl. self-delegation) Description Description `json:"description"` // description terms for the validator BondHeight int64 `json:"bond_height"` // earliest height as a bonded validator UnbondingHeight int64 `json:"unbonding_height"` // if unbonding, height at which this validator has begun unbonding UnbondingMinTime time.Time `json:"unbonding_time"` // if unbonding, min time for the validator to complete unbonding Commission Commission `json:"commission"` // commission parameters }
Validator defines the total amount of bond shares and their exchange rate to coins. Accumulation of interest is modelled as an in increase in the exchange rate, and slashing as a decrease. When coins are delegated to this validator, the validator is credited with a Delegation whose number of bond shares is based on the amount of coins delegated divided by the current exchange rate. Voting power can be calculated as total bonds multiplied by exchange rate.
func MustUnmarshalValidator ¶
unmarshal a redelegation from a store key and value
func NewValidator ¶
func NewValidator(operator sdk.ValAddress, pubKey crypto.PubKey, description Description) Validator
NewValidator - initialize a new validator
func UnmarshalValidator ¶
func UnmarshalValidator(cdc *codec.Codec, operatorAddr, value []byte) (validator Validator, err error)
unmarshal a redelegation from a store key and value
func (Validator) ABCIValidatorUpdate ¶ added in v0.25.0
func (v Validator) ABCIValidatorUpdate() abci.ValidatorUpdate
ABCIValidatorUpdate returns an abci.ValidatorUpdate from a staked validator type with the full validator power
func (Validator) ABCIValidatorUpdateZero ¶ added in v0.25.0
func (v Validator) ABCIValidatorUpdateZero() abci.ValidatorUpdate
ABCIValidatorUpdateZero returns an abci.ValidatorUpdate from a staked validator type with zero power used for validator updates.
func (Validator) AddTokensFromDel ¶
AddTokensFromDel adds tokens to a validator
func (Validator) BondedTokens ¶ added in v0.21.0
Get the bonded tokens which the validator holds
func (Validator) ConsAddress ¶ added in v0.25.0
func (v Validator) ConsAddress() sdk.ConsAddress
return the TM validator address
func (Validator) DelegatorShareExRate ¶
DelegatorShareExRate gets the exchange rate of tokens over delegator shares. UNITS: tokens/delegator-shares
func (Validator) GetBondHeight ¶
func (Validator) GetCommission ¶ added in v0.25.0
func (Validator) GetConsAddr ¶ added in v0.25.0
func (v Validator) GetConsAddr() sdk.ConsAddress
func (Validator) GetConsPubKey ¶ added in v0.25.0
func (Validator) GetDelegatorShares ¶
func (Validator) GetMoniker ¶
func (Validator) GetOperator ¶ added in v0.25.0
func (v Validator) GetOperator() sdk.ValAddress
func (Validator) GetStatus ¶
func (v Validator) GetStatus() sdk.BondStatus
func (Validator) HumanReadableString ¶
HumanReadableString returns a human readable string representation of a validator. An error is returned if the operator or the operator's public key cannot be converted to Bech32 format.
func (Validator) MarshalJSON ¶ added in v0.25.0
MarshalJSON marshals the validator to JSON using Bech32
func (Validator) RemoveDelShares ¶
RemoveDelShares removes delegator shares from a validator.
func (Validator) RemoveTokens ¶ added in v0.21.0
removes tokens from a validator
func (Validator) SetInitialCommission ¶ added in v0.25.0
func (v Validator) SetInitialCommission(commission Commission) (Validator, sdk.Error)
SetInitialCommission attempts to set a validator's initial commission. An error is returned if the commission is invalid.
func (*Validator) UnmarshalJSON ¶ added in v0.25.0
UnmarshalJSON unmarshals the validator from JSON using Bech32
func (Validator) UpdateStatus ¶
UpdateStatus updates the location of the shares within a validator to reflect the new status