types

package
v0.0.0-...-f705c6e Latest Latest
Warning

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

Go to latest
Published: Jul 29, 2020 License: Apache-2.0 Imports: 35 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Precision = 18

	// bytes required to represent the above precision
	// Ceiling[Log2[999 999 999 999 999 999]]
	DecimalPrecisionBits = 60
)

number of decimal places

View Source
const (
	TypeKey      EventKey = "tm.event"
	ActionKey    EventKey = "action"
	SenderKey    EventKey = "sender"
	RecipientKey EventKey = "recipient"

	TxValue EventValue = "Tx"
)
View Source
const (
	// AddrLen defines a valid address length
	AddrLen = 20
)

Variables

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 (
	IRIS = Token{
		Symbol:        iris,
		Name:          "IRIS Network",
		Scale:         18,
		MinUnit:       irisAtto,
		InitialSupply: 2000000000,
		MaxSupply:     1000000000000,
		Mintable:      true,
		Owner:         "",
	}
)
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 ZeroDecCoin = DecCoin{}

Functions

func AccAddressFromBech32

func AccAddressFromBech32(address string) (AccAddress, Error)

AccAddressFromBech32 creates an AccAddress from a Bech32 string.

func AddUint64Overflow

func AddUint64Overflow(a, b uint64) (uint64, bool)

AddUint64Overflow performs the addition operation on two uint64 integers and returns a boolean on whether or not the result overflows.

func Bech32ifyConsPub

func Bech32ifyConsPub(pub crypto.PubKey) (string, error)

Bech32ifyConsPub returns a Bech32 encoded string containing the Bech32PrefixConsPub prefixfor a given consensus node's PubKey.

func CatchPanic

func CatchPanic(fn func(errMsg string))

func Cond

func Cond(key EventKey) *condition

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 DecimalEq

func DecimalEq(t *testing.T, exp, got Decimal) (*testing.T, bool, string, string, string)

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

func DecimalEqual

func DecimalEqual(d1s, d2s []Decimal) bool

test if two decimal arrays are equal

func DecsEqual

func DecsEqual(d1s, d2s []Dec) bool

test if two decimal arrays are equal

func GetConsPubKeyBech32

func GetConsPubKeyBech32(pubkey string) (pk crypto.PubKey, err error)

GetConsPubKeyBech32 creates a PubKey for a consensus node with a given public key string using the Bech32 Bech32PrefixConsPub prefix.

func GetFromBech32

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

GetFromBech32 decodes a bytestring from a Bech32 encoded 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 IsCoinMinDenomValid

func IsCoinMinDenomValid(denom string) bool

func RegisterCodec

func RegisterCodec(cdc Codec)

func SetNetwork

func SetNetwork(network Network)

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 UintOverflow

func UintOverflow(x Uint) bool

UintOverflow returns true if a given unsigned integer overflows and false otherwise.

func ValAddressFromBech32

func ValAddressFromBech32(address string) (ValAddress, Error)

ValAddressFromBech32 creates a ValAddress from a Bech32 string.

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

ValidateDenom validates a denomination string returning an error if it is invalid.

Types

type AES

type AES struct{}

func (AES) Decrypt

func (a AES) Decrypt(cryted string, key string) (string, error)

func (AES) Encrypt

func (a AES) Encrypt(orig string, key string) (string, error)

type AccAddress

type AccAddress []byte

AccAddress a wrapper around bytes meant to represent an account address. When marshaled to a string or JSON, it uses Bech32.

func MustAccAddressFromBech32

func MustAccAddressFromBech32(address string) AccAddress

func (AccAddress) Bytes

func (aa AccAddress) Bytes() []byte

Bytes returns the raw address bytes.

func (AccAddress) Empty

func (aa AccAddress) Empty() bool

Returns boolean for whether an AccAddress is empty

func (AccAddress) Equals

func (aa AccAddress) Equals(aa2 AccAddress) bool

Returns boolean for whether two AccAddresses are equal

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

String implements the Stringer interface.

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 AccountAccess

type AccountAccess interface {
	Write(name string, store Store) error
	Read(name string) (Store, error)
	Delete(name string) error
	Has(name string) bool
}

type AccountI

type AccountI interface {
	GetAddress() AccAddress
	SetAddress(AccAddress) error // errors if already set.

	GetPubKey() crypto.PubKey // can return nil.
	SetPubKey(crypto.PubKey) error

	GetAccountNumber() uint64
	SetAccountNumber(uint64) error

	GetSequence() uint64
	SetSequence(uint64) error
}

AccountI is an interface used to store coins at a given address within state. It presumes a notion of sequence numbers for replay protection, a notion of account numbers for replay protection for previously pruned accounts, and a pubkey for authentication purposes.

Many complex conditions can be used in the concrete struct which implements AccountI.

type AccountQuery

