types

package
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 5, 2021 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// module name
	ModuleName = "coin"
	StoreKey   = ModuleName

	ActionTransferTo = "transferTo"
)
View Source
const Codespace = ModuleName
View Source
const RequestGetsLimit = 100
View Source
const RouterKey = ModuleName

Variables

View Source
var (
	ErrNoInputs                    = sdkerrors.Register(Codespace, 1, "no inputs to send transaction")
	ErrNoOutputs                   = sdkerrors.Register(Codespace, 2, "no outputs to send transaction")
	ErrInputOutputMismatch         = sdkerrors.Register(Codespace, 3, "sum inputs != sum outputs")
	ErrSendDisabled                = sdkerrors.Register(Codespace, 4, "send transactions are disabled")
	ErrCanNotTransferToBlacklisted = sdkerrors.Register(Codespace, 5, "Cannot transfer to safety box addresses")
	ErrRequestGetsLimit            = sdkerrors.Register(Codespace, 6, "the gets should be limited")
)
View Source
var (
	EventTypeTransfer = "transfer"

	AttributeKeyRecipient = "recipient"
	AttributeKeySender    = "sender"

	AttributeValueCategory = ModuleName
)

Coin module event types

View Source
var (
	BlacklistKeyPrefix = []byte{0x00}
)
View Source
var ModuleCdc *codec.Codec

Functions

func BlacklistKey

func BlacklistKey(addr sdk.AccAddress, action string) []byte

func RegisterCodec

func RegisterCodec(cdc *codec.Codec)

func ValidateInputsOutputs

func ValidateInputsOutputs(inputs []Input, outputs []Output) error

ValidateInputsOutputs validates that each respective input and output is valid and that the sum of inputs is equal to the sum of outputs.

func ValidateReg

func ValidateReg(symbol string, reg *regexp.Regexp) error

func ValidateSymbolReserved

func ValidateSymbolReserved(symbol string) error

Types

type AccountKeeper

type AccountKeeper interface {
	NewAccountWithAddress(ctx sdk.Context, addr sdk.AccAddress) exported.Account

	GetAccount(ctx sdk.Context, addr sdk.AccAddress) exported.Account
	GetAllAccounts(ctx sdk.Context) []exported.Account
	SetAccount(ctx sdk.Context, acc exported.Account)

	IterateAccounts(ctx sdk.Context, process func(exported.Account) bool)
}

AccountKeeper defines the account contract that must be fulfilled when

type BankKeeper

type BankKeeper interface {
	GetCoins(ctx sdk.Context, addr sdk.AccAddress) sdk.Coins
	HasCoins(ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins) bool
	SubtractCoins(ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins) (sdk.Coins, error)
	AddCoins(ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins) (sdk.Coins, error)
	BlacklistedAddr(creator sdk.AccAddress) bool
}

BankKeeper defines the expected bank keeper (noalias)

type Input

type Input struct {
	Address sdk.AccAddress `json:"address" yaml:"address"`
	Coins   sdk.Coins      `json:"coins" yaml:"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

func (in Input) ValidateBasic() error

ValidateBasic - validate transaction input

type MsgMultiSend

type MsgMultiSend struct {
	Inputs  []Input  `json:"inputs" yaml:"inputs"`
	Outputs []Output `json:"outputs" yaml:"outputs"`
}

MsgMultiSend - high level transaction of the coin module

func NewMsgMultiSend

func NewMsgMultiSend(in []Input, out []Output) MsgMultiSend

NewMsgMultiSend - construct arbitrary multi-in, multi-out send msg.

func (MsgMultiSend) GetSignBytes

func (msg MsgMultiSend) GetSignBytes() []byte

GetSignBytes Implements Msg.

func (MsgMultiSend) GetSigners

func (msg MsgMultiSend) GetSigners() []sdk.AccAddress

GetSigners Implements Msg.

func (MsgMultiSend) Route

func (msg MsgMultiSend) Route() string

Route Implements Msg

func (MsgMultiSend) Type

func (msg MsgMultiSend) Type() string

Type Implements Msg

func (MsgMultiSend) ValidateBasic

func (msg MsgMultiSend) ValidateBasic() error

ValidateBasic Implements Msg.

type MsgSend

type MsgSend struct {
	From   sdk.AccAddress `json:"from"`
	To     sdk.AccAddress `json:"to"`
	Amount sdk.Coins      `json:"amount"`
}

MsgSend - high level transaction of the coin module

func NewMsgSend

func NewMsgSend(fromAddr, toAddr sdk.AccAddress, amount sdk.Coins) MsgSend

NewMsgSend - construct arbitrary multi-in, multi-out send msg.

func (MsgSend) GetSignBytes

func (msg MsgSend) GetSignBytes() []byte

GetSignBytes Implements Msg.

func (MsgSend) GetSigners

func (msg MsgSend) GetSigners() []sdk.AccAddress

GetSigners Implements Msg.

func (MsgSend) Route

func (msg MsgSend) Route() string

Route Implements Msg.

func (MsgSend) Type

func (msg MsgSend) Type() string

Type Implements Msg.

func (MsgSend) ValidateBasic

func (msg MsgSend) ValidateBasic() error

ValidateBasic Implements Msg.

type Output

type Output struct {
	Address sdk.AccAddress `json:"address" yaml:"address"`
	Coins   sdk.Coins      `json:"coins" yaml:"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

func (out Output) ValidateBasic() error

ValidateBasic - validate transaction output

type QueryBalanceParams

type QueryBalanceParams struct {
	Address sdk.AccAddress
	Denom   string
}

QueryBalanceOfParams defines the params for querying an account balance.

func NewQueryBalanceParams

func NewQueryBalanceParams(addr sdk.AccAddress, denom string) QueryBalanceParams

NewQueryBalanceOfParams creates a new instance of QueryBalanceParams.

type QueryBulkBalancesParams

type QueryBulkBalancesParams struct {
	Addresses []sdk.AccAddress `json:"addresses"`
}

func NewQueryBulkBalanceParams

func NewQueryBulkBalanceParams(addrs []sdk.AccAddress) QueryBulkBalancesParams

type QueryBulkBalancesResult

type QueryBulkBalancesResult struct {
	Address sdk.AccAddress `json:"address"`
	Coins   sdk.Coins      `json:"coins"`
}

func NewQueryBulkBalancesResult

func NewQueryBulkBalancesResult(address sdk.AccAddress, coins sdk.Coins) QueryBulkBalancesResult

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL