Documentation ¶
Overview ¶
nolint
Index ¶
- Constants
- Variables
- func ABCIValidator(v Validator) abci.Validator
- func AppendMsgToErr(msg string, err string) string
- func Bech32ifyAccPub(pub crypto.PubKey) (string, error)
- func Bech32ifyConsPub(pub crypto.PubKey) (string, error)
- func Bech32ifyValPub(pub crypto.PubKey) (string, error)
- func CodeToDefaultMsg(code CodeType) string
- func DecEq(t *testing.T, exp, got Dec) (*testing.T, bool, string, string, string)
- func DecsEqual(d1s, d2s []Dec) bool
- func DiffKVStores(a KVStore, b KVStore, prefixesToSkip [][]byte) (kvA cmn.KVPair, kvB cmn.KVPair, count int64, equal bool)
- func FormatTimeBytes(t time.Time) []byte
- func GetAccPubKeyBech32(pubkey string) (pk crypto.PubKey, err error)
- func GetConsPubKeyBech32(pubkey string) (pk crypto.PubKey, err error)
- func GetErrMsg(code CodeType) string
- func GetFromBech32(bech32str, prefix string) ([]byte, error)
- func GetValPubKeyBech32(pubkey string) (pk crypto.PubKey, err error)
- func InclusiveEndBytes(inclusiveBytes []byte) (exclusiveBytes []byte)
- func IntEq(t *testing.T, exp, got Int) (*testing.T, bool, string, string, string)
- func MustBech32ifyAccPub(pub crypto.PubKey) string
- func MustBech32ifyConsPub(pub crypto.PubKey) string
- func MustBech32ifyValPub(pub crypto.PubKey) string
- func MustGetAccPubKeyBech32(pubkey string) (pk crypto.PubKey)
- func MustGetConsPubKeyBech32(pubkey string) (pk crypto.PubKey)
- func MustGetValPubKeyBech32(pubkey string) (pk crypto.PubKey)
- func MustSortJSON(toSortJSON []byte) []byte
- func NewDecFromStr(str string) (d Dec, err Error)
- func NewLevelDB(name, dir string) (db dbm.DB, err error)
- func NewRatFromDecimal(decimalStr string, prec int) (f Rat, err Error)
- func ParseTimeBytes(bz []byte) (time.Time, error)
- func PrefixEndBytes(prefix []byte) []byte
- func RatEq(t *testing.T, exp, got Rat) (*testing.T, bool, string, Rat, Rat)
- func RatsEqual(r1s, r2s []Rat) bool
- func RegisterCodec(cdc *codec.Codec)
- func RegisterDenom(denom string, unit Dec) error
- func SortJSON(toSortJSON []byte) ([]byte, error)
- func ToEthAddress(appAddr AccAddress) common.Address
- func TokensToTendermintPower(tokens Int) int64
- func Uint64ToBigEndian(i uint64) []byte
- func UintOverflow(i *big.Int) 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) String() string
- func (aa *AccAddress) Unmarshal(data []byte) error
- func (aa *AccAddress) UnmarshalJSON(data []byte) error
- type Address
- type AnteHandler
- type BeginBlocker
- type BigCoin
- type BondStatus
- type CacheKVStore
- type CacheMultiStore
- type CacheWrap
- type CacheWrapper
- type CodeType
- type CodespaceType
- 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) IsZero() bool
- func (coin Coin) String() string
- func (coin Coin) Sub(coinB Coin) Coin
- type CoinFlowRecord
- type CoinFlowTags
- type Coins
- func (coins Coins) Add(coinsB Coins) Coins
- func (coins Coins) AmountOf(denom string) Int
- func (coins Coins) DenomsSubsetOf(coinsB Coins) bool
- func (coins Coins) Empty() bool
- 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) 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) 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) 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) GetTxEncoder() TxEncoder
- func (config *Config) Seal() *Config
- func (config *Config) SetBech32PrefixForAccount(addressPrefix, pubKeyPrefix string)
- func (config *Config) SetBech32PrefixForConsensusNode(addressPrefix, pubKeyPrefix string)
- func (config *Config) SetBech32PrefixForValidator(addressPrefix, pubKeyPrefix 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) String() string
- func (ca *ConsAddress) Unmarshal(data []byte) error
- func (ca *ConsAddress) UnmarshalJSON(data []byte) error
- type Context
- func (c Context) BlockGasMeter() GasMeter
- func (c Context) BlockHeader() abci.Header
- func (c Context) BlockHeight() int64
- func (c Context) CacheContext() (cc Context, writeCache func())
- func (c Context) ChainID() string
- func (c Context) CheckValidNum() uint64
- func (c Context) CoinFlowTags() CoinFlowTags
- func (c Context) CoinFlowTrigger() string
- func (c Context) ConsensusParams() *abci.ConsensusParams
- func (c Context) GasMeter() GasMeter
- func (c Context) GetOp(ver int64) (Op, bool)
- func (c Context) IsCheckTx() bool
- func (c Context) IsZero() bool
- func (c Context) KVStore(key StoreKey) KVStore
- func (c Context) Logger() log.Logger
- func (c Context) MinGasPrices() Coins
- func (c Context) MinimumFees() Coins
- 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) WithCacheWrapper(key interface{}, value CacheWrapper) Context
- func (c Context) WithChainID(chainID string) Context
- func (c Context) WithCheckValidNum(checkValidNum uint64) Context
- func (c Context) WithCloner(key interface{}, value cloner) Context
- func (c Context) WithCoinFlowTags(cTag CoinFlowTags) Context
- func (c Context) WithCoinFlowTrigger(trigger string) Context
- func (c Context) WithConsensusParams(params *abci.ConsensusParams) Context
- func (c Context) WithGasMeter(meter GasMeter) Context
- func (c Context) WithInt32(key interface{}, value int32) Context
- func (c Context) WithIsCheckTx(isCheckTx bool) Context
- func (c Context) WithLogger(logger log.Logger) Context
- func (c Context) WithMinGasPrices(gasPrices Coins) Context
- func (c Context) WithMinimumFees(minFees Coins) Context
- func (c Context) WithMultiStore(ms MultiStore) Context
- func (c Context) WithProposer(addr ConsAddress) Context
- func (c Context) WithProtoMsg(key interface{}, value proto.Message) Context
- func (c Context) WithString(key interface{}, value string) Context
- func (c Context) WithTxBytes(txBytes []byte) Context
- func (c Context) WithUint32(key interface{}, value uint32) Context
- func (c Context) WithUint64(key interface{}, value uint64) Context
- func (c Context) WithValue(key interface{}, value interface{}) Context
- func (c Context) WithVoteInfos(VoteInfos []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 NewDecWithPrec(i, prec int64) Dec
- func OneDec() Dec
- func ZeroDec() Dec
- func (d Dec) Abs() Dec
- func (d Dec) Add(d2 Dec) Dec
- 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) 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) 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) ToUint64() uint64
- 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) 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 DecCoins) DecCoins
- func (coins DecCoins) AmountOf(denom string) Dec
- func (coins DecCoins) Empty() bool
- func (coins DecCoins) Intersect(coinsB DecCoins) DecCoins
- func (coins DecCoins) IsAllGTE(coinsB DecCoins) bool
- 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 Delegation
- type DelegationSet
- type DeliverTx
- type EndBlocker
- type Error
- func ErrExceedsTxSize(msg string) Error
- func ErrGasOverflow(msg string) Error
- func ErrGasPriceTooLow(msg string) Error
- func ErrInsufficientCoins(msg string) Error
- func ErrInsufficientFee(msg string) Error
- func ErrInsufficientFunds(msg string) Error
- func ErrInternal(msg string) Error
- func ErrInvalidAddress(msg string) Error
- func ErrInvalidCoins(msg string) Error
- func ErrInvalidFeeDenom(msg string) Error
- func ErrInvalidGas(msg string) Error
- func ErrInvalidLength(codespace CodespaceType, codeType CodeType, descriptor string, got, max int) Error
- func ErrInvalidPubKey(msg string) Error
- func ErrInvalidSequence(msg string) Error
- func ErrInvalidTxFee(msg string) Error
- func ErrMemoTooLarge(msg string) Error
- func ErrNoSignatures(msg string) Error
- func ErrOutOfGas(msg string) Error
- func ErrServiceTxLimit(msg string) Error
- func ErrTooManySignatures(msg string) Error
- func ErrTxDecode(msg string) Error
- func ErrUnauthorized(msg string) Error
- func ErrUnknownAddress(msg string) Error
- func ErrUnknownRequest(msg string) Error
- func MarshalResultErr(err error) Error
- func NewError(codespace CodespaceType, code CodeType, format string, args ...interface{}) Error
- func ParseParamsErr(err error) Error
- type ErrorGasOverflow
- type ErrorOutOfGas
- type FeePreprocessHandler
- type FeeRefundHandler
- type Gas
- type GasConfig
- type GasMeter
- type GetMsgDataFunc
- type Handler
- type InitChainer
- type InitChainer1
- type 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) IsPositive() 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) 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 Invariants
- type Iterator
- type KVPair
- type KVStore
- type KVStoreKey
- type ModuleClients
- type Msg
- type MultiStore
- type Op
- type PeerFilter
- type ProtocolDefinition
- type ProtocolKeeper
- func (pk ProtocolKeeper) ClearUpgradeConfig(ctx Context)
- func (pk ProtocolKeeper) GetCurrentVersion(ctx Context) uint64
- func (pk ProtocolKeeper) GetCurrentVersionByStore(store KVStore) uint64
- func (pk ProtocolKeeper) GetLastFailedVersion(ctx Context) uint64
- func (pk ProtocolKeeper) GetUpgradeConfig(ctx Context) (upgradeConfig UpgradeConfig, found bool)
- func (pk ProtocolKeeper) GetUpgradeConfigByStore(store KVStore) (upgradeConfig UpgradeConfig, found bool)
- func (pk ProtocolKeeper) IsValidVersion(ctx Context, version uint64) bool
- func (pk ProtocolKeeper) SetCurrentVersion(ctx Context, currentVersion uint64)
- func (pk ProtocolKeeper) SetLastFailedVersion(ctx Context, lastFailedVersion uint64)
- func (pk ProtocolKeeper) SetUpgradeConfig(ctx Context, upgradeConfig UpgradeConfig)
- type PruningOptions
- type Querier
- type Queryable
- type Rat
- func (r Rat) Add(r2 Rat) Rat
- func (r Rat) DecimalString(prec int) string
- func (r Rat) Denom() Int
- func (r Rat) Equal(r2 Rat) bool
- func (r Rat) EvaluateBig() *big.Int
- func (r Rat) FloatString() string
- func (r Rat) GT(r2 Rat) bool
- func (r Rat) GTE(r2 Rat) bool
- func (r Rat) IsZero() bool
- func (r Rat) LT(r2 Rat) bool
- func (r Rat) LTE(r2 Rat) bool
- func (r Rat) MarshalAmino() (string, error)
- func (r Rat) Mul(r2 Rat) Rat
- func (r Rat) Num() Int
- func (r Rat) Quo(r2 Rat) Rat
- func (r Rat) Round(precisionFactor int64) Rat
- func (r Rat) RoundInt() Int
- func (r Rat) RoundInt64() int64
- func (r Rat) String() string
- func (r Rat) Sub(r2 Rat) Rat
- func (r Rat) ToLeftPadded(totalDigits int8) string
- func (r *Rat) UnmarshalAmino(text string) (err error)
- type Result
- type StakingHooks
- type Store
- type StoreKey
- type StoreType
- type StringTag
- type StringTags
- type Tag
- type Tags
- 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) Equal(u2 Uint) bool
- func (u Uint) GT(u2 Uint) bool
- func (u Uint) GTE(u2 Uint) bool
- 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) 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 UpgradeConfig
- 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) String() string
- func (va *ValAddress) Unmarshal(data []byte) error
- func (va *ValAddress) UnmarshalJSON(data []byte) error
- type Validator
- type ValidatorSet
Constants ¶
const ( // AddrLen defines a valid address length AddrLen = 20 // Bech32PrefixAccAddr defines the Bech32 prefix of an account's address Bech32MainPrefix = "htdf" // 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 ( BigDenom = "htdf" DefaultDenom = "satoshi" )
const ( //source type TransferFlow = "Transfer" DelegationFlow = "Delegation" UndelegationFlow = "Undelegation" ValidatorRewardFlow = "ValidatorReward" ValidatorCommissionFlow = "ValidatorCommission" DelegatorRewardFlow = "DelegatorReward" BurnFlow = "Burn" CommunityTaxUseFlow = "CommunityTaxUse" GovDepositFlow = "GovDeposit" GovDepositBurnFlow = "GovDepositBurn" GovDepositRefundFlow = "GovDepositRefund" ServiceDepositFlow = "ServiceDeposit" ServiceDepositRefundFlow = "ServiceDepositRefund" //Trigger: transaction hash, module endBlock GovEndBlocker = "govEndBlocker" SlashBeginBlocker = "slashBeginBlocker" SlashEndBlocker = "slashEndBlocker" StakeEndBlocker = "stakeEndBlocker" ServiceEndBlocker = "serviceEndBlocker" )
const ( Precision = 18 // bytes required to represent the above precision // Ceiling[Log2[999 999 999 999 999 999]] DecimalPrecisionBits = 60 )
number of decimal places
const ( TwentySeconds = 20 * time.Second SixtyHours = 60 * time.Hour Day = 24 * time.Hour TwoDays = 2 * Day ThreeDays = 3 * Day FiveDays = 5 * Day Week = 7 * Day )
const ( Codespace CodespaceType = "htdf" ErrCode_OK CodeType = 0 ErrCode_CreateContract CodeType = 1 ErrCode_OpenContract CodeType = 2 ErrCode_BeZeroAmount CodeType = 3 ErrCode_Param CodeType = 4 )
const ( // Base error codes CodeOK CodeType = 0 CodeInternal CodeType = 1 CodeTxDecode CodeType = 2 CodeInvalidSequence CodeType = 3 CodeInsufficientFunds CodeType = 5 CodeUnknownRequest CodeType = 6 CodeInvalidAddress CodeType = 7 CodeInvalidPubKey CodeType = 8 CodeUnknownAddress CodeType = 9 CodeInsufficientCoins CodeType = 10 CodeInvalidCoins CodeType = 11 CodeOutOfGas CodeType = 12 CodeMemoTooLarge CodeType = 13 CodeInsufficientFee CodeType = 14 CodeTooManySignatures CodeType = 15 CodeGasOverflow CodeType = 16 CodeNoSignatures CodeType = 17 CodeInvalidGas CodeType = 18 CodeInvalidTxFee CodeType = 19 CodeInvalidFeeDenom CodeType = 20 CodeExceedsTxSize CodeType = 21 CodeServiceTxLimit CodeType = 22 CodePaginationParams CodeType = 23 CodeGasPriceTooLow CodeType = 24 CodeOutOfService CodeType = 25 // CodespaceRoot is a codespace for error codes in this file only. // Notice that 0 is an "unset" codespace, which can be overridden with // Error.WithDefaultCodespace(). CodespaceUndefined CodespaceType = "" CodespaceRoot CodespaceType = "sdk" )
SDK error codes
const ( AppVersionTag = "app_version" MainStore = "main" )
const ( Unbonded BondStatus = 0x00 Unbonding BondStatus = 0x01 Bonded BondStatus = 0x02 // default bond denomination DefaultBondDenom = DefaultDenom // junying-todo, 2019-08-27, "stake" to "satoshi" // Delay, in blocks, between when validator updates are returned to Tendermint and when they are applied. // For example, if this is 0, the validator set at the end of a block will sign the next block, or // if this is 1, the validator set at the end of a block will sign the block after the next. // Constant as this should not change without a hard fork. // TODO: Link to some Tendermint docs, this is very unobvious. ValidatorUpdateDelay int64 = 1 BondStatusUnbonded = "Unbonded" BondStatusUnbonding = "Unbonding" BondStatusBonded = "Bonded" )
staking constants
const ( StoreTypeMulti = types.StoreTypeMulti StoreTypeDB = types.StoreTypeDB StoreTypeIAVL = types.StoreTypeIAVL StoreTypeTransient = types.StoreTypeTransient )
nolint - reexport
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 ( UpgradeConfigKey = []byte("upgrade_config") CurrentVersionKey = []byte("current_version") LastFailedVersionKey = []byte("last_failed_version") )
var ( TagAction = "action" TagSrcValidator = "source-validator" TagDstValidator = "destination-validator" TagDelegator = "delegator" )
common tags
var (
// This is set at compile time. Could be cleveldb, defaults is goleveldb.
DBBackend = ""
)
var PowerReduction = NewIntFromBigInt(new(big.Int).Exp(big.NewInt(10), big.NewInt(8), nil))
PowerReduction is the amount of staking tokens required for 1 unit of Tendermint power
Functions ¶
func ABCIValidator ¶
validator which fulfills abci validator interface for use in Tendermint
func AppendMsgToErr ¶
appends a message to the head of the given error
func Bech32ifyAccPub ¶
Bech32ifyAccPub returns a Bech32 encoded string containing the Bech32PrefixAccPub prefix for a given account PubKey.
func Bech32ifyConsPub ¶
Bech32ifyConsPub returns a Bech32 encoded string containing the Bech32PrefixConsPub prefixfor a given consensus node's PubKey.
func Bech32ifyValPub ¶
Bech32ifyValPub returns a Bech32 encoded string containing the Bech32PrefixValPub prefix for a given validator operator's PubKey.
func CodeToDefaultMsg ¶
NOTE: Don't stringer this, we'll put better messages in later.
func DiffKVStores ¶
func DiffKVStores(a KVStore, b KVStore, prefixesToSkip [][]byte) (kvA cmn.KVPair, kvB cmn.KVPair, count int64, equal bool)
Compare two KVstores, return either the first key/value pair at which they differ and whether or not they are equal, skipping value comparison for a set of provided prefixes
func FormatTimeBytes ¶
Formats a time.Time into a []byte that can be sorted
func GetAccPubKeyBech32 ¶
GetAccPubKeyBech32 creates a PubKey for an account with a given public key string using the Bech32 Bech32PrefixAccPub prefix.
func GetConsPubKeyBech32 ¶
GetConsPubKeyBech32 creates a PubKey for a consensus node with a given public key string using the Bech32 Bech32PrefixConsPub prefix.
func GetFromBech32 ¶
GetFromBech32 decodes a bytestring from a Bech32 encoded string.
func GetValPubKeyBech32 ¶
GetValPubKeyBech32 creates a PubKey for a validator's operator with a given public key string using the Bech32 Bech32PrefixValPub prefix.
func InclusiveEndBytes ¶
InclusiveEndBytes returns the []byte that would end a range query such that the input would be included
func MustBech32ifyAccPub ¶
MustBech32ifyAccPub returns the result of Bech32ifyAccPub panicing on failure.
func MustBech32ifyConsPub ¶
MustBech32ifyConsPub returns the result of Bech32ifyConsPub panicing on failure.
func MustBech32ifyValPub ¶
MustBech32ifyValPub returns the result of Bech32ifyValPub panicing on failure.
func MustGetAccPubKeyBech32 ¶
MustGetAccPubKeyBech32 returns the result of GetAccPubKeyBech32 panicing on failure.
func MustGetConsPubKeyBech32 ¶
MustGetConsPubKeyBech32 returns the result of GetConsPubKeyBech32 panicing on failure.
func MustGetValPubKeyBech32 ¶
MustGetValPubKeyBech32 returns the result of GetValPubKeyBech32 panicing on failure.
func MustSortJSON ¶
MustSortJSON is like SortJSON but panic if an error occurs, e.g., if the passed JSON isn't valid.
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 NewLevelDB ¶
NewLevelDB instantiate a new LevelDB instance according to DBBackend.
func NewRatFromDecimal ¶
create a rational from decimal string or integer string precision is the number of values after the decimal point which should be read
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 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 ToEthAddress ¶
func ToEthAddress(appAddr AccAddress) common.Address
func TokensToTendermintPower ¶
TokensToTendermintPower - convert input tokens to potential tendermint 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.
Types ¶
type ABCIMessageLog ¶
type ABCIMessageLog struct { MsgIndex int `json:"msg_index"` Success bool `json:"success"` Log string `json:"log"` }
ABCIMessageLog defines a structure containing an indexed tx ABCI message log.
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 ToAppAddress ¶
func ToAppAddress(ethAddr common.Address) AccAddress
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) 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 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 AnteHandler ¶
type AnteHandler func(ctx Context, tx Tx, simulate bool) (newCtx Context, result Result, abort bool)
AnteHandler authenticates transactions, before their internal messages are handled. If newCtx.IsZero(), ctx is used instead.
type BeginBlocker ¶
type BeginBlocker func(ctx Context, req abci.RequestBeginBlock) abci.ResponseBeginBlock
run code before the transactions in a block
type BondStatus ¶
type BondStatus byte
status of a validator
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.
type CoinFlowRecord ¶
type CoinFlowRecord struct {
// contains filtered or unexported fields
}
func (*CoinFlowRecord) AppendCoinFlowTag ¶
func (cfRecord *CoinFlowRecord) AppendCoinFlowTag(ctx Context, from, to, amount, flowType, desc string)
func (*CoinFlowRecord) GetTags ¶
func (cfRecord *CoinFlowRecord) GetTags() Tags
func (*CoinFlowRecord) TagClean ¶
func (cfRecord *CoinFlowRecord) TagClean()
func (*CoinFlowRecord) TagWrite ¶
func (cfRecord *CoinFlowRecord) TagWrite()
type CoinFlowTags ¶
type CoinFlowTags interface { GetTags() Tags //Append temporary tags to persistent tags TagWrite() //Clean temporary tags TagClean() //Add new tag to temporary tags AppendCoinFlowTag(ctx Context, from, to, amount, flowType, desc string) }
func NewCoinFlowRecord ¶
func NewCoinFlowRecord(enable bool) CoinFlowTags
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) 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 if for every denom in coins, the denom is present at a smaller amount in coinsB.
func (Coins) IsAllLTE ¶
IsAllLTE returns true if 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) IsAnyGTE ¶
IsAnyGTE returns true if 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) 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 (*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) 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) 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) 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) 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.
type Context ¶
The intent of Context is for it to be an immutable object that can be cloned and updated cheaply with WithValue() and passed forward to the next decorator or handler. For example,
func MsgHandler(ctx Context, tx Tx) Result { ... ctx = ctx.WithValue(key, value) ... }
func NewContext ¶
create a new context
func (Context) BlockGasMeter ¶
func (Context) BlockHeader ¶
func (Context) BlockHeight ¶
func (Context) CacheContext ¶
Cache the multistore and return a new cached context. The cached context is written to the context when writeCache is called.
func (Context) CheckValidNum ¶
func (Context) CoinFlowTags ¶
func (c Context) CoinFlowTags() CoinFlowTags
func (Context) CoinFlowTrigger ¶
func (Context) ConsensusParams ¶
func (c Context) ConsensusParams() *abci.ConsensusParams
func (Context) GetOp ¶
Returns false if ver <= 0 || ver > len(c.pst.ops). The first operation is version 1.
func (Context) MinGasPrices ¶
func (Context) MinimumFees ¶
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{}
context value for the provided key
func (Context) WithBlockGasMeter ¶
func (Context) WithBlockHeight ¶
func (Context) WithCacheWrapper ¶
func (c Context) WithCacheWrapper(key interface{}, value CacheWrapper) Context
func (Context) WithChainID ¶
func (Context) WithCheckValidNum ¶
func (Context) WithCloner ¶
func (Context) WithCoinFlowTags ¶
func (c Context) WithCoinFlowTags(cTag CoinFlowTags) Context
func (Context) WithCoinFlowTrigger ¶
func (Context) WithConsensusParams ¶
func (c Context) WithConsensusParams(params *abci.ConsensusParams) Context
func (Context) WithGasMeter ¶
func (Context) WithIsCheckTx ¶
func (Context) WithMinGasPrices ¶
func (Context) WithMinimumFees ¶
func (Context) WithMultiStore ¶
func (c Context) WithMultiStore(ms MultiStore) Context
func (Context) WithProposer ¶
func (c Context) WithProposer(addr ConsAddress) Context
func (Context) WithProtoMsg ¶
func (Context) WithString ¶
func (Context) WithTxBytes ¶
func (Context) WithUint32 ¶
func (Context) WithUint64 ¶
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 NewDecWithPrec ¶
create a new Dec from integer with decimal place at prec CONTRACT: prec <= Precision
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) 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 ¶
Coins which can have additional decimal points
func NewDecCoin ¶
func NewDecCoinFromCoin ¶
func NewDecCoinFromDec ¶
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) 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
coins with decimal
func NewDecCoins ¶
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) 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) IsAllGTE ¶
IsAllGTE returns false if for any denom in coinsB, the denom is present at a smaller amount in coins; else returns true.
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 Delegation ¶
type Delegation interface { GetDelegatorAddr() AccAddress // delegator AccAddress for the bond GetValidatorAddr() ValAddress // validator operator address }
delegation bond for a delegated proof of stake system
type DelegationSet ¶
type DelegationSet interface { GetValidatorSet() ValidatorSet // validator set for which delegation set is based upon // iterate through all delegations from one delegator by validator-AccAddress, // execute func for each validator IterateDelegations(ctx Context, delegator AccAddress, fn func(index int64, delegation Delegation) (stop bool)) }
properties for the set of all delegations for a particular
type DeliverTx ¶
type DeliverTx func(txBytes []byte) abci.ResponseDeliverTx
type EndBlocker ¶
type EndBlocker func(ctx Context, req abci.RequestEndBlock) abci.ResponseEndBlock
run code after the transactions in a block and return updates to the validator set
type Error ¶
type Error interface { // convenience TraceSDK(format string, args ...interface{}) Error // set codespace WithDefaultCodespace(CodespaceType) Error Code() CodeType Codespace() CodespaceType ABCILog() string Result() Result QueryResult() abci.ResponseQuery // contains filtered or unexported methods }
sdk Error type
func ErrExceedsTxSize ¶
func ErrGasOverflow ¶
func ErrGasPriceTooLow ¶
func ErrInsufficientCoins ¶
func ErrInsufficientFee ¶
func ErrInsufficientFunds ¶
func ErrInvalidAddress ¶
func ErrInvalidCoins ¶
func ErrInvalidFeeDenom ¶
func ErrInvalidGas ¶
func ErrInvalidLength ¶
func ErrInvalidLength(codespace CodespaceType, codeType CodeType, descriptor string, got, max int) Error
func ErrInvalidPubKey ¶
func ErrInvalidSequence ¶
func ErrInvalidTxFee ¶
func ErrMemoTooLarge ¶
func ErrNoSignatures ¶
func ErrOutOfGas ¶
func ErrServiceTxLimit ¶
func ErrTooManySignatures ¶
func ErrTxDecode ¶
func ErrUnauthorized ¶
func ErrUnknownAddress ¶
func ErrUnknownRequest ¶
func MarshalResultErr ¶
func NewError ¶
func NewError(codespace CodespaceType, code CodeType, format string, args ...interface{}) Error
NewError - create an error.
func ParseParamsErr ¶
type FeePreprocessHandler ¶
type GasMeter ¶
nolint - reexport
func NewFalseGasMeter ¶
junying-todo, 2019-11-11 in order to remove gas calc for tx
type GetMsgDataFunc ¶ added in v1.3.0
GetMsgDataFunc for x/core/MsgSend to get msg.Data , added by yqq 2020-12-03
type InitChainer ¶
type InitChainer func(ctx Context, req abci.RequestInitChain) abci.ResponseInitChain
initialize application state at genesis
type InitChainer1 ¶
type InitChainer1 func(ctx Context, deliverTx DeliverTx, req abci.RequestInitChain) abci.ResponseInitChain
initialize 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 NewIntWithDecimal ¶
NewIntWithDecimal constructs Int with decimal Result value is n*10^dec
func TokensFromTendermintPower ¶
TokensFromTendermintPower - convert input power to tokens
func (Int) MarshalAmino ¶
MarshalAmino defines custom encoding scheme
func (Int) MarshalJSON ¶
MarshalJSON defines custom encoding scheme
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. If the invariant has been broken, it should return an error containing a descriptive message about what happened. The simulator will then halt and print the logs.
type Iterator ¶
nolint - reexport
func KVStorePrefixIterator ¶
Iterator over all the keys with a certain prefix 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 ModuleClients ¶
ModuleClients helps modules provide a standard interface for exporting client functionality
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 PeerFilter ¶
type PeerFilter func(info string) abci.ResponseQuery
respond to p2p filtering queries from Tendermint
type ProtocolDefinition ¶
type ProtocolDefinition struct { Version uint64 `json:"version"` Software string `json:"software"` Height uint64 `json:"height"` Threshold Dec `json:"threshold"` }
func NewProtocolDefinition ¶
func NewProtocolDefinition(version uint64, software string, height uint64, threshold Dec) ProtocolDefinition
type ProtocolKeeper ¶
type ProtocolKeeper struct {
// contains filtered or unexported fields
}
func NewProtocolKeeper ¶
func NewProtocolKeeper(key StoreKey) ProtocolKeeper
func (ProtocolKeeper) ClearUpgradeConfig ¶
func (pk ProtocolKeeper) ClearUpgradeConfig(ctx Context)
func (ProtocolKeeper) GetCurrentVersion ¶
func (pk ProtocolKeeper) GetCurrentVersion(ctx Context) uint64
func (ProtocolKeeper) GetCurrentVersionByStore ¶
func (pk ProtocolKeeper) GetCurrentVersionByStore(store KVStore) uint64
func (ProtocolKeeper) GetLastFailedVersion ¶
func (pk ProtocolKeeper) GetLastFailedVersion(ctx Context) uint64
func (ProtocolKeeper) GetUpgradeConfig ¶
func (pk ProtocolKeeper) GetUpgradeConfig(ctx Context) (upgradeConfig UpgradeConfig, found bool)
func (ProtocolKeeper) GetUpgradeConfigByStore ¶
func (pk ProtocolKeeper) GetUpgradeConfigByStore(store KVStore) (upgradeConfig UpgradeConfig, found bool)
func (ProtocolKeeper) IsValidVersion ¶
func (pk ProtocolKeeper) IsValidVersion(ctx Context, version uint64) bool
func (ProtocolKeeper) SetCurrentVersion ¶
func (pk ProtocolKeeper) SetCurrentVersion(ctx Context, currentVersion uint64)
func (ProtocolKeeper) SetLastFailedVersion ¶
func (pk ProtocolKeeper) SetLastFailedVersion(ctx Context, lastFailedVersion uint64)
func (ProtocolKeeper) SetUpgradeConfig ¶
func (pk ProtocolKeeper) SetUpgradeConfig(ctx Context, upgradeConfig UpgradeConfig)
type Rat ¶
NOTE: never use new(Rat) or else we will panic unmarshalling into the nil embedded big.Rat
func NewRatFromBigInt ¶
NewRatFromBigInt constructs Rat from big.Int
func NewRatFromInt ¶
NewRatFromInt constructs Rat from Int
func (Rat) EvaluateBig ¶
evaluate the rational using bankers rounding
func (Rat) FloatString ¶
func (Rat) RoundInt64 ¶
RoundInt64 rounds the rational using bankers rounding
func (Rat) ToLeftPadded ¶
TODO panic if negative or if totalDigits < len(initStr)??? evaluate as an integer and return left padded string
func (*Rat) UnmarshalAmino ¶
Requires a valid JSON string - strings quotes and calls UnmarshalText
type Result ¶
type Result struct { // Code is the response code, is stored back on the chain. Code CodeType // Codespace is the string referring to the domain of an error Codespace CodespaceType // Data is any data returned from the app. // Data has to be length prefixed in order to separate // results from multiple msgs executions Data []byte // Log contains the txs log information. NOTE: nondeterministic. Log string // GasWanted is the maximum units of work we allow this tx to perform. GasWanted uint64 // GasUsed is the amount of gas actually consumed. NOTE: unimplemented GasUsed uint64 // Tags are used for transaction indexing and pubsub. Tags Tags }
Result is the union of ResponseFormat and ResponseCheckTx.
type StakingHooks ¶
type StakingHooks interface { AfterValidatorCreated(ctx Context, valAddr ValAddress) // Must be called when a validator is created BeforeValidatorModified(ctx Context, valAddr ValAddress) // Must be called when a validator's state changes AfterValidatorRemoved(ctx Context, consAddr ConsAddress, valAddr ValAddress) // Must be called when a validator is deleted AfterValidatorBonded(ctx Context, consAddr ConsAddress, valAddr ValAddress) // Must be called when a validator is bonded AfterValidatorBeginUnbonding(ctx Context, consAddr ConsAddress, valAddr ValAddress) // Must be called when a validator begins unbonding BeforeDelegationCreated(ctx Context, delAddr AccAddress, valAddr ValAddress) // Must be called when a delegation is created BeforeDelegationRemoved(ctx Context, delAddr AccAddress, valAddr ValAddress) // Must be called when a delegation is removed AfterDelegationModified(ctx Context, delAddr AccAddress, valAddr ValAddress) BeforeValidatorSlashed(ctx Context, valAddr ValAddress, fraction Dec) }
event hooks for staking validator object
type StringTag ¶
A KVPair where the Key and Value are both strings, rather than []byte
func TagToStringTag ¶
Conversion function from a []byte tag to a string tag
type StringTags ¶
type StringTags []StringTag
A slice of StringTag
func TagsToStringTags ¶
func TagsToStringTags(tags Tags) StringTags
Conversion function from Tags to a StringTags
func (StringTags) String ¶
func (st StringTags) String() string
type Tags ¶
Type synonym for convenience
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"` 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"` Tags StringTags `json:"tags,omitempty"` Codespace string `json:"codespace,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 (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 UpgradeConfig ¶
type UpgradeConfig struct { ProposalID uint64 Protocol ProtocolDefinition }
func DefaultUpgradeConfig ¶
func DefaultUpgradeConfig(protocolVersion uint64, software string) UpgradeConfig
func NewUpgradeConfig ¶
func NewUpgradeConfig(proposalID uint64, protocol ProtocolDefinition) UpgradeConfig
func (UpgradeConfig) String ¶
func (uc UpgradeConfig) String() string
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) 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 interface { IsJailed() bool // whether the validator is jailed GetMoniker() string // moniker of the validator GetStatus() BondStatus // status of the validator GetOperator() ValAddress // operator address to receive/return validators coins GetConsPubKey() crypto.PubKey // validation consensus pubkey GetConsAddr() ConsAddress // validation consensus address GetTokens() Int // validation tokens GetBondedTokens() Int // validator bonded tokens GetTendermintPower() int64 // validation power in tendermint GetCommission() Dec // validator commission rate GetMinSelfDelegation() Int // validator minimum self delegation }
validator for a delegated proof of stake system
type ValidatorSet ¶
type ValidatorSet interface { // iterate through validators by operator address, execute func for each validator IterateValidators(Context, func(index int64, validator Validator) (stop bool)) // iterate through bonded validators by operator address, execute func for each validator IterateBondedValidatorsByPower(Context, func(index int64, validator Validator) (stop bool)) // iterate through the consensus validator set of the last block by operator address, execute func for each validator IterateLastValidators(Context, func(index int64, validator Validator) (stop bool)) Validator(Context, ValAddress) Validator // get a particular validator by operator address ValidatorByConsAddr(Context, ConsAddress) Validator // get a particular validator by consensus address TotalBondedTokens(Context) Int // total bonded tokens within the validator set TotalTokens(Context) Int // total token supply // slash the validator and delegators of the validator, specifying offence height, offence power, and slash fraction Slash(Context, ConsAddress, int64, int64, Dec) Tags Jail(Context, ConsAddress) // jail a validator Unjail(Context, ConsAddress) // unjail a validator // Delegation allows for getting a particular delegation for a given validator // and delegator outside the scope of the staking module. Delegation(Context, AccAddress, ValAddress) Delegation }
properties for the set of all validators