type AccountQuery interface {
	QueryAccount(address string) (BaseAccount, Error)
	QueryAddress(name 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 AminoCodec

type AminoCodec struct {
	*amino.Codec
}

func (AminoCodec) RegisterConcrete

func (cdc AminoCodec) RegisterConcrete(o interface{}, name string)

func (AminoCodec) RegisterInterface

func (cdc AminoCodec) RegisterInterface(ptr interface{})

type Balances

type Balances []struct {
	Denom  string `json:"denom"`
	Amount string `json:"amount"`
}

func (*Balances) Convert

func (acc *Balances) Convert() interface{}

type BaseAccount

type BaseAccount struct {
	Address       AccAddress `json:"address"`
	PubKey        []byte     `json:"public_key"`
	AccountNumber uint64     `json:"account_number"`
	Sequence      uint64     `json:"sequence"`
}

func (BaseAccount) Convert

func (acc BaseAccount) Convert() interface{}

func (BaseAccount) GetAccountNumber

func (acc BaseAccount) GetAccountNumber() uint64

GetAccountNumber - Implements AccountI

func (BaseAccount) GetAddress

func (acc BaseAccount) GetAddress() AccAddress

GetAddress - Implements sdk.AccountI.

func (BaseAccount) GetPubKey

func (acc BaseAccount) GetPubKey() (pk crypto.PubKey)

GetPubKey - Implements sdk.AccountI.

func (BaseAccount) GetSequence

func (acc BaseAccount) GetSequence() uint64

GetSequence - Implements sdk.AccountI.

func (*BaseAccount) SetAccountNumber

func (acc *BaseAccount) SetAccountNumber(accNumber uint64) error

SetAccountNumber - Implements AccountI

func (*BaseAccount) SetAddress

func (acc *BaseAccount) SetAddress(addr AccAddress) error

SetAddress - Implements sdk.AccountI.

func (*BaseAccount) SetPubKey

func (acc *BaseAccount) SetPubKey(pubKey crypto.PubKey) error

SetPubKey - Implements sdk.AccountI.

func (*BaseAccount) SetSequence

func (acc *BaseAccount) SetSequence(seq uint64) error

SetSequence - Implements sdk.AccountI.

func (BaseAccount) Validate

func (acc BaseAccount) Validate() error

Validate checks for errors on the account fields

type BaseClient

type BaseClient interface {
	TxManager
	TokenManager
	Queries
	TokenConvert
	TmClient
	Logger
}

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"`
}

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, block *tmtypes.Block) Block

type BlockParams

type BlockParams struct {
	MaxBytes int64 `json:"max_bytes"`
	MaxGas   int64 `json:"max_gas"`
	// Minimum time increment between consecutive blocks (in milliseconds)
	// Not exposed to the application.
	TimeIotaMs int64 `json:"time_iota_ms"`
}

BlockParams define limits on the block size and gas plus minimum time between blocks.

type BlockResult

type BlockResult struct {
	Height                int64               `json:"height"`
	TxsResults            []ResponseDeliverTx `json:"txs_results"`
	BeginBlockEvents      []Event             `json:"begin_block_events"`
	EndBlockEvents        []Event             `json:"end_block_events"`
	ValidatorUpdates      []ValidatorUpdate   `json:"validator_updates"`
	ConsensusParamUpdates ConsensusParams     `json:"consensus_param_updates"`
}

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 {
	// IRISHub node rpc address
	NodeURI string

	// IRISHub Network type, mainnet / testnet
	Network Network

	// IRISHub chain-id
	ChainID string

	// Default Gas limit
	Gas uint64

	// Default Fee amount of iris-atto
	Fee DecCoins

	// PrivKey DAO Implements
	KeyDAO KeyDAO

	// Transaction broadcast Mode
	Mode BroadcastMode

	//
	StoreType StoreType

	//Transaction broadcast timeout
	Timeout time.Duration

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

	//Database file storage location
	DBRootDir string
}

type Code

type Code uint32
const (
	// RootCodespace is the codespace for all errors defined in irishub
	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 Codec

type Codec interface {
	MarshalJSON(o interface{}) ([]byte, error)
	UnmarshalJSON(bz []byte, ptr interface{}) error

	MarshalBinaryLengthPrefixed(o interface{}) ([]byte, error)
	UnmarshalBinaryLengthPrefixed(bz []byte, ptr interface{}) error

	RegisterConcrete(o interface{}, name string)
	RegisterInterface(ptr interface{})

	MustMarshalBinaryBare(o interface{}) []byte
	MustUnmarshalBinaryBare(bz []byte, ptr interface{})

	UnmarshalBinaryBare(bz []byte, ptr interface{}) error
}

func NewAminoCodec

func NewAminoCodec() Codec

type Coin

type Coin struct {
	Denom string `json:"denom"`
	// To allow the use of unsigned integers (see: #1273) a larger refactor will
	// need to be made. So we use signed integers for now with safety measures in
	// place preventing negative values being used.
	Amount Int `json:"amount"`
}

func NewCoin

func NewCoin(denom string, amount Int) Coin

NewCoin returns a new coin with a denomination and amount. It will panic if the amount is negative.

func ParseCoin

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

func (Coin) Add

func (coin Coin) Add(coinB Coin) Coin

Adds amounts of two coins with same denom. If the coins differ in denom then it panics.

func (Coin) IsEqual

func (coin Coin) IsEqual(other Coin) bool

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

func (Coin) IsNegative

func (coin Coin) IsNegative() bool

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

func (Coin) IsPositive

func (coin Coin) IsPositive() bool

IsPositive returns true if coin amount is positive.

func (Coin) IsValid

func (coin Coin) IsValid() bool

IsValid returns true if the coin amount is non-negative and the coin is denominated in its minimum unit

func (Coin) IsValidIrisAtto

func (coin Coin) IsValidIrisAtto() bool

func (Coin) IsZero

func (coin Coin) IsZero() bool

IsZero returns if this coin has zero amount

func (Coin) String

func (coin Coin) String() string

String provides a human-readable representation of a coin

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) (Coin, error)

