types

package
v0.0.0-...-581f9f3 Latest Latest
Warning

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

Go to latest
Published: May 6, 2020 License: Apache-2.0 Imports: 31 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"

	EventTypeMessage = "message"

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

	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 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 (
	POINT = Token{
		Symbol:        "point",
		Name:          "Network staking token",
		Scale:         0,
		MinUnit:       "point",
		InitialSupply: 2000000000,
		MaxSupply:     1000000000000,
		Mintable:      true,
		Owner:         "",
	}
)
View Source
var (
	PubKeyFromBytes = cryptoAmino.PubKeyFromBytes
)

Functions

func AccAddressFromBech32

func AccAddressFromBech32(address string) (AccAddress, Error)

AccAddressFromBech32 creates an AccAddress from a Bech32 string.

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 CatchPanic

func CatchPanic(fn func(errMsg string))

func Cond

func Cond(key EventKey) *condition

Cond return a condition object with a key

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 GetFromBech32

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

GetFromBech32 decodes a bytestring from a Bech32 encoded string.

func InitializeCfg

func InitializeCfg(cdc Codec, cfg *ClientConfig)

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 NewCond

func NewCond(typ, attrKey string) *condition

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

func RegisterCodec

func RegisterCodec(cdc Codec)

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 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 ABCIClient

type ABCIClient = tmclient.ABCIClient

type ABCIResponses

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

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 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 Attribute

type Attribute struct {
	Key   string
	Value string
}

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

type Bech32PubKeyType

type Bech32PubKeyType string

Bech32PubKeyType defines a string type alias for a Bech32 public key type.

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

Bech32 conversion constants

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

	// irita Network type, mainnet / testnet
	Network Network

	// irita chain-id
	ChainID string

	// Default Gas limit
	Gas uint64

	// Default Fee amount of point
	Fee DecCoins

	// PrivKey DAO Implements
	KeyDAO KeyDAO

	// Transaction broadcast Mode
	Mode BroadcastMode

	//
	StoreType StoreType

	//Transaction broadcast timeout(seconds)
	Timeout uint

	//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 irita
	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

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

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

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

func NewAminoCodec

func NewAminoCodec() Codec

type Coin

type Coin struct {
	Denom  string `json:"denom"`
	Amount Int    `json:"amount"`
}

----------------------------------------------------------------------------- Coin

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 NewInt64Coin

func NewInt64Coin(denom string, amount int64) Coin

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

ParseCoin parses a cli input for one coin type, returning errors if invalid. This returns an error on an empty string as well.

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

func (coin Coin) IsGTE(other Coin) bool

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

func (Coin) IsLT

func (coin Coin) IsLT(other Coin) bool

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

func (Coin) IsNegative

func (coin Coin) IsNegative() bool

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

TODO: Remove once unsigned integers are used.

func (Coin) IsPositive

func (coin Coin) IsPositive() bool

IsPositive returns true if coin amount is positive.

TODO: Remove once unsigned integers are used.

func (Coin) IsValid

func (coin Coin) IsValid() bool

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

func (Coin) IsZero

func (coin Coin) IsZero() bool

IsZero returns if this represents no money

func (Coin) String

func (coin Coin) String() string

String provides a human-readable representation of a coin

func (Coin) Sub

func (coin Coin) Sub(coinB Coin) Coin

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

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

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, 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 non-positive amount. In otherwords, IsValid will always return true.

func (Coins) AmountOf

func (coins Coins) AmountOf(denom string) Int

Returns the amount of a denom from coins

func (Coins) DenomsSubsetOf

func (coins Coins) DenomsSubsetOf(coinsB Coins) bool

DenomsSubsetOf returns true if receiver's denom set is subset of coinsB's denoms.

func (Coins) Empty

func (coins Coins) Empty() bool

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

func (Coins) GetDenomByIndex

func (coins Coins) GetDenomByIndex(i int) string

GetDenomByIndex returns the Denom of the certain coin to make the findDup generic

func (Coins) IsAllGT

func (coins Coins) IsAllGT(coinsB Coins) bool

IsAllGT returns true if for every denom in coinsB, the denom is present at a greater amount in coins.

func (Coins) IsAllGTE

func (coins Coins) IsAllGTE(coinsB Coins) bool

IsAllGTE returns false if for any denom in coinsB, the denom is present at a smaller amount in coins; else returns true.

func (Coins) IsAllLT

func (coins Coins) IsAllLT(coinsB Coins) bool

IsAllLT returns True iff for every denom in coins, the denom is present at a smaller amount in coinsB.

func (Coins) IsAllLTE

func (coins Coins) IsAllLTE(coinsB Coins) bool

