Documentation ¶
Index ¶
- Constants
- Variables
- func KeyTestPubAddr() (cryptotypes.PrivKey, cryptotypes.PubKey, sdk.AccAddress)
- func NewTestCoins() sdk.Coins
- func NewTestMsg(addrs ...sdk.AccAddress) *testdata.TestMsg
- func RegisterInterfaces(registrar registry.InterfaceRegistrar)
- func RegisterLegacyAminoCodec(cdc corelegacy.Amino)
- type AccountsModKeeper
- type BankKeeper
- type BaseVestingAccount
- func (*BaseVestingAccount) Descriptor() ([]byte, []int)
- func (bva BaseVestingAccount) GetDelegatedFree() sdk.Coins
- func (bva BaseVestingAccount) GetDelegatedVesting() sdk.Coins
- func (bva BaseVestingAccount) GetEndTime() int64
- func (bva BaseVestingAccount) GetOriginalVesting() sdk.Coins
- func (bva BaseVestingAccount) LockedCoinsFromVesting(vestingCoins sdk.Coins) sdk.Coins
- func (m *BaseVestingAccount) Marshal() (dAtA []byte, err error)
- func (m *BaseVestingAccount) MarshalTo(dAtA []byte) (int, error)
- func (m *BaseVestingAccount) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*BaseVestingAccount) ProtoMessage()
- func (m *BaseVestingAccount) Reset()
- func (m *BaseVestingAccount) Size() (n int)
- func (m *BaseVestingAccount) String() string
- func (bva *BaseVestingAccount) TrackDelegation(balance, vestingCoins, amount sdk.Coins)
- func (bva *BaseVestingAccount) TrackUndelegation(amount sdk.Coins)
- func (m *BaseVestingAccount) Unmarshal(dAtA []byte) error
- func (bva BaseVestingAccount) Validate() error
- func (m *BaseVestingAccount) XXX_DiscardUnknown()
- func (m *BaseVestingAccount) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *BaseVestingAccount) XXX_Merge(src proto.Message)
- func (m *BaseVestingAccount) XXX_Size() int
- func (m *BaseVestingAccount) XXX_Unmarshal(b []byte) error
- type ContinuousVestingAccount
- func (*ContinuousVestingAccount) Descriptor() ([]byte, []int)
- func (cva ContinuousVestingAccount) GetStartTime() int64
- func (cva ContinuousVestingAccount) GetVestedCoins(blockTime time.Time) sdk.Coins
- func (cva ContinuousVestingAccount) GetVestingCoins(blockTime time.Time) sdk.Coins
- func (cva ContinuousVestingAccount) LockedCoins(blockTime time.Time) sdk.Coins
- func (m *ContinuousVestingAccount) Marshal() (dAtA []byte, err error)
- func (m *ContinuousVestingAccount) MarshalTo(dAtA []byte) (int, error)
- func (m *ContinuousVestingAccount) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*ContinuousVestingAccount) ProtoMessage()
- func (m *ContinuousVestingAccount) Reset()
- func (m *ContinuousVestingAccount) Size() (n int)
- func (m *ContinuousVestingAccount) String() string
- func (cva *ContinuousVestingAccount) TrackDelegation(blockTime time.Time, balance, amount sdk.Coins)
- func (m *ContinuousVestingAccount) Unmarshal(dAtA []byte) error
- func (cva ContinuousVestingAccount) Validate() error
- func (m *ContinuousVestingAccount) XXX_DiscardUnknown()
- func (m *ContinuousVestingAccount) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *ContinuousVestingAccount) XXX_Merge(src proto.Message)
- func (m *ContinuousVestingAccount) XXX_Size() int
- func (m *ContinuousVestingAccount) XXX_Unmarshal(b []byte) error
- type DelayedVestingAccount
- func (*DelayedVestingAccount) Descriptor() ([]byte, []int)
- func (dva DelayedVestingAccount) GetStartTime() int64
- func (dva DelayedVestingAccount) GetVestedCoins(blockTime time.Time) sdk.Coins
- func (dva DelayedVestingAccount) GetVestingCoins(blockTime time.Time) sdk.Coins
- func (dva DelayedVestingAccount) LockedCoins(blockTime time.Time) sdk.Coins
- func (m *DelayedVestingAccount) Marshal() (dAtA []byte, err error)
- func (m *DelayedVestingAccount) MarshalTo(dAtA []byte) (int, error)
- func (m *DelayedVestingAccount) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*DelayedVestingAccount) ProtoMessage()
- func (m *DelayedVestingAccount) Reset()
- func (m *DelayedVestingAccount) Size() (n int)
- func (m *DelayedVestingAccount) String() string
- func (dva *DelayedVestingAccount) TrackDelegation(blockTime time.Time, balance, amount sdk.Coins)
- func (m *DelayedVestingAccount) Unmarshal(dAtA []byte) error
- func (dva DelayedVestingAccount) Validate() error
- func (m *DelayedVestingAccount) XXX_DiscardUnknown()
- func (m *DelayedVestingAccount) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *DelayedVestingAccount) XXX_Merge(src proto.Message)
- func (m *DelayedVestingAccount) XXX_Size() int
- func (m *DelayedVestingAccount) XXX_Unmarshal(b []byte) error
- type Period
- func (*Period) Descriptor() ([]byte, []int)
- func (p Period) Duration() time.Duration
- func (m *Period) GetAmount() github_com_cosmos_cosmos_sdk_types.Coins
- func (m *Period) GetLength() int64
- func (m *Period) Marshal() (dAtA []byte, err error)
- func (m *Period) MarshalTo(dAtA []byte) (int, error)
- func (m *Period) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*Period) ProtoMessage()
- func (m *Period) Reset()
- func (m *Period) Size() (n int)
- func (m *Period) String() string
- func (m *Period) Unmarshal(dAtA []byte) error
- func (m *Period) XXX_DiscardUnknown()
- func (m *Period) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *Period) XXX_Merge(src proto.Message)
- func (m *Period) XXX_Size() int
- func (m *Period) XXX_Unmarshal(b []byte) error
- type PeriodicVestingAccount
- func (*PeriodicVestingAccount) Descriptor() ([]byte, []int)
- func (pva PeriodicVestingAccount) GetStartTime() int64
- func (pva PeriodicVestingAccount) GetVestedCoins(blockTime time.Time) sdk.Coins
- func (pva PeriodicVestingAccount) GetVestingCoins(blockTime time.Time) sdk.Coins
- func (pva PeriodicVestingAccount) GetVestingPeriods() Periods
- func (pva PeriodicVestingAccount) LockedCoins(blockTime time.Time) sdk.Coins
- func (m *PeriodicVestingAccount) Marshal() (dAtA []byte, err error)
- func (m *PeriodicVestingAccount) MarshalTo(dAtA []byte) (int, error)
- func (m *PeriodicVestingAccount) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*PeriodicVestingAccount) ProtoMessage()
- func (m *PeriodicVestingAccount) Reset()
- func (m *PeriodicVestingAccount) Size() (n int)
- func (m *PeriodicVestingAccount) String() string
- func (pva *PeriodicVestingAccount) TrackDelegation(blockTime time.Time, balance, amount sdk.Coins)
- func (m *PeriodicVestingAccount) Unmarshal(dAtA []byte) error
- func (pva PeriodicVestingAccount) Validate() error
- func (m *PeriodicVestingAccount) XXX_DiscardUnknown()
- func (m *PeriodicVestingAccount) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *PeriodicVestingAccount) XXX_Merge(src proto.Message)
- func (m *PeriodicVestingAccount) XXX_Size() int
- func (m *PeriodicVestingAccount) XXX_Unmarshal(b []byte) error
- type Periods
- type PermanentLockedAccount
- func (*PermanentLockedAccount) Descriptor() ([]byte, []int)
- func (plva PermanentLockedAccount) GetEndTime() int64
- func (plva PermanentLockedAccount) GetStartTime() int64
- func (plva PermanentLockedAccount) GetVestedCoins(_ time.Time) sdk.Coins
- func (plva PermanentLockedAccount) GetVestingCoins(_ time.Time) sdk.Coins
- func (plva PermanentLockedAccount) LockedCoins(_ time.Time) sdk.Coins
- func (m *PermanentLockedAccount) Marshal() (dAtA []byte, err error)
- func (m *PermanentLockedAccount) MarshalTo(dAtA []byte) (int, error)
- func (m *PermanentLockedAccount) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*PermanentLockedAccount) ProtoMessage()
- func (m *PermanentLockedAccount) Reset()
- func (m *PermanentLockedAccount) Size() (n int)
- func (m *PermanentLockedAccount) String() string
- func (plva *PermanentLockedAccount) TrackDelegation(blockTime time.Time, balance, amount sdk.Coins)
- func (m *PermanentLockedAccount) Unmarshal(dAtA []byte) error
- func (plva PermanentLockedAccount) Validate() error
- func (m *PermanentLockedAccount) XXX_DiscardUnknown()
- func (m *PermanentLockedAccount) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *PermanentLockedAccount) XXX_Merge(src proto.Message)
- func (m *PermanentLockedAccount) XXX_Size() int
- func (m *PermanentLockedAccount) XXX_Unmarshal(b []byte) error
Constants ¶
const ( // ModuleName defines the module's name. ModuleName = "vesting" // RouterKey defines the module's message routing key RouterKey = ModuleName )
Variables ¶
Functions ¶
func KeyTestPubAddr ¶
func KeyTestPubAddr() (cryptotypes.PrivKey, cryptotypes.PubKey, sdk.AccAddress)
KeyTestPubAddr generates a test key pair
func NewTestMsg ¶
func NewTestMsg(addrs ...sdk.AccAddress) *testdata.TestMsg
NewTestMsg generates a test message
func RegisterInterfaces ¶
func RegisterInterfaces(registrar registry.InterfaceRegistrar)
RegisterInterfaces associates protoName with AccountI and VestingAccount Interfaces and creates a registry of it's concrete implementations
func RegisterLegacyAminoCodec ¶
func RegisterLegacyAminoCodec(cdc corelegacy.Amino)
RegisterLegacyAminoCodec registers the vesting interfaces and concrete types on the provided LegacyAmino codec. These types are used for Amino JSON serialization
Types ¶
type AccountsModKeeper ¶
type AccountsModKeeper interface { types.AccountsModKeeper }
type BankKeeper ¶
type BankKeeper interface { IsSendEnabledCoins(ctx context.Context, coins ...sdk.Coin) error SendCoins(ctx context.Context, fromAddr, toAddr sdk.AccAddress, amt sdk.Coins) error BlockedAddr(addr sdk.AccAddress) bool }
BankKeeper defines the expected interface contract the vesting module requires for creating vesting accounts with funds.
type BaseVestingAccount ¶
type BaseVestingAccount struct { *types.BaseAccount `protobuf:"bytes,1,opt,name=base_account,json=baseAccount,proto3,embedded=base_account" json:"base_account,omitempty"` OriginalVesting github_com_cosmos_cosmos_sdk_types.Coins `` /* 150-byte string literal not displayed */ DelegatedFree github_com_cosmos_cosmos_sdk_types.Coins `` /* 144-byte string literal not displayed */ DelegatedVesting github_com_cosmos_cosmos_sdk_types.Coins `` /* 153-byte string literal not displayed */ // Vesting end time, as unix timestamp (in seconds). EndTime int64 `protobuf:"varint,5,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"` }
BaseVestingAccount implements the VestingAccount interface. It contains all the necessary fields needed for any vesting account implementation.
func NewBaseVestingAccount ¶
func NewBaseVestingAccount(baseAccount *authtypes.BaseAccount, originalVesting sdk.Coins, endTime int64) (*BaseVestingAccount, error)
NewBaseVestingAccount creates a new BaseVestingAccount object. It is the callers responsibility to ensure the base account has sufficient funds with regards to the original vesting amount.
func (*BaseVestingAccount) Descriptor ¶
func (*BaseVestingAccount) Descriptor() ([]byte, []int)
func (BaseVestingAccount) GetDelegatedFree ¶
func (bva BaseVestingAccount) GetDelegatedFree() sdk.Coins
GetDelegatedFree returns a vesting account's delegation amount that is not vesting.
func (BaseVestingAccount) GetDelegatedVesting ¶
func (bva BaseVestingAccount) GetDelegatedVesting() sdk.Coins
GetDelegatedVesting returns a vesting account's delegation amount that is still vesting.
func (BaseVestingAccount) GetEndTime ¶
func (bva BaseVestingAccount) GetEndTime() int64
GetEndTime returns a vesting account's end time
func (BaseVestingAccount) GetOriginalVesting ¶
func (bva BaseVestingAccount) GetOriginalVesting() sdk.Coins
GetOriginalVesting returns a vesting account's original vesting amount
func (BaseVestingAccount) LockedCoinsFromVesting ¶
func (bva BaseVestingAccount) LockedCoinsFromVesting(vestingCoins sdk.Coins) sdk.Coins
LockedCoinsFromVesting returns all the coins that are not spendable (i.e. locked) for a vesting account given the current vesting coins. If no coins are locked, an empty slice of Coins is returned.
CONTRACT: Delegated vesting coins and vestingCoins must be sorted.
func (*BaseVestingAccount) Marshal ¶
func (m *BaseVestingAccount) Marshal() (dAtA []byte, err error)
func (*BaseVestingAccount) MarshalTo ¶
func (m *BaseVestingAccount) MarshalTo(dAtA []byte) (int, error)
func (*BaseVestingAccount) MarshalToSizedBuffer ¶
func (m *BaseVestingAccount) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*BaseVestingAccount) ProtoMessage ¶
func (*BaseVestingAccount) ProtoMessage()
func (*BaseVestingAccount) Reset ¶
func (m *BaseVestingAccount) Reset()
func (*BaseVestingAccount) Size ¶
func (m *BaseVestingAccount) Size() (n int)
func (*BaseVestingAccount) String ¶
func (m *BaseVestingAccount) String() string
func (*BaseVestingAccount) TrackDelegation ¶
func (bva *BaseVestingAccount) TrackDelegation(balance, vestingCoins, amount sdk.Coins)
TrackDelegation tracks a delegation amount for any given vesting account type given the amount of coins currently vesting and the current account balance of the delegation denominations.
CONTRACT: The account's coins, delegation coins, vesting coins, and delegated vesting coins must be sorted.
func (*BaseVestingAccount) TrackUndelegation ¶
func (bva *BaseVestingAccount) TrackUndelegation(amount sdk.Coins)
TrackUndelegation tracks an undelegation amount by setting the necessary values by which delegated vesting and delegated vesting need to decrease and by which amount the base coins need to increase.
NOTE: The undelegation (bond refund) amount may exceed the delegated vesting (bond) amount due to the way undelegation truncates the bond refund, which can increase the validator's exchange rate (tokens/shares) slightly if the undelegated tokens are non-integral.
CONTRACT: The account's coins and undelegation coins must be sorted.
func (*BaseVestingAccount) Unmarshal ¶
func (m *BaseVestingAccount) Unmarshal(dAtA []byte) error
func (BaseVestingAccount) Validate ¶
func (bva BaseVestingAccount) Validate() error
Validate checks for errors on the account fields
func (*BaseVestingAccount) XXX_DiscardUnknown ¶
func (m *BaseVestingAccount) XXX_DiscardUnknown()
func (*BaseVestingAccount) XXX_Marshal ¶
func (m *BaseVestingAccount) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*BaseVestingAccount) XXX_Merge ¶
func (m *BaseVestingAccount) XXX_Merge(src proto.Message)
func (*BaseVestingAccount) XXX_Size ¶
func (m *BaseVestingAccount) XXX_Size() int
func (*BaseVestingAccount) XXX_Unmarshal ¶
func (m *BaseVestingAccount) XXX_Unmarshal(b []byte) error
type ContinuousVestingAccount ¶
type ContinuousVestingAccount struct { *BaseVestingAccount `` /* 147-byte string literal not displayed */ // Vesting start time, as unix timestamp (in seconds). StartTime int64 `protobuf:"varint,2,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"` }
ContinuousVestingAccount implements the VestingAccount interface. It continuously vests by unlocking coins linearly with respect to time.
func NewContinuousVestingAccount ¶
func NewContinuousVestingAccount(baseAcc *authtypes.BaseAccount, originalVesting sdk.Coins, startTime, endTime int64) (*ContinuousVestingAccount, error)
NewContinuousVestingAccount returns a new ContinuousVestingAccount
func NewContinuousVestingAccountRaw ¶
func NewContinuousVestingAccountRaw(bva *BaseVestingAccount, startTime int64) *ContinuousVestingAccount
NewContinuousVestingAccountRaw creates a new ContinuousVestingAccount object from BaseVestingAccount
func (*ContinuousVestingAccount) Descriptor ¶
func (*ContinuousVestingAccount) Descriptor() ([]byte, []int)
func (ContinuousVestingAccount) GetStartTime ¶
func (cva ContinuousVestingAccount) GetStartTime() int64
GetStartTime returns the time when vesting starts for a continuous vesting account.
func (ContinuousVestingAccount) GetVestedCoins ¶
func (cva ContinuousVestingAccount) GetVestedCoins(blockTime time.Time) sdk.Coins
GetVestedCoins returns the total number of vested coins. If no coins are vested, nil is returned.
func (ContinuousVestingAccount) GetVestingCoins ¶
func (cva ContinuousVestingAccount) GetVestingCoins(blockTime time.Time) sdk.Coins
GetVestingCoins returns the total number of vesting coins. If no coins are vesting, nil is returned.
func (ContinuousVestingAccount) LockedCoins ¶
func (cva ContinuousVestingAccount) LockedCoins(blockTime time.Time) sdk.Coins
LockedCoins returns the set of coins that are not spendable (i.e. locked), defined as the vesting coins that are not delegated.
func (*ContinuousVestingAccount) Marshal ¶
func (m *ContinuousVestingAccount) Marshal() (dAtA []byte, err error)
func (*ContinuousVestingAccount) MarshalTo ¶
func (m *ContinuousVestingAccount) MarshalTo(dAtA []byte) (int, error)
func (*ContinuousVestingAccount) MarshalToSizedBuffer ¶
func (m *ContinuousVestingAccount) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*ContinuousVestingAccount) ProtoMessage ¶
func (*ContinuousVestingAccount) ProtoMessage()
func (*ContinuousVestingAccount) Reset ¶
func (m *ContinuousVestingAccount) Reset()
func (*ContinuousVestingAccount) Size ¶
func (m *ContinuousVestingAccount) Size() (n int)
func (*ContinuousVestingAccount) String ¶
func (m *ContinuousVestingAccount) String() string
func (*ContinuousVestingAccount) TrackDelegation ¶
func (cva *ContinuousVestingAccount) TrackDelegation(blockTime time.Time, balance, amount sdk.Coins)
TrackDelegation tracks a desired delegation amount by setting the appropriate values for the amount of delegated vesting, delegated free, and reducing the overall amount of base coins.
func (*ContinuousVestingAccount) Unmarshal ¶
func (m *ContinuousVestingAccount) Unmarshal(dAtA []byte) error
func (ContinuousVestingAccount) Validate ¶
func (cva ContinuousVestingAccount) Validate() error
Validate checks for errors on the account fields
func (*ContinuousVestingAccount) XXX_DiscardUnknown ¶
func (m *ContinuousVestingAccount) XXX_DiscardUnknown()
func (*ContinuousVestingAccount) XXX_Marshal ¶
func (m *ContinuousVestingAccount) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*ContinuousVestingAccount) XXX_Merge ¶
func (m *ContinuousVestingAccount) XXX_Merge(src proto.Message)
func (*ContinuousVestingAccount) XXX_Size ¶
func (m *ContinuousVestingAccount) XXX_Size() int
func (*ContinuousVestingAccount) XXX_Unmarshal ¶
func (m *ContinuousVestingAccount) XXX_Unmarshal(b []byte) error
type DelayedVestingAccount ¶
type DelayedVestingAccount struct {
*BaseVestingAccount `` /* 147-byte string literal not displayed */
}
DelayedVestingAccount implements the VestingAccount interface. It vests all coins after a specific time, but non prior. In other words, it keeps them locked until a specified time.
func NewDelayedVestingAccount ¶
func NewDelayedVestingAccount(baseAcc *authtypes.BaseAccount, originalVesting sdk.Coins, endTime int64) (*DelayedVestingAccount, error)
NewDelayedVestingAccount returns a DelayedVestingAccount
func NewDelayedVestingAccountRaw ¶
func NewDelayedVestingAccountRaw(bva *BaseVestingAccount) *DelayedVestingAccount
NewDelayedVestingAccountRaw creates a new DelayedVestingAccount object from BaseVestingAccount
func (*DelayedVestingAccount) Descriptor ¶
func (*DelayedVestingAccount) Descriptor() ([]byte, []int)
func (DelayedVestingAccount) GetStartTime ¶
func (dva DelayedVestingAccount) GetStartTime() int64
GetStartTime returns zero since a delayed vesting account has no start time.
func (DelayedVestingAccount) GetVestedCoins ¶
func (dva DelayedVestingAccount) GetVestedCoins(blockTime time.Time) sdk.Coins
GetVestedCoins returns the total amount of vested coins for a delayed vesting account. All coins are only vested once the schedule has elapsed.
func (DelayedVestingAccount) GetVestingCoins ¶
func (dva DelayedVestingAccount) GetVestingCoins(blockTime time.Time) sdk.Coins
GetVestingCoins returns the total number of vesting coins for a delayed vesting account.
func (DelayedVestingAccount) LockedCoins ¶
func (dva DelayedVestingAccount) LockedCoins(blockTime time.Time) sdk.Coins
LockedCoins returns the set of coins that are not spendable (i.e. locked), defined as the vesting coins that are not delegated.
func (*DelayedVestingAccount) Marshal ¶
func (m *DelayedVestingAccount) Marshal() (dAtA []byte, err error)
func (*DelayedVestingAccount) MarshalTo ¶
func (m *DelayedVestingAccount) MarshalTo(dAtA []byte) (int, error)
func (*DelayedVestingAccount) MarshalToSizedBuffer ¶
func (m *DelayedVestingAccount) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*DelayedVestingAccount) ProtoMessage ¶
func (*DelayedVestingAccount) ProtoMessage()
func (*DelayedVestingAccount) Reset ¶
func (m *DelayedVestingAccount) Reset()
func (*DelayedVestingAccount) Size ¶
func (m *DelayedVestingAccount) Size() (n int)
func (*DelayedVestingAccount) String ¶
func (m *DelayedVestingAccount) String() string
func (*DelayedVestingAccount) TrackDelegation ¶
func (dva *DelayedVestingAccount) TrackDelegation(blockTime time.Time, balance, amount sdk.Coins)
TrackDelegation tracks a desired delegation amount by setting the appropriate values for the amount of delegated vesting, delegated free, and reducing the overall amount of base coins.
func (*DelayedVestingAccount) Unmarshal ¶
func (m *DelayedVestingAccount) Unmarshal(dAtA []byte) error
func (DelayedVestingAccount) Validate ¶
func (dva DelayedVestingAccount) Validate() error
Validate checks for errors on the account fields
func (*DelayedVestingAccount) XXX_DiscardUnknown ¶
func (m *DelayedVestingAccount) XXX_DiscardUnknown()
func (*DelayedVestingAccount) XXX_Marshal ¶
func (m *DelayedVestingAccount) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*DelayedVestingAccount) XXX_Merge ¶
func (m *DelayedVestingAccount) XXX_Merge(src proto.Message)
func (*DelayedVestingAccount) XXX_Size ¶
func (m *DelayedVestingAccount) XXX_Size() int
func (*DelayedVestingAccount) XXX_Unmarshal ¶
func (m *DelayedVestingAccount) XXX_Unmarshal(b []byte) error
type Period ¶
type Period struct { // Period duration in seconds. Length int64 `protobuf:"varint,1,opt,name=length,proto3" json:"length,omitempty"` Amount github_com_cosmos_cosmos_sdk_types.Coins `protobuf:"bytes,2,rep,name=amount,proto3,castrepeated=github.com/cosmos/cosmos-sdk/types.Coins" json:"amount"` }
Period defines a length of time and amount of coins that will vest.
func (*Period) Descriptor ¶
func (*Period) GetAmount ¶
func (m *Period) GetAmount() github_com_cosmos_cosmos_sdk_types.Coins
func (*Period) MarshalToSizedBuffer ¶
func (*Period) ProtoMessage ¶
func (*Period) ProtoMessage()
func (*Period) XXX_DiscardUnknown ¶
func (m *Period) XXX_DiscardUnknown()
func (*Period) XXX_Marshal ¶
func (*Period) XXX_Unmarshal ¶
type PeriodicVestingAccount ¶
type PeriodicVestingAccount struct { *BaseVestingAccount `` /* 147-byte string literal not displayed */ StartTime int64 `protobuf:"varint,2,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"` VestingPeriods []Period `protobuf:"bytes,3,rep,name=vesting_periods,json=vestingPeriods,proto3" json:"vesting_periods"` }
PeriodicVestingAccount implements the VestingAccount interface. It periodically vests by unlocking coins during each specified period.
func NewPeriodicVestingAccount ¶
func NewPeriodicVestingAccount(baseAcc *authtypes.BaseAccount, originalVesting sdk.Coins, startTime int64, periods Periods) (*PeriodicVestingAccount, error)
NewPeriodicVestingAccount returns a new PeriodicVestingAccount
func NewPeriodicVestingAccountRaw ¶
func NewPeriodicVestingAccountRaw(bva *BaseVestingAccount, startTime int64, periods Periods) *PeriodicVestingAccount
NewPeriodicVestingAccountRaw creates a new PeriodicVestingAccount object from BaseVestingAccount
func (*PeriodicVestingAccount) Descriptor ¶
func (*PeriodicVestingAccount) Descriptor() ([]byte, []int)
func (PeriodicVestingAccount) GetStartTime ¶
func (pva PeriodicVestingAccount) GetStartTime() int64
GetStartTime returns the time when vesting starts for a periodic vesting account.
func (PeriodicVestingAccount) GetVestedCoins ¶
func (pva PeriodicVestingAccount) GetVestedCoins(blockTime time.Time) sdk.Coins
GetVestedCoins returns the total number of vested coins. If no coins are vested, nil is returned.
func (PeriodicVestingAccount) GetVestingCoins ¶
func (pva PeriodicVestingAccount) GetVestingCoins(blockTime time.Time) sdk.Coins
GetVestingCoins returns the total number of vesting coins. If no coins are vesting, nil is returned.
func (PeriodicVestingAccount) GetVestingPeriods ¶
func (pva PeriodicVestingAccount) GetVestingPeriods() Periods
GetVestingPeriods returns vesting periods associated with periodic vesting account.
func (PeriodicVestingAccount) LockedCoins ¶
func (pva PeriodicVestingAccount) LockedCoins(blockTime time.Time) sdk.Coins
LockedCoins returns the set of coins that are not spendable (i.e. locked), defined as the vesting coins that are not delegated.
func (*PeriodicVestingAccount) Marshal ¶
func (m *PeriodicVestingAccount) Marshal() (dAtA []byte, err error)
func (*PeriodicVestingAccount) MarshalTo ¶
func (m *PeriodicVestingAccount) MarshalTo(dAtA []byte) (int, error)
func (*PeriodicVestingAccount) MarshalToSizedBuffer ¶
func (m *PeriodicVestingAccount) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*PeriodicVestingAccount) ProtoMessage ¶
func (*PeriodicVestingAccount) ProtoMessage()
func (*PeriodicVestingAccount) Reset ¶
func (m *PeriodicVestingAccount) Reset()
func (*PeriodicVestingAccount) Size ¶
func (m *PeriodicVestingAccount) Size() (n int)
func (*PeriodicVestingAccount) String ¶
func (m *PeriodicVestingAccount) String() string
func (*PeriodicVestingAccount) TrackDelegation ¶
func (pva *PeriodicVestingAccount) TrackDelegation(blockTime time.Time, balance, amount sdk.Coins)
TrackDelegation tracks a desired delegation amount by setting the appropriate values for the amount of delegated vesting, delegated free, and reducing the overall amount of base coins.
func (*PeriodicVestingAccount) Unmarshal ¶
func (m *PeriodicVestingAccount) Unmarshal(dAtA []byte) error
func (PeriodicVestingAccount) Validate ¶
func (pva PeriodicVestingAccount) Validate() error
Validate checks for errors on the account fields
func (*PeriodicVestingAccount) XXX_DiscardUnknown ¶
func (m *PeriodicVestingAccount) XXX_DiscardUnknown()
func (*PeriodicVestingAccount) XXX_Marshal ¶
func (m *PeriodicVestingAccount) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*PeriodicVestingAccount) XXX_Merge ¶
func (m *PeriodicVestingAccount) XXX_Merge(src proto.Message)
func (*PeriodicVestingAccount) XXX_Size ¶
func (m *PeriodicVestingAccount) XXX_Size() int
func (*PeriodicVestingAccount) XXX_Unmarshal ¶
func (m *PeriodicVestingAccount) XXX_Unmarshal(b []byte) error
type Periods ¶
type Periods []Period
Periods stores all vesting periods passed as part of a PeriodicVestingAccount
func (Periods) TotalAmount ¶
TotalAmount returns the sum of coins for the period
func (Periods) TotalDuration ¶
TotalDuration returns the total duration of the period
func (Periods) TotalLength ¶
TotalLength return the total length in seconds for a period
type PermanentLockedAccount ¶
type PermanentLockedAccount struct {
*BaseVestingAccount `` /* 147-byte string literal not displayed */
}
PermanentLockedAccount implements the VestingAccount interface. It does not ever release coins, locking them indefinitely. Coins in this account can still be used for delegating and for governance votes even while locked.
Since: cosmos-sdk 0.43
func NewPermanentLockedAccount ¶
func NewPermanentLockedAccount(baseAcc *authtypes.BaseAccount, coins sdk.Coins) (*PermanentLockedAccount, error)
NewPermanentLockedAccount returns a PermanentLockedAccount
func (*PermanentLockedAccount) Descriptor ¶
func (*PermanentLockedAccount) Descriptor() ([]byte, []int)
func (PermanentLockedAccount) GetEndTime ¶
func (plva PermanentLockedAccount) GetEndTime() int64
GetEndTime returns a vesting account's end time, we return 0 to denote that a permanently locked vesting account has no end time.
func (PermanentLockedAccount) GetStartTime ¶
func (plva PermanentLockedAccount) GetStartTime() int64
GetStartTime returns zero since a permanent locked vesting account has no start time.
func (PermanentLockedAccount) GetVestedCoins ¶
func (plva PermanentLockedAccount) GetVestedCoins(_ time.Time) sdk.Coins
GetVestedCoins returns the total amount of vested coins for a permanent locked vesting account. All coins are only vested once the schedule has elapsed.
func (PermanentLockedAccount) GetVestingCoins ¶
func (plva PermanentLockedAccount) GetVestingCoins(_ time.Time) sdk.Coins
GetVestingCoins returns the total number of vesting coins for a permanent locked vesting account.
func (PermanentLockedAccount) LockedCoins ¶
func (plva PermanentLockedAccount) LockedCoins(_ time.Time) sdk.Coins
LockedCoins returns the set of coins that are not spendable (i.e. locked), defined as the vesting coins that are not delegated.
func (*PermanentLockedAccount) Marshal ¶
func (m *PermanentLockedAccount) Marshal() (dAtA []byte, err error)
func (*PermanentLockedAccount) MarshalTo ¶
func (m *PermanentLockedAccount) MarshalTo(dAtA []byte) (int, error)
func (*PermanentLockedAccount) MarshalToSizedBuffer ¶
func (m *PermanentLockedAccount) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*PermanentLockedAccount) ProtoMessage ¶
func (*PermanentLockedAccount) ProtoMessage()
func (*PermanentLockedAccount) Reset ¶
func (m *PermanentLockedAccount) Reset()
func (*PermanentLockedAccount) Size ¶
func (m *PermanentLockedAccount) Size() (n int)
func (*PermanentLockedAccount) String ¶
func (m *PermanentLockedAccount) String() string
func (*PermanentLockedAccount) TrackDelegation ¶
func (plva *PermanentLockedAccount) TrackDelegation(blockTime time.Time, balance, amount sdk.Coins)
TrackDelegation tracks a desired delegation amount by setting the appropriate values for the amount of delegated vesting, delegated free, and reducing the overall amount of base coins.
func (*PermanentLockedAccount) Unmarshal ¶
func (m *PermanentLockedAccount) Unmarshal(dAtA []byte) error
func (PermanentLockedAccount) Validate ¶
func (plva PermanentLockedAccount) Validate() error
Validate checks for errors on the account fields
func (*PermanentLockedAccount) XXX_DiscardUnknown ¶
func (m *PermanentLockedAccount) XXX_DiscardUnknown()
func (*PermanentLockedAccount) XXX_Marshal ¶
func (m *PermanentLockedAccount) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*PermanentLockedAccount) XXX_Merge ¶
func (m *PermanentLockedAccount) XXX_Merge(src proto.Message)
func (*PermanentLockedAccount) XXX_Size ¶
func (m *PermanentLockedAccount) XXX_Size() int
func (*PermanentLockedAccount) XXX_Unmarshal ¶
func (m *PermanentLockedAccount) XXX_Unmarshal(b []byte) error