ToMainCoin return the main denom coin from args

func (CoinType) ConvertToMinCoin

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

ToMinCoin return the min denom coin from args

type Coins

type Coins []Coin

Coins is a set of Coin, one per currency

func NewCoins

func NewCoins(coins ...Coin) Coins

NewCoins constructs a new coin set.

func ParseCoins

func ParseCoins(coinsStr string) (coins Coins, err error)

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

func (Coins) Add

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

Add adds two sets of coins.

e.g. {2A} + {A, 2B} = {3A, 2B} {2A} + {0B} = {2A}

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

CONTRACT: Add will never return Coins where one Coin has a negative amount. In other words, IsValid will always return true.

func (Coins) Empty

func (coins Coins) Empty() bool

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

func (Coins) IsAnyNegative

func (coins Coins) IsAnyNegative() bool

IsAnyNegative returns true if at least one coin has negative amount.

func (Coins) IsEqual

func (coins Coins) IsEqual(coinsB Coins) bool

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

func (Coins) IsValid

func (coins Coins) IsValid() bool

IsValid asserts the coins are valid and sorted.

func (Coins) Len

func (coins Coins) Len() int

nolint

func (Coins) Less

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

func (Coins) SafeAdd

func (coins Coins) SafeAdd(coinsB Coins) (Coins, bool)

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

func (Coins) Sort

func (coins Coins) Sort() Coins

Sort is a helper function to sort the set of coins inplace

func (Coins) String

func (coins Coins) String() string

func (Coins) Swap

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

type ConsAddress

type ConsAddress []byte

ConsAddress defines a wrapper around bytes meant to present a consensus node. When marshaled to a string or JSON, it uses Bech32.

func ConsAddressFromBech32

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

ConsAddressFromBech32 creates a ConsAddress from a Bech32 string.

func ConsAddressFromHex

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

ConsAddressFromHex creates a ConsAddress from a hex string.

func (ConsAddress) Bytes

func (ca ConsAddress) Bytes() []byte

Bytes returns the raw address bytes.

func (ConsAddress) String

func (ca ConsAddress) String() string

String implements the Stringer interface.

type ConsensusParams

type ConsensusParams struct {
	Block     BlockParams     `json:"block"`
	Evidence  EvidenceParams  `json:"evidence"`
	Validator ValidatorParams `json:"validator"`
}

func ParseConsensusParamUpdates

func ParseConsensusParamUpdates(con *abci.ConsensusParams) ConsensusParams

type Crypto

type Crypto interface {
	Encrypt(data string, password string) (string, error)
	Decrypt(data string, password string) (string, 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.

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 `json:"denom"`
	Amount Dec    `json:"amount"`
}

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

func NewDecCoin

func NewDecCoin(denom string, amount Int) DecCoin

NewDecCoin creates a new DecCoin instance from an Int.

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) 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) 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.

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

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 Decimal

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

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

func MaxDecimal

func MaxDecimal(d1, d2 Decimal) Decimal

maximum decimal between two

func MinDecimal

func MinDecimal(d1, d2 Decimal) Decimal

minimum decimal between two

func MustNewDecimalFromStr

func MustNewDecimalFromStr(s string) Decimal

Decimal from string, panic on error

func NewDecimal

func NewDecimal(i int64) Decimal

create a new Decimal from integer assuming whole number

func NewDecimalFromBigInt

func NewDecimalFromBigInt(i *big.Int) Decimal

create a new Decimal from big integer assuming whole numbers CONTRACT: prec <= precision

func NewDecimalFromBigIntWithPrec

func NewDecimalFromBigIntWithPrec(i *big.Int, prec int64) Decimal

create a new Decimal from big integer assuming whole numbers CONTRACT: prec <= precision

func NewDecimalFromInt

func NewDecimalFromInt(i Int) Decimal

create a new Decimal from big integer assuming whole numbers CONTRACT: prec <= precision

func NewDecimalFromIntWithPrec

func NewDecimalFromIntWithPrec(i Int, prec int64) Decimal

create a new Decimal from big integer with decimal place at prec CONTRACT: prec <= precision

func NewDecimalFromStr

