types

package
v1.0.2 Latest Latest
Warning

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

Go to latest
Published: Apr 5, 2022 License: Apache-2.0 Imports: 49 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// number of decimal places
	Precision = 18

	// bytes required to represent the above precision
	// Ceiling[Log2[999 999 999 999 999 999]]
	DecimalPrecisionBits = 60
)
View Source
const (
	BaseDenom = "uplugcn"
)
View Source
const SortableTimeFormat = "2006-01-02T15:04:05.000000000"

Slight modification of the RFC3339Nano but it right pads all zeros and drops the time zone info

Variables

View Source
var (
	ErrInvalidLengthAbci        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowAbci          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroupAbci = fmt.Errorf("proto: unexpected end of group")
)
View Source
var (
	ErrInvalidLengthCoin        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowCoin          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroupCoin = fmt.Errorf("proto: unexpected end of group")
)
View Source
var (
	ErrEmptyDecimalStr      = errors.New("decimal string cannot be empty")
	ErrInvalidDecimalLength = errors.New("invalid decimal length")
	ErrInvalidDecimalStr    = errors.New("invalid decimal string")
)

Decimal errors

View Source
var (
	TypeKey EventKey = "tm.event"

	EventTypeMessage         = "message"
	EventTypeCreateContext   = "create_context"
	EventTypeResponseService = "respond_service"
	EventTypeSubmitProposal  = "submit_proposal"

	AttributeKeyAction = "action"
	AttributeKeyModule = "module"
	AttributeKeySender = "sender"
	AttributeKeyAmount = "amount"

	TxValue EventValue = "Tx"
)

Common event types and attribute keys

View Source
var MaxSortableDec = OneDec().Quo(SmallestDec())

MaxSortableDec is the largest Dec that can be passed into SortableDecBytes() Its negative form is the least Dec that can be passed in.

View Source
var (
	PubKeyFromBytes = cryptoAmino.PubKeyFromBytes
)

Functions

func AccAddressFromBech32

func AccAddressFromBech32(address string) (AccAddress, Error)

Return by address accaddress

func Bech32ifyPubKey

func Bech32ifyPubKey(pkt Bech32PubKeyType, pubkey TmPubKey) (string, error)

Bech32ifyPubKey returns a Bech32 encoded string containing the appropriate prefix based on the key type provided for a given PublicKey.

func BigEndianToUint64

func BigEndianToUint64(bz []byte) uint64

BigEndianToUint64 returns an uint64 from big endian encoded bytes. If encoding is empty, zero is returned.

func CatchPanic

func CatchPanic(fn func(errMsg string))

func Cond

func Cond(key EventKey) *condition

Cond return a condition object with a key

func CopyBytes

func CopyBytes(bz []byte) (ret []byte)

copy bytes

func DecEq

func DecEq(t *testing.T, exp, got Dec) (*testing.T, bool, string, string, string)

intended to be used with require/assert: require.True(DecEq(...))

func DecsEqual

func DecsEqual(d1s, d2s []Dec) bool

test if two decimal arrays are equal

func FormatTimeBytes

func FormatTimeBytes(t time.Time) []byte

Formats a time.Time into a []byte that can be sorted

func GetFromBech32

func GetFromBech32(bech32str, prefix string) ([]byte, error)

func HexStringFrom

func HexStringFrom(bz []byte) string

func IntEq

func IntEq(t *testing.T, exp, got Int) (*testing.T, bool, string, string, string)

intended to be used with require/assert: require.True(IntEq(...))

func MarkEventsToIndex

func MarkEventsToIndex(events []abci.Event, indexSet map[string]struct{}) []abci.Event

MarkEventsToIndex returns the set of ABCI events, where each event's attribute has it's index value marked based on the provided set of events to index.

func MustSortJSON

func MustSortJSON(toSortJSON []byte) []byte

MustSortJSON is like SortJSON but panic if an error occurs, e.g., if the passed JSON isn't valid.

func NewCond

func NewCond(typ, attrKey string) *condition

NewCond return a condition object with a complete event type and attrKey

func ParseTimeBytes

func ParseTimeBytes(bz []byte) (time.Time, error)

Parses a []byte encoded using FormatTimeKey back into a time.Time

func SortJSON

func SortJSON(toSortJSON []byte) ([]byte, error)

SortedJSON takes any JSON and returns it sorted by keys. Also, all white-spaces are removed. This method can be used to canonicalize JSON to be returned by GetSignBytes, e.g. for the ledger integration. If the passed JSON isn't valid it will return an error.

func SortableDecBytes

func SortableDecBytes(dec Dec) []byte

SortableDecBytes returns a byte slice representation of a Dec that can be sorted. Left and right pads with 0s so there are 18 digits to left and right of the decimal point. For this reason, there is a maximum and minimum value for this, enforced by ValidSortableDec.

func Uint64ToBigEndian

func Uint64ToBigEndian(i uint64) []byte

Uint64ToBigEndian - marshals uint64 to a bigendian byte slice so it can be sorted

func ValAddressFromBech32

func ValAddressFromBech32(address string) (ValAddress, Error)

func ValidSortableDec

func ValidSortableDec(dec Dec) bool

ValidSortableDec ensures that a Dec is within the sortable bounds, a Dec can't have a precision of less than 10^-18. Max sortable decimal was set to the reciprocal of SmallestDec.

func ValidateDenom

func ValidateDenom(denom string) error

Judge balance

Types

type ABCIClient

type ABCIClient = tmclient.ABCIClient

type ABCIMessageLog

type ABCIMessageLog struct {
	MsgIndex uint32 `protobuf:"varint,1,opt,name=msg_index,json=msgIndex,proto3" json:"msg_index,omitempty"`
	Log      string `protobuf:"bytes,2,opt,name=log,proto3" json:"log,omitempty"`
	// Events contains a slice of Event objects that were emitted during some
	// execution.
	Events StringEvents `protobuf:"bytes,3,rep,name=events,proto3,castrepeated=StringEvents" json:"events"`
}

ABCIMessageLog defines a structure containing an indexed tx ABCI message log.

func NewABCIMessageLog

func NewABCIMessageLog(i uint32, log string, events Events) ABCIMessageLog

func (*ABCIMessageLog) Descriptor

func (*ABCIMessageLog) Descriptor() ([]byte, []int)

func (*ABCIMessageLog) GetEvents

func (m *ABCIMessageLog) GetEvents() StringEvents

func (*ABCIMessageLog) GetLog

func (m *ABCIMessageLog) GetLog() string

func (*ABCIMessageLog) GetMsgIndex

func (m *ABCIMessageLog) GetMsgIndex() uint32

func (*ABCIMessageLog) Marshal

func (m *ABCIMessageLog) Marshal() (dAtA []byte, err error)

func (*ABCIMessageLog) MarshalTo

func (m *ABCIMessageLog) MarshalTo(dAtA []byte) (int, error)

func (*ABCIMessageLog) MarshalToSizedBuffer

func (m *ABCIMessageLog) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ABCIMessageLog) ProtoMessage

func (*ABCIMessageLog) ProtoMessage()

func (*ABCIMessageLog) Reset

func (m *ABCIMessageLog) Reset()

func (*ABCIMessageLog) Size

func (m *ABCIMessageLog) Size() (n int)

func (*ABCIMessageLog) String

func (this *ABCIMessageLog) String() string

func (*ABCIMessageLog) Unmarshal

func (m *ABCIMessageLog) Unmarshal(dAtA []byte) error

func (*ABCIMessageLog) XXX_DiscardUnknown

func (m *ABCIMessageLog) XXX_DiscardUnknown()

func (*ABCIMessageLog) XXX_Marshal

func (m *ABCIMessageLog) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ABCIMessageLog) XXX_Merge

func (m *ABCIMessageLog) XXX_Merge(src proto.Message)

func (*ABCIMessageLog) XXX_Size

func (m *ABCIMessageLog) XXX_Size() int

func (*ABCIMessageLog) XXX_Unmarshal

func (m *ABCIMessageLog) XXX_Unmarshal(b []byte) error

type ABCIMessageLogs

type ABCIMessageLogs []ABCIMessageLog

ABCIMessageLogs represents a slice of ABCIMessageLog.

func ParseABCILogs

func ParseABCILogs(logs string) (res ABCIMessageLogs, err error)

ParseABCILogs attempts to parse a stringified ABCI tx log into a slice of ABCIMessageLog types. It returns an error upon JSON decoding failure.

func (ABCIMessageLogs) String

func (logs ABCIMessageLogs) String() (str string)

String implements the fmt.Stringer interface for the ABCIMessageLogs type.

type ABCIResponses

type ABCIResponses struct {
	DeliverTx  []TxResult
	EndBlock   ResultEndBlock
	BeginBlock ResultBeginBlock
}

type AccAddress

type AccAddress []byte

Bech32 Address

func MustAccAddressFromBech32

func MustAccAddressFromBech32(address string) AccAddress

Get by address AccAddress

func (AccAddress) Bytes

func (aa AccAddress) Bytes() []byte

Returns the original byte

func (AccAddress) Empty

func (aa AccAddress) Empty() bool

Determine whether it is an empty address

func (AccAddress) Equals

func (aa AccAddress) Equals(aa2 AccAddress) bool

Compare whether the two addresses are the same

func (AccAddress) Marshal

func (aa AccAddress) Marshal() ([]byte, error)

Marshal returns the raw address bytes. It is needed for protobuf compatibility.

func (AccAddress) MarshalJSON

func (aa AccAddress) MarshalJSON() ([]byte, error)

MarshalJSON marshals to JSON using Bech32.

func (AccAddress) String

func (aa AccAddress) String() string

return string address

func (*AccAddress) Unmarshal

func (aa *AccAddress) Unmarshal(data []byte) error

Unmarshal sets the address to the given data. It is needed for protobuf compatibility.

func (*AccAddress) UnmarshalJSON

func (aa *AccAddress) UnmarshalJSON(data []byte) error

UnmarshalJSON unmarshals from JSON assuming Bech32 encoding.

type AccountQuery

type AccountQuery interface {
	QueryAccount(address string, clientCtx Context) (BaseAccount, Error)
	QueryAddress(name, password string) (AccAddress, Error)
}

type AddrPrefixCfg

type AddrPrefixCfg struct {
	// contains filtered or unexported fields
}

func GetAddrPrefixCfg

func GetAddrPrefixCfg() *AddrPrefixCfg

GetAddrPrefixCfg returns the config instance for the corresponding Network type

func (*AddrPrefixCfg) GetBech32AccountAddrPrefix

func (config *AddrPrefixCfg) GetBech32AccountAddrPrefix() string

GetBech32AccountAddrPrefix returns the Bech32 prefix for account address

func (*AddrPrefixCfg) GetBech32AccountPubPrefix

func (config *AddrPrefixCfg) GetBech32AccountPubPrefix() string

GetBech32AccountPubPrefix returns the Bech32 prefix for account public key

func (*AddrPrefixCfg) GetBech32ConsensusAddrPrefix

func (config *AddrPrefixCfg) GetBech32ConsensusAddrPrefix() string

GetBech32ConsensusAddrPrefix returns the Bech32 prefix for consensus node address

func (*AddrPrefixCfg) GetBech32ConsensusPubPrefix

func (config *AddrPrefixCfg) GetBech32ConsensusPubPrefix() string

GetBech32ConsensusPubPrefix returns the Bech32 prefix for consensus node public key

func (*AddrPrefixCfg) GetBech32ValidatorAddrPrefix

func (config *AddrPrefixCfg) GetBech32ValidatorAddrPrefix() string