IsAllLTE returns true iff for every denom in coins, the denom is present at a smaller or equal amount in coinsB.

func (Coins) IsAllPositive

func (coins Coins) IsAllPositive() bool

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

func (Coins) IsAnyGT

func (coins Coins) IsAnyGT(coinsB Coins) bool

IsAnyGT returns true iff for any denom in coins, the denom is present at a greater amount in coinsB.

e.g. {2A, 3B}.IsAnyGT{A} = true {2A, 3B}.IsAnyGT{5C} = false {}.IsAnyGT{5C} = false {2A, 3B}.IsAnyGT{} = false

func (Coins) IsAnyGTE

func (coins Coins) IsAnyGTE(coinsB Coins) bool

IsAnyGTE returns true iff coins contains at least one denom that is present at a greater or equal amount in coinsB; it returns false otherwise.

NOTE: IsAnyGTE operates under the invariant that both coin sets are sorted by denominations and there exists no zero coins.

func (Coins) IsAnyNegative

func (coins Coins) IsAnyNegative() bool

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

TODO: Remove once unsigned integers are used.

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 sorted, have positive amount, and Denom does not contain upper case characters.

func (Coins) IsZero

func (coins Coins) IsZero() bool

IsZero returns true if there are no coins or all coins are zero.

func (Coins) Len

func (coins Coins) Len() int

nolint

func (Coins) Less

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

func (Coins) MarshalJSON

func (coins Coins) MarshalJSON() ([]byte, error)

MarshalJSON implements a custom JSON marshaller for the Coins type to allow nil Coins to be encoded as an empty array.

func (Coins) SafeSub

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

SafeSub performs the same arithmetic as Sub 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) Sub

func (coins Coins) Sub(coinsB Coins) Coins

Sub subtracts a set of coins from another.

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

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

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 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 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 {
	*big.Int `json:"int"`
}

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

func (d Dec) MarshalAmino() (string, error)

wraps d.MarshalText()

func (Dec) MarshalJSON

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

MarshalJSON marshals the decimal

func (Dec) MarshalYAML

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

MarshalYAML returns Ythe AML 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) 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) UnmarshalAmino

func (d *Dec) UnmarshalAmino(text string) (err error)

requires a valid JSON string - strings quotes and calls UnmarshalText

func (*Dec) UnmarshalJSON

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

UnmarshalJSON defines custom decoding scheme

type DecCoin

type DecCoin struct {
	Denom  string `json:"denom,omitempty"`
	Amount Dec    `json:"amount"`
}

----------------------------------------------------------------------------

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

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 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 irita 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
	Attributes Attributes
}

func ParseEvent

func ParseEvent(event tmtypes.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 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 EventValidatorSetUpdatesHandler

type EventValidatorSetUpdatesHandler func(EventDataValidatorSetUpdates)

type EventValue

type EventValue string

type Events

type Events []Event

func ParseEvents

func ParseEvents(events []tmtypes.Event) (es Events)

func (Events) Filter

func (es Events) Filter(typ string) (evts Events)

func (Events) GetValue

func (es Events) GetValue(typ, key string) (string, error)

func (Events) GetValues

func (es Events) GetValues(typ, key string) (values []string)
type Header = tmtypes.Header

type HexBytes

type HexBytes = tmbytes.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) 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) 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) MarshalYAML

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

MarshalYAML returns Ythe AML 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) 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) 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 Marshaler

type Marshaler interface {
	Codec() Codec
}

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

	// QueryAndRefreshAccount 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
}

Transactions messages must fulfill the Msg

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 = kv.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 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 irita system type to the user receiving type and standardize the user interface

type ResultBeginBlock

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

type ResultEndBlock

type ResultEndBlock struct {
	Events           Events            `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    Events `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 SignClient

type SignClient = tmclient.SignClient

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

get message bytes

type StdSignature

type StdSignature struct {
	crypto.PubKey `json:"pub_key"` // optional
	Signature     []byte           `json:"signature"`
	AccountNumber uint64           `json:"account_number"`
	Sequence      uint64           `json:"sequence"`
}

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 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)
	QueryStore(key HexBytes, storeName string) (res []byte, err 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 TmClient

type TmClient interface {
	ABCIClient
	SignClient
	WSClient
}

type TmPubKey

type TmPubKey = crypto.PubKey

func GetPubKeyFromBech32

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

GetPubKeyFromBech32 returns a PublicKey from a bech32-encoded PublicKey with a given key type.

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

	// 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"`
	Events    Events `json:"events"`
}

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 (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, 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
}

Jump to

Keyboard shortcuts

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