func NewDecimalFromStr(str string) (Decimal, 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 NewDecimalWithPrec

func NewDecimalWithPrec(i, prec int64) Decimal

create a new Decimal from integer with decimal place at prec CONTRACT: prec <= precision

func OneDecimal

func OneDecimal() Decimal

func SmallestDecimal

func SmallestDecimal() Decimal

func ZeroDecimal

func ZeroDecimal() Decimal

func (Decimal) Abs

func (d Decimal) Abs() Decimal

func (Decimal) Add

func (d Decimal) Add(d2 Decimal) Decimal

addition

func (Decimal) BigInt

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

BigInt returns a copy of the underlying big.Int.

func (Decimal) Ceil

func (d Decimal) Ceil() Decimal

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

func (Decimal) Equal

func (d Decimal) Equal(d2 Decimal) bool

func (Decimal) Format

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

format decimal state

func (Decimal) GT

func (d Decimal) GT(d2 Decimal) bool

func (Decimal) GTE

func (d Decimal) GTE(d2 Decimal) bool

func (Decimal) IsInteger

func (d Decimal) IsInteger() bool

is integer, e.g. decimals are zero

func (Decimal) IsNegative

func (d Decimal) IsNegative() bool

func (Decimal) IsNil

func (d Decimal) IsNil() bool

______________________________________________________________________________________________ nolint

func (Decimal) IsPositive

func (d Decimal) IsPositive() bool

func (Decimal) IsZero

func (d Decimal) IsZero() bool

func (Decimal) LT

func (d Decimal) LT(d2 Decimal) bool

func (Decimal) LTE

func (d Decimal) LTE(d2 Decimal) bool

func (Decimal) Marshal

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

Marshal implements the gogo proto custom type interface.

func (Decimal) MarshalAmino

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

Override Amino binary serialization by proxying to protobuf.

func (Decimal) MarshalJSON

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

MarshalJSON marshals the decimal

func (*Decimal) MarshalTo

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

MarshalTo implements the gogo proto custom type interface.

func (Decimal) MarshalYAML

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

MarshalYAML returns the YAML representation.

func (Decimal) Mul

func (d Decimal) Mul(d2 Decimal) Decimal

multiplication

func (Decimal) MulInt

func (d Decimal) MulInt(i Int) Decimal

multiplication

func (Decimal) MulInt64

func (d Decimal) MulInt64(i int64) Decimal

MulInt64 - multiplication with int64

func (Decimal) MulTruncate

func (d Decimal) MulTruncate(d2 Decimal) Decimal

multiplication truncate

func (Decimal) Neg

func (d Decimal) Neg() Decimal

func (Decimal) Quo

func (d Decimal) Quo(d2 Decimal) Decimal

quotient

func (Decimal) QuoInt

func (d Decimal) QuoInt(i Int) Decimal

quotient

func (Decimal) QuoInt64

func (d Decimal) QuoInt64(i int64) Decimal

QuoInt64 - quotient with int64

func (Decimal) QuoRoundUp

func (d Decimal) QuoRoundUp(d2 Decimal) Decimal

quotient, round up

func (Decimal) QuoTruncate

func (d Decimal) QuoTruncate(d2 Decimal) Decimal

quotient truncate

func (Decimal) RoundInt

func (d Decimal) RoundInt() Int

RoundInt round the decimal using bankers rounding

func (Decimal) RoundInt64

func (d Decimal) RoundInt64() int64

RoundInt64 rounds the decimal using bankers rounding

func (*Decimal) Size

func (d *Decimal) Size() int

Size implements the gogo proto custom type interface.

func (Decimal) String

func (d Decimal) String() string

func (Decimal) Sub

func (d Decimal) Sub(d2 Decimal) Decimal

subtraction

func (Decimal) TruncateDec

func (d Decimal) TruncateDec() Decimal

TruncateDec truncates the decimals from the number and returns a Decimal

func (Decimal) TruncateInt

func (d Decimal) TruncateInt() Int

TruncateInt truncates the decimals from the number and returns an Int

func (Decimal) TruncateInt64

func (d Decimal) TruncateInt64() int64

TruncateInt64 truncates the decimals from the number and returns an int64

func (*Decimal) Unmarshal

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

Unmarshal implements the gogo proto custom type interface.

func (*Decimal) UnmarshalAmino

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

func (*Decimal) UnmarshalJSON

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

UnmarshalJSON defines custom decoding scheme

type DefaultNodeInfo

type DefaultNodeInfo struct {
	ProtocolVersion ProtocolVersion      `json:"protocol_version"`
	DefaultNodeID   string               `json:"id"`          // authenticated identifier
	ListenAddr      string               `json:"listen_addr"` // accepting incoming
	Network         string               `json:"network"`     // network/chain ID
	Version         string               `json:"version"`     // major.minor.revision
	Channels        string               `json:"channels"`    // channels this node knows about
	Moniker         string               `json:"moniker"`     // arbitrary moniker
	Other           DefaultNodeInfoOther `json:"other"`       // other application specific data
}

type DefaultNodeInfoOther

type DefaultNodeInfoOther struct {
	TxIndex    string `json:"tx_index"`
	RPCAddress string `json:"rpc_address"`
}

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 irishub error to sdk error

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 struct {
	Type       string `json:"type"`
	Attributes []Pair `json:"attributes"`
}

func ParseBlockEvent

func ParseBlockEvent(event []abci.Event) []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 tmtypes.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     StdTx    `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 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 EventType

type EventType string

type EventValidatorSetUpdatesHandler

type EventValidatorSetUpdatesHandler func(EventDataValidatorSetUpdates)

type EventValue

type EventValue string

type EvidenceParams

type EvidenceParams struct {
	MaxAgeNumBlocks int64         `json:"max_age_num_blocks"` // only accept new evidence more recent than this
	MaxAgeDuration  time.Duration `json:"max_age_duration"`
}

EvidenceParams determine how we handle evidence of malfeasance.

type GenesisDoc

type GenesisDoc struct {
	GenesisTime     time.Time          `json:"genesis_time"`
	ChainID         string             `json:"chain_id"`
	ConsensusParams *ConsensusParams   `json:"consensus_params,omitempty"`
	Validators      []GenesisValidator `json:"validators,omitempty"`
	AppHash         string             `json:"app_hash"`
	AppState        string             `json:"app_state,omitempty"`
}

GenesisDoc defines the initial conditions for a tendermint blockchain, in particular its validator set.

func ParseGenesis

func ParseGenesis(g *types.GenesisDoc) GenesisDoc

type GenesisValidator

type GenesisValidator struct {
	Address string `json:"address"`
	PubKey  PubKey `json:"pub_key"`
	Power   int64  `json:"power"`
	Name    string `json:"name"`
}

GenesisValidator is an initial validator.

type HashedParams

type HashedParams struct {
	BlockMaxBytes int64
	BlockMaxGas   int64
}

HashedParams is a subset of ConsensusParams. It is amino encoded and hashed into the Header.ConsensusHash.

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^255-1) to 2^255-1

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) Div

func (i Int) Div(i2 Int) (res Int)

Div divides Int with Int

func (Int) DivRaw

func (i Int) DivRaw(i2 int64) Int

DivRaw divides Int with int64

func (Int) Equal

func (i Int) Equal(i2 Int) bool

EQ 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

func (Int) IsPositive

func (i Int) IsPositive() bool

IsPositive returns true if Int is positive

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) MarshalAmino

func (i Int) MarshalAmino() (string, error)

MarshalAmino defines custom encoding scheme

func (Int) MarshalJSON

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

MarshalJSON defines custom encoding scheme

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) Sign

func (i Int) Sign() int

Sign returns sign of Int

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) ToDecimal

func (i Int) ToDecimal() Decimal

ToDec converts Int to Dec

func (*Int) UnmarshalAmino

func (i *Int) UnmarshalAmino(text string) error

UnmarshalAmino defines custom decoding scheme

func (*Int) UnmarshalJSON

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

UnmarshalJSON defines custom decoding scheme

type KeyDAO

type KeyDAO interface {
	AccountAccess
	Crypto
}

func NewKeyDaoWithAES

func NewKeyDaoWithAES(account AccountAccess) KeyDAO

NewKeyDaoWithAES return a KeyDAO object. by default,the SDK's own encryption(AES) method is used

func NewLevelDB

func NewLevelDB(rootDir string, cdc Codec) (KeyDAO, error)

NewLevelDB initialize a keybase based on the configuration. Use leveldb as storage

type KeyManager

type KeyManager interface {
	Sign(name, password string, data []byte) (Signature, error)
	Insert(name, password string) (string, string, error)
	Recover(name, password, mnemonic string) (string, error)
	Import(name, password string, keystore string) (address string, err error)
	Export(name, password, encryptKeystorePwd string) (keystore string, err error)
	Delete(name string) error
	Query(name string) (address AccAddress, err error)
}

type KeystoreInfo

type KeystoreInfo struct {
	Keystore string `json:"keystore"`
}

func (KeystoreInfo) GetType

func (k KeystoreInfo) GetType() StoreType

type LevelDB

type LevelDB struct {
	AES
	// contains filtered or unexported fields
}

func (LevelDB) Delete

func (k LevelDB) Delete(name string) error

Delete delete a key from the local store

func (LevelDB) Has

func (k LevelDB) Has(name string) bool

Delete delete a key from the local store

func (LevelDB) Read

func (k LevelDB) Read(name string) (store Store, err error)

Read read a key information from the local store

func (LevelDB) Write

func (k LevelDB) Write(name string, store Store) error

Write add a key information to the local store

type Logger

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

type MemoryDB

type MemoryDB struct {
	AES
	// contains filtered or unexported fields
}

Use memory as storage, use with caution in build environment

func NewMemoryDB

func NewMemoryDB() MemoryDB

func (MemoryDB) Delete

func (m MemoryDB) Delete(name string) error

func (MemoryDB) Has

func (m MemoryDB) Has(name string) bool

func (MemoryDB) Read

func (m MemoryDB) Read(name string) (Store, error)

func (MemoryDB) Write

func (m MemoryDB) Write(name string, store Store) error

type Module

type Module interface {
	RegisterCodec(cdc Codec)
	Name() string
}

type Msg

type Msg interface {
	// Return the message type.
	// Must be alphanumeric or empty.
	Route() string

	// Returns a human-readable string for the message, intended for utilization
	// within tags
	Type() string

	// ValidateBasic does a simple validation check that
	// doesn't require access to any other information.
	ValidateBasic() error

	// Get the canonical byte representation of the Msg.
	GetSignBytes() []byte

	// Signers returns the addrs of signers that must sign.
	// CONTRACT: All signatures must be present to be valid.
	// CONTRACT: Returns addrs in some deterministic order.
	GetSigners() []AccAddress
}

Msg defines the interface a transaction message must fulfill.

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 Network

type Network string
const (
	Testnet Network = "testnet"
	Mainnet Network = "mainnet"
)

type Pair

type Pair struct {
	Key   string `json:"key"`
	Value string `json:"value"`
}

func ParsePair

func ParsePair(kvPairs []kv.Pair) []Pair

type ParamQuery

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

type PrivKeyInfo

type PrivKeyInfo struct {
	PrivKey string `json:"priv_key"`
	Address string `json:"address"`
}

func (PrivKeyInfo) GetType

func (p PrivKeyInfo) GetType() StoreType

type ProtocolVersion

type ProtocolVersion struct {
	P2P   uint64 `json:"p2p"`
	Block uint64 `json:"block"`
	App   uint64 `json:"app"`
}

type PubKey

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

type Queries

type Queries interface {
	StoreQuery
	AccountQuery
	TxQuery
	ParamQuery
}

type Response

type Response interface {
	Convert() interface{}
}

The purpose of this interface is to convert the irishub system type to the user receiving type and standardize the user interface

type ResponseDeliverTx

type ResponseDeliverTx struct {
	Code      uint32  `json:"code"`
	Data      string  `json:"data"`
	Log       string  `json:"log"`
	Info      string  `json:"info"`
	GasWanted int64   `json:"gas_wanted"`
	GasUsed   int64   `json:"gas_used"`
	Events    []Event `json:"events"`
	Codespace string  `json:"codespace"`
}

func ParseTxsResults

func ParseTxsResults(deliver []*abci.ResponseDeliverTx) []ResponseDeliverTx

type ResultBeginBlock

type ResultBeginBlock struct {
	Tags Tags `json:"tags"`
}

type ResultEndBlock

type ResultEndBlock struct {
	Tags             Tags              `json:"tags"`
	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 ResultStatus

type ResultStatus struct {
	NodeInfo      DefaultNodeInfo `json:"node_info"`
	SyncInfo      SyncInfo        `json:"sync_info"`
	ValidatorInfo ValidatorInfo   `json:"validator_info"`
}

Node Status

func ParseNodeStatus

func ParseNodeStatus(rs *ctypes.ResultStatus) ResultStatus

type ResultTx

type ResultTx struct {
	GasWanted int64  `json:"gas_wanted"`
	GasUsed   int64  `json:"gas_used"`
	Tags      Tags   `json:"tags"`
	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 Signature

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

type SplitAble

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

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 Coins) StdFee

func (StdFee) Bytes

func (fee StdFee) Bytes() []byte

Bytes returns the encoded bytes of a StdFee.

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) []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

GetMemo returns the memo

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() [][]byte

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 Store

type Store interface {
	GetType() StoreType
}

type StoreQuery

type StoreQuery interface {
	QueryWithResponse(path string, data interface{}, result Response) error
	Query(path string, data interface{}) ([]byte, error)
}

type StoreType

type StoreType int
const (
	Keystore StoreType = 0
	PrivKey  StoreType = 1
)

type Subscription

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

type SyncInfo

type SyncInfo struct {
	LatestBlockHash   string    `json:"latest_block_hash"`
	LatestAppHash     string    `json:"latest_app_hash"`
	LatestBlockHeight int64     `json:"latest_block_height"`
	LatestBlockTime   time.Time `json:"latest_block_time"`

	EarliestBlockHash   string    `json:"earliest_block_hash"`
	EarliestAppHash     string    `json:"earliest_app_hash"`
	EarliestBlockHeight int64     `json:"earliest_block_height"`
	EarliestBlockTime   time.Time `json:"earliest_block_time"`

	CatchingUp bool `json:"catching_up"`
}

Info about the node's syncing state

type Tag

type Tag struct {
	Key   string `json:"key"`
	Value string `json:"value"`
}

type Tags

type Tags []Tag

func (Tags) GetValue

func (t Tags) GetValue(key string) string

func (Tags) GetValues

func (t Tags) GetValues(key string) (values []string)

func (Tags) String

func (t Tags) String() string

type Token

type Token struct {
	Symbol        string `json:"symbol"`
	Name          string `json:"name"`
	Scale         uint8  `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) Convert

func (t Token) Convert() interface{}

func (Token) GetCoinType

func (t Token) GetCoinType() CoinType

GetCoinType returns CoinType

func (Token) GetMinUnit

func (t Token) GetMinUnit() string

GetMinUnit returns MinUnit

type TokenConvert

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

type TokenData

type TokenData struct {
	TypeName string `json:"type"`
	Value    Token  `json:"value"`
}

func (TokenData) Convert

func (t TokenData) Convert() interface{}

type TokenManager

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

type Tokens

type Tokens []TokenData

func (Tokens) Convert

func (t Tokens) Convert() interface{}

type Tx

type Tx interface {

	// Gets the all the transaction's messages.
	GetMsgs() []Msg
	// ValidateBasic does a simple and lightweight validation check that doesn't
	// require access to any other information.
	ValidateBasic() error
}

Transactions objects must fulfill the Tx

type TxContext

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

TxContext implements a transaction context created in SDK modules.

func (*TxContext) AccountNumber

func (txCtx *TxContext) AccountNumber() uint64

AccountNumber returns accountNumber.

func (*TxContext) Address

func (txCtx *TxContext) Address() string

Address returns the address.

func (*TxContext) Build

func (txCtx *TxContext) Build(msgs []Msg) (StdSignMsg, error)

Build builds a single message to be signed from a TxContext given a set of messages. It returns an error if a Fee is supplied but cannot be parsed.

func (*TxContext) BuildAndSign

func (txCtx *TxContext) BuildAndSign(name string, msgs []Msg) (StdTx, error)

func (*TxContext) ChainID

func (txCtx *TxContext) ChainID() string

ChainID returns the chainID of the current chain.

func (*TxContext) Codec

func (txCtx *TxContext) Codec() Codec

Codec returns codec.

func (*TxContext) Fee

func (txCtx *TxContext) Fee() Coins

Fee returns the fee of the transaction.

func (*TxContext) Gas

func (txCtx *TxContext) Gas() uint64

Gas returns the gas of the transaction.

func (*TxContext) KeyManager

func (txCtx *TxContext) KeyManager() KeyManager

KeyManager returns keyManager.

func (*TxContext) Memo

func (txCtx *TxContext) Memo() string

Memo returns memo.

func (*TxContext) Mode

func (txCtx *TxContext) Mode() BroadcastMode

Mode returns mode.

func (*TxContext) Network

func (txCtx *TxContext) Network() Network

Network returns network.

func (*TxContext) Password

func (txCtx *TxContext) Password() string

Password returns password.

func (*TxContext) Sequence

func (txCtx *TxContext) Sequence() uint64

Sequence returns the sequence of the account.

func (*TxContext) Sign

func (txCtx *TxContext) Sign(name string, msg StdSignMsg) (StdTx, error)

Sign signs a transaction given a name, passphrase, and a single message to signed. An error is returned if signing fails.

func (*TxContext) Simulate

func (txCtx *TxContext) Simulate() bool

Simulate returns simulate.

func (*TxContext) WithAccountNumber

func (txCtx *TxContext) WithAccountNumber(accnum uint64) *TxContext

WithAccountNumber returns a pointer of the context with an account number.

func (*TxContext) WithAddress

func (txCtx *TxContext) WithAddress(address string) *TxContext

WithAddress returns a pointer of the context with a password.

func (*TxContext) WithChainID

func (txCtx *TxContext) WithChainID(chainID string) *TxContext

WithChainID returns a pointer of the context with an updated ChainID.

func (*TxContext) WithCodec

func (txCtx *TxContext) WithCodec(cdc Codec) *TxContext

WithCodec returns a pointer of the context with an updated codec.

func (*TxContext) WithFee

func (txCtx *TxContext) WithFee(fee Coins) *TxContext

WithFee returns a pointer of the context with an updated Fee.

func (*TxContext) WithGas

func (txCtx *TxContext) WithGas(gas uint64) *TxContext

WithGas returns a pointer of the context with an updated Gas.

func (*TxContext) WithKeyManager

func (txCtx *TxContext) WithKeyManager(keyManager KeyManager) *TxContext

WithAccountNumber returns a pointer of the context with a keyDao.

func (*TxContext) WithMemo

func (txCtx *TxContext) WithMemo(memo string) *TxContext

WithMemo returns a pointer of the context with an updated memo.

func (*TxContext) WithMode

func (txCtx *TxContext) WithMode(mode BroadcastMode) *TxContext

WithMode returns a pointer of the context with a Mode.

func (*TxContext) WithNetwork

func (txCtx *TxContext) WithNetwork(network Network) *TxContext

WithNetwork returns a pointer of the context with a Network.

func (*TxContext) WithPassword

func (txCtx *TxContext) WithPassword(password string) *TxContext

WithRPC returns a pointer of the context with a password.

func (*TxContext) WithSequence

func (txCtx *TxContext) WithSequence(sequence uint64) *TxContext

WithSequence returns a pointer of the context with an updated sequence number.

func (*TxContext) WithSimulate

func (txCtx *TxContext) WithSimulate(simulate bool) *TxContext

WithRPC returns a pointer of the context with a simulate.

type TxManager

type TxManager interface {
	BuildAndSend(msg []Msg, baseTx BaseTx) (ResultTx, Error)
	SendMsgBatch(msgs Msgs, baseTx BaseTx) ([]ResultTx, Error)
	Broadcast(signedTx StdTx, mode BroadcastMode) (ResultTx, Error)
}

type TxQuery

type TxQuery interface {
	QueryTx(hash string) (ResultQueryTx, error)
	QueryTxs(builder *EventQueryBuilder, page, size int) (ResultSearchTxs, error)
}

type TxResult

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

type Uint

type Uint 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 0 to 2^256-1

func MinUint

func MinUint(i1, i2 Uint) Uint

Return the minimum of the Uints

func NewUint

func NewUint(n uint64) Uint

NewUint constructs Uint from int64

func NewUintFromBigInt

func NewUintFromBigInt(i *big.Int) Uint

NewUintFromBigUint constructs Uint from big.Uint

func NewUintFromString

func NewUintFromString(s string) (res Uint, ok bool)

NewUintFromString constructs Uint from string

func NewUintWithDecimal

func NewUintWithDecimal(n uint64, dec int) Uint

NewUintWithDecimal constructs Uint with decimal Result value is n*10^dec

func OneUint

func OneUint() Uint

OneUint returns Uint value with one

func ZeroUint

func ZeroUint() Uint

ZeroUint returns Uint value with zero

func (Uint) Add

func (i Uint) Add(i2 Uint) (res Uint)

Add adds Uint from another

func (Uint) AddRaw

func (i Uint) AddRaw(i2 uint64) Uint

AddRaw adds uint64 to Uint

func (Uint) BigInt

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

BigInt converts Uint to big.Unt

func (Uint) Div

func (i Uint) Div(i2 Uint) (res Uint)

Div divides Uint with Uint

func (Uint) DivRaw

func (i Uint) DivRaw(i2 uint64) Uint

Div divides Uint with uint64

func (Uint) Equal

func (i Uint) Equal(i2 Uint) bool

EQ compares two Uints

func (Uint) GT

func (i Uint) GT(i2 Uint) bool

GT returns true if first Uint is greater than second

func (Uint) IsUint64

func (i Uint) IsUint64() bool

IsUint64 returns true if Uint64() not panics

func (Uint) IsZero

func (i Uint) IsZero() bool

IsZero returns true if Uint is zero

func (Uint) LT

func (i Uint) LT(i2 Uint) bool

LT returns true if first Uint is lesser than second

func (Uint) MarshalAmino

func (i Uint) MarshalAmino() (string, error)

MarshalAmino defines custom encoding scheme

func (Uint) MarshalJSON

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

MarshalJSON defines custom encoding scheme

func (Uint) Mod

func (i Uint) Mod(i2 Uint) Uint

Mod returns remainder after dividing with Uint

func (Uint) ModRaw

func (i Uint) ModRaw(i2 uint64) Uint

ModRaw returns remainder after dividing with uint64

func (Uint) Mul

func (i Uint) Mul(i2 Uint) (res Uint)

Mul multiples two Uints

func (Uint) MulRaw

func (i Uint) MulRaw(i2 uint64) Uint

MulRaw multipies Uint and uint64

func (Uint) SafeSub

func (i Uint) SafeSub(i2 Uint) (Uint, bool)

SafeSub attempts to subtract one Uint from another. A boolean is also returned indicating if the result contains integer overflow.

func (Uint) Sign

func (i Uint) Sign() int

Sign returns sign of Uint

func (Uint) String

func (i Uint) String() string

Human readable string

func (Uint) Sub

func (i Uint) Sub(i2 Uint) (res Uint)

Sub subtracts Uint from another

func (Uint) SubRaw

func (i Uint) SubRaw(i2 uint64) Uint

SubRaw subtracts uint64 from Uint

func (Uint) Uint64

func (i Uint) Uint64() uint64

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

func (*Uint) UnmarshalAmino

func (i *Uint) UnmarshalAmino(text string) error

UnmarshalAmino defines custom decoding scheme

func (*Uint) UnmarshalJSON

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

UnmarshalJSON defines custom decoding scheme

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

ValAddress defines a wrapper around bytes meant to present a validator's operator. When marshaled to a string or JSON, it uses Bech32.

func ValAddressFromHex

func ValAddressFromHex(address string) (addr ValAddress, err error)

ValAddressFromHex creates a ValAddress from a hex string.

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 {
	Address          string `json:"address"`
	PubKey           PubKey `json:"pub_key"`
	VotingPower      int64  `json:"voting_power"`
	ProposerPriority int64  `json:"proposer_priority"`
}

Volatile state for each Validator

func ParseValidators

func ParseValidators(vs []*tmtypes.Validator) []Validator

type ValidatorInfo

type ValidatorInfo struct {
	Address     string `json:"address"`
	PubKey      PubKey `json:"pub_key"`
	VotingPower int64  `json:"voting_power"`
}

Info about the node's validator

type ValidatorParams

type ValidatorParams struct {
	PubKeyTypes []string `json:"pub_key_types"`
}

ValidatorParams restrict the public key types validators can use. NOTE: uses ABCI pubkey naming, not Amino names.

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
}

Jump to

Keyboard shortcuts

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