GetBech32ValidatorAddrPrefix returns the Bech32 prefix for validator address

func (*AddrPrefixCfg) GetBech32ValidatorPubPrefix

func (config *AddrPrefixCfg) GetBech32ValidatorPubPrefix() string

GetBech32ValidatorPubPrefix returns the Bech32 prefix for validator public key

type Attribute

type Attribute struct {
	Key   string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
}

Attribute defines an attribute wrapper where the key and value are strings instead of raw bytes.

func NewAttribute

func NewAttribute(k, v string) Attribute

NewAttribute returns a new key/value Attribute object.

func (*Attribute) Descriptor

func (*Attribute) Descriptor() ([]byte, []int)

func (*Attribute) GetKey

func (m *Attribute) GetKey() string

func (*Attribute) GetValue

func (m *Attribute) GetValue() string

func (*Attribute) Marshal

func (m *Attribute) Marshal() (dAtA []byte, err error)

func (*Attribute) MarshalTo

func (m *Attribute) MarshalTo(dAtA []byte) (int, error)

func (*Attribute) MarshalToSizedBuffer

func (m *Attribute) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*Attribute) ProtoMessage

func (*Attribute) ProtoMessage()

func (*Attribute) Reset

func (m *Attribute) Reset()

func (*Attribute) Size

func (m *Attribute) Size() (n int)

func (Attribute) String

func (a Attribute) String() string

func (Attribute) ToKVPair

func (a Attribute) ToKVPair() abci.EventAttribute

ToKVPair converts an Attribute object into a Tendermint key/value pair.

func (*Attribute) Unmarshal

func (m *Attribute) Unmarshal(dAtA []byte) error

func (*Attribute) XXX_DiscardUnknown

func (m *Attribute) XXX_DiscardUnknown()

func (*Attribute) XXX_Marshal

func (m *Attribute) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Attribute) XXX_Merge

func (m *Attribute) XXX_Merge(src proto.Message)

func (*Attribute) XXX_Size

func (m *Attribute) XXX_Size() int

func (*Attribute) XXX_Unmarshal

func (m *Attribute) XXX_Unmarshal(b []byte) error

type Attributes

type Attributes []Attribute

func (Attributes) GetValue

func (a Attributes) GetValue(key string) string

func (Attributes) GetValues

func (a Attributes) GetValues(key string) (values []string)

func (Attributes) String

func (a Attributes) String() string

type BaseAccount

type BaseAccount struct {
	Address       string `json:"address"`
	Coins         Coins  `json:"coins"`
	PubKey        string `json:"public_key"`
	AccountNumber uint64 `json:"account_number"`
	Sequence      uint64 `json:"sequence"`
}

BaseAccount defines the basic structure of the account

type BaseTx

type BaseTx struct {
	From          string        `json:"from"`
	Password      string        `json:"password"`
	Gas           uint64        `json:"gas"`
	Fee           DecCoins      `json:"fee"`
	Memo          string        `json:"memo"`
	Mode          BroadcastMode `json:"broadcast_mode"`
	Simulate      bool          `json:"simulate"`
	AccountNumber uint64        `json:"account_number"`
	Sequence      uint64        `json:"sequence"`
}

type Bech32PubKeyType

type Bech32PubKeyType string
const (
	Bech32PubKeyTypeAccPub  Bech32PubKeyType = "accpub"
	Bech32PubKeyTypeValPub  Bech32PubKeyType = "valpub"
	Bech32PubKeyTypeConsPub Bech32PubKeyType = "conspub"
)

type Block

type Block struct {
	tmtypes.Header `json:"header"`
	Data           `json:"data"`
	Evidence       tmtypes.EvidenceData `json:"evidence"`
	LastCommit     *tmtypes.Commit      `json:"last_commit"`
}

func ParseBlock

func ParseBlock(cdc *codec.LegacyAmino, block *tmtypes.Block) Block

type BlockDetail

type BlockDetail struct {
	BlockID     tmtypes.BlockID `json:"block_id"`
	Block       Block           `json:"block"`
	BlockResult BlockResult     `json:"block_result"`
}

type BlockResult

type BlockResult struct {
	Height  int64         `json:"height"`
	Results ABCIResponses `json:"results"`
}

func ParseBlockResult

func ParseBlockResult(res *ctypes.ResultBlockResults) BlockResult

type BroadcastMode

type BroadcastMode string
const (
	Sync   BroadcastMode = "sync"
	Async  BroadcastMode = "async"
	Commit BroadcastMode = "commit"
)

type ClientConfig

type ClientConfig struct {
	//plugChain node rpc address
	NodeURL string

	//plugChain grpc address
	GRPCAddr string

	//plugChain chain-id
	ChainId string

	//mas gas limit
	Gas uint64

	//Fee
	Fee DecCoins

	//PrivKeyArmor DAO Implements
	KeyDAO store.KeyDAO

	// Private key generation algorithm(sm2,secp256k1)
	Algo string

	//Broadcast transaction mode
	Mode BroadcastMode

	//Transaction broadcast timeout(seconds)
	Timeout uint

	//log level(trace|debug|info|warn|error|fatal|panic)
	LogLevel string

	//adjustment factor to be multiplied against the estimate returned by the tx simulation;
	GasAdjustment float64

	//whether to enable caching
	Cached bool
}

func NewClientConfig

func NewClientConfig(url, grpcAddr, chainId string, options ...Option) (ClientConfig, error)

type Code

type Code uint32
const (
	// RootCodespace is the codespace for all errors defined in plugchain
	RootCodespace = "sdk"

	OK                Code = 0
	Internal          Code = 1
	TxDecode          Code = 2
	InvalidSequence   Code = 3
	Unauthorized      Code = 4
	InsufficientFunds Code = 5
	UnknownRequest    Code = 6
	InvalidAddress    Code = 7
	InvalidPubkey     Code = 8
	UnknownAddress    Code = 9
	InvalidCoins      Code = 10
	OutOfGas          Code = 11
	MemoTooLarge      Code = 12
	InsufficientFee   Code = 13
	TooManySignatures Code = 14
	NoSignatures      Code = 15
	ErrJsonMarshal    Code = 16
	ErrJsonUnmarshal  Code = 17
	InvalidRequest    Code = 18
	TxInMempoolCache  Code = 19
	MempoolIsFull     Code = 20
	TxTooLarge        Code = 21
)

type CodeV017

type CodeV017 uint32

type Coin

type Coin struct {
	Denom  string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"`
	Amount Int    `protobuf:"bytes,2,opt,name=amount,proto3,customtype=Int" json:"amount"`
}

Coin defines a token with a denomination and an amount.

NOTE: The amount field is an Int which implements the custom method signatures required by gogoproto.

func GetOfferCoinFee

func GetOfferCoinFee(offerCoin Coin, swapFeeRate Dec) Coin

func NewCoin

func NewCoin(denom string, amount Int) Coin

func ParseCoin

func ParseCoin(coinStr string) (coin Coin, err error)

Resolve the CLI input of a coin type. If it is invalid, an error will be returned

func (Coin) Add

func (coin Coin) Add(coinB Coin) Coin

Add in the same currency

func (*Coin) Descriptor

func (*Coin) Descriptor() ([]byte, []int)

func (*Coin) Equal

func (this *Coin) Equal(that interface{}) bool

func (*Coin) GetDenom

func (m *Coin) GetDenom() string

func (Coin) IsEqual

func (coin Coin) IsEqual(other Coin) bool

Are the names and funds of the two currencies the same

func (Coin) IsNegative

func (coin Coin) IsNegative() bool

Return true if the balance is negative

func (Coin) IsPositive

func (coin Coin) IsPositive() bool

If the balance is positive, return true

func (Coin) IsValid

func (coin Coin) IsValid() bool

Whether the token balance is valid

func (Coin) IsZero

func (coin Coin) IsZero() bool

Judge whether the balance is 0

func (*Coin) Marshal

func (m *Coin) Marshal() (dAtA []byte, err error)

func (*Coin) MarshalTo

func (m *Coin) MarshalTo(dAtA []byte) (int, error)

func (*Coin) MarshalToSizedBuffer

func (m *Coin) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*Coin) ProtoMessage

func (*Coin) ProtoMessage()

func (*Coin) Reset

func (m *Coin) Reset()

func (*Coin) Size

func (m *Coin) Size() (n int)

func (Coin) String

func (coin Coin) String() string

return Coin info

func (Coin) Sub

func (coin Coin) Sub(coinB Coin) Coin

Subtract from the same currency

func (*Coin) Unmarshal

func (m *Coin) Unmarshal(dAtA []byte) error

func (Coin) Validate

func (coin Coin) Validate() error

func (*Coin) XXX_DiscardUnknown

func (m *Coin) XXX_DiscardUnknown()

func (*Coin) XXX_Marshal

func (m *Coin) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Coin) XXX_Merge

func (m *Coin) XXX_Merge(src proto.Message)

func (*Coin) XXX_Size

func (m *Coin) XXX_Size() int

func (*Coin) XXX_Unmarshal

func (m *Coin) XXX_Unmarshal(b []byte) error

type CoinType

type CoinType struct {
	Name     string `json:"name"`      //description name of CoinType
	MinUnit  Unit   `json:"min_unit"`  //the min unit of CoinType
	MainUnit Unit   `json:"main_unit"` //the max unit of CoinType
	Desc     string `json:"desc"`      //the description of CoinType
}

func (CoinType) ConvertToMainCoin

func (ct CoinType) ConvertToMainCoin(coin Coin) (DecCoin, error)

ToMainCoin return the main denom coin from args

func (CoinType) ConvertToMinCoin

func (ct CoinType) ConvertToMinCoin(coin DecCoin) (newCoin Coin, err error)

ToMinCoin return the min denom coin from args

type Coins

type Coins []Coin

func NewCoins

func NewCoins(coins ...Coin) Coins

Create a new token group

func ParseCoins

func ParseCoins(coinsStr string) (Coins, error)

Check whether the currency spliced by commas is legal, and return the sorted coins array

func (Coins) Add

func (coins Coins) Add(coinsB ...Coin) Coins

Token combination addition

func (Coins) AmountOf

func (coins Coins) AmountOf(denom string) Int

func (Coins) Empty

func (coins Coins) Empty() bool

Judge whether the coin group is empty

func (Coins) GetDenomByIndex

func (coins Coins) GetDenomByIndex(i int) string

Returns the token name in the token group

func (Coins) IsAllPositive

func (coins Coins) IsAllPositive() bool

Are the coin groups not all empty

func (Coins) IsAnyNegative

func (coins Coins) IsAnyNegative() bool

Token balance check

func (Coins) IsEqual

func (coins Coins) IsEqual(coinsB Coins) bool

Are the currency funds contained in the two coin groups the same

func (Coins) IsValid

func (coins Coins) IsValid() bool

Judge whether all tokens in the token group are non negative

func (Coins) IsZero

func (coins Coins) IsZero() bool

Is it empty

func (Coins) Len

func (coins Coins) Len() int

func (Coins) Less

func (coins Coins) Less(i, j int) bool

func (Coins) Sort

func (coins Coins) Sort() Coins

sort

func (Coins) String

func (coins Coins) String() string

输出string

func (Coins) Swap

func (coins Coins) Swap(i, j int)

func (Coins) Validate

func (coins Coins) Validate() error

type ConsAddress

type ConsAddress []byte

Address byte

func ConsAddressFromHex

func ConsAddressFromHex(address string) (addr ConsAddress, err error)

Convert address to ConsAddress format

func (ConsAddress) Bytes

func (ca ConsAddress) Bytes() []byte

func (ConsAddress) String

