Documentation ¶
Index ¶
- Constants
- Variables
- func Bech32ifyPubKey(pkt Bech32PubKeyType, pubkey crypto.PubKey) (string, error)
- func CopyBytes(bz []byte) (ret []byte)
- func DecEq(t *testing.T, exp, got Dec) (*testing.T, bool, string, string, string)
- func DecsEqual(d1s, d2s []Dec) bool
- func DefaultCoinDenomRegex() string
- func DiffKVStores(a KVStore, b KVStore, prefixesToSkip [][]byte) (kvAs, kvBs []tmkv.Pair)
- func FormatInvariant(module, name, msg string) string
- func FormatTimeBytes(t time.Time) []byte
- func GetFromBech32(bech32str, prefix string) ([]byte, error)
- func GetPubKeyFromBech32(pkt Bech32PubKeyType, pubkeyStr string) (crypto.PubKey, error)
- func InclusiveEndBytes(inclusiveBytes []byte) (exclusiveBytes []byte)
- func IntEq(t *testing.T, exp, got Int) (*testing.T, bool, string, string, string)
- func KeyringServiceName() string
- func MustBech32ifyPubKey(pkt Bech32PubKeyType, pubkey crypto.PubKey) string
- func MustGetPubKeyFromBech32(pkt Bech32PubKeyType, pubkeyStr string) crypto.PubKey
- func MustSortJSON(toSortJSON []byte) []byte
- func NewKVStoreKeys(names ...string) map[string]*KVStoreKey
- func NewLevelDB(name, dir string) (db dbm.DB, err error)
- func NewTransientStoreKeys(names ...string) map[string]*TransientStoreKey
- func ParseTimeBytes(bz []byte) (time.Time, error)
- func PrefixEndBytes(prefix []byte) []byte
- func RegisterCodec(cdc *codec.Codec)
- func RegisterDenom(denom string, unit Dec) error
- func SetCoinDenomRegex(reFn func() string)
- func SortJSON(toSortJSON []byte) ([]byte, error)
- func SortableDecBytes(dec Dec) []byte
- func TokensToConsensusPower(tokens Int) int64
- func Uint64ToBigEndian(i uint64) []byte
- func UintOverflow(i *big.Int) error
- func ValidSortableDec(dec Dec) bool
- func ValidateDenom(denom string) error
- func VerifyAddressFormat(bz []byte) error
- type ABCIMessageLog
- type ABCIMessageLogs
- type AccAddress
- func (aa AccAddress) Bytes() []byte
- func (aa AccAddress) Empty() bool
- func (aa AccAddress) Equals(aa2 Address) bool
- func (aa AccAddress) Format(s fmt.State, verb rune)
- func (aa AccAddress) Marshal() ([]byte, error)
- func (aa AccAddress) MarshalJSON() ([]byte, error)
- func (aa AccAddress) MarshalYAML() (interface{}, error)
- func (aa AccAddress) String() string
- func (aa *AccAddress) Unmarshal(data []byte) error
- func (aa *AccAddress) UnmarshalJSON(data []byte) error
- func (aa *AccAddress) UnmarshalYAML(data []byte) error
- type Address
- type AnteDecorator
- type AnteHandler
- type Attribute
- type Bech32PubKeyType
- type BeginBlocker
- type BondStatus
- type CacheKVStore
- type CacheMultiStore
- type CacheWrap
- type CacheWrapper
- type Coin
- func (coin Coin) Add(coinB Coin) Coin
- func (coin Coin) IsEqual(other Coin) bool
- func (coin Coin) IsGTE(other Coin) bool
- func (coin Coin) IsLT(other Coin) bool
- func (coin Coin) IsNegative() bool
- func (coin Coin) IsPositive() bool
- func (coin Coin) IsValid() bool
- func (coin Coin) IsZero() bool
- func (coin Coin) String() string
- func (coin Coin) Sub(coinB Coin) Coin
- type Coins
- func (coins Coins) Add(coinsB ...Coin) Coins
- func (coins Coins) AmountOf(denom string) Int
- func (coins Coins) DenomsSubsetOf(coinsB Coins) bool
- func (coins Coins) Empty() bool
- func (coins Coins) GetDenomByIndex(i int) string
- func (coins Coins) IsAllGT(coinsB Coins) bool
- func (coins Coins) IsAllGTE(coinsB Coins) bool
- func (coins Coins) IsAllLT(coinsB Coins) bool
- func (coins Coins) IsAllLTE(coinsB Coins) bool
- func (coins Coins) IsAllPositive() bool
- func (coins Coins) IsAnyGT(coinsB Coins) bool
- func (coins Coins) IsAnyGTE(coinsB Coins) bool
- func (coins Coins) IsAnyNegative() bool
- func (coins Coins) IsEqual(coinsB Coins) bool
- func (coins Coins) IsValid() bool
- func (coins Coins) IsZero() bool
- func (coins Coins) Len() int
- func (coins Coins) Less(i, j int) bool
- func (coins Coins) MarshalJSON() ([]byte, error)
- func (coins Coins) SafeSub(coinsB Coins) (Coins, bool)
- func (coins Coins) Sort() Coins
- func (coins Coins) String() string
- func (coins Coins) Sub(coinsB Coins) Coins
- func (coins Coins) Swap(i, j int)
- type CommitID
- type CommitKVStore
- type CommitMultiStore
- type CommitStore
- type Committer
- type Config
- func (config *Config) GetAddressVerifier() func([]byte) error
- func (config *Config) GetBech32AccountAddrPrefix() string
- func (config *Config) GetBech32AccountPubPrefix() string
- func (config *Config) GetBech32ConsensusAddrPrefix() string
- func (config *Config) GetBech32ConsensusPubPrefix() string
- func (config *Config) GetBech32ValidatorAddrPrefix() string
- func (config *Config) GetBech32ValidatorPubPrefix() string
- func (config *Config) GetCoinType() uint32
- func (config *Config) GetFullFundraiserPath() string
- func (config *Config) GetTxEncoder() TxEncoder
- func (config *Config) Seal() *Config
- func (config *Config) SetAddressVerifier(addressVerifier func([]byte) error)
- func (config *Config) SetBech32PrefixForAccount(addressPrefix, pubKeyPrefix string)
- func (config *Config) SetBech32PrefixForConsensusNode(addressPrefix, pubKeyPrefix string)
- func (config *Config) SetBech32PrefixForValidator(addressPrefix, pubKeyPrefix string)
- func (config *Config) SetCoinType(coinType uint32)
- func (config *Config) SetFullFundraiserPath(fullFundraiserPath string)
- func (config *Config) SetTxEncoder(encoder TxEncoder)
- type ConsAddress
- func (ca ConsAddress) Bytes() []byte
- func (ca ConsAddress) Empty() bool
- func (ca ConsAddress) Equals(ca2 Address) bool
- func (ca ConsAddress) Format(s fmt.State, verb rune)
- func (ca ConsAddress) Marshal() ([]byte, error)
- func (ca ConsAddress) MarshalJSON() ([]byte, error)
- func (ca ConsAddress) MarshalYAML() (interface{}, error)
- func (ca ConsAddress) String() string
- func (ca *ConsAddress) Unmarshal(data []byte) error
- func (ca *ConsAddress) UnmarshalJSON(data []byte) error
- func (ca *ConsAddress) UnmarshalYAML(data []byte) error
- type Context
- func (c Context) BlockGasMeter() GasMeter
- func (c Context) BlockHeader() abci.Header
- func (c Context) BlockHeight() int64
- func (c Context) BlockTime() time.Time
- func (c Context) CacheContext() (cc Context, writeCache func())
- func (c Context) ChainID() string
- func (c Context) ConsensusParams() *abci.ConsensusParams
- func (c Context) Context() context.Context
- func (c Context) EventManager() *EventManager
- func (c Context) GasMeter() GasMeter
- func (c Context) IsCheckTx() bool
- func (c Context) IsReCheckTx() bool
- func (c Context) IsZero() bool
- func (c Context) KVStore(key StoreKey) KVStore
- func (c Context) Logger() log.Logger
- func (c Context) MinGasPrices() DecCoins
- func (c Context) MultiStore() MultiStore
- func (c Context) TransientStore(key StoreKey) KVStore
- func (c Context) TxBytes() []byte
- func (c Context) Value(key interface{}) interface{}
- func (c Context) VoteInfos() []abci.VoteInfo
- func (c Context) WithBlockGasMeter(meter GasMeter) Context
- func (c Context) WithBlockHeader(header abci.Header) Context
- func (c Context) WithBlockHeight(height int64) Context
- func (c Context) WithBlockTime(newTime time.Time) Context
- func (c Context) WithChainID(chainID string) Context
- func (c Context) WithConsensusParams(params *abci.ConsensusParams) Context
- func (c Context) WithContext(ctx context.Context) Context
- func (c Context) WithEventManager(em *EventManager) Context
- func (c Context) WithGasMeter(meter GasMeter) Context
- func (c Context) WithIsCheckTx(isCheckTx bool) Context
- func (c Context) WithIsReCheckTx(isRecheckTx bool) Context
- func (c Context) WithLogger(logger log.Logger) Context
- func (c Context) WithMinGasPrices(gasPrices DecCoins) Context
- func (c Context) WithMultiStore(ms MultiStore) Context
- func (c Context) WithProposer(addr ConsAddress) Context
- func (c Context) WithTxBytes(txBytes []byte) Context
- func (c Context) WithValue(key, value interface{}) Context
- func (c Context) WithVoteInfos(voteInfo []abci.VoteInfo) Context
- type Dec
- func GetDenomUnit(denom string) (Dec, bool)
- func MaxDec(d1, d2 Dec) Dec
- func MinDec(d1, d2 Dec) Dec
- func MustNewDecFromStr(s string) Dec
- func NewDec(i int64) Dec
- func NewDecFromBigInt(i *big.Int) Dec
- func NewDecFromBigIntWithPrec(i *big.Int, prec int64) Dec
- func NewDecFromInt(i Int) Dec
- func NewDecFromIntWithPrec(i Int, prec int64) Dec
- func NewDecFromStr(str string) (Dec, error)
- func NewDecWithPrec(i, prec int64) Dec
- func OneDec() Dec
- func SmallestDec() Dec
- func ZeroDec() Dec
- func (d Dec) Abs() Dec
- func (d Dec) Add(d2 Dec) Dec
- func (d Dec) ApproxRoot(root uint64) (guess Dec, err error)
- func (d Dec) ApproxSqrt() (Dec, error)
- func (d Dec) BigInt() *big.Int
- func (d Dec) Ceil() Dec
- func (d Dec) Equal(d2 Dec) bool
- func (d Dec) Format(s fmt.State, verb rune)
- func (d Dec) GT(d2 Dec) bool
- func (d Dec) GTE(d2 Dec) bool
- func (d Dec) IsInteger() bool
- func (d Dec) IsNegative() bool
- func (d Dec) IsNil() bool
- func (d Dec) IsPositive() bool
- func (d Dec) IsZero() bool
- func (d Dec) LT(d2 Dec) bool
- func (d Dec) LTE(d2 Dec) bool
- func (d Dec) MarshalAmino() (string, error)
- func (d Dec) MarshalJSON() ([]byte, error)
- func (d Dec) MarshalYAML() (interface{}, error)
- func (d Dec) Mul(d2 Dec) Dec
- func (d Dec) MulInt(i Int) Dec
- func (d Dec) MulInt64(i int64) Dec
- func (d Dec) MulTruncate(d2 Dec) Dec
- func (d Dec) Neg() Dec
- func (d Dec) Power(power uint64) Dec
- func (d Dec) Quo(d2 Dec) Dec
- func (d Dec) QuoInt(i Int) Dec
- func (d Dec) QuoInt64(i int64) Dec
- func (d Dec) QuoRoundUp(d2 Dec) Dec
- func (d Dec) QuoTruncate(d2 Dec) Dec
- func (d Dec) RoundInt() Int
- func (d Dec) RoundInt64() int64
- func (d Dec) String() string
- func (d Dec) Sub(d2 Dec) Dec
- func (d Dec) TruncateDec() Dec
- func (d Dec) TruncateInt() Int
- func (d Dec) TruncateInt64() int64
- func (d *Dec) UnmarshalAmino(text string) (err error)
- func (d *Dec) UnmarshalJSON(bz []byte) error
- type DecCoin
- func (coin DecCoin) Add(coinB DecCoin) DecCoin
- func (coin DecCoin) IsEqual(other DecCoin) bool
- func (coin DecCoin) IsGTE(other DecCoin) bool
- func (coin DecCoin) IsLT(other DecCoin) bool
- func (coin DecCoin) IsNegative() bool
- func (coin DecCoin) IsPositive() bool
- func (coin DecCoin) IsValid() bool
- func (coin DecCoin) IsZero() bool
- func (coin DecCoin) String() string
- func (coin DecCoin) Sub(coinB DecCoin) DecCoin
- func (coin DecCoin) TruncateDecimal() (Coin, DecCoin)
- type DecCoins
- func (coins DecCoins) Add(coinsB ...DecCoin) DecCoins
- func (coins DecCoins) AmountOf(denom string) Dec
- func (coins DecCoins) Empty() bool
- func (coins DecCoins) GetDenomByIndex(i int) string
- func (coins DecCoins) Intersect(coinsB DecCoins) DecCoins
- func (coins DecCoins) IsAllPositive() bool
- func (coins DecCoins) IsAnyNegative() bool
- func (coins DecCoins) IsEqual(coinsB DecCoins) bool
- func (coins DecCoins) IsValid() bool
- func (coins DecCoins) IsZero() bool
- func (coins DecCoins) Len() int
- func (coins DecCoins) Less(i, j int) bool
- func (coins DecCoins) MulDec(d Dec) DecCoins
- func (coins DecCoins) MulDecTruncate(d Dec) DecCoins
- func (coins DecCoins) QuoDec(d Dec) DecCoins
- func (coins DecCoins) QuoDecTruncate(d Dec) DecCoins
- func (coins DecCoins) SafeSub(coinsB DecCoins) (DecCoins, bool)
- func (coins DecCoins) Sort() DecCoins
- func (coins DecCoins) String() string
- func (coins DecCoins) Sub(coinsB DecCoins) DecCoins
- func (coins DecCoins) Swap(i, j int)
- func (coins DecCoins) TruncateDecimal() (truncatedCoins Coins, changeCoins DecCoins)
- type EndBlocker
- type ErrorGasOverflow
- type ErrorOutOfGas
- type Event
- type EventManager
- type Events
- type Gas
- type GasConfig
- type GasInfo
- type GasMeter
- type Handler
- type InitChainer
- type Int
- func MaxInt(i, i2 Int) Int
- func MinInt(i1, i2 Int) Int
- func NewInt(n int64) Int
- func NewIntFromBigInt(i *big.Int) Int
- func NewIntFromString(s string) (res Int, ok bool)
- func NewIntFromUint64(n uint64) Int
- func NewIntWithDecimal(n int64, dec int) Int
- func OneInt() Int
- func TokensFromConsensusPower(power int64) Int
- func ZeroInt() Int
- func (i Int) Add(i2 Int) (res Int)
- func (i Int) AddRaw(i2 int64) Int
- func (i Int) BigInt() *big.Int
- func (i Int) Equal(i2 Int) bool
- func (i Int) GT(i2 Int) bool
- func (i Int) GTE(i2 Int) bool
- func (i Int) Int64() int64
- func (i Int) IsInt64() bool
- func (i Int) IsNegative() bool
- func (i Int) IsNil() bool
- func (i Int) IsPositive() bool
- func (i Int) IsUint64() bool
- func (i Int) IsZero() bool
- func (i Int) LT(i2 Int) bool
- func (i Int) LTE(i2 Int) bool
- func (i Int) MarshalAmino() (string, error)
- func (i Int) MarshalJSON() ([]byte, error)
- func (i Int) MarshalYAML() (interface{}, error)
- func (i Int) Mod(i2 Int) Int
- func (i Int) ModRaw(i2 int64) Int
- func (i Int) Mul(i2 Int) (res Int)
- func (i Int) MulRaw(i2 int64) Int
- func (i Int) Neg() (res Int)
- func (i Int) Quo(i2 Int) (res Int)
- func (i Int) QuoRaw(i2 int64) Int
- func (i Int) Sign() int
- func (i Int) String() string
- func (i Int) Sub(i2 Int) (res Int)
- func (i Int) SubRaw(i2 int64) Int
- func (i Int) ToDec() Dec
- func (i Int) Uint64() uint64
- func (i *Int) UnmarshalAmino(text string) error
- func (i *Int) UnmarshalJSON(bz []byte) error
- type Invariant
- type InvariantRegistry
- type Invariants
- type Iterator
- func KVStorePrefixIterator(kvs KVStore, prefix []byte) Iterator
- func KVStorePrefixIteratorPaginated(kvs KVStore, prefix []byte, page, limit uint) Iterator
- func KVStoreReversePrefixIterator(kvs KVStore, prefix []byte) Iterator
- func KVStoreReversePrefixIteratorPaginated(kvs KVStore, prefix []byte, page, limit uint) Iterator
- type KVPair
- type KVStore
- type KVStoreKey
- type Msg
- type MultiStore
- type MultiStorePersistentCache
- type PeerFilter
- type PruningOptions
- type Querier
- type QueryRouter
- type Queryable
- type Request
- type Result
- type Router
- type SearchTxsResult
- type SimulationResponse
- type Store
- type StoreDecoderRegistry
- type StoreKey
- type StoreType
- type StringEvent
- type StringEvents
- type Terminator
- type TestMsg
- type TraceContext
- type TransientStoreKey
- type Tx
- type TxDecoder
- type TxEncoder
- type TxResponse
- type Uint
- func (u Uint) Add(u2 Uint) Uint
- func (u Uint) AddUint64(u2 uint64) Uint
- func (u Uint) BigInt() *big.Int
- func (u Uint) Decr() Uint
- func (u Uint) Equal(u2 Uint) bool
- func (u Uint) GT(u2 Uint) bool
- func (u Uint) GTE(u2 Uint) bool
- func (u Uint) Incr() Uint
- func (u Uint) IsZero() bool
- func (u Uint) LT(u2 Uint) bool
- func (u Uint) LTE(u2 Uint) bool
- func (u Uint) MarshalAmino() (string, error)
- func (u Uint) MarshalJSON() ([]byte, error)
- func (u Uint) Mod(u2 Uint) Uint
- func (u Uint) Mul(u2 Uint) (res Uint)
- func (u Uint) MulUint64(u2 uint64) (res Uint)
- func (u Uint) Quo(u2 Uint) (res Uint)
- func (u Uint) QuoUint64(u2 uint64) Uint
- func (u Uint) String() string
- func (u Uint) Sub(u2 Uint) Uint
- func (u Uint) SubUint64(u2 uint64) Uint
- func (u Uint) Uint64() uint64
- func (u *Uint) UnmarshalAmino(text string) error
- func (u *Uint) UnmarshalJSON(bz []byte) error
- type ValAddress
- func (va ValAddress) Bytes() []byte
- func (va ValAddress) Empty() bool
- func (va ValAddress) Equals(va2 Address) bool
- func (va ValAddress) Format(s fmt.State, verb rune)
- func (va ValAddress) Marshal() ([]byte, error)
- func (va ValAddress) MarshalJSON() ([]byte, error)
- func (va ValAddress) MarshalYAML() (interface{}, error)
- func (va ValAddress) String() string
- func (va *ValAddress) Unmarshal(data []byte) error
- func (va *ValAddress) UnmarshalJSON(data []byte) error
- func (va *ValAddress) UnmarshalYAML(data []byte) error
Constants ¶
const ( // AddrLen defines a valid address length AddrLen = 20 // Bech32MainPrefix defines the main SDK Bech32 prefix of an account's address Bech32MainPrefix = "cosmos" // CoinType is the ATOM coin type as defined in SLIP44 (https://github.com/satoshilabs/slips/blob/master/slip-0044.md) CoinType = 118 // FullFundraiserPath is the parts of the BIP44 HD path that are fixed by // what we used during the ATOM fundraiser. FullFundraiserPath = "m/44'/118'/0'/0/0" // PrefixAccount is the prefix for account keys PrefixAccount = "acc" // PrefixValidator is the prefix for validator keys PrefixValidator = "val" // PrefixConsensus is the prefix for consensus keys PrefixConsensus = "cons" // PrefixPublic is the prefix for public keys PrefixPublic = "pub" // PrefixOperator is the prefix for operator keys PrefixOperator = "oper" // PrefixAddress is the prefix for addresses PrefixAddress = "addr" // Bech32PrefixAccAddr defines the Bech32 prefix of an account's address Bech32PrefixAccAddr = Bech32MainPrefix // Bech32PrefixAccPub defines the Bech32 prefix of an account's public key Bech32PrefixAccPub = Bech32MainPrefix + PrefixPublic // Bech32PrefixValAddr defines the Bech32 prefix of a validator's operator address Bech32PrefixValAddr = Bech32MainPrefix + PrefixValidator + PrefixOperator // Bech32PrefixValPub defines the Bech32 prefix of a validator's operator public key Bech32PrefixValPub = Bech32MainPrefix + PrefixValidator + PrefixOperator + PrefixPublic // Bech32PrefixConsAddr defines the Bech32 prefix of a consensus node address Bech32PrefixConsAddr = Bech32MainPrefix + PrefixValidator + PrefixConsensus // Bech32PrefixConsPub defines the Bech32 prefix of a consensus node public key Bech32PrefixConsPub = Bech32MainPrefix + PrefixValidator + PrefixConsensus + PrefixPublic )
const ( // number of decimal places Precision = 18 // bytes required to represent the above precision // Ceiling[Log2[999 999 999 999 999 999]] DecimalPrecisionBits = 60 )
const ( // default bond denomination DefaultBondDenom = "stake" // Delay, in blocks, between when validator updates are returned to the // consensus-engine and when they are applied. For example, if // ValidatorUpdateDelay is set to X, and if a validator set update is // returned with new validators at the end of block 10, then the new // validators are expected to sign blocks beginning at block 11+X. // // This value is constant as this should not change without a hard fork. // For Tendermint this should be set to 1 block, for more details see: // https://tendermint.com/docs/spec/abci/apps.html#endblock ValidatorUpdateDelay int64 = 1 )
staking constants
const ( Unbonded BondStatus = 0x00 Unbonding BondStatus = 0x01 Bonded BondStatus = 0x02 BondStatusUnbonded = "Unbonded" BondStatusUnbonding = "Unbonding" BondStatusBonded = "Bonded" )
staking constants
const ( StoreTypeMulti = types.StoreTypeMulti StoreTypeDB = types.StoreTypeDB StoreTypeIAVL = types.StoreTypeIAVL StoreTypeTransient = types.StoreTypeTransient )
nolint - reexport
const DefaultKeyringServiceName = "cosmos"
DefaultKeyringServiceName defines a default service name for the keyring.
const SortableTimeFormat = "2006-01-02T15:04:05.000000000"
Slight modification of the RFC3339Nano but it right pads all zeros and drops the time zone info
Variables ¶
var ( ErrEmptyDecimalStr = errors.New("decimal string cannot be empty") ErrInvalidDecimalLength = errors.New("invalid decimal length") ErrInvalidDecimalStr = errors.New("invalid decimal string") )
Decimal errors
var ( EventTypeMessage = "message" AttributeKeyAction = "action" AttributeKeyModule = "module" AttributeKeySender = "sender" AttributeKeyAmount = "amount" )
Common event types and attribute keys
var (
// This is set at compile time. Could be cleveldb, defaults is goleveldb.
DBBackend = ""
)
var IsAlphaNumeric = regexp.MustCompile(`^[a-zA-Z0-9]+$`).MatchString
IsAlphaNumeric defines a regular expression for matching against alpha-numeric values.
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.
var PowerReduction = NewIntFromBigInt(new(big.Int).Exp(big.NewInt(10), big.NewInt(6), nil))
PowerReduction is the amount of staking tokens required for 1 unit of consensus-engine power
Functions ¶
func Bech32ifyPubKey ¶
func Bech32ifyPubKey(pkt Bech32PubKeyType, pubkey crypto.PubKey) (string, error)
Bech32ifyPubKey returns a Bech32 encoded string containing the appropriate prefix based on the key type provided for a given PublicKey.
func DefaultCoinDenomRegex ¶ added in v0.39.2
func DefaultCoinDenomRegex() string
DefaultCoinDenomRegex returns the default regex string
func DiffKVStores ¶
DiffKVStores compares two KVstores and returns all the key/value pairs that differ from one another. It also skips value comparison for a set of provided prefixes
func FormatInvariant ¶
FormatInvariant returns a standardized invariant message.
func FormatTimeBytes ¶
Formats a time.Time into a []byte that can be sorted
func GetFromBech32 ¶
GetFromBech32 decodes a bytestring from a Bech32 encoded string.
func GetPubKeyFromBech32 ¶
func GetPubKeyFromBech32(pkt Bech32PubKeyType, pubkeyStr string) (crypto.PubKey, error)
GetPubKeyFromBech32 returns a PublicKey from a bech32-encoded PublicKey with a given key type.
func InclusiveEndBytes ¶
InclusiveEndBytes returns the []byte that would end a range query such that the input would be included
func KeyringServiceName ¶
func KeyringServiceName() string
func MustBech32ifyPubKey ¶
func MustBech32ifyPubKey(pkt Bech32PubKeyType, pubkey crypto.PubKey) string
MustBech32ifyPubKey calls Bech32ifyPubKey except it panics on error.
func MustGetPubKeyFromBech32 ¶
func MustGetPubKeyFromBech32(pkt Bech32PubKeyType, pubkeyStr string) crypto.PubKey
MustGetPubKeyFromBech32 calls GetPubKeyFromBech32 except it panics on error.
func MustSortJSON ¶
MustSortJSON is like SortJSON but panic if an error occurs, e.g., if the passed JSON isn't valid.
func NewKVStoreKeys ¶
func NewKVStoreKeys(names ...string) map[string]*KVStoreKey
NewKVStoreKeys returns a map of new pointers to KVStoreKey's. Uses pointers so keys don't collide.
func NewLevelDB ¶
NewLevelDB instantiate a new LevelDB instance according to DBBackend.
func NewTransientStoreKeys ¶
func NewTransientStoreKeys(names ...string) map[string]*TransientStoreKey
NewTransientStoreKeys constructs a new map of TransientStoreKey's Must return pointers according to the ocap principle
func ParseTimeBytes ¶
Parses a []byte encoded using FormatTimeKey back into a time.Time
func PrefixEndBytes ¶
PrefixEndBytes returns the []byte that would end a range query for all []byte with a certain prefix Deals with last byte of prefix being FF without overflowing
func RegisterDenom ¶
RegisterDenom registers a denomination with a corresponding unit. If the denomination is already registered, an error will be returned.
func SetCoinDenomRegex ¶ added in v0.39.2
func SetCoinDenomRegex(reFn func() string)
SetCoinDenomRegex allows for coin's custom validation by overriding the regular expression string used for denom validation.
func SortJSON ¶
SortedJSON takes any JSON and returns it sorted by keys. Also, all white-spaces are removed. This method can be used to canonicalize JSON to be returned by GetSignBytes, e.g. for the ledger integration. If the passed JSON isn't valid it will return an error.
func SortableDecBytes ¶
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 TokensToConsensusPower ¶
TokensToConsensusPower - convert input tokens to potential consensus-engine power
func Uint64ToBigEndian ¶
Uint64ToBigEndian - marshals uint64 to a bigendian byte slice so it can be sorted
func UintOverflow ¶
UintOverflow returns true if a given unsigned integer overflows and false otherwise.
func ValidSortableDec ¶
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 ¶
ValidateDenom validates a denomination string returning an error if it is invalid.
func VerifyAddressFormat ¶
VerifyAddressFormat verifies that the provided bytes form a valid address according to the default address rules or a custom address verifier set by GetConfig().SetAddressVerifier()
Types ¶
type ABCIMessageLog ¶
type ABCIMessageLog struct { MsgIndex uint16 `json:"msg_index"` Log string `json:"log"` // Events contains a slice of Event objects that were emitted during some // execution. Events StringEvents `json:"events"` }
ABCIMessageLog defines a structure containing an indexed tx ABCI message log.
func NewABCIMessageLog ¶
func NewABCIMessageLog(i uint16, log string, events Events) ABCIMessageLog
type ABCIMessageLogs ¶
type ABCIMessageLogs []ABCIMessageLog
ABCIMessageLogs represents a slice of ABCIMessageLog.
func ParseABCILogs ¶
func ParseABCILogs(logs string) (res ABCIMessageLogs, err error)
ParseABCILogs attempts to parse a stringified ABCI tx log into a slice of ABCIMessageLog types. It returns an error upon JSON decoding failure.
func (ABCIMessageLogs) String ¶
func (logs ABCIMessageLogs) String() (str string)
String implements the fmt.Stringer interface for the ABCIMessageLogs type.
type 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 AccAddressFromBech32 ¶
func AccAddressFromBech32(address string) (addr AccAddress, err error)
AccAddressFromBech32 creates an AccAddress from a Bech32 string.
func AccAddressFromHex ¶
func AccAddressFromHex(address string) (addr AccAddress, err error)
AccAddressFromHex creates an AccAddress from a hex string.
func (AccAddress) Empty ¶
func (aa AccAddress) Empty() bool
Returns boolean for whether an AccAddress is empty
func (AccAddress) Equals ¶
func (aa AccAddress) Equals(aa2 Address) bool
Returns boolean for whether two AccAddresses are Equal
func (AccAddress) Format ¶
func (aa AccAddress) Format(s fmt.State, verb rune)
Format implements the fmt.Formatter interface. nolint: errcheck
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) MarshalYAML ¶
func (aa AccAddress) MarshalYAML() (interface{}, error)
MarshalYAML marshals to YAML 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.
func (*AccAddress) UnmarshalYAML ¶
func (aa *AccAddress) UnmarshalYAML(data []byte) error
UnmarshalYAML unmarshals from JSON assuming Bech32 encoding.
type Address ¶
type Address interface { Equals(Address) bool Empty() bool Marshal() ([]byte, error) MarshalJSON() ([]byte, error) Bytes() []byte String() string Format(s fmt.State, verb rune) }
Address is a common interface for different types of addresses used by the SDK
type AnteDecorator ¶
type AnteDecorator interface {
AnteHandle(ctx Context, tx Tx, simulate bool, next AnteHandler) (newCtx Context, err error)
}
AnteDecorator wraps the next AnteHandler to perform custom pre- and post-processing.
type AnteHandler ¶
AnteHandler authenticates transactions, before their internal messages are handled. If newCtx.IsZero(), ctx is used instead.
func ChainAnteDecorators ¶
func ChainAnteDecorators(chain ...AnteDecorator) AnteHandler
ChainDecorator chains AnteDecorators together with each AnteDecorator wrapping over the decorators further along chain and returns a single AnteHandler.
NOTE: The first element is outermost decorator, while the last element is innermost decorator. Decorator ordering is critical since some decorators will expect certain checks and updates to be performed (e.g. the Context) before the decorator is run. These expectations should be documented clearly in a CONTRACT docline in the decorator's godoc.
NOTE: Any application that uses GasMeter to limit transaction processing cost MUST set GasMeter with the FIRST AnteDecorator. Failing to do so will cause transactions to be processed with an infinite gasmeter and open a DOS attack vector. Use `ante.SetUpContextDecorator` or a custom Decorator with similar functionality. Returns nil when no AnteDecorator are supplied.
type Attribute ¶
Attribute defines an attribute wrapper where the key and value are strings instead of raw bytes.
func NewAttribute ¶
NewAttribute returns a new key/value Attribute object.
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 BeginBlocker ¶
type BeginBlocker func(ctx Context, req abci.RequestBeginBlock) abci.ResponseBeginBlock
BeginBlocker runs code before the transactions in a block
Note: applications which set create_empty_blocks=false will not have regular block timing and should use e.g. BFT timestamps rather than block height for any periodic BeginBlock logic
type BondStatus ¶
type BondStatus byte
BondStatus is the status of a validator
func (BondStatus) Equal ¶
func (b BondStatus) Equal(b2 BondStatus) bool
Equal compares two BondStatus instances
func (BondStatus) String ¶
func (b BondStatus) String() string
String implements the Stringer interface for BondStatus.
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"` }
Coin hold some amount of one currency.
CONTRACT: A coin will never hold a negative amount of any denomination.
TODO: Make field members private for further safety.
func ConvertCoin ¶
ConvertCoin attempts to convert a coin to a given denomination. If the given denomination is invalid or if neither denomination is registered, an error is returned.
func NewCoin ¶
NewCoin returns a new coin with a denomination and amount. It will panic if the amount is negative.
func NewInt64Coin ¶
NewInt64Coin returns a new coin with a denomination and amount. It will panic if the amount is negative.
func ParseCoin ¶
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 ¶
Adds amounts of two coins with same denom. If the coins differ in denom then it panics.
func (Coin) IsGTE ¶
IsGTE returns true if they are the same type and the receiver is an equal or greater value
func (Coin) IsNegative ¶
IsNegative returns true if the coin amount is negative and false otherwise.
TODO: Remove once unsigned integers are used.
func (Coin) IsPositive ¶
IsPositive returns true if coin amount is positive.
TODO: Remove once unsigned integers are used.
func (Coin) IsValid ¶
IsValid returns true if the Coin has a non-negative amount and the denom is vaild.
type Coins ¶
type Coins []Coin
Coins is a set of Coin, one per currency
func ParseCoins ¶
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 ¶
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) DenomsSubsetOf ¶
DenomsSubsetOf returns true if receiver's denom set is subset of coinsB's denoms.
func (Coins) GetDenomByIndex ¶
GetDenomByIndex returns the Denom of the certain coin to make the findDup generic
func (Coins) IsAllGT ¶
IsAllGT returns true if for every denom in coinsB, the denom is present at a greater amount in coins.
func (Coins) IsAllGTE ¶
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 ¶
IsAllLT returns True iff for every denom in coins, the denom is present at a smaller amount in coinsB.
func (Coins) IsAllLTE ¶
IsAllLTE returns true iff for every denom in coins, the denom is present at a smaller or equal amount in coinsB.
func (Coins) IsAllPositive ¶
IsAllPositive returns true if there is at least one coin and all currencies have a positive value.
func (Coins) IsAnyGT ¶
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 ¶
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 ¶
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) IsValid ¶
IsValid asserts the Coins are sorted, have positive amount, and Denom does not contain upper case characters.
func (Coins) MarshalJSON ¶
MarshalJSON implements a custom JSON marshaller for the Coins type to allow nil Coins to be encoded as an empty array.
func (Coins) SafeSub ¶
SafeSub performs the same arithmetic as Sub but returns a boolean if any negative coin amount was returned.
type Config ¶
type Config struct {
// contains filtered or unexported fields
}
Config is the structure that holds the SDK configuration parameters. This could be used to initialize certain configuration parameters for the SDK.
func GetSealedConfig ¶
GetSealedConfig returns the config instance for the SDK if/once it is sealed.
func (*Config) GetAddressVerifier ¶
GetAddressVerifier returns the function to verify that addresses have the correct format
func (*Config) GetBech32AccountAddrPrefix ¶
GetBech32AccountAddrPrefix returns the Bech32 prefix for account address
func (*Config) GetBech32AccountPubPrefix ¶
GetBech32AccountPubPrefix returns the Bech32 prefix for account public key
func (*Config) GetBech32ConsensusAddrPrefix ¶
GetBech32ConsensusAddrPrefix returns the Bech32 prefix for consensus node address
func (*Config) GetBech32ConsensusPubPrefix ¶
GetBech32ConsensusPubPrefix returns the Bech32 prefix for consensus node public key
func (*Config) GetBech32ValidatorAddrPrefix ¶
GetBech32ValidatorAddrPrefix returns the Bech32 prefix for validator address
func (*Config) GetBech32ValidatorPubPrefix ¶
GetBech32ValidatorPubPrefix returns the Bech32 prefix for validator public key
func (*Config) GetCoinType ¶
GetCoinType returns the BIP-0044 CoinType code on the config.
func (*Config) GetFullFundraiserPath ¶
GetFullFundraiserPath returns the BIP44Prefix.
func (*Config) GetTxEncoder ¶
GetTxEncoder return function to encode transactions
func (*Config) Seal ¶
Seal seals the config such that the config state could not be modified further
func (*Config) SetAddressVerifier ¶
SetAddressVerifier builds the Config with the provided function for verifying that addresses have the correct format
func (*Config) SetBech32PrefixForAccount ¶
SetBech32PrefixForAccount builds the Config with Bech32 addressPrefix and publKeyPrefix for accounts and returns the config instance
func (*Config) SetBech32PrefixForConsensusNode ¶
SetBech32PrefixForConsensusNode builds the Config with Bech32 addressPrefix and publKeyPrefix for consensus nodes and returns the config instance
func (*Config) SetBech32PrefixForValidator ¶
SetBech32PrefixForValidator builds the Config with Bech32 addressPrefix and publKeyPrefix for validators
and returns the config instance
func (*Config) SetCoinType ¶
Set the BIP-0044 CoinType code on the config
func (*Config) SetFullFundraiserPath ¶
Set the FullFundraiserPath (BIP44Prefix) on the config
func (*Config) SetTxEncoder ¶
SetTxEncoder builds the Config with TxEncoder used to marshal StdTx to bytes
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 GetConsAddress ¶
func GetConsAddress(pubkey crypto.PubKey) ConsAddress
get ConsAddress from pubkey
func (ConsAddress) Bytes ¶
func (ca ConsAddress) Bytes() []byte
Bytes returns the raw address bytes.
func (ConsAddress) Empty ¶
func (ca ConsAddress) Empty() bool
Returns boolean for whether an ConsAddress is empty
func (ConsAddress) Equals ¶
func (ca ConsAddress) Equals(ca2 Address) bool
Returns boolean for whether two ConsAddress are Equal
func (ConsAddress) Format ¶
func (ca ConsAddress) Format(s fmt.State, verb rune)
Format implements the fmt.Formatter interface. nolint: errcheck
func (ConsAddress) Marshal ¶
func (ca ConsAddress) Marshal() ([]byte, error)
Marshal returns the raw address bytes. It is needed for protobuf compatibility.
func (ConsAddress) MarshalJSON ¶
func (ca ConsAddress) MarshalJSON() ([]byte, error)
MarshalJSON marshals to JSON using Bech32.
func (ConsAddress) MarshalYAML ¶
func (ca ConsAddress) MarshalYAML() (interface{}, error)
MarshalYAML marshals to YAML using Bech32.
func (ConsAddress) String ¶
func (ca ConsAddress) String() string
String implements the Stringer interface.
func (*ConsAddress) Unmarshal ¶
func (ca *ConsAddress) Unmarshal(data []byte) error
Unmarshal sets the address to the given data. It is needed for protobuf compatibility.
func (*ConsAddress) UnmarshalJSON ¶
func (ca *ConsAddress) UnmarshalJSON(data []byte) error
UnmarshalJSON unmarshals from JSON assuming Bech32 encoding.
func (*ConsAddress) UnmarshalYAML ¶
func (ca *ConsAddress) UnmarshalYAML(data []byte) error
UnmarshalYAML unmarshals from YAML assuming Bech32 encoding.
type Context ¶
type Context struct {
// contains filtered or unexported fields
}
Context is an immutable object contains all information needed to process a request.
It contains a context.Context object inside if you want to use that, but please do not over-use it. We try to keep all data structured and standard additions here would be better just to add to the Context struct
func NewContext ¶
create a new context
func (Context) BlockGasMeter ¶
func (Context) BlockHeader ¶
clone the header before returning
func (Context) BlockHeight ¶
func (Context) CacheContext ¶
CacheContext returns a new Context with the multi-store cached and a new EventManager. The cached context is written to the context when writeCache is called.
func (Context) ConsensusParams ¶
func (c Context) ConsensusParams() *abci.ConsensusParams
func (Context) EventManager ¶
func (c Context) EventManager() *EventManager
func (Context) IsReCheckTx ¶
func (Context) MinGasPrices ¶
func (Context) MultiStore ¶
func (c Context) MultiStore() MultiStore
func (Context) TransientStore ¶
TransientStore fetches a TransientStore from the MultiStore.
func (Context) Value ¶
func (c Context) Value(key interface{}) interface{}
Value is deprecated, provided for backwards compatibility Please use
ctx.Context().Value(key)
instead of
ctx.Value(key)
func (Context) WithBlockGasMeter ¶
func (Context) WithBlockHeight ¶
func (Context) WithChainID ¶
func (Context) WithConsensusParams ¶
func (c Context) WithConsensusParams(params *abci.ConsensusParams) Context
func (Context) WithEventManager ¶
func (c Context) WithEventManager(em *EventManager) Context
func (Context) WithGasMeter ¶
func (Context) WithIsCheckTx ¶
func (Context) WithIsReCheckTx ¶
WithIsRecheckTx called with true will also set true on checkTx in order to enforce the invariant that if recheckTx = true then checkTx = true as well.
func (Context) WithMinGasPrices ¶
func (Context) WithMultiStore ¶
func (c Context) WithMultiStore(ms MultiStore) Context
func (Context) WithProposer ¶
func (c Context) WithProposer(addr ConsAddress) Context
func (Context) WithTxBytes ¶
type Dec ¶
NOTE: never use new(Dec) or else we will panic unmarshalling into the nil embedded big.Int
func GetDenomUnit ¶
GetDenomUnit returns a unit for a given denomination if it exists. A boolean is returned if the denomination is registered.
func NewDecFromBigInt ¶
create a new Dec from big integer assuming whole numbers CONTRACT: prec <= Precision
func NewDecFromBigIntWithPrec ¶
create a new Dec from big integer assuming whole numbers CONTRACT: prec <= Precision
func NewDecFromInt ¶
create a new Dec from big integer assuming whole numbers CONTRACT: prec <= Precision
func NewDecFromIntWithPrec ¶
create a new Dec from big integer with decimal place at prec CONTRACT: prec <= Precision
func NewDecFromStr ¶
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 ¶
create a new Dec from integer with decimal place at prec CONTRACT: prec <= Precision
func SmallestDec ¶
func SmallestDec() Dec
func (Dec) ApproxRoot ¶
ApproxRoot returns an approximate estimation of a Dec's positive real nth root using Newton's method (where n is positive). The algorithm starts with some guess and computes the sequence of improved guesses until an answer converges to an approximate answer. It returns `|d|.ApproxRoot() * -1` if input is negative. A maximum number of 100 iterations is used a backup boundary condition for cases where the answer never converges enough to satisfy the main condition.
func (Dec) ApproxSqrt ¶
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 ¶
Ceil returns the smallest interger value (as a decimal) that is greater than or equal to the given decimal.
func (Dec) IsNegative ¶
func (Dec) IsNil ¶
______________________________________________________________________________________________ nolint
func (Dec) IsPositive ¶
func (Dec) MarshalJSON ¶
MarshalJSON marshals the decimal
func (Dec) MarshalYAML ¶
MarshalYAML returns Ythe AML representation.
func (Dec) RoundInt64 ¶
RoundInt64 rounds the decimal using bankers rounding
func (Dec) TruncateDec ¶
TruncateDec truncates the decimals from the number and returns a Dec
func (Dec) TruncateInt ¶
TruncateInt truncates the decimals from the number and returns an Int
func (Dec) TruncateInt64 ¶
TruncateInt64 truncates the decimals from the number and returns an int64
func (*Dec) UnmarshalAmino ¶
requires a valid JSON string - strings quotes and calls UnmarshalText
func (*Dec) UnmarshalJSON ¶
UnmarshalJSON defines custom decoding scheme
type DecCoin ¶
DecCoin defines a coin which can have additional decimal points
func NewDecCoin ¶
NewDecCoin creates a new DecCoin instance from an Int.
func NewDecCoinFromCoin ¶
NewDecCoinFromCoin creates a new DecCoin from a Coin.
func NewDecCoinFromDec ¶
NewDecCoinFromDec creates a new DecCoin instance from a Dec.
func NewInt64DecCoin ¶
NewInt64DecCoin returns a new DecCoin with a denomination and amount. It will panic if the amount is negative or denom is invalid.
func ParseDecCoin ¶
ParseDecCoin parses a decimal coin from a string, returning an error if invalid. An empty string is considered invalid.
func (DecCoin) IsGTE ¶
IsGTE returns true if they are the same type and the receiver is an equal or greater value.
func (DecCoin) IsLT ¶
IsLT returns true if they are the same type and the receiver is a smaller value.
func (DecCoin) IsNegative ¶
IsNegative returns true if the coin amount is negative and false otherwise.
TODO: Remove once unsigned integers are used.
func (DecCoin) IsPositive ¶
IsPositive returns true if coin amount is positive.
TODO: Remove once unsigned integers are used.
func (DecCoin) IsValid ¶
IsValid returns true if the DecCoin has a non-negative amount and the denom is vaild.
func (DecCoin) String ¶
String implements the Stringer interface for DecCoin. It returns a human-readable representation of a decimal coin.
func (DecCoin) TruncateDecimal ¶
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 ¶
NewDecCoins constructs a new coin set with with decimal values from DecCoins.
func NewDecCoinsFromCoins ¶
NewDecCoinsFromCoin constructs a new coin set with decimal values from regular Coins.
func ParseDecCoins ¶
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 ¶
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) GetDenomByIndex ¶
GetDenomByIndex returns the Denom to make the findDup generic
func (DecCoins) Intersect ¶
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 ¶
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 ¶
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) IsValid ¶
IsValid asserts the DecCoins are sorted, have positive amount, and Denom does not contain upper case characters.
func (DecCoins) MulDec ¶
MulDec multiplies all the coins by a decimal.
CONTRACT: No zero coins will be returned.
func (DecCoins) MulDecTruncate ¶
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 ¶
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 ¶
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 ¶
SafeSub performs the same arithmetic as Sub but returns a boolean if any negative coin amount was returned.
func (DecCoins) String ¶
String implements the Stringer interface for DecCoins. It returns a human-readable representation of decimal coins.
func (DecCoins) TruncateDecimal ¶
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 EndBlocker ¶
type EndBlocker func(ctx Context, req abci.RequestEndBlock) abci.ResponseEndBlock
EndBlocker runs code after the transactions in a block and return updates to the validator set
Note: applications which set create_empty_blocks=false will not have regular block timing and should use e.g. BFT timestamps rather than block height for any periodic EndBlock logic
type Event ¶
Event is a type alias for an ABCI Event
func NewEvent ¶
NewEvent creates a new Event object with a given type and slice of one or more attributes.
func (Event) AppendAttributes ¶
AppendAttributes adds one or more attributes to an Event.
type EventManager ¶
type EventManager struct {
// contains filtered or unexported fields
}
EventManager implements a simple wrapper around a slice of Event objects that can be emitted from.
func NewEventManager ¶
func NewEventManager() *EventManager
func (EventManager) ABCIEvents ¶
func (em EventManager) ABCIEvents() []abci.Event
ABCIEvents returns all stored Event objects as abci.Event objects.
func (*EventManager) EmitEvent ¶
func (em *EventManager) EmitEvent(event Event)
EmitEvent stores a single Event object.
func (*EventManager) EmitEvents ¶
func (em *EventManager) EmitEvents(events Events)
EmitEvents stores a series of Event objects.
func (*EventManager) Events ¶
func (em *EventManager) Events() Events
type Events ¶
type Events []Event
Events defines a slice of Event objects
func (Events) AppendEvent ¶
AppendEvent adds an Event to a slice of events.
func (Events) AppendEvents ¶
AppendEvents adds a slice of Event objects to an exist slice of Event objects.
func (Events) ToABCIEvents ¶
ToABCIEvents converts a slice of Event objects to a slice of abci.Event objects.
type GasInfo ¶
type GasInfo struct { // GasWanted is the maximum units of work we allow this tx to perform. GasWanted uint64 // GasUsed is the amount of gas actually consumed. GasUsed uint64 }
GasInfo defines tx execution gas context.
type InitChainer ¶
type InitChainer func(ctx Context, req abci.RequestInitChain) abci.ResponseInitChain
InitChainer initializes application state at genesis
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 NewIntFromBigInt ¶
NewIntFromBigInt constructs Int from big.Int
func NewIntFromString ¶
NewIntFromString constructs Int from string
func NewIntFromUint64 ¶
NewIntFromUint64 constructs an Int from a uint64.
func NewIntWithDecimal ¶
NewIntWithDecimal constructs Int with decimal Result value is n*10^dec
func TokensFromConsensusPower ¶
TokensFromConsensusPower - convert input power to tokens
func (Int) MarshalAmino ¶
MarshalAmino defines custom encoding scheme
func (Int) MarshalJSON ¶
MarshalJSON defines custom encoding scheme
func (Int) MarshalYAML ¶
MarshalYAML returns Ythe AML representation.
func (*Int) UnmarshalAmino ¶
UnmarshalAmino defines custom decoding scheme
func (*Int) UnmarshalJSON ¶
UnmarshalJSON defines custom decoding scheme
type Invariant ¶
An Invariant is a function which tests a particular invariant. The invariant returns a descriptive message about what happened and a boolean indicating whether the invariant has been broken. The simulator will then halt and print the logs.
type InvariantRegistry ¶
expected interface for registering invariants
type Iterator ¶
nolint - reexport
func KVStorePrefixIterator ¶
Iterator over all the keys with a certain prefix in ascending order
func KVStorePrefixIteratorPaginated ¶
KVStorePrefixIteratorPaginated returns iterator over items in the selected page. Items iterated and skipped in ascending order.
func KVStoreReversePrefixIterator ¶
Iterator over all the keys with a certain prefix in descending order.
type KVStoreKey ¶
type KVStoreKey = types.KVStoreKey
nolint - reexport
func NewKVStoreKey ¶
func NewKVStoreKey(name string) *KVStoreKey
NewKVStoreKey returns a new pointer to a KVStoreKey. Use a pointer so keys don't collide.
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 }
Transactions messages must fulfill the Msg
type MultiStorePersistentCache ¶
type MultiStorePersistentCache = types.MultiStorePersistentCache
nolint - reexport
type PeerFilter ¶
type PeerFilter func(info string) abci.ResponseQuery
PeerFilter responds to p2p filtering queries from Tendermint
type Querier ¶
Querier defines a function type that a module querier must implement to handle custom client queries.
type QueryRouter ¶
type QueryRouter interface { AddRoute(r string, h Querier) QueryRouter Route(path string) Querier }
QueryRouter provides queryables for each query path.
type Result ¶
type Result struct { // Data is any data returned from message or handler execution. It MUST be length // prefixed in order to separate data from multiple message executions. Data []byte // Log contains the log information from message or handler execution. Log string // Events contains a slice of Event objects that were emitted during message or // handler execution. Events Events }
Result is the union of ResponseFormat and ResponseCheckTx.
type Router ¶
type Router interface { AddRoute(r string, h Handler) Router Route(ctx Context, path string) Handler }
Router provides handlers for each transaction type.
type SearchTxsResult ¶
type SearchTxsResult struct { TotalCount int `json:"total_count"` // Count of all txs Count int `json:"count"` // Count of txs in current page PageNumber int `json:"page_number"` // Index of current page, start from 1 PageTotal int `json:"page_total"` // Count of total pages Limit int `json:"limit"` // Max count txs per page Txs []TxResponse `json:"txs"` // List of txs in current page }
SearchTxsResult defines a structure for querying txs pageable
func NewSearchTxsResult ¶
func NewSearchTxsResult(totalCount, count, page, limit int, txs []TxResponse) SearchTxsResult
type SimulationResponse ¶
SimulationResponse defines the response generated when a transaction is successfully simulated by the Baseapp.
type StoreDecoderRegistry ¶
StoreDecoderRegistry defines each of the modules store decoders. Used for ImportExport simulation.
type StringEvent ¶
type StringEvent struct { Type string `json:"type,omitempty"` Attributes []Attribute `json:"attributes,omitempty"` }
StringAttribute defines en Event object wrapper where all the attributes contain key/value pairs that are strings instead of raw bytes.
func StringifyEvent ¶
func StringifyEvent(e abci.Event) StringEvent
StringifyEvent converts an Event object to a StringEvent object.
type StringEvents ¶
type StringEvents []StringEvent
StringAttributes defines a slice of StringEvents objects.
func StringifyEvents ¶
func StringifyEvents(events []abci.Event) StringEvents
StringifyEvents converts a slice of Event objects into a slice of StringEvent objects.
func (StringEvents) Flatten ¶
func (se StringEvents) Flatten() StringEvents
Flatten returns a flattened version of StringEvents by grouping all attributes per unique event type.
func (StringEvents) String ¶
func (se StringEvents) String() string
type Terminator ¶
type Terminator struct{}
Terminator AnteDecorator will get added to the chain to simplify decorator code Don't need to check if next == nil further up the chain
______ <((((((\\\ / . }\ ;--..--._|} (\ '--/\--' ) \\ | '-' :'| \\ . -==- .-| \\ \.__.' \--._ [\\ __.--| // _/'--. \ \\ .'-._ ('-----'/ __/ \ \ \\ / __>| | '--. | \ \\ | \ | / / / \ '\ / \ | | _/ / \ \ \ | | / / snd \ \ \ /
func (Terminator) AnteHandle ¶
func (t Terminator) AnteHandle(ctx Context, _ Tx, _ bool, _ AnteHandler) (Context, error)
Simply return provided Context and nil error
type TestMsg ¶
type TestMsg struct {
// contains filtered or unexported fields
}
msg type for testing
func NewTestMsg ¶
func NewTestMsg(addrs ...AccAddress) *TestMsg
func (*TestMsg) GetSignBytes ¶
func (*TestMsg) GetSigners ¶
func (msg *TestMsg) GetSigners() []AccAddress
func (*TestMsg) ValidateBasic ¶
type TraceContext ¶
type TraceContext = types.TraceContext
TraceContext contains TraceKVStore context data. It will be written with every trace operation.
type TransientStoreKey ¶
type TransientStoreKey = types.TransientStoreKey
nolint - reexport
func NewTransientStoreKey ¶
func NewTransientStoreKey(name string) *TransientStoreKey
Constructs new TransientStoreKey Must return a pointer according to the ocap principle
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 TxResponse ¶
type TxResponse struct { Height int64 `json:"height"` TxHash string `json:"txhash"` Codespace string `json:"codespace,omitempty"` Code uint32 `json:"code,omitempty"` Data string `json:"data,omitempty"` RawLog string `json:"raw_log,omitempty"` Logs ABCIMessageLogs `json:"logs,omitempty"` Info string `json:"info,omitempty"` GasWanted int64 `json:"gas_wanted,omitempty"` GasUsed int64 `json:"gas_used,omitempty"` Tx Tx `json:"tx,omitempty"` Timestamp string `json:"timestamp,omitempty"` }
TxResponse defines a structure containing relevant tx data and metadata. The tags are stringified and the log is JSON decoded.
func NewResponseFormatBroadcastTx ¶
func NewResponseFormatBroadcastTx(res *ctypes.ResultBroadcastTx) TxResponse
NewResponseFormatBroadcastTx returns a TxResponse given a ResultBroadcastTx from tendermint
func NewResponseFormatBroadcastTxCommit ¶
func NewResponseFormatBroadcastTxCommit(res *ctypes.ResultBroadcastTxCommit) TxResponse
NewResponseFormatBroadcastTxCommit returns a TxResponse given a ResultBroadcastTxCommit from tendermint.
func NewResponseResultTx ¶
func NewResponseResultTx(res *ctypes.ResultTx, tx Tx, timestamp string) TxResponse
NewResponseResultTx returns a TxResponse given a ResultTx from tendermint
func (TxResponse) Empty ¶
func (r TxResponse) Empty() bool
Empty returns true if the response is empty
func (TxResponse) String ¶
func (r TxResponse) String() string
type Uint ¶
type Uint struct {
// contains filtered or unexported fields
}
Uint wraps integer with 256 bit range bound Checks overflow, underflow and division by zero Exists in range from 0 to 2^256-1
func NewUintFromBigInt ¶
NewUintFromBigUint constructs Uint from big.Uint
func NewUintFromString ¶
NewUintFromString constructs Uint from string
func RelativePow ¶
RelativePow raises x to the power of n, where x (and the result, z) are scaled by factor b for example, RelativePow(210, 2, 100) = 441 (2.1^2 = 4.41)
func (Uint) MarshalAmino ¶
MarshalAmino defines custom encoding scheme
func (Uint) MarshalJSON ¶
MarshalJSON defines custom encoding scheme
func (*Uint) UnmarshalAmino ¶
UnmarshalAmino defines custom decoding scheme
func (*Uint) UnmarshalJSON ¶
UnmarshalJSON defines custom decoding scheme
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 ValAddressFromBech32 ¶
func ValAddressFromBech32(address string) (addr ValAddress, err error)
ValAddressFromBech32 creates a ValAddress from a Bech32 string.
func ValAddressFromHex ¶
func ValAddressFromHex(address string) (addr ValAddress, err error)
ValAddressFromHex creates a ValAddress from a hex string.
func (ValAddress) Empty ¶
func (va ValAddress) Empty() bool
Returns boolean for whether an AccAddress is empty
func (ValAddress) Equals ¶
func (va ValAddress) Equals(va2 Address) 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) MarshalYAML ¶
func (va ValAddress) MarshalYAML() (interface{}, error)
MarshalYAML marshals to YAML 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.
func (*ValAddress) UnmarshalYAML ¶
func (va *ValAddress) UnmarshalYAML(data []byte) error
UnmarshalYAML unmarshals from YAML assuming Bech32 encoding.
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
Package errors implements custom error interfaces for cosmos-sdk.
|
Package errors implements custom error interfaces for cosmos-sdk. |
Package module contains application module patterns and associated "manager" functionality.
|
Package module contains application module patterns and associated "manager" functionality. |
Package rest provides HTTP types and primitives for REST requests validation and responses handling.
|
Package rest provides HTTP types and primitives for REST requests validation and responses handling. |