Documentation ¶
Index ¶
- Constants
- Variables
- func ErrInputOutputMismatch(codespace sdk.CodespaceType) sdk.Error
- func ErrNoInputs(codespace sdk.CodespaceType) sdk.Error
- func ErrNoOutputs(codespace sdk.CodespaceType) sdk.Error
- func ErrSendDisabled(codespace sdk.CodespaceType) sdk.Error
- func InitGenesis(ctx sdk.Context, keeper Keeper, data GenesisState)
- func NewHandler(k Keeper) sdk.Handler
- func ParamKeyTable() params.KeyTable
- func RegisterCodec(cdc *codec.Codec)
- func ValidateGenesis(data GenesisState) error
- func ValidateInputsOutputs(inputs []Input, outputs []Output) sdk.Error
- type BaseKeeper
- func (keeper BaseKeeper) AddCoins(ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins) (sdk.Coins, sdk.Tags, sdk.Error)
- func (keeper BaseKeeper) DelegateCoins(ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins) (sdk.Tags, sdk.Error)
- func (keeper BaseKeeper) InputOutputCoins(ctx sdk.Context, inputs []Input, outputs []Output) (sdk.Tags, sdk.Error)
- func (keeper BaseKeeper) SetCoins(ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins) sdk.Error
- func (keeper BaseKeeper) SubtractCoins(ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins) (sdk.Coins, sdk.Tags, sdk.Error)
- func (keeper BaseKeeper) UndelegateCoins(ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins) (sdk.Tags, sdk.Error)
- type BaseSendKeeper
- type BaseViewKeeper
- type GenesisState
- type Input
- type Keeper
- type MsgMultiSend
- type MsgSend
- type Output
- type SendKeeper
- type ViewKeeper
Constants ¶
const ( DefaultCodespace sdk.CodespaceType = "bank" CodeSendDisabled sdk.CodeType = 101 CodeInvalidInputsOutputs sdk.CodeType = 102 )
Bank errors reserve 100 ~ 199.
const ( // DefaultParamspace for params keeper DefaultParamspace = "bank" // DefaultSendEnabled enabled DefaultSendEnabled = true )
const RouterKey = "bank"
RouterKey is they name of the bank module
Variables ¶
var ( TagActionUndelegateCoins = []byte("undelegateCoins") TagActionDelegateCoins = []byte("delegateCoins") TagKeyRecipient = "recipient" TagKeySender = "sender" )
Tag keys and values
var ParamStoreKeySendEnabled = []byte("sendenabled")
ParamStoreKeySendEnabled is store's key for SendEnabled
Functions ¶
func ErrInputOutputMismatch ¶ added in v0.31.0
func ErrInputOutputMismatch(codespace sdk.CodespaceType) sdk.Error
ErrInputOutputMismatch is an error
func ErrNoOutputs ¶
func ErrNoOutputs(codespace sdk.CodespaceType) sdk.Error
ErrNoOutputs is an error
func ErrSendDisabled ¶ added in v0.31.0
func ErrSendDisabled(codespace sdk.CodespaceType) sdk.Error
ErrSendDisabled is an error
func InitGenesis ¶ added in v0.31.0
func InitGenesis(ctx sdk.Context, keeper Keeper, data GenesisState)
InitGenesis sets distribution information for genesis.
func NewHandler ¶
NewHandler returns a handler for "bank" type messages.
func ParamKeyTable ¶ added in v0.31.0
ParamKeyTable type declaration for parameters
func RegisterCodec ¶ added in v0.25.0
Register concrete types on codec codec
func ValidateGenesis ¶ added in v0.31.0
func ValidateGenesis(data GenesisState) error
ValidateGenesis performs basic validation of bank genesis data returning an error for any failed validation criteria.
Types ¶
type BaseKeeper ¶ added in v0.25.0
type BaseKeeper struct { BaseSendKeeper // contains filtered or unexported fields }
BaseKeeper manages transfers between accounts. It implements the Keeper interface.
func NewBaseKeeper ¶ added in v0.25.0
func NewBaseKeeper(ak auth.AccountKeeper, paramSpace params.Subspace, codespace sdk.CodespaceType) BaseKeeper
NewBaseKeeper returns a new BaseKeeper
func (BaseKeeper) AddCoins ¶ added in v0.25.0
func (keeper BaseKeeper) AddCoins( ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins, ) (sdk.Coins, sdk.Tags, sdk.Error)
AddCoins adds amt to the coins at the addr.
func (BaseKeeper) DelegateCoins ¶ added in v0.30.0
func (keeper BaseKeeper) DelegateCoins( ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins, ) (sdk.Tags, sdk.Error)
DelegateCoins performs delegation by deducting amt coins from an account with address addr. For vesting accounts, delegations amounts are tracked for both vesting and vested coins.
func (BaseKeeper) InputOutputCoins ¶ added in v0.25.0
func (keeper BaseKeeper) InputOutputCoins( ctx sdk.Context, inputs []Input, outputs []Output, ) (sdk.Tags, sdk.Error)
InputOutputCoins handles a list of inputs and outputs
func (BaseKeeper) SetCoins ¶ added in v0.25.0
func (keeper BaseKeeper) SetCoins( ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins, ) sdk.Error
SetCoins sets the coins at the addr.
func (BaseKeeper) SubtractCoins ¶ added in v0.25.0
func (keeper BaseKeeper) SubtractCoins( ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins, ) (sdk.Coins, sdk.Tags, sdk.Error)
SubtractCoins subtracts amt from the coins at the addr.
func (BaseKeeper) UndelegateCoins ¶ added in v0.30.0
func (keeper BaseKeeper) UndelegateCoins( ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins, ) (sdk.Tags, sdk.Error)
UndelegateCoins performs undelegation by crediting amt coins to an account with address addr. For vesting accounts, undelegation amounts are tracked for both vesting and vested coins. If any of the undelegation amounts are negative, an error is returned.
type BaseSendKeeper ¶ added in v0.25.0
type BaseSendKeeper struct { BaseViewKeeper // contains filtered or unexported fields }
BaseSendKeeper only allows transfers between accounts without the possibility of creating coins. It implements the SendKeeper interface.
func NewBaseSendKeeper ¶ added in v0.25.0
func NewBaseSendKeeper(ak auth.AccountKeeper, paramSpace params.Subspace, codespace sdk.CodespaceType) BaseSendKeeper
NewBaseSendKeeper returns a new BaseSendKeeper.
func (BaseSendKeeper) GetSendEnabled ¶ added in v0.31.0
func (keeper BaseSendKeeper) GetSendEnabled(ctx sdk.Context) bool
GetSendEnabled returns the current SendEnabled nolint: errcheck
func (BaseSendKeeper) SendCoins ¶ added in v0.25.0
func (keeper BaseSendKeeper) SendCoins( ctx sdk.Context, fromAddr sdk.AccAddress, toAddr sdk.AccAddress, amt sdk.Coins, ) (sdk.Tags, sdk.Error)
SendCoins moves coins from one account to another
func (BaseSendKeeper) SetSendEnabled ¶ added in v0.31.0
func (keeper BaseSendKeeper) SetSendEnabled(ctx sdk.Context, enabled bool)
SetSendEnabled sets the send enabled
type BaseViewKeeper ¶ added in v0.25.0
type BaseViewKeeper struct {
// contains filtered or unexported fields
}
BaseViewKeeper implements a read only keeper implementation of ViewKeeper.
func NewBaseViewKeeper ¶ added in v0.25.0
func NewBaseViewKeeper(ak auth.AccountKeeper, codespace sdk.CodespaceType) BaseViewKeeper
NewBaseViewKeeper returns a new BaseViewKeeper.
func (BaseViewKeeper) Codespace ¶ added in v0.31.0
func (keeper BaseViewKeeper) Codespace() sdk.CodespaceType
Codespace returns the keeper's codespace.
func (BaseViewKeeper) GetCoins ¶ added in v0.25.0
func (keeper BaseViewKeeper) GetCoins(ctx sdk.Context, addr sdk.AccAddress) sdk.Coins
GetCoins returns the coins at the addr.
func (BaseViewKeeper) HasCoins ¶ added in v0.25.0
func (keeper BaseViewKeeper) HasCoins(ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins) bool
HasCoins returns whether or not an account has at least amt coins.
type GenesisState ¶ added in v0.31.0
type GenesisState struct {
SendEnabled bool `json:"send_enabled"`
}
GenesisState is the bank state that must be provided at genesis.
func DefaultGenesisState ¶ added in v0.31.0
func DefaultGenesisState() GenesisState
DefaultGenesisState returns a default genesis state
func ExportGenesis ¶ added in v0.31.0
func ExportGenesis(ctx sdk.Context, keeper Keeper) GenesisState
ExportGenesis returns a GenesisState for a given context and keeper.
func NewGenesisState ¶ added in v0.31.0
func NewGenesisState(sendEnabled bool) GenesisState
NewGenesisState creates a new genesis state.
type Input ¶
type Input struct { Address sdk.AccAddress `json:"address"` Coins sdk.Coins `json:"coins"` }
Input models transaction input
func NewInput ¶
func NewInput(addr sdk.AccAddress, coins sdk.Coins) Input
NewInput - create a transaction input, used with MsgMultiSend
func (Input) ValidateBasic ¶
ValidateBasic - validate transaction input
type Keeper ¶ added in v0.16.0
type Keeper interface { SendKeeper SetCoins(ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins) sdk.Error SubtractCoins(ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins) (sdk.Coins, sdk.Tags, sdk.Error) AddCoins(ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins) (sdk.Coins, sdk.Tags, sdk.Error) InputOutputCoins(ctx sdk.Context, inputs []Input, outputs []Output) (sdk.Tags, sdk.Error) DelegateCoins(ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins) (sdk.Tags, sdk.Error) UndelegateCoins(ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins) (sdk.Tags, sdk.Error) }
Keeper defines a module interface that facilitates the transfer of coins between accounts.
type MsgMultiSend ¶ added in v0.31.0
MsgMultiSend - high level transaction of the coin module
func NewMsgMultiSend ¶ added in v0.31.0
func NewMsgMultiSend(in []Input, out []Output) MsgMultiSend
NewMsgMultiSend - construct arbitrary multi-in, multi-out send msg.
func (MsgMultiSend) GetSignBytes ¶ added in v0.31.0
func (msg MsgMultiSend) GetSignBytes() []byte
GetSignBytes Implements Msg.
func (MsgMultiSend) GetSigners ¶ added in v0.31.0
func (msg MsgMultiSend) GetSigners() []sdk.AccAddress
GetSigners Implements Msg.
func (MsgMultiSend) Route ¶ added in v0.31.0
func (msg MsgMultiSend) Route() string
Route Implements Msg
func (MsgMultiSend) Type ¶ added in v0.31.0
func (msg MsgMultiSend) Type() string
Type Implements Msg
func (MsgMultiSend) ValidateBasic ¶ added in v0.31.0
func (msg MsgMultiSend) ValidateBasic() sdk.Error
ValidateBasic Implements Msg.
type MsgSend ¶ added in v0.16.0
type MsgSend struct { FromAddress sdk.AccAddress `json:"from_address"` ToAddress sdk.AccAddress `json:"to_address"` Amount sdk.Coins `json:"amount"` }
MsgSend - high level transaction of the coin module
func NewMsgSend ¶ added in v0.16.0
func NewMsgSend(fromAddr, toAddr sdk.AccAddress, amount sdk.Coins) MsgSend
NewMsgSend - construct arbitrary multi-in, multi-out send msg.
func (MsgSend) GetSignBytes ¶ added in v0.16.0
GetSignBytes Implements Msg.
func (MsgSend) GetSigners ¶ added in v0.16.0
func (msg MsgSend) GetSigners() []sdk.AccAddress
GetSigners Implements Msg.
func (MsgSend) ValidateBasic ¶ added in v0.16.0
ValidateBasic Implements Msg.
type Output ¶
type Output struct { Address sdk.AccAddress `json:"address"` Coins sdk.Coins `json:"coins"` }
Output models transaction outputs
func NewOutput ¶
func NewOutput(addr sdk.AccAddress, coins sdk.Coins) Output
NewOutput - create a transaction output, used with MsgMultiSend
func (Output) ValidateBasic ¶
ValidateBasic - validate transaction output
type SendKeeper ¶ added in v0.16.0
type SendKeeper interface { ViewKeeper SendCoins(ctx sdk.Context, fromAddr sdk.AccAddress, toAddr sdk.AccAddress, amt sdk.Coins) (sdk.Tags, sdk.Error) GetSendEnabled(ctx sdk.Context) bool SetSendEnabled(ctx sdk.Context, enabled bool) }
SendKeeper defines a module interface that facilitates the transfer of coins between accounts without the possibility of creating coins.
type ViewKeeper ¶ added in v0.16.0
type ViewKeeper interface { GetCoins(ctx sdk.Context, addr sdk.AccAddress) sdk.Coins HasCoins(ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins) bool Codespace() sdk.CodespaceType }
ViewKeeper defines a module interface that facilitates read only access to account balances.