func (ca ConsAddress) String() string

type Context

type Context struct {
	Client            BaseClient
	InterfaceRegistry codecTypes.InterfaceRegistry
}

func (Context) GetNode

func (ctx Context) GetNode() (BaseClient, error)

func (Context) Invoke

func (ctx Context) Invoke(grpcCtx gocontext.Context, method string, req, reply interface{}, opts ...grpc.CallOption) (err error)

Invoke implements the grpc ClientConn.Invoke method

func (Context) NewStream

NewStream implements the grpc ClientConn.NewStream method

func (Context) QueryABCI

func (ctx Context) QueryABCI(req types.RequestQuery) (types.ResponseQuery, error)

type Data

type Data struct {
	Txs []StdTx `json:"txs"`
}

type Dec

type Dec struct {
	// contains filtered or unexported fields
}

NOTE: never use new(Dec) or else we will panic unmarshalling into the nil embedded big.Int

func MaxDec

func MaxDec(d1, d2 Dec) Dec

maximum decimal between two

func MinDec

func MinDec(d1, d2 Dec) Dec

minimum decimal between two

func MustNewDecFromStr

func MustNewDecFromStr(s string) Dec

Decimal from string, panic on error

func NewDec

func NewDec(i int64) Dec

create a new Dec from integer assuming whole number

func NewDecFromBigInt

func NewDecFromBigInt(i *big.Int) Dec

create a new Dec from big integer assuming whole numbers CONTRACT: prec <= Precision

func NewDecFromBigIntWithPrec

func NewDecFromBigIntWithPrec(i *big.Int, prec int64) Dec

create a new Dec from big integer assuming whole numbers CONTRACT: prec <= Precision

func NewDecFromInt

func NewDecFromInt(i Int) Dec

create a new Dec from big integer assuming whole numbers CONTRACT: prec <= Precision

func NewDecFromIntWithPrec

func NewDecFromIntWithPrec(i Int, prec int64) Dec

create a new Dec from big integer with decimal place at prec CONTRACT: prec <= Precision

func NewDecFromStr

func NewDecFromStr(str string) (Dec, error)

create a decimal from an input decimal string. valid must come in the form:

(-) whole integers (.) decimal integers

examples of acceptable input include:

-123.456
456.7890
345
-456789

NOTE - An error will return if more decimal places are provided in the string than the constant Precision.

CONTRACT - This function does not mutate the input str.

func NewDecWithPrec

func NewDecWithPrec(i, prec int64) Dec

create a new Dec from integer with decimal place at prec CONTRACT: prec <= Precision

func OneDec

func OneDec() Dec

func SmallestDec

func SmallestDec() Dec

func ZeroDec

func ZeroDec() Dec

func (Dec) Abs

func (d Dec) Abs() Dec

func (Dec) Add

func (d Dec) Add(d2 Dec) Dec

addition

func (Dec) ApproxRoot

func (d Dec) ApproxRoot(root uint64) (guess Dec, err error)

ApproxRoot returns an approximate estimation of a Dec's positive real nth root using Newton's method (where n is positive). The algorithm starts with some guess and computes the sequence of improved guesses until an answer converges to an approximate answer. It returns `|d|.ApproxRoot() * -1` if input is negative. A maximum number of 100 iterations is used a backup boundary condition for cases where the answer never converges enough to satisfy the main condition.

func (Dec) ApproxSqrt

func (d Dec) ApproxSqrt() (Dec, error)

ApproxSqrt is a wrapper around ApproxRoot for the common special case of finding the square root of a number. It returns -(sqrt(abs(d)) if input is negative.

func (Dec) BigInt

func (d Dec) BigInt() *big.Int

BigInt returns a copy of the underlying big.Int.

func (Dec) Ceil

func (d Dec) Ceil() Dec

Ceil returns the smallest interger value (as a decimal) that is greater than or equal to the given decimal.

func (Dec) Equal

func (d Dec) Equal(d2 Dec) bool

func (Dec) Format

func (d Dec) Format(s fmt.State, verb rune)

format decimal state

func (Dec) GT

func (d Dec) GT(d2 Dec) bool

func (Dec) GTE

func (d Dec) GTE(d2 Dec) bool

func (Dec) IsInteger

func (d Dec) IsInteger() bool

is integer, e.g. decimals are zero

func (Dec) IsNegative

func (d Dec) IsNegative() bool

func (Dec) IsNil

func (d Dec) IsNil() bool

______________________________________________________________________________________________ nolint

func (Dec) IsPositive

func (d Dec) IsPositive() bool

func (Dec) IsZero

func (d Dec) IsZero() bool

func (Dec) LT

func (d Dec) LT(d2 Dec) bool

func (Dec) LTE

func (d Dec) LTE(d2 Dec) bool

func (Dec) Marshal

func (d Dec) Marshal() ([]byte, error)

Marshal implements the gogo proto custom type interface.

func (Dec) MarshalAmino

func (d Dec) MarshalAmino() ([]byte, error)

Override Amino binary serialization by proxying to protobuf.

func (Dec) MarshalJSON

func (d Dec) MarshalJSON() ([]byte, error)

MarshalJSON marshals the decimal

func (*Dec) MarshalTo

func (d *Dec) MarshalTo(data []byte) (n int, err error)

MarshalTo implements the gogo proto custom type interface.

func (Dec) MarshalYAML

func (d Dec) MarshalYAML() (interface{}, error)

MarshalYAML returns the YAML representation.

func (Dec) Mul

func (d Dec) Mul(d2 Dec) Dec

multiplication

func (Dec) MulInt

func (d Dec) MulInt(i Int) Dec

multiplication

func (Dec) MulInt64

func (d Dec) MulInt64(i int64) Dec

MulInt64 - multiplication with int64

func (Dec) MulTruncate

func (d Dec) MulTruncate(d2 Dec) Dec

multiplication truncate

func (Dec) Neg

func (d Dec) Neg() Dec

func (Dec) Power

func (d Dec) Power(power uint64) Dec

Power returns a the result of raising to a positive integer power

func (Dec) Quo

func (d Dec) Quo(d2 Dec) Dec

quotient

func (Dec) QuoInt

func (d Dec) QuoInt(i Int) Dec

quotient

func (Dec) QuoInt64

func (d Dec) QuoInt64(i int64) Dec

QuoInt64 - quotient with int64

func (Dec) QuoRoundUp

func (d Dec) QuoRoundUp(d2 Dec) Dec

quotient, round up

func (Dec) QuoTruncate

func (d Dec) QuoTruncate(d2 Dec) Dec

quotient truncate

func (Dec) RoundInt

func (d Dec) RoundInt() Int

RoundInt round the decimal using bankers rounding

func (Dec) RoundInt64

func (d Dec) RoundInt64() int64

RoundInt64 rounds the decimal using bankers rounding

func (*Dec) Size

func (d *Dec) Size() int

Size implements the gogo proto custom type interface.

func (Dec) String

func (d Dec) String() string

func (Dec) Sub

func (d Dec) Sub(d2 Dec) Dec

subtraction

func (Dec) TruncateDec

func (d Dec) TruncateDec() Dec

TruncateDec truncates the decimals from the number and returns a Dec

func (Dec) TruncateInt

func (d Dec) TruncateInt() Int

TruncateInt truncates the decimals from the number and returns an Int

func (Dec) TruncateInt64

func (d Dec) TruncateInt64() int64

TruncateInt64 truncates the decimals from the number and returns an int64

func (*Dec) Unmarshal

func (d *Dec) Unmarshal(data []byte) error

Unmarshal implements the gogo proto custom type interface.

func (*Dec) UnmarshalAmino

func (d *Dec) UnmarshalAmino(bz []byte) error

func (*Dec) UnmarshalJSON

func (d *Dec) UnmarshalJSON(bz []byte) error

UnmarshalJSON defines custom decoding scheme

type DecCoin

type DecCoin struct {
	Denom  string `protobuf:"bytes,1,opt,name=denom,proto3" json:"denom,omitempty"`
	Amount Dec    `protobuf:"bytes,2,opt,name=amount,proto3,customtype=Dec" json:"amount"`
}

DecCoin defines a token with a denomination and a decimal amount.

NOTE: The amount field is an Dec which implements the custom method signatures required by gogoproto.

func NewDecCoin

func NewDecCoin(denom string, amount Int) DecCoin

according to Int Create a Deccoin

func NewDecCoinFromCoin

func NewDecCoinFromCoin(coin Coin) DecCoin

NewDecCoinFromCoin creates a new DecCoin from a Coin.

func NewDecCoinFromDec

func NewDecCoinFromDec(denom string, amount Dec) DecCoin

NewDecCoinFromDec creates a new DecCoin instance from a Dec.

func NewInt64DecCoin

func NewInt64DecCoin(denom string, amount int64) DecCoin

NewInt64DecCoin returns a new DecCoin with a denomination and amount. It will panic if the amount is negative or denom is invalid.

func ParseDecCoin

func ParseDecCoin(coinStr string) (coin DecCoin, err error)

ParseDecCoin parses a decimal coin from a string, returning an error if invalid. An empty string is considered invalid.

func (DecCoin) Add

func (coin DecCoin) Add(coinB DecCoin) DecCoin

Add adds amounts of two decimal coins with same denom.

func (*DecCoin) Descriptor

func (*DecCoin) Descriptor() ([]byte, []int)

func (*DecCoin) Equal

func (this *DecCoin) Equal(that interface{}) bool

func (*DecCoin) GetDenom

func (m *DecCoin) GetDenom() string

func (DecCoin) IsEqual

func (coin DecCoin) IsEqual(other DecCoin) bool

IsEqual returns true if the two sets of Coins have the same value.

func (DecCoin) IsGTE

func (coin DecCoin) IsGTE(other DecCoin) bool

IsGTE returns true if they are the same type and the receiver is an equal or greater value.

func (DecCoin) IsLT

func (coin DecCoin) IsLT(other DecCoin) bool

IsLT returns true if they are the same type and the receiver is a smaller value.

func (DecCoin) IsNegative

func (coin DecCoin) IsNegative() bool

IsNegative returns true if the coin amount is negative and false otherwise.

TODO: Remove once unsigned integers are used.

func (DecCoin) IsPositive

func (coin DecCoin) IsPositive() bool

IsPositive returns true if coin amount is positive.

TODO: Remove once unsigned integers are used.

func (DecCoin) IsValid

func (coin DecCoin) IsValid() bool

IsValid returns true if the DecCoin has a non-negative amount and the denom is vaild.

func (DecCoin) IsZero

func (coin DecCoin) IsZero() bool

IsZero returns if the DecCoin amount is zero.

func (*DecCoin) Marshal

func (m *DecCoin) Marshal() (dAtA []byte, err error)

func (*DecCoin) MarshalTo

func (m *DecCoin) MarshalTo(dAtA []byte) (int, error)

func (*DecCoin) MarshalToSizedBuffer

func (m *DecCoin) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*DecCoin) ProtoMessage

func (*DecCoin) ProtoMessage()

func (*DecCoin) Reset

func (m *DecCoin) Reset()

func (*DecCoin) Size

func (m *DecCoin) Size() (n int)

func (DecCoin) String

func (coin DecCoin) String() string

String implements the Stringer interface for DecCoin. It returns a human-readable representation of a decimal coin.

func (DecCoin) Sub

func (coin DecCoin) Sub(coinB DecCoin) DecCoin

Sub subtracts amounts of two decimal coins with same denom.

func (DecCoin) TruncateDecimal

func (coin DecCoin) TruncateDecimal() (Coin, DecCoin)

TruncateDecimal returns a Coin with a truncated decimal and a DecCoin for the change. Note, the change may be zero.

func (*DecCoin) Unmarshal

func (m *DecCoin) Unmarshal(dAtA []byte) error

func (*DecCoin) XXX_DiscardUnknown

func (m *DecCoin) XXX_DiscardUnknown()

func (*DecCoin) XXX_Marshal

func (m *DecCoin) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*DecCoin) XXX_Merge

func (m *DecCoin) XXX_Merge(src proto.Message)

func (*DecCoin) XXX_Size

func (m *DecCoin) XXX_Size() int

func (*DecCoin) XXX_Unmarshal

func (m *DecCoin) XXX_Unmarshal(b []byte) error

type DecCoins

type DecCoins []DecCoin

DecCoins defines a slice of coins with decimal values

func NewDecCoins

func NewDecCoins(decCoins ...DecCoin) DecCoins

NewDecCoins constructs a new coin set with with decimal values from DecCoins.

func NewDecCoinsFromCoins

func NewDecCoinsFromCoins(coins ...Coin) DecCoins

NewDecCoinsFromCoin constructs a new coin set with decimal values from regular Coins.

func ParseDecCoins

func ParseDecCoins(coinsStr string) (DecCoins, error)

ParseDecCoins will parse out a list of decimal coins separated by commas. If nothing is provided, it returns nil DecCoins. Returned decimal coins are sorted.

func (DecCoins) Add

func (coins DecCoins) Add(coinsB ...DecCoin) DecCoins

Add adds two sets of DecCoins.

NOTE: Add operates under the invariant that coins are sorted by denominations.

CONTRACT: Add will never return Coins where one Coin has a non-positive amount. In otherwords, IsValid will always return true.

func (DecCoins) AmountOf

func (coins DecCoins) AmountOf(denom string) Dec

AmountOf returns the amount of a denom from deccoins

func (DecCoins) Empty

func (coins DecCoins) Empty() bool

Empty returns true if there are no coins and false otherwise.

func (DecCoins) GetDenomByIndex

func (coins DecCoins) GetDenomByIndex(i int) string

GetDenomByIndex returns the Denom to make the findDup generic

func (DecCoins) Intersect

func (coins DecCoins) Intersect(coinsB DecCoins) DecCoins

Intersect will return a new set of coins which contains the minimum DecCoin for common denoms found in both `coins` and `coinsB`. For denoms not common to both `coins` and `coinsB` the minimum is considered to be 0, thus they are not added to the final set.In other words, trim any denom amount from coin which exceeds that of coinB, such that (coin.Intersect(coinB)).IsLTE(coinB).

func (DecCoins) IsAllPositive

func (coins DecCoins) IsAllPositive() bool

IsAllPositive returns true if there is at least one coin and all currencies have a positive value.

TODO: Remove once unsigned integers are used.

func (DecCoins) IsAnyNegative

func (coins DecCoins) IsAnyNegative() bool

IsAnyNegative returns true if there is at least one coin whose amount is negative; returns false otherwise. It returns false if the DecCoins set is empty too.

TODO: Remove once unsigned integers are used.

func (DecCoins) IsEqual

func (coins DecCoins) IsEqual(coinsB DecCoins) bool

IsEqual returns true if the two sets of DecCoins have the same value.

func (DecCoins) IsValid

func (coins DecCoins) IsValid() bool

IsValid asserts the DecCoins are sorted, have positive amount, and Denom does not contain upper case characters.

func (DecCoins) IsZero

func (coins DecCoins) IsZero() bool

IsZero returns whether all coins are zero

func (DecCoins) Len

func (coins DecCoins) Len() int

nolint

func (DecCoins) Less

func (coins DecCoins) Less(i, j int) bool

func (DecCoins) MulDec

func (coins DecCoins) MulDec(d Dec) DecCoins

MulDec multiplies all the coins by a decimal.

CONTRACT: No zero coins will be returned.

func (DecCoins) MulDecTruncate

func (coins DecCoins) MulDecTruncate(d Dec) DecCoins

MulDecTruncate multiplies all the decimal coins by a decimal, truncating. It panics if d is zero.

CONTRACT: No zero coins will be returned.

func (DecCoins) QuoDec

func (coins DecCoins) QuoDec(d Dec) DecCoins

QuoDec divides all the decimal coins by a decimal. It panics if d is zero.

CONTRACT: No zero coins will be returned.

func (DecCoins) QuoDecTruncate

func (coins DecCoins) QuoDecTruncate(d Dec) DecCoins

QuoDecTruncate divides all the decimal coins by a decimal, truncating. It panics if d is zero.

CONTRACT: No zero coins will be returned.

func (DecCoins) SafeSub

func (coins DecCoins) SafeSub(coinsB DecCoins) (DecCoins, bool)

SafeSub performs the same arithmetic as Sub but returns a boolean if any negative coin amount was returned.

func (DecCoins) Sort

func (coins DecCoins) Sort() DecCoins

Sort is a helper function to sort the set of decimal coins in-place.

func (DecCoins) String

func (coins DecCoins) String() string

String implements the Stringer interface for DecCoins. It returns a human-readable representation of decimal coins.

func (DecCoins) Sub

func (coins DecCoins) Sub(coinsB DecCoins) DecCoins

Sub subtracts a set of DecCoins from another (adds the inverse).

func (DecCoins) Swap

func (coins DecCoins) Swap(i, j int)

func (DecCoins) TruncateDecimal

func (coins DecCoins) TruncateDecimal() (truncatedCoins Coins, changeCoins DecCoins)

TruncateDecimal returns the coins with truncated decimals and returns the change. Note, it will not return any zero-amount coins in either the truncated or change coins.

type DecProto

type DecProto struct {
	Dec Dec `protobuf:"bytes,1,opt,name=dec,proto3,customtype=Dec" json:"dec"`
}

DecProto defines a Protobuf wrapper around a Dec object.

func (*DecProto) Descriptor

func (*DecProto) Descriptor() ([]byte, []int)

func (*DecProto) Marshal

func (m *DecProto) Marshal() (dAtA []byte, err error)

func (*DecProto) MarshalTo

func (m *DecProto) MarshalTo(dAtA []byte) (int, error)

func (*DecProto) MarshalToSizedBuffer

func (m *DecProto) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*DecProto) ProtoMessage

func (*DecProto) ProtoMessage()

func (*DecProto) Reset

func (m *DecProto) Reset()

func (*DecProto) Size

func (m *DecProto) Size() (n int)

func (DecProto) String

func (dp DecProto) String() string

func (*DecProto) Unmarshal

func (m *DecProto) Unmarshal(dAtA []byte) error

func (*DecProto) XXX_DiscardUnknown

func (m *DecProto) XXX_DiscardUnknown()

func (*DecProto) XXX_Marshal

func (m *DecProto) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*DecProto) XXX_Merge

func (m *DecProto) XXX_Merge(src proto.Message)

func (*DecProto) XXX_Size

func (m *DecProto) XXX_Size() int

func (*DecProto) XXX_Unmarshal

func (m *DecProto) XXX_Unmarshal(b []byte) error

type EncodingConfig

type EncodingConfig struct {
	InterfaceRegistry types.InterfaceRegistry
	Marshaler         codec.Marshaler
	TxConfig          TxConfig
	Amino             *codec.LegacyAmino
}

EncodingConfig specifies the concrete encoding types to use for a given app. This is provided for compatibility between protobuf and amino implementations.

type Error

type Error interface {
	Error() string
	Code() uint32
	Codespace() string
}

Error represents a root error.

Weave framework is using root error to categorize issues. Each instance created during the runtime should wrap one of the declared root errors. This allows error tests and returning all errors to the client in a safe manner.

All popular root errors are declared in this package. If an extension has to declare a custom root error, always use register function to ensure error code uniqueness.

func GetError

func GetError(codespace string, code uint32, log ...string) Error

GetError is used to covert plugchain error to sdk error

func ValidateAccAddress

func ValidateAccAddress(address string) Error

Verify address

func Wrap

func Wrap(err error) Error

Wrap extends given error with an additional information.

If the wrapped error does not provide ABCICode method (ie. stdlib errors), it will be labeled as internal error.

If err is nil, this returns nil, avoiding the need for an if statement when wrapping a error returned at the end of a function

func WrapWithMessage

func WrapWithMessage(err error, format string, args ...interface{}) Error

func Wrapf

func Wrapf(format string, args ...interface{}) Error

Wrapf extends given error with an additional information.

This function works like Wrap function with additional functionality of formatting the input as specified.

type Event

type Event abci.Event

Event is a type alias for an ABCI Event

func NewEvent

func NewEvent(ty string, attrs ...Attribute) Event

NewEvent creates a new Event object with a given type and slice of one or more attributes.

func (Event) AppendAttributes

func (e Event) AppendAttributes(attrs ...Attribute) Event

AppendAttributes adds one or more attributes to an Event.

type EventData

type EventData interface{}

EventData for SubscribeAny

type EventDataNewBlock

type EventDataNewBlock struct {
	Block            Block            `json:"block"`
	ResultBeginBlock ResultBeginBlock `json:"result_begin_block"`
	ResultEndBlock   ResultEndBlock   `json:"result_end_block"`
}

EventDataNewBlock for SubscribeNewBlock

type EventDataNewBlockHeader

type EventDataNewBlockHeader struct {
	Header Header `json:"header"`

	ResultBeginBlock ResultBeginBlock `json:"result_begin_block"`
	ResultEndBlock   ResultEndBlock   `json:"result_end_block"`
}

EventDataNewBlockHeader for SubscribeNewBlockHeader

type EventDataTx

type EventDataTx struct {
	Hash   string   `json:"hash"`
	Height int64    `json:"height"`
	Index  uint32   `json:"index"`
	Tx     Tx       `json:"tx"`
	Result TxResult `json:"result"`
}

EventDataTx for SubscribeTx

func (EventDataTx) MarshalJson

func (tx EventDataTx) MarshalJson() []byte

type EventDataValidatorSetUpdates

type EventDataValidatorSetUpdates struct {
	ValidatorUpdates []Validator `json:"validator_updates"`
}

type EventHandler

type EventHandler func(data EventData)

type EventKey

type EventKey string

type EventManager

type EventManager struct {
	// contains filtered or unexported fields
}

EventManager implements a simple wrapper around a slice of Event objects that can be emitted from.

func NewEventManager

func NewEventManager() *EventManager

func (EventManager) ABCIEvents

func (em EventManager) ABCIEvents() []abci.Event

ABCIEvents returns all stored Event objects as abci.Event objects.

func (*EventManager) EmitEvent

func (em *EventManager) EmitEvent(event Event)

EmitEvent stores a single Event object.

func (*EventManager) EmitEvents

func (em *EventManager) EmitEvents(events Events)

EmitEvents stores a series of Event objects.

func (*EventManager) Events

func (em *EventManager) Events() Events

type EventNewBlockHandler

type EventNewBlockHandler func(EventDataNewBlock)

type EventNewBlockHeaderHandler

type EventNewBlockHeaderHandler func(EventDataNewBlockHeader)

type EventQueryBuilder

type EventQueryBuilder struct {
	// contains filtered or unexported fields
}

EventQueryBuilder is responsible for constructing listening conditions

func NewEventQueryBuilder

func NewEventQueryBuilder() *EventQueryBuilder

func (*EventQueryBuilder) AddCondition

func (eqb *EventQueryBuilder) AddCondition(c *condition) *EventQueryBuilder

AddCondition is responsible for adding listening conditions

func (*EventQueryBuilder) Build

func (eqb *EventQueryBuilder) Build() string

Build is responsible for constructing the listening condition into a listening instruction identified by tendermint

type EventTxHandler

type EventTxHandler func(EventDataTx)

type EventValidatorSetUpdatesHandler

type EventValidatorSetUpdatesHandler func(EventDataValidatorSetUpdates)

type EventValue

type EventValue interface{}

type Events

type Events []Event

Events defines a slice of Event objects

func EmptyEvents

func EmptyEvents() Events

EmptyEvents returns an empty slice of events.

func (Events) AppendEvent

func (e Events) AppendEvent(event Event) Events

AppendEvent adds an Event to a slice of events.

func (Events) AppendEvents

func (e Events) AppendEvents(events Events) Events

AppendEvents adds a slice of Event objects to an exist slice of Event objects.

func (Events) ToABCIEvents

func (e Events) ToABCIEvents() []abci.Event

ToABCIEvents converts a slice of Event objects to a slice of abci.Event objects.

type Fee

type Fee interface {
	GetGas() uint64
	GetAmount() Coins
}

Return fee

type FeeTx

type FeeTx interface {
	Tx
	GetGas() uint64
	GetFee() Coins
	FeePayer() AccAddress
	FeeGranter() AccAddress
}

type GRPCClient

type GRPCClient interface {
	GenConn() (*grpc.ClientConn, error)
	GenContext() (*grpc.ClientConn, error)
}

type GasInfo

type GasInfo struct {
	// GasWanted is the maximum units of work we allow this tx to perform.
	GasWanted uint64 `protobuf:"varint,1,opt,name=gas_wanted,json=gasWanted,proto3" json:"gas_wanted,omitempty" yaml:"gas_wanted"`
	// GasUsed is the amount of gas actually consumed.
	GasUsed uint64 `protobuf:"varint,2,opt,name=gas_used,json=gasUsed,proto3" json:"gas_used,omitempty" yaml:"gas_used"`
}

GasInfo defines tx execution gas context.

func (*GasInfo) Descriptor

func (*GasInfo) Descriptor() ([]byte, []int)

func (*GasInfo) GetGasUsed

func (m *GasInfo) GetGasUsed() uint64

func (*GasInfo) GetGasWanted

func (m *GasInfo) GetGasWanted() uint64

func (*GasInfo) Marshal

func (m *GasInfo) Marshal() (dAtA []byte, err error)

func (*GasInfo) MarshalTo

func (m *GasInfo) MarshalTo(dAtA []byte) (int, error)

func (*GasInfo) MarshalToSizedBuffer

func (m *GasInfo) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*GasInfo) ProtoMessage

func (*GasInfo) ProtoMessage()

func (*GasInfo) Reset

func (m *GasInfo) Reset()

func (*GasInfo) Size

func (m *GasInfo) Size() (n int)

func (GasInfo) String

func (gi GasInfo) String() string

func (*GasInfo) Unmarshal

func (m *GasInfo) Unmarshal(dAtA []byte) error

func (*GasInfo) XXX_DiscardUnknown

func (m *GasInfo) XXX_DiscardUnknown()

func (*GasInfo) XXX_Marshal

func (m *GasInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GasInfo) XXX_Merge

func (m *GasInfo) XXX_Merge(src proto.Message)

func (*GasInfo) XXX_Size

func (m *GasInfo) XXX_Size() int

func (*GasInfo) XXX_Unmarshal

func (m *GasInfo) XXX_Unmarshal(b []byte) error
type Header = tmtypes.Header

type HexBytes

type HexBytes = tmbytes.HexBytes

func HexBytesFrom

func HexBytesFrom(hexStr string) (HexBytes, error)

func MustHexBytesFrom

func MustHexBytesFrom(hexStr string) HexBytes

type Int

type Int struct {
	// contains filtered or unexported fields
}

Int wraps integer with 256 bit range bound Checks overflow, underflow and division by zero Exists in range from -(2^maxBitLen-1) to 2^maxBitLen-1

func MaxInt

func MaxInt(i, i2 Int) Int

MaxInt returns the maximum between two integers.

func MinInt

func MinInt(i1, i2 Int) Int

return the minimum of the ints

func NewInt

func NewInt(n int64) Int

NewInt constructs Int from int64

func NewIntFromBigInt

func NewIntFromBigInt(i *big.Int) Int

NewIntFromBigInt constructs Int from big.Int

func NewIntFromString

func NewIntFromString(s string) (res Int, ok bool)

NewIntFromString constructs Int from string

func NewIntFromUint64

func NewIntFromUint64(n uint64) Int

NewIntFromUint64 constructs an Int from a uint64.

func NewIntWithDecimal

func NewIntWithDecimal(n int64, dec int) Int

NewIntWithDecimal constructs Int with decimal Result value is n*10^dec

func OneInt

func OneInt() Int

OneInt returns Int value with one

func ZeroInt

func ZeroInt() Int

ZeroInt returns Int value with zero

func (Int) Add

func (i Int) Add(i2 Int) (res Int)

Add adds Int from another

func (Int) AddRaw

func (i Int) AddRaw(i2 int64) Int

AddRaw adds int64 to Int

func (Int) BigInt

func (i Int) BigInt() *big.Int

BigInt converts Int to big.Int

func (Int) Equal

func (i Int) Equal(i2 Int) bool

Equal compares two Ints

func (Int) GT

func (i Int) GT(i2 Int) bool

GT returns true if first Int is greater than second

func (Int) GTE

func (i Int) GTE(i2 Int) bool

GTE returns true if receiver Int is greater than or equal to the parameter Int.

func (Int) Int64

func (i Int) Int64() int64

Int64 converts Int to int64 Panics if the value is out of range

func (Int) IsInt64

func (i Int) IsInt64() bool

IsInt64 returns true if Int64() not panics

func (Int) IsNegative

func (i Int) IsNegative() bool

IsNegative returns true if Int is negative

func (Int) IsNil

func (i Int) IsNil() bool

IsNil returns true if Int is uninitialized

func (Int) IsPositive

func (i Int) IsPositive() bool

IsPositive returns true if Int is positive

func (Int) IsUint64

func (i Int) IsUint64() bool

IsUint64 returns true if Uint64() not panics

func (Int) IsZero

func (i Int) IsZero() bool

IsZero returns true if Int is zero

func (Int) LT

func (i Int) LT(i2 Int) bool

LT returns true if first Int is lesser than second

func (Int) LTE

func (i Int) LTE(i2 Int) bool

LTE returns true if first Int is less than or equal to second

func (Int) Marshal

func (i Int) Marshal() ([]byte, error)

Marshal implements the gogo proto custom type interface.

func (Int) MarshalAmino

func (i Int) MarshalAmino() ([]byte, error)

Override Amino binary serialization by proxying to protobuf.

func (Int) MarshalJSON

func (i Int) MarshalJSON() ([]byte, error)

MarshalJSON defines custom encoding scheme

func (*Int) MarshalTo

func (i *Int) MarshalTo(data []byte) (n int, err error)

MarshalTo implements the gogo proto custom type interface.

func (Int) MarshalYAML

func (i Int) MarshalYAML() (interface{}, error)

MarshalYAML returns the YAML representation.

func (Int) Mod

func (i Int) Mod(i2 Int) Int

Mod returns remainder after dividing with Int

func (Int) ModRaw

func (i Int) ModRaw(i2 int64) Int

ModRaw returns remainder after dividing with int64

func (Int) Mul

func (i Int) Mul(i2 Int) (res Int)

Mul multiples two Ints

func (Int) MulRaw

func (i Int) MulRaw(i2 int64) Int

MulRaw multipies Int and int64

func (Int) Neg

func (i Int) Neg() (res Int)

Neg negates Int

func (Int) Quo

func (i Int) Quo(i2 Int) (res Int)

Quo divides Int with Int

func (Int) QuoRaw

func (i Int) QuoRaw(i2 int64) Int

QuoRaw divides Int with int64

func (Int) Sign

func (i Int) Sign() int

Sign returns sign of Int

func (*Int) Size

func (i *Int) Size() int

Size implements the gogo proto custom type interface.

func (Int) String

func (i Int) String() string

Human readable string

func (Int) Sub

func (i Int) Sub(i2 Int) (res Int)

Sub subtracts Int from another

func (Int) SubRaw

func (i Int) SubRaw(i2 int64) Int

SubRaw subtracts int64 from Int

func (Int) ToDec

func (i Int) ToDec() Dec

ToDec converts Int to Dec

func (Int) Uint64

func (i Int) Uint64() uint64

Uint64 converts Int to uint64 Panics if the value is out of range

func (*Int) Unmarshal

func (i *Int) Unmarshal(data []byte) error

Unmarshal implements the gogo proto custom type interface.

func (*Int) UnmarshalAmino

func (i *Int) UnmarshalAmino(bz []byte) error

func (*Int) UnmarshalJSON

func (i *Int) UnmarshalJSON(bz []byte) error

UnmarshalJSON defines custom decoding scheme

type IntProto

type IntProto struct {
	Int Int `protobuf:"bytes,1,opt,name=int,proto3,customtype=Int" json:"int"`
}

IntProto defines a Protobuf wrapper around an Int object.

func (*IntProto) Descriptor

func (*IntProto) Descriptor() ([]byte, []int)

func (*IntProto) Marshal

func (m *IntProto) Marshal() (dAtA []byte, err error)

func (*IntProto) MarshalTo

func (m *IntProto) MarshalTo(dAtA []byte) (int, error)

func (*IntProto) MarshalToSizedBuffer

func (m *IntProto) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*IntProto) ProtoMessage

func (*IntProto) ProtoMessage()

func (*IntProto) Reset

func (m *IntProto) Reset()

func (*IntProto) Size

func (m *IntProto) Size() (n int)

func (IntProto) String

func (ip IntProto) String() string

func (*IntProto) Unmarshal

func (m *IntProto) Unmarshal(dAtA []byte) error

func (*IntProto) XXX_DiscardUnknown

func (m *IntProto) XXX_DiscardUnknown()

func (*IntProto) XXX_Marshal

func (m *IntProto) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*IntProto) XXX_Merge

func (m *IntProto) XXX_Merge(src proto.Message)

func (*IntProto) XXX_Size

func (m *IntProto) XXX_Size() int

func (*IntProto) XXX_Unmarshal

func (m *IntProto) XXX_Unmarshal(b []byte) error

type KeyManager

type KeyManager interface {
	Sign(name, password string, data []byte) ([]byte, crypto.PubKey, error)
	Insert(name, password string) (string, string, error)
	Recover(name, password, mnemonic, hdPath string) (string, error)
	Import(name, password string, privKeyArmor string) (address string, err error)
	Export(name, password string) (privKeyArmor string, err error)
	Delete(name, password string) error
	Find(name, password string) (crypto.PubKey, AccAddress, error)
}

type Logger

type Logger interface {
	Logger() log.Logger
	SetLogger(log.Logger)
}

type MerkleProof

type MerkleProof struct {
	Proof *crypto.ProofOps `json:"proof"`
}

type Module

type Module interface {
	Name() string
	RegisterInterfaceTypes(registry types.InterfaceRegistry)
}

type Msg

type Msg interface {
	proto.Message
	//Return message type
	Route() string
	//Return message string
	Type() string
	//Validation before query
	ValidateBasic() error
	//Get message - bytes
	GetSignBytes() []byte

	GetSigners() []AccAddress
}

The interface that the transaction message must satisfy

type MsgData

type MsgData struct {
	MsgType string `protobuf:"bytes,1,opt,name=msg_type,json=msgType,proto3" json:"msg_type,omitempty"`
	Data    []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
}

MsgData defines the data returned in a Result object during message execution.

func (*MsgData) Descriptor

func (*MsgData) Descriptor() ([]byte, []int)

func (*MsgData) GetData

func (m *MsgData) GetData() []byte

func (*MsgData) GetMsgType

func (m *MsgData) GetMsgType() string

func (*MsgData) Marshal

func (m *MsgData) Marshal() (dAtA []byte, err error)

func (*MsgData) MarshalTo

func (m *MsgData) MarshalTo(dAtA []byte) (int, error)

func (*MsgData) MarshalToSizedBuffer

func (m *MsgData) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*MsgData) ProtoMessage

func (*MsgData) ProtoMessage()

func (*MsgData) Reset

func (m *MsgData) Reset()

func (*MsgData) Size

func (m *MsgData) Size() (n int)

func (*MsgData) String

func (this *MsgData) String() string

func (*MsgData) Unmarshal

func (m *MsgData) Unmarshal(dAtA []byte) error

func (*MsgData) XXX_DiscardUnknown

func (m *MsgData) XXX_DiscardUnknown()

func (*MsgData) XXX_Marshal

func (m *MsgData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*MsgData) XXX_Merge

func (m *MsgData) XXX_Merge(src proto.Message)

func (*MsgData) XXX_Size

func (m *MsgData) XXX_Size() int

func (*MsgData) XXX_Unmarshal

func (m *MsgData) XXX_Unmarshal(b []byte) error

type Msgs

type Msgs []Msg

func (Msgs) Len

func (m Msgs) Len() int

func (Msgs) Sub

func (m Msgs) Sub(begin, end int) SplitAble

type NetworkClient

type NetworkClient = tmclient.NetworkClient

type Option

type Option func(cfg *ClientConfig) error

func AlgoOption

func AlgoOption(algo string) Option

func CachedOption

func CachedOption(enabled bool) Option

func FeeOption

func FeeOption(fee DecCoins) Option

func GasAdjustmentOption

func GasAdjustmentOption(gasAdjustment float64) Option

func GasOption

func GasOption(gas uint64) Option

func KeyDAOOption

func KeyDAOOption(dao store.KeyDAO) Option

func LogLevelOption

func LogLevelOption(level string) Option

func ModeOption

func ModeOption(mode BroadcastMode) Option

func TimeoutOption

func TimeoutOption(timeout uint) Option

type PageRequest

type PageRequest struct {
	// key is a value returned in PageResponse.next_key to begin
	// querying the next page most efficiently. Only one of offset or key
	// should be set.
	Key []byte `json:"key,omitempty"`
	// offset is a numeric offset that can be used when key is unavailable.
	// It is less efficient than using key. Only one of offset or key should
	// be set.
	Offset uint64 ` json:"offset,omitempty"`
	// limit is the total number of results to be returned in the result page.
	// If left empty it will default to a value to be set by each app.
	Limit uint64 ` json:"limit,omitempty"`
	// count_total is set to true  to indicate that the result set should include
	// a count of the total number of items available for pagination in UIs.
	// count_total is only respected when offset is used. It is ignored when key
	// is set.
	CountTotal bool ` json:"count_total,omitempty"`
}

type Pair

type Pair = kv.Pair

type ParamQuery

type ParamQuery interface {
	QueryParams(module string, res Response) Error
}

type PoolInfo

type PoolInfo struct {
	// id of the pool
	Id uint64 `json:"id"`
	// id of the pool_type
	TypeId uint32 `json:"type_id,omitempty"`
	// denoms of reserve coin pair of the pool
	ReserveCoinDenoms []string `json:"reserve_coin_denoms,omitempty"`
	// reserve account address of the pool
	ReserveAccountAddress string `json:"reserve_account_address,omitempty"`
	// denom of pool coin of the pool
	PoolCoinDenom string `json:"pool_coin_denom,omitempty"`
}

type ProofValue

type ProofValue struct {
	Proof []byte   `json:"proof"`
	Path  []string `json:"path"`
	Value []byte   `json:"value"`
}

type PubKey

type PubKey struct {
	Type  string `json:"type"`
	Value string `json:"value"`
}

type Queries

type Queries interface {
	StoreQuery
	AccountQuery
	TmQuery
}

type Response

type Response interface {
	Convert() interface{}
}

System type message return

type Result

type Result struct {
	// Data is any data returned from message or handler execution. It MUST be
	// length prefixed in order to separate data from multiple message executions.
	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	// Log contains the log information from message or handler execution.
	Log string `protobuf:"bytes,2,opt,name=log,proto3" json:"log,omitempty"`
	// Events contains a slice of Event objects that were emitted during message
	// or handler execution.
	Events []types1.Event `protobuf:"bytes,3,rep,name=events,proto3" json:"events"`
}

Result is the union of ResponseFormat and ResponseCheckTx.

func (*Result) Descriptor

func (*Result) Descriptor() ([]byte, []int)

func (Result) GetEvents

func (r Result) GetEvents() Events

func (*Result) Marshal

func (m *Result) Marshal() (dAtA []byte, err error)

func (*Result) MarshalTo

func (m *Result) MarshalTo(dAtA []byte) (int, error)

func (*Result) MarshalToSizedBuffer

func (m *Result) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*Result) ProtoMessage

func (*Result) ProtoMessage()

func (*Result) Reset

func (m *Result) Reset()

func (*Result) Size

func (m *Result) Size() (n int)

func (Result) String

func (r Result) String() string

func (*Result) Unmarshal

func (m *Result) Unmarshal(dAtA []byte) error

func (*Result) XXX_DiscardUnknown

func (m *Result) XXX_DiscardUnknown()

func (*Result) XXX_Marshal

func (m *Result) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Result) XXX_Merge

func (m *Result) XXX_Merge(src proto.Message)

func (*Result) XXX_Size

func (m *Result) XXX_Size() int

func (*Result) XXX_Unmarshal

func (m *Result) XXX_Unmarshal(b []byte) error

type ResultBeginBlock

type ResultBeginBlock struct {
	Events StringEvents `json:"events"`
}

type ResultEndBlock

type ResultEndBlock struct {
	Events           StringEvents      `json:"events"`
	ValidatorUpdates []ValidatorUpdate `json:"validator_updates"`
}

type ResultQueryTx

type ResultQueryTx struct {
	Hash      string   `json:"hash"`
	Height    int64    `json:"height"`
	Tx        Tx       `json:"tx"`
	Result    TxResult `json:"result"`
	Timestamp string   `json:"timestamp"`
}

ResultQueryTx is used to prepare info to display

type ResultSearchTxs

type ResultSearchTxs struct {
	Total int             `json:"total"` // Count of all txs
	Txs   []ResultQueryTx `json:"txs"`   // List of txs in current page
}

ResultSearchTxs defines a structure for querying txs pageable

type ResultTx

type ResultTx struct {
	GasWanted int64        `json:"gas_wanted"`
	GasUsed   int64        `json:"gas_used"`
	Events    StringEvents `json:"events"`
	Hash      string       `json:"hash"`
	Height    int64        `json:"height"`
}

ResultTx encapsulates the return result of the transaction. When the transaction fails, it is an empty object. The specific error information can be obtained through the Error interface.

type SearchTxsResult

type SearchTxsResult struct {
	// Count of all txs
	TotalCount uint64 `protobuf:"varint,1,opt,name=total_count,json=totalCount,proto3" json:"total_count" yaml:"total_count"`
	// Count of txs in current page
	Count uint64 `protobuf:"varint,2,opt,name=count,proto3" json:"count,omitempty"`
	// Index of current page, start from 1
	PageNumber uint64 `protobuf:"varint,3,opt,name=page_number,json=pageNumber,proto3" json:"page_number" yaml:"page_number"`
	// Count of total pages
	PageTotal uint64 `protobuf:"varint,4,opt,name=page_total,json=pageTotal,proto3" json:"page_total" yaml:"page_total"`
	// Max count txs per page
	Limit uint64 `protobuf:"varint,5,opt,name=limit,proto3" json:"limit,omitempty"`
	// List of txs in current page
	Txs []*TxResponse `protobuf:"bytes,6,rep,name=txs,proto3" json:"txs,omitempty"`
}

SearchTxsResult defines a structure for querying txs pageable

func NewSearchTxsResult

func NewSearchTxsResult(totalCount, count, page, limit uint64, txs []*TxResponse) *SearchTxsResult

func (*SearchTxsResult) Descriptor

func (*SearchTxsResult) Descriptor() ([]byte, []int)

func (*SearchTxsResult) GetCount

func (m *SearchTxsResult) GetCount() uint64

func (*SearchTxsResult) GetLimit

func (m *SearchTxsResult) GetLimit() uint64

func (*SearchTxsResult) GetPageNumber

func (m *SearchTxsResult) GetPageNumber() uint64

func (*SearchTxsResult) GetPageTotal

func (m *SearchTxsResult) GetPageTotal() uint64

func (*SearchTxsResult) GetTotalCount

func (m *SearchTxsResult) GetTotalCount() uint64

func (*SearchTxsResult) GetTxs

func (m *SearchTxsResult) GetTxs() []*TxResponse

func (*SearchTxsResult) Marshal

func (m *SearchTxsResult) Marshal() (dAtA []byte, err error)

func (*SearchTxsResult) MarshalTo

func (m *SearchTxsResult) MarshalTo(dAtA []byte) (int, error)

func (*SearchTxsResult) MarshalToSizedBuffer

func (m *SearchTxsResult) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*SearchTxsResult) ProtoMessage

func (*SearchTxsResult) ProtoMessage()

func (*SearchTxsResult) Reset

func (m *SearchTxsResult) Reset()

func (*SearchTxsResult) Size

func (m *SearchTxsResult) Size() (n int)

func (*SearchTxsResult) String

func (this *SearchTxsResult) String() string

func (*SearchTxsResult) Unmarshal

func (m *SearchTxsResult) Unmarshal(dAtA []byte) error

func (SearchTxsResult) UnpackInterfaces

func (s SearchTxsResult) UnpackInterfaces(unpacker codectypes.AnyUnpacker) error

UnpackInterfaces implements UnpackInterfacesMessage.UnpackInterfaces

types.UnpackInterfaces needs to be called for each nested Tx because there are generally interfaces to unpack in Tx's

func (*SearchTxsResult) XXX_DiscardUnknown

func (m *SearchTxsResult) XXX_DiscardUnknown()

func (*SearchTxsResult) XXX_Marshal

func (m *SearchTxsResult) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*SearchTxsResult) XXX_Merge

func (m *SearchTxsResult) XXX_Merge(src proto.Message)

func (*SearchTxsResult) XXX_Size

func (m *SearchTxsResult) XXX_Size() int

func (*SearchTxsResult) XXX_Unmarshal

func (m *SearchTxsResult) XXX_Unmarshal(b []byte) error

type SignClient

type SignClient = tmclient.SignClient

type SignModeHandler

type SignModeHandler interface {
	//Default mode
	DefaultMode() signing.SignMode

	// Process default list
	Modes() []signing.SignMode

	//Or signature data
	GetSignBytes(mode signing.SignMode, data SignerData, tx Tx) ([]byte, error)
}

By generating sign bytes SignMode from Tx and SignerData

type SignModeHandlerMap

type SignModeHandlerMap struct {
	// contains filtered or unexported fields
}

SignModeHandlerMap is SignModeHandler that aggregates multiple SignModeHandler's into a single handler

func NewSignModeHandlerMap

func NewSignModeHandlerMap(defaultMode signing.SignMode, handlers []SignModeHandler) SignModeHandlerMap

NewSignModeHandlerMap returns a new SignModeHandlerMap with the provided defaultMode and handlers

func (SignModeHandlerMap) DefaultMode

func (h SignModeHandlerMap) DefaultMode() signing.SignMode

DefaultMode implements SignModeHandler.DefaultMode

func (SignModeHandlerMap) GetSignBytes

func (h SignModeHandlerMap) GetSignBytes(mode signing.SignMode, data SignerData, tx Tx) ([]byte, error)

DefaultMode implements SignModeHandler.GetSignBytes

func (SignModeHandlerMap) Modes

func (h SignModeHandlerMap) Modes() []signing.SignMode

Modes implements SignModeHandler.Modes

type Signature

type Signature interface {
	GetPubKey() crypto.PubKey
	GetSignature() []byte
}

autograph

type SignerData

type SignerData struct {
	// ChainID
	ChainID string

	// Signer's account number
	AccountNumber uint64

	// Sequence is the account sequence number of the signer that is used
	// for replay protection. This field is only useful for Legacy Amino signing,
	// since in SIGN_MODE_DIRECT the account sequence is already in the signer
	// info.
	Sequence uint64
}

The specific information required to sign the transaction is not included in the transaction subject itself

type SimulationResponse

type SimulationResponse struct {
	GasInfo `protobuf:"bytes,1,opt,name=gas_info,json=gasInfo,proto3,embedded=gas_info" json:"gas_info"`
	Result  *Result `protobuf:"bytes,2,opt,name=result,proto3" json:"result,omitempty"`
}

SimulationResponse defines the response generated when a transaction is successfully simulated.

func (*SimulationResponse) Descriptor

func (*SimulationResponse) Descriptor() ([]byte, []int)

func (*SimulationResponse) GetResult

func (m *SimulationResponse) GetResult() *Result

func (*SimulationResponse) Marshal

func (m *SimulationResponse) Marshal() (dAtA []byte, err error)

func (*SimulationResponse) MarshalTo

func (m *SimulationResponse) MarshalTo(dAtA []byte) (int, error)

func (*SimulationResponse) MarshalToSizedBuffer

func (m *SimulationResponse) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*SimulationResponse) ProtoMessage

func (*SimulationResponse) ProtoMessage()

func (*SimulationResponse) Reset

func (m *SimulationResponse) Reset()

func (*SimulationResponse) Size

func (m *SimulationResponse) Size() (n int)

func (*SimulationResponse) Unmarshal

func (m *SimulationResponse) Unmarshal(dAtA []byte) error

func (*SimulationResponse) XXX_DiscardUnknown

func (m *SimulationResponse) XXX_DiscardUnknown()

func (*SimulationResponse) XXX_Marshal

func (m *SimulationResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*SimulationResponse) XXX_Merge

func (m *SimulationResponse) XXX_Merge(src proto.Message)

func (*SimulationResponse) XXX_Size

func (m *SimulationResponse) XXX_Size() int

func (*SimulationResponse) XXX_Unmarshal

func (m *SimulationResponse) XXX_Unmarshal(b []byte) error

type SplitAble

type SplitAble interface {
	Len() int
	Sub(begin, end int) SplitAble
}

type StatusClient

type StatusClient = tmclient.StatusClient

type StdFee

type StdFee struct {
	Amount Coins  `json:"amount"`
	Gas    uint64 `json:"gas"`
}

StdFee includes the amount of coins paid in fees and the maximum Gas to be used by the transaction. The ratio yields an effective "gasprice", which must be above some miminum to be accepted into the mempool.

func NewStdFee

func NewStdFee(gas uint64, amount ...Coin) StdFee

func (StdFee) Bytes

func (fee StdFee) Bytes() []byte

Fee bytes for signing later

type StdSignDoc

type StdSignDoc struct {
	AccountNumber uint64            `json:"account_number"`
	ChainID       string            `json:"chain_id"`
	Fee           json.RawMessage   `json:"fee"`
	Memo          string            `json:"memo"`
	Msgs          []json.RawMessage `json:"msgs"`
	Sequence      uint64            `json:"sequence"`
}

StdSignDoc is replay-prevention structure. It includes the result of msg.GetSignBytes(), as well as the ChainID (prevent cross chain replay) and the Sequence numbers for each signature (prevent inchain replay and enforce tx ordering per account).

type StdSignMsg

type StdSignMsg struct {
	ChainID       string `json:"chain_id"`
	AccountNumber uint64 `json:"account_number"`
	Sequence      uint64 `json:"sequence"`
	Fee           StdFee `json:"fee"`
	Msgs          []Msg  `json:"msgs"`
	Memo          string `json:"memo"`
}

StdSignMsg is a convenience structure for passing along a Msg with the other requirements for a StdSignDoc before it is signed. For use in the CLI.

func (StdSignMsg) Bytes

func (msg StdSignMsg) Bytes(cdc codec.Marshaler) []byte

get message bytes

type StdSignature

type StdSignature struct {
	PubKey    []byte `json:"pub_key" yaml:"pub_key"` // optional
	Signature []byte `json:"signature" yaml:"signature"`
}

Standard Signature

type StdTx

type StdTx struct {
	Msgs       []Msg          `json:"msg"`
	Fee        StdFee         `json:"fee"`
	Signatures []StdSignature `json:"signatures"`
	Memo       string         `json:"memo"`
}

StdTx is a standard way to wrap a Msg with Fee and Signatures. NOTE: the first signature is the fee payer (Signatures must not be nil).

func NewStdTx

func NewStdTx(msgs []Msg, fee StdFee, sigs []StdSignature, memo string) StdTx

func (StdTx) GetMemo

func (tx StdTx) GetMemo() string

nolint

func (StdTx) GetMsgs

func (tx StdTx) GetMsgs() []Msg

nolint GetMsgs returns the all the transaction's messages.

func (StdTx) GetSignBytes

func (tx StdTx) GetSignBytes() []string

func (StdTx) GetSignatures

func (tx StdTx) GetSignatures() []StdSignature

GetSignatures returns the signature of signers who signed the Msg. CONTRACT: Length returned is same as length of pubkeys returned from MsgKeySigners, and the order matches. CONTRACT: If the signature is missing (ie the Msg is invalid), then the corresponding signature is .Empty().

func (StdTx) GetSigners

func (tx StdTx) GetSigners() []AccAddress

GetSigners returns the addresses that must sign the transaction. Addresses are returned in a deterministic order. They are accumulated from the GetSigners method for each Msg in the order they appear in tx.GetMsgs(). Duplicate addresses will be omitted.

func (StdTx) ValidateBasic

func (tx StdTx) ValidateBasic() error

ValidateBasic does a simple and lightweight validation check that doesn't require access to any other information.

type StoreQuery

type StoreQuery interface {
	QueryWithResponse(path string, data interface{}, result Response) error
	Query(path string, data interface{}) ([]byte, error)
	QueryStore(key HexBytes, storeName string, height int64, prove bool) (abci.ResponseQuery, error)
}

type StringEvent

type StringEvent struct {
	Type       string      `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
	Attributes []Attribute `protobuf:"bytes,2,rep,name=attributes,proto3" json:"attributes"`
}

StringEvent defines en Event object wrapper where all the attributes contain key/value pairs that are strings instead of raw bytes.

func StringifyEvent

func StringifyEvent(e abci.Event) StringEvent

StringifyEvent converts an Event object to a StringEvent object.

func (*StringEvent) Descriptor

func (*StringEvent) Descriptor() ([]byte, []int)

func (*StringEvent) GetAttributes

func (m *StringEvent) GetAttributes() []Attribute

func (*StringEvent) GetType

func (m *StringEvent) GetType() string

func (*StringEvent) Marshal

func (m *StringEvent) Marshal() (dAtA []byte, err error)

func (*StringEvent) MarshalTo

func (m *StringEvent) MarshalTo(dAtA []byte) (int, error)

func (*StringEvent) MarshalToSizedBuffer

func (m *StringEvent) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*StringEvent) ProtoMessage

func (*StringEvent) ProtoMessage()

func (*StringEvent) Reset

func (m *StringEvent) Reset()

func (*StringEvent) Size

func (m *StringEvent) Size() (n int)

func (*StringEvent) String

func (this *StringEvent) String() string

func (*StringEvent) Unmarshal

func (m *StringEvent) Unmarshal(dAtA []byte) error

func (*StringEvent) XXX_DiscardUnknown

func (m *StringEvent) XXX_DiscardUnknown()

func (*StringEvent) XXX_Marshal

func (m *StringEvent) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*StringEvent) XXX_Merge

func (m *StringEvent) XXX_Merge(src proto.Message)

func (*StringEvent) XXX_Size

func (m *StringEvent) XXX_Size() int

func (*StringEvent) XXX_Unmarshal

func (m *StringEvent) XXX_Unmarshal(b []byte) error

type StringEvents

type StringEvents []StringEvent

StringAttributes defines a slice of StringEvents objects.

func StringifyEvents

func StringifyEvents(events []abci.Event) StringEvents

StringifyEvents converts a slice of Event objects into a slice of StringEvent objects.

func (StringEvents) Flatten

func (se StringEvents) Flatten() StringEvents

Flatten returns a flattened version of StringEvents by grouping all attributes per unique event type.

func (StringEvents) GetValue

func (se StringEvents) GetValue(typ, key string) (string, error)

func (StringEvents) GetValues

func (se StringEvents) GetValues(typ, key string) (res []string)

func (StringEvents) String

func (se StringEvents) String() string

type Subscription

type Subscription struct {
	Ctx   context.Context `json:"-"`
	Query string          `json:"query"`
	ID    string          `json:"id"`
}

type TmPubKey

type TmPubKey = crypto.PubKey

func GetPubKeyFromBech32

func GetPubKeyFromBech32(pkt Bech32PubKeyType, pubkeyStr string) (TmPubKey, error)

type TmQuery

type TmQuery interface {
	QueryTx(hash string) (ResultQueryTx, error)
	QueryTxs(builder *EventQueryBuilder, page, size *int) (ResultSearchTxs, error)
	QueryBlock(height int64) (BlockDetail, error)
}

type Token

type Token struct {
	Symbol        string `json:"symbol"`
	Name          string `json:"name"`
	Scale         uint32 `json:"scale"`
	MinUnit       string `json:"min_unit"`
	InitialSupply uint64 `json:"initial_supply"`
	MaxSupply     uint64 `json:"max_supply"`
	Mintable      bool   `json:"mintable"`
	Owner         string `json:"owner"`
}

func (Token) GetCoinType

func (t Token) GetCoinType() CoinType

GetCoinType returns CnType

type TokenConvert

type TokenConvert interface {
	ToMinCoin(coin ...DecCoin) (Coins, Error)
	ToMainCoin(coin ...Coin) (DecCoins, Error)
}

type TokenManager

type TokenManager interface {
	QueryToken(denom string) (Token, error)
	SaveTokens(tokens ...Token)
}

type Tokens

type Tokens []Token

type Tx

type Tx interface {
	// Get all transactions
	GetMsgs() []Msg

	//Validation before query
	ValidateBasic() error
}

Interface that the transaction must complete

type TxBuilder

type TxBuilder interface {
	GetTx() Tx

	SetMsgs(msgs ...Msg) error
	SetSignatures(signatures ...signingtypes.SignatureV2) error
	SetMemo(memo string)
	SetFeeAmount(amount Coins)
	SetGasLimit(limit uint64)
	SetTimeoutHeight(height uint64)
}

Tx Builder The interface type that defines a specific transaction defined by an application must be implemented: it must be able to set messages, generate signatures, and provide specification bytes for signature

type TxConfig

type TxConfig interface {
	TxEncodingConfig

	NewTxBuilder() TxBuilder
	WrapTxBuilder(Tx) (TxBuilder, error)
	SignModeHandler() SignModeHandler
}

type TxDecoder

type TxDecoder func(txBytes []byte) (Tx, error)

type TxEncoder

type TxEncoder func(tx Tx) ([]byte, error)

type TxEncodingConfig

type TxEncodingConfig interface {
	TxEncoder() TxEncoder
	TxDecoder() TxDecoder
	TxJSONEncoder() TxEncoder
	TxJSONDecoder() TxDecoder
	MarshalSignatureJSON([]signingtypes.SignatureV2) ([]byte, error)
	UnmarshalSignatureJSON([]byte) ([]signingtypes.SignatureV2, error)
}

Encoders and decoders containing transactions

type TxManager

type TxManager interface {
	TmQuery
	BuildTxHash(msg []Msg, baseTx BaseTx) (string, Error)
	BuildAndSend(msg []Msg, baseTx BaseTx) (ResultTx, Error)
	BuildAndSign(msg []Msg, baseTx BaseTx) ([]byte, Error)
	SendBatch(msgs Msgs, baseTx BaseTx) ([]ResultTx, Error)
	BuildAndSendWithAccount(addr string, accountNumber, sequence uint64, msg []Msg, baseTx BaseTx) (ResultTx, Error)
	//BuildAndSends(txByte []byte, ctxMode BroadcastMode, simulate bool, addr []string) (ResultTx, Error)
	BuildAndSends(msg []Msg, baseTx BaseTx, account map[string]string, addr []string) (ResultTx, Error)
}

type TxMsgData

type TxMsgData struct {
	Data []*MsgData `protobuf:"bytes,1,rep,name=data,proto3" json:"data,omitempty"`
}

TxMsgData defines a list of MsgData. A transaction will have a MsgData object for each message.

func (*TxMsgData) Descriptor

func (*TxMsgData) Descriptor() ([]byte, []int)

func (*TxMsgData) GetData

func (m *TxMsgData) GetData() []*MsgData

func (*TxMsgData) Marshal

func (m *TxMsgData) Marshal() (dAtA []byte, err error)

func (*TxMsgData) MarshalTo

func (m *TxMsgData) MarshalTo(dAtA []byte) (int, error)

func (*TxMsgData) MarshalToSizedBuffer

func (m *TxMsgData) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*TxMsgData) ProtoMessage

func (*TxMsgData) ProtoMessage()

func (*TxMsgData) Reset

func (m *TxMsgData) Reset()

func (*TxMsgData) Size

func (m *TxMsgData) Size() (n int)

func (*TxMsgData) String

func (this *TxMsgData) String() string

func (*TxMsgData) Unmarshal

func (m *TxMsgData) Unmarshal(dAtA []byte) error

func (*TxMsgData) XXX_DiscardUnknown

func (m *TxMsgData) XXX_DiscardUnknown()

func (*TxMsgData) XXX_Marshal

func (m *TxMsgData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*TxMsgData) XXX_Merge

func (m *TxMsgData) XXX_Merge(src proto.Message)

func (*TxMsgData) XXX_Size

func (m *TxMsgData) XXX_Size() int

func (*TxMsgData) XXX_Unmarshal

func (m *TxMsgData) XXX_Unmarshal(b []byte) error

type TxResponse

type TxResponse struct {
	// The block height
	Height int64 `protobuf:"varint,1,opt,name=height,proto3" json:"height,omitempty"`
	// The transaction hash.
	TxHash string `protobuf:"bytes,2,opt,name=txhash,proto3" json:"txhash,omitempty"`
	// Namespace for the Code
	Codespace string `protobuf:"bytes,3,opt,name=codespace,proto3" json:"codespace,omitempty"`
	// Response code.
	Code uint32 `protobuf:"varint,4,opt,name=code,proto3" json:"code,omitempty"`
	// Result bytes, if any.
	Data string `protobuf:"bytes,5,opt,name=data,proto3" json:"data,omitempty"`
	// The output of the application's logger (raw string). May be
	// non-deterministic.
	RawLog string `protobuf:"bytes,6,opt,name=raw_log,json=rawLog,proto3" json:"raw_log,omitempty"`
	// The output of the application's logger (typed). May be non-deterministic.
	Logs ABCIMessageLogs `protobuf:"bytes,7,rep,name=logs,proto3,castrepeated=ABCIMessageLogs" json:"logs"`
	// Additional information. May be non-deterministic.
	Info string `protobuf:"bytes,8,opt,name=info,proto3" json:"info,omitempty"`
	// Amount of gas requested for transaction.
	GasWanted int64 `protobuf:"varint,9,opt,name=gas_wanted,json=gasWanted,proto3" json:"gas_wanted,omitempty"`
	// Amount of gas consumed by transaction.
	GasUsed int64 `protobuf:"varint,10,opt,name=gas_used,json=gasUsed,proto3" json:"gas_used,omitempty"`
	// The request transaction bytes.
	Tx *types.Any `protobuf:"bytes,11,opt,name=tx,proto3" json:"tx,omitempty"`
	// Time of the previous block. For heights > 1, it's the weighted median of
	// the timestamps of the valid votes in the block.LastCommit. For height == 1,
	// it's genesis time.
	Timestamp string `protobuf:"bytes,12,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
}

TxResponse defines a structure containing relevant tx data and metadata. The tags are stringified and the log is JSON decoded.

func NewResponseFormatBroadcastTx

func NewResponseFormatBroadcastTx(res *ctypes.ResultBroadcastTx) *TxResponse

NewResponseFormatBroadcastTx returns a TxResponse given a ResultBroadcastTx from tendermint

func NewResponseFormatBroadcastTxCommit

func NewResponseFormatBroadcastTxCommit(res *ctypes.ResultBroadcastTxCommit) *TxResponse

NewResponseFormatBroadcastTxCommit returns a TxResponse given a ResultBroadcastTxCommit from tendermint.

func NewResponseResultTx

func NewResponseResultTx(res *ctypes.ResultTx, anyTx *codectypes.Any, timestamp string) *TxResponse

NewResponseResultTx returns a TxResponse given a ResultTx from tendermint

func (*TxResponse) Descriptor

func (*TxResponse) Descriptor() ([]byte, []int)

func (TxResponse) Empty

func (r TxResponse) Empty() bool

Empty returns true if the response is empty

func (TxResponse) GetTx

func (r TxResponse) GetTx() Tx

GetTx unpacks the Tx from within a TxResponse and returns it

func (*TxResponse) Marshal

func (m *TxResponse) Marshal() (dAtA []byte, err error)

func (*TxResponse) MarshalTo

func (m *TxResponse) MarshalTo(dAtA []byte) (int, error)

func (*TxResponse) MarshalToSizedBuffer

func (m *TxResponse) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*TxResponse) ProtoMessage

func (*TxResponse) ProtoMessage()

func (*TxResponse) Reset

func (m *TxResponse) Reset()

func (*TxResponse) Size

func (m *TxResponse) Size() (n int)

func (TxResponse) String

func (r TxResponse) String() string

func (*TxResponse) Unmarshal

func (m *TxResponse) Unmarshal(dAtA []byte) error

func (TxResponse) UnpackInterfaces

func (r TxResponse) UnpackInterfaces(unpacker codectypes.AnyUnpacker) error

UnpackInterfaces implements UnpackInterfacesMessage.UnpackInterfaces

func (*TxResponse) XXX_DiscardUnknown

func (m *TxResponse) XXX_DiscardUnknown()

func (*TxResponse) XXX_Marshal

func (m *TxResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*TxResponse) XXX_Merge

func (m *TxResponse) XXX_Merge(src proto.Message)

func (*TxResponse) XXX_Size

func (m *TxResponse) XXX_Size() int

func (*TxResponse) XXX_Unmarshal

func (m *TxResponse) XXX_Unmarshal(b []byte) error

type TxResult

type TxResult struct {
	Code      uint32       `json:"code"`
	Log       string       `json:"log"`
	GasWanted int64        `json:"gas_wanted"`
	GasUsed   int64        `json:"gas_used"`
	Events    StringEvents `json:"events"`
}

type TxWithMemo

type TxWithMemo interface {
	Tx
	GetMemo() string
}

type TxWithTimeoutHeight

type TxWithTimeoutHeight interface {
	Tx

	GetTimeoutHeight() uint64
}

type Unit

type Unit struct {
	Denom string `json:"denom"` //denom of unit
	Scale uint8  `json:"scale"` //scale of unit
}

func NewUnit

func NewUnit(denom string, scale uint8) Unit

func (Unit) GetScaleFactor

func (u Unit) GetScaleFactor() Int

GetScaleFactor return 1 * 10^scale

type ValAddress

type ValAddress []byte

func (ValAddress) Bytes

func (va ValAddress) Bytes() []byte

Bytes returns the raw address bytes.

func (ValAddress) Empty

func (va ValAddress) Empty() bool

Returns boolean for whether an AccAddress is empty

func (ValAddress) Equals

func (va ValAddress) Equals(va2 ValAddress) bool

Returns boolean for whether two ValAddresses are equal

func (ValAddress) Format

func (va ValAddress) Format(s fmt.State, verb rune)

Format implements the fmt.Formatter interface. nolint: errcheck

func (ValAddress) Marshal

func (va ValAddress) Marshal() ([]byte, error)

Marshal returns the raw address bytes. It is needed for protobuf compatibility.

func (ValAddress) MarshalJSON

func (va ValAddress) MarshalJSON() ([]byte, error)

MarshalJSON marshals to JSON using Bech32.

func (ValAddress) String

func (va ValAddress) String() string

String implements the Stringer interface.

func (*ValAddress) Unmarshal

func (va *ValAddress) Unmarshal(data []byte) error

Unmarshal sets the address to the given data. It is needed for protobuf compatibility.

func (*ValAddress) UnmarshalJSON

func (va *ValAddress) UnmarshalJSON(data []byte) error

UnmarshalJSON unmarshals from JSON assuming Bech32 encoding.

type Validator

type Validator struct {
	Bech32Address    string `json:"bech32_address"`
	Bech32PubKey     string `json:"bech32_pubkey"`
	Address          string `json:"address"`
	PubKey           PubKey `json:"pub_key"`
	VotingPower      int64  `json:"voting_power"`
	ProposerPriority int64  `json:"proposer_priority"`
}

EventDataValidatorSetUpdates for SubscribeValidatorSetUpdates

func ParseValidators

func ParseValidators(cdc *codec.LegacyAmino, vs []*tmtypes.Validator) []Validator

type ValidatorUpdate

type ValidatorUpdate struct {
	PubKey PubKey `json:"pub_key"`
	Power  int64  `json:"power"`
}

func ParseValidatorUpdate

func ParseValidatorUpdate(updates []abci.ValidatorUpdate) []ValidatorUpdate

type WSClient

type WSClient interface {
	SubscribeNewBlock(builder *EventQueryBuilder, handler EventNewBlockHandler) (Subscription, Error)
	SubscribeTx(builder *EventQueryBuilder, handler EventTxHandler) (Subscription, Error)
	SubscribeNewBlockHeader(handler EventNewBlockHeaderHandler) (Subscription, Error)
	SubscribeValidatorSetUpdates(handler EventValidatorSetUpdatesHandler) (Subscription, Error)
	Unsubscribe(subscription Subscription) Error
}

Directories

Path Synopsis
tx

Jump to

Keyboard shortcuts

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