Documentation ¶
Index ¶
- Constants
- Variables
- 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 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 DiffKVStores(a KVStore, b KVStore, prefixesToSkip [][]byte) (kvA cmn.KVPair, kvB cmn.KVPair, count int64, equal bool)
- func FormatInvariant(module, name, msg string) string
- 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 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 IsAddressTypeLegal(addrType AddressType) bool
- func IsIllegalOrderID(orderID string) bool
- func IsIllegalOrderIDList(orderIDs []string) bool
- func IsTokenNameValid(s string) bool
- func IsTokenTypeValid(tokenType TokenType) bool
- func IsValidAddr(addr string) bool
- func Majority23(num int) int
- func Majority34(num int) int
- func MaxUint16(a, b uint16) uint16
- 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 NewKVStoreKeys(names ...string) map[string]*KVStoreKey
- func NewLevelDB(name, dir string) (db dbm.DB, err error)
- func NewTransientStoreKeys(names ...string) map[string]*TransientStoreKey
- func OneSixthCeil(num int) int
- func ParseTimeBytes(bz []byte) (time.Time, error)
- func PrefixEndBytes(prefix []byte) []byte
- func PubkeyToString(pubkey crypto.PubKey) string
- func RegisterCodec(cdc *codec.Codec)
- func SortJSON(toSortJSON []byte) ([]byte, error)
- func StringifyData(cdc *codec.Codec, data []byte) string
- func StringsIndex(s []string, want string) int
- func TokensToConsensusPower(tokens Int) int64
- func Uint32ToBigEndian(i uint32) []byte
- func Uint64ToBigEndian(i uint64) []byte
- func UintOverflow(i *big.Int) error
- func VerifyAddressFormat(bz []byte) error
- type ABCIMessageLog
- type ABCIMessageLogs
- type Address
- type AddressType
- type AnteHandler
- type Asset
- type Attribute
- type BalanceFlow
- type BaseToken
- func (t *BaseToken) GetChain() Symbol
- func (t *BaseToken) GetDecimals() uint64
- func (t *BaseToken) GetIssuer() string
- func (t *BaseToken) GetName() string
- func (t *BaseToken) GetSymbol() Symbol
- func (t *BaseToken) GetTotalSupply() Int
- func (t *BaseToken) IsIBCToken() bool
- func (t *BaseToken) IsSendEnabled() bool
- func (t *BaseToken) IsValid() bool
- func (t *BaseToken) String() string
- type BasicSettleQuota
- type BeginBlocker
- type BondStatus
- type CUAddress
- func CUAddressFromBase58(address string) (addr CUAddress, err error)
- func CUAddressFromByte(b []byte) CUAddress
- func CUAddressFromHex(address string) (addr CUAddress, err error)
- func CUAddressFromPubKey(pubKey crypto.PubKey) CUAddress
- func CosmosAddressToCUAddress(cosmosAddr Address) CUAddress
- func NewCUAddress() CUAddress
- func (ca CUAddress) Bytes() []byte
- func (ca CUAddress) Empty() bool
- func (ca CUAddress) Equals(ca2 Address) bool
- func (ca CUAddress) Format(s fmt.State, verb rune)
- func (ca CUAddress) IsValidAddr() bool
- func (ca CUAddress) Marshal() ([]byte, error)
- func (ca CUAddress) MarshalJSON() ([]byte, error)
- func (ca CUAddress) MarshalYAML() (interface{}, error)
- func (ca CUAddress) String() string
- func (ca *CUAddress) Unmarshal(data []byte) error
- func (ca *CUAddress) UnmarshalJSON(data []byte) error
- func (ca *CUAddress) UnmarshalYAML(data []byte) error
- type CUAddressList
- type CUType
- type CacheKVStore
- type CacheMultiStore
- type CacheWrap
- type CacheWrapper
- type CategoryType
- type ChainCUInfo
- 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) IsValid() bool
- func (coin Coin) IsZero() bool
- func (coin Coin) MulRaw(i2 int64) Coin
- func (coin Coin) String() string
- func (coin Coin) Sub(coinB Coin) Coin
- 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) 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 CollectFinishFlow
- type CollectSignFinishFlow
- type CollectWaitSignFlow
- 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) 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) SettleQuota() SettleQuota
- 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) 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) WithSettleQuota(quota SettleQuota) 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 DecMedian(decs Decs) Dec
- 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 SmallestDec() 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) 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) 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) 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) Copy() DecCoins
- func (coins DecCoins) Empty() bool
- 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 Decs
- type DepositConfirmedFlow
- type DepositFlow
- type DepositItem
- type DepositItemStatus
- type DepositList
- func (dts *DepositList) AddDepositItem(d DepositItem) error
- func (dts *DepositList) Filter(filterFunc func(DepositItem) bool) DepositList
- func (dts *DepositList) GetDepositItem(hash string, index uint64) (DepositItem, int)
- func (dts DepositList) Len() int
- func (dts DepositList) Less(i, j int) bool
- func (dts *DepositList) RemoveDepositItem(hash string, index uint64) error
- func (dts DepositList) Sort() DepositList
- func (dts DepositList) SortByAmount()
- func (dts DepositList) SortByAmountDesc()
- func (dts *DepositList) String() string
- func (dts *DepositList) Sum() Int
- func (dts *DepositList) SumByStatus(status DepositItemStatus) Int
- func (dts DepositList) Swap(i, j int)
- func (dts *DepositList) UpdateDepositItem(d DepositItem) error
- type DepositType
- type EndBlocker
- type Epoch
- type Error
- func ErrAlreadyExitSymbol(msg string) Error
- func ErrDuplicatedUtxo(msg string) Error
- func ErrEmptyDBGet(msg string) Error
- func ErrGasOverflow(msg string) Error
- func ErrInsufficientCoins(msg string) Error
- func ErrInsufficientFee(msg string) Error
- func ErrInsufficientFunds(msg string) Error
- func ErrInsufficientValidatorNum(msg string) Error
- func ErrInsufficientValidatorNumForKeyGen(msg string) Error
- func ErrInternal(msg string) Error
- func ErrInvalidAccount(msg string) Error
- func ErrInvalidAddr(msg string) Error
- func ErrInvalidAddress(msg string) Error
- func ErrInvalidAmount(msg string) Error
- func ErrInvalidAsset(msg string) Error
- func ErrInvalidBlkNumber(msg string) Error
- func ErrInvalidCUType(msg string) Error
- func ErrInvalidCoins(msg string) Error
- func ErrInvalidCollect(msg string) Error
- func ErrInvalidOnhold(msg string) Error
- func ErrInvalidOrder(msg string) Error
- func ErrInvalidPubKey(msg string) Error
- func ErrInvalidSequence(msg string) Error
- func ErrInvalidSymbol(msg string) Error
- func ErrInvalidTx(msg string) Error
- func ErrInvalidUtxo(msg string) Error
- func ErrMemoTooLarge(msg string) Error
- func ErrMigrationInProgress(msg string) Error
- func ErrMismatchUtxoAmount(msg string) Error
- func ErrNoSignatures(msg string) Error
- func ErrNotFoundAsset(msg string) Error
- func ErrNotFoundOrder(msg string) Error
- func ErrOutOfGas(msg string) Error
- func ErrPreKeyGenTooMany(msg string) Error
- func ErrSystemBusy(msg string) Error
- func ErrTooManySignatures(msg string) Error
- func ErrTooMuchPrecision(msg string) Error
- func ErrTransactionIsNotEnabled(msg string) Error
- func ErrTxDecode(msg string) Error
- func ErrUnSupportAddressType(msg string) Error
- func ErrUnSupportToken(msg string) Error
- func ErrUnauthorized(msg string) Error
- func ErrUnknownAddress(msg string) Error
- func ErrUnknownRequest(msg string) Error
- func ErrUnknownUtxo(msg string) Error
- func ErrWaitAssignTooMany(msg string) Error
- func NewError(codespace CodespaceType, code CodeType, format string, args ...interface{}) Error
- type ErrorGasOverflow
- type ErrorOutOfGas
- type Event
- type EventManager
- type Events
- type Flow
- type Gas
- type GasConfig
- type GasMeter
- type GasRefundHandler
- type Handler
- type Hash
- type IBCToken
- type InitChainer
- type Int
- func DefaultUtxoCollectTxSize() Int
- func DefaultUtxoWithdrawTxSize() Int
- func EstimateSignedUtxoTxSize(numVin, numVout int) Int
- func IntMedian(Ints Ints) 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 NewIntWithDecimal(n int64, dec int) Int
- func OneInt() Int
- func SizeInKB(size int) 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) 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) 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) UnmarshalAmino(text string) error
- func (i *Int) UnmarshalJSON(bz []byte) error
- type Ints
- type Invariant
- type InvariantRegistry
- type Invariants
- type Iterator
- type KVPair
- type KVStore
- type KVStoreKey
- type KeyGenFinishFlow
- type KeyGenFlow
- type KeyGenWaitSignFlow
- type MappingBalanceFlow
- type MigrationStatus
- type Msg
- type MultiStore
- type OpCUAstInfo
- type OpCUsAstInfo
- type OpcuAssetTransferFinishFlow
- type OpcuAssetTransferFlow
- type OpcuAssetTransferSignFinishFlow
- type OpcuAssetTransferWaitSignFlow
- type Order
- type OrderBase
- func (o *OrderBase) DeepCopy() Order
- func (o *OrderBase) GetCUAddress() CUAddress
- func (o *OrderBase) GetHeight() uint64
- func (o *OrderBase) GetID() string
- func (o *OrderBase) GetOrderStatus() OrderStatus
- func (o *OrderBase) GetOrderType() OrderType
- func (o *OrderBase) GetSymbol() string
- func (o *OrderBase) SetID(id string) Error
- func (o *OrderBase) SetOrderStatus(status OrderStatus)
- func (o *OrderBase) SetOrderType(orderType OrderType)
- func (o *OrderBase) String() string
- type OrderCollect
- type OrderFlow
- type OrderKeyGen
- type OrderOpcuAssetTransfer
- func (o *OrderOpcuAssetTransfer) DeepCopy() Order
- func (o *OrderOpcuAssetTransfer) GetRawdata() []byte
- func (o *OrderOpcuAssetTransfer) GetSignedTx() []byte
- func (o *OrderOpcuAssetTransfer) GetTxHash() string
- func (o *OrderOpcuAssetTransfer) MarshalYAML() (interface{}, error)
- func (o *OrderOpcuAssetTransfer) String() string
- type OrderRetryFlow
- type OrderStatus
- type OrderSysTransfer
- type OrderType
- type OrderWithdrawal
- type PeerFilter
- type PruningOptions
- type Querier
- type QueryRouter
- type Queryable
- type Receipt
- type Request
- type Result
- type Router
- type SearchTxsResult
- type SettleMsg
- type SettleQuota
- type SortUtxoIns
- type SortUtxoOuts
- type Store
- type StoreKey
- type StoreType
- type StringEvent
- type StringEvents
- type Symbol
- type SysTransferFinishFlow
- type SysTransferFlow
- type SysTransferSignFinishFlow
- type SysTransferWaitSignFlow
- type TestMsg
- type Token
- type TokenType
- type TokensGasPrice
- type TraceContext
- type TransferItem
- type TransientStoreKey
- type Tx
- type TxDecoder
- type TxEncoder
- type TxFinishNodeData
- 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 UtxoIn
- type UtxoIns
- func (us UtxoIns) Empty() bool
- func (us UtxoIns) Equal(others UtxoIns) bool
- func (us UtxoIns) Has(utxo UtxoIn) bool
- func (us UtxoIns) HasDuplicatedItem() bool
- func (us UtxoIns) IsSubsetOf(others UtxoIns) bool
- func (us UtxoIns) IsValid() bool
- func (us UtxoIns) PrintUtxoIn()
- func (us UtxoIns) RemoveOneUtxoIn(utxo UtxoIn) (bool, UtxoIns)
- func (us UtxoIns) RemoveUtxoIns(delete UtxoIns) UtxoIns
- func (us UtxoIns) Sort()
- func (us UtxoIns) String() string
- func (us UtxoIns) UtxoInTotalAmount() Int
- type UtxoOut
- type UtxoOuts
- 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
- type WithdrawStatus
- type WithdrawalConfirmFlow
- type WithdrawalFinishFlow
- type WithdrawalFlow
- type WithdrawalSignFinishFlow
- type WithdrawalWaitSignFlow
Constants ¶
const ( // AddrLen defines a valid address length AddrLen = 20 // Bech32PrefixAccAddr defines the Bech32 prefix of an CU's address Bech32MainPrefix = "hbc" // bht in https://github.com/satoshilabs/slips/blob/master/slip-0044.md CoinType = 496 // BIP44Prefix is the parts of the BIP44 HD path that are fixed by // what we used during the fundraiser. FullFundraiserPath = "44'/496'/0'/0/0" // PrefixAccount is the prefix for CU 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 CU's address Bech32PrefixAccAddr = Bech32MainPrefix // Bech32PrefixAccPub defines the Bech32 prefix of an CU'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 ( Precision = 18 // bytes required to represent the above precision // Ceiling[Log2[999 999 999 999 999 999]] DecimalPrecisionBits = 60 )
number of decimal places
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 CodeTooMuchPrecision CodeType = 18 CodeDuplicatedUtxo CodeType = 1000 CodeUnknownUtxo CodeType = 1001 CodeMismatchUtxoAmount CodeType = 1002 CodeInvalidCollect CodeType = 1003 CodeAmountError CodeType = 1004 CodeAssetError CodeType = 1005 CodeUtxoError CodeType = 1006 CodeOnHoldError CodeType = 1007 CodeBlkNumberError CodeType = 1008 CodeInvalidAccount CodeType = 1010 CodeSymbolAlreadyExist CodeType = 1011 CodeInvalidSymbol CodeType = 1012 CodeUnsupportToken CodeType = 1013 CodeInvalidOrder CodeType = 1014 CodeInvalidAsset CodeType = 1015 CodeInvalidTx CodeType = 1016 CodeTransactionIsNotEnabled CodeType = 1017 CodeUnsupportAddressType CodeType = 1020 CodeNotFoundOrder CodeType = 1021 CodeNotFoundAsset CodeType = 1022 CodeNotFoundCustodianUnit CodeType = 1023 CodeInvalidCUType CodeType = 1024 CodeInsufficientValidtorNumberForKeyGen CodeType = 1030 CodeInsufficientValidtorNumber CodeType = 1031 CodeMigrationInProgress CodeType = 1032 CodeSystemBusy CodeType = 1033 CodePreKeyGenTooMany CodeType = 1034 CodeWaitAssignTooMany CodeType = 1035 CodeEmptyDBGet CodeType = 1040 // 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 = "hbtcchain_base" )
SDK error codes
const ( DepositUnconfirm = 0 DepositWaitConfirm = 1 DepositConfirmed = 2 )
const ( WithdrawStatusUnconfirmed WithdrawStatus = 0 // withdraw order confirmed valid by majority of settle WithdrawStatusValid = 1 // withdraw order confirmed invalid (eg. withdraw to contract address) by majority of settle WithdrawStatusInvalid = 2 )
const ( // default bond denomination DefaultBondDenom = NativeToken // 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 ( NativeToken = "hbc" NativeTokenDecimal = 18 NativeDefiToken = "hdt" NativeDefiTokenDecimal = 8 GasPriceBucketWindow uint64 = 10 )
const ( KiloBytes = 1024 BytesPerUtxoVin = 150 BytesPerUtxoVout = 40 LimitAccountBasedOrderNum = 1 )
const ( MaxVinNum = 6 MaxVoutNum = 6 )
const HashLength = 32
const (
OrderIDLen = 36
)
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 ( EventTypeMessage = "message" AttributeKeyAction = "action" AttributeKeyModule = "module" AttributeKeySender = "sender" AttributeKeyAmount = "amount" )
Common event types and attribute keys
var ( KeySendEnabled = "send_enabled" KeyDepositEnabled = "deposit_enabled" KeyWithdrawalEnabled = "withdrawal_enabled" KeyCollectThreshold = "collect_threshold" KeyDepositThreshold = "deposit_threshold" KeyOpenFee = "open_fee" KeySysOpenFee = "sys_open_fee" KeyWithdrawalFeeRate = "withdrawal_fee_rate" KeyMaxOpCUNumber = "max_op_cu_number" KeySysTransferNum = "systransfer_num" KeyOpCUSysTransferNum = "op_cu_systransfer_num" KeyGasLimit = "gas_limit" KeyConfirmations = "confirmations" KeyNeedCollectFee = "need_collect_fee" )
var ( // This is set at compile time. Could be cleveldb, defaults is goleveldb. DBBackend = "" // IsAlphaNumeric defines a regular expression for matching against alpha-numeric // values. IsAlphaNumeric = regexp.MustCompile(`^[a-zA-Z0-9]+$`).MatchString )
var DepositNil = DepositItem{}
var NilAsset = Asset{}
var PowerReduction = NewIntFromBigInt(new(big.Int).Exp(big.NewInt(10), big.NewInt(18), nil))
PowerReduction is the amount of staking tokens required for 1 unit of consensus-engine power, HBC precision = 1^10-18
Functions ¶
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 CU 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 FormatInvariant ¶
FormatInvariant returns a standardized invariant message.
func FormatTimeBytes ¶
Formats a time.Time into a []byte that can be sorted
func GetAccPubKeyBech32 ¶
GetAccPubKeyBech32 creates a PubKey for an CU 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 IsAddressTypeLegal ¶
func IsAddressTypeLegal(addrType AddressType) bool
func IsIllegalOrderID ¶
func IsIllegalOrderIDList ¶
IsIllegalOrderIDList checks whether a list of order ID is valid. A valid order id list cannot contain duplicated order IDs and every order id must be legal .
func IsTokenNameValid ¶ added in v0.9.3
IsTokenNameValid check token name.
func IsTokenTypeValid ¶ added in v0.9.3
func IsValidAddr ¶
func Majority23 ¶
func Majority34 ¶
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 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 OneSixthCeil ¶
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 PubkeyToString ¶
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 StringifyData ¶
StringifyData decode data to receipts. return hex encoded data if err
func StringsIndex ¶
StringsIndex returns the index of the first instance of string `want` in string slice `s`, or -1 if `want` is not present in `s`.
func TokensToConsensusPower ¶
TokensToConsensusPower - convert input tokens to potential consensus-engine power
func Uint32ToBigEndian ¶ added in v0.9.3
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 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"` Success bool `json:"success"` 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, success bool, 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 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 AddressType ¶
type AddressType uint64
const ( CustodianUnitAddressType AddressType = 0x1 //CustodianUnitAddress DepositAddressType AddressType = 0x2 //Deposit Address WithdrawalAddressType AddressType = 0x3 //WithdrawalAddress Address )
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 Asset ¶
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 BalanceFlow ¶
type BalanceFlow struct { // CUAddress the address for the custodian unit for the balance change CUAddress CUAddress // Symbol token symbol for the asset //Symbol Symbol Symbol Symbol // PreviousBalance previous balance for the balance change PreviousBalance Int // BalanceChange the actual balance change BalanceChange Int // PreviousBalanceOnHold previous balance on hold PreviousBalanceOnHold Int // BalanceOnHoldChange the actual balance on hold change BalanceOnHoldChange Int }
BalanceFlow for asset balance change
type BaseToken ¶ added in v0.9.3
type BaseToken struct { Name string `json:"name"` Symbol Symbol `json:"symbol" yaml:"symbol"` Issuer string `json:"issuer" yaml:"issuer"` //token's issuer Chain Symbol `json:"chain" yaml:"chain"` //related mainnet token, e.g. ERC20 token's Chain is ETH SendEnabled bool `json:"send_enabled" yaml:"send_enabled"` //whether send enabled or not Decimals uint64 `json:"decimals" yaml:"decimals"` //token's decimals, represents by the decimals's TotalSupply Int `json:"total_supply" yaml:"total_supply" ` //token's total supply }
func (*BaseToken) GetDecimals ¶ added in v0.9.3
func (*BaseToken) GetTotalSupply ¶ added in v0.9.3
func (*BaseToken) IsIBCToken ¶ added in v0.9.3
func (*BaseToken) IsSendEnabled ¶ added in v0.9.3
type BasicSettleQuota ¶
type BasicSettleQuota struct {
// contains filtered or unexported fields
}
func NewBasicSettleQuota ¶
func NewBasicSettleQuota(limit Gas) *BasicSettleQuota
func (*BasicSettleQuota) Consume ¶
func (b *BasicSettleQuota) Consume(valAddress ValAddress, current Gas) bool
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 CUAddress ¶
type CUAddress []byte
CUAddress a wrapper around bytes meant to represent an CU address. When marshaled to a string or JSON, it uses Base58. Implement address interface
func CUAddressFromBase58 ¶
CUAddressFromBase58 creates an AccAddress from a base58 string prefixed with "HBT".
func CUAddressFromByte ¶
func CUAddressFromHex ¶
CUAddressFromHex creates an CUAddress from a hex string.
func CUAddressFromPubKey ¶
func NewCUAddress ¶
func NewCUAddress() CUAddress
func (CUAddress) IsValidAddr ¶
func (CUAddress) Marshal ¶
Marshal returns the raw address bytes. It is needed for protobuf compatibility.
func (CUAddress) MarshalJSON ¶
MarshalJSON marshals to JSON using Base58.
func (CUAddress) MarshalYAML ¶
MarshalYAML marshals to YAML using Bech32.
func (*CUAddress) Unmarshal ¶
Unmarshal sets the address to the given data. It is needed for protobuf compatibility.
func (*CUAddress) UnmarshalJSON ¶
UnmarshalJSON unmarshals from JSON assuming Base58 encoding.
func (*CUAddress) UnmarshalYAML ¶
UnmarshalYAML unmarshals from JSON assuming Bech32 encoding.
type CUAddressList ¶
type CUAddressList []CUAddress
func (CUAddressList) Any ¶
func (l CUAddressList) Any(f func(CUAddress) bool) bool
Any is a method on CUAddressList that returns true if at least one member of the list satisfies a function. It returns false if the list is empty.
func (CUAddressList) Contains ¶
func (l CUAddressList) Contains(target Address) bool
func (CUAddressList) Join ¶
func (l CUAddressList) Join() string
func (CUAddressList) Len ¶
func (l CUAddressList) Len() int
func (CUAddressList) Less ¶
func (l CUAddressList) Less(i, j int) bool
func (CUAddressList) Swap ¶
func (l CUAddressList) Swap(i, j int)
type CategoryType ¶
type CategoryType uint64
CategoryType indicates the category type that causes the receipt in the flow.
const ( // TODO(kai.wen): Add more category type CategoryTypeTransfer CategoryType = 0x1 CategoryTypeMultiTransfer CategoryType = 0x2 CategoryTypeKeyGen CategoryType = 0x3 CategoryTypeDeposit CategoryType = 0x4 CategoryTypeWithdrawal CategoryType = 0x5 CategoryTypeCollect CategoryType = 0x6 CategoryTypeSysTransfer CategoryType = 0x7 CategoryTypeOrderRetry CategoryType = 0x8 CategoryTypeMapping CategoryType = 0x9 CategoryTypeOpcuAssetTransfer CategoryType = 0xA CategoryTypeOpenswap CategoryType = 0xB CategoryTypeQuickSwap CategoryType = 0xC CategoryTypeHrc10 CategoryType = 0xD )
type ChainCUInfo ¶
type ChainCUInfo struct { Chain string `json:"chain"` Addr string `json:"addr"` CuAddress string `json:"cu_address"` IsChainAddr bool `json:"ischainaddr"` IsOPCU bool `json:"isopcu"` }
func (*ChainCUInfo) String ¶
func (info *ChainCUInfo) String() string
type Coin ¶
type Coin struct { Denom string `json:"denom"` // denom is token symbol // 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 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) 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 CollectFinishFlow ¶
type CollectSignFinishFlow ¶
type CollectWaitSignFlow ¶
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) GetAddressVerifier ¶
GetAddressVerifier returns the function to verify that addresses have the correct format
func (*Config) GetBech32AccountAddrPrefix ¶
GetBech32AccountAddrPrefix returns the Bech32 prefix for CU address
func (*Config) GetBech32AccountPubPrefix ¶
GetBech32AccountPubPrefix returns the Bech32 prefix for CU 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 ¶
Get the BIP-0044 CoinType code on the config
func (*Config) GetFullFundraiserPath ¶
Get the FullFundraiserPath (BIP44Prefix) on the config
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) MinGasPrices ¶
func (Context) MultiStore ¶
func (c Context) MultiStore() MultiStore
func (Context) SettleQuota ¶
func (c Context) SettleQuota() SettleQuota
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) WithMinGasPrices ¶
func (Context) WithMultiStore ¶
func (c Context) WithMultiStore(ms MultiStore) Context
func (Context) WithProposer ¶
func (c Context) WithProposer(addr ConsAddress) Context
func (Context) WithSettleQuota ¶
func (c Context) WithSettleQuota(quota SettleQuota) Context
func (Context) WithTxBytes ¶
type Dec ¶
NOTE: never use new(Dec) or else we will panic unmarshalling into the nil embedded big.Int
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 SmallestDec ¶
func SmallestDec() Dec
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 ¶
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) 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 DepositConfirmedFlow ¶
type DepositFlow ¶
type DepositItem ¶
type DepositItem struct { Hash string `json:"hash"` Index uint64 `json:"index"` Amount Int `json:"amount"` ExtAddress string `json:"ext_address"` Memo string `json:"memo"` Status DepositItemStatus `json:"status"` }
func NewDepositItem ¶
func NewDepositItem(hash string, index uint64, amount Int, extAddress, memo string, status DepositItemStatus) (DepositItem, error)
func (DepositItem) GetHash ¶
func (d DepositItem) GetHash() string
func (DepositItem) GetIndex ¶
func (d DepositItem) GetIndex() uint64
func (DepositItem) GetStatus ¶
func (d DepositItem) GetStatus() DepositItemStatus
func (DepositItem) IsValid ¶
func (d DepositItem) IsValid() bool
func (DepositItem) String ¶
func (d DepositItem) String() string
type DepositItemStatus ¶
type DepositItemStatus uint16
const ( DepositItemStatusUnCollected DepositItemStatus = 0x0 DepositItemStatusWaitCollect DepositItemStatus = 0x1 DepositItemStatusConfirmed DepositItemStatus = 0x2 DepositItemStatusInProcess DepositItemStatus = 0x3 )
state transform flow:
CollectWaitSign CollectFinish
UnCollected -------------------> InProcess -----------------> Confirmed
func (DepositItemStatus) In ¶
func (s DepositItemStatus) In(l []DepositItemStatus) bool
In check if current status is in the list
type DepositList ¶
type DepositList []DepositItem
--------------------------------------------------- DepositList
func NewDepositList ¶
func NewDepositList(deposits ...DepositItem) (DepositList, error)
func (*DepositList) AddDepositItem ¶
func (dts *DepositList) AddDepositItem(d DepositItem) error
func (*DepositList) Filter ¶
func (dts *DepositList) Filter(filterFunc func(DepositItem) bool) DepositList
func (*DepositList) GetDepositItem ¶
func (dts *DepositList) GetDepositItem(hash string, index uint64) (DepositItem, int)
GetDeposit 返回 Deposit 和在数组中的下标,不存在返回空和 -1
func (DepositList) Less ¶
func (dts DepositList) Less(i, j int) bool
func (*DepositList) RemoveDepositItem ¶
func (dts *DepositList) RemoveDepositItem(hash string, index uint64) error
DelDeposit remove Deposit from list & list len() -1
func (DepositList) Sort ¶
func (dts DepositList) Sort() DepositList
Sort is a helper function to sort the set of depositList inplace sort by hash & index
func (DepositList) SortByAmount ¶
func (dts DepositList) SortByAmount()
func (DepositList) SortByAmountDesc ¶
func (dts DepositList) SortByAmountDesc()
func (*DepositList) String ¶
func (dts *DepositList) String() string
func (*DepositList) Sum ¶
func (dts *DepositList) Sum() Int
func (*DepositList) SumByStatus ¶
func (dts *DepositList) SumByStatus(status DepositItemStatus) Int
func (DepositList) Swap ¶
func (dts DepositList) Swap(i, j int)
func (*DepositList) UpdateDepositItem ¶
func (dts *DepositList) UpdateDepositItem(d DepositItem) error
// UpdateDeposit update the deposit in depositList which have same hash & index
type DepositType ¶
type DepositType uint64
const ( DepositTypeCU DepositType = 0x1 DepositTypeOPCU DepositType = 0x2 )
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 Epoch ¶
type Epoch struct { Index uint64 `json:"index" yaml:"index"` StartBlockNum uint64 `json:"start_block_num" yaml:"start_block_num"` // inclusive EndBlockNum uint64 `json:"end_block_num" yaml:"end_block_num"` // inclusive, 0 means this epoch is not finished yet KeyNodeSet []CUAddress `json:"key_node_set" yaml:"key_node_set"` MigrationFinished bool `json:"migration_finished" yaml:"migration_finished"` }
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 ErrAlreadyExitSymbol ¶
func ErrDuplicatedUtxo ¶
func ErrEmptyDBGet ¶
func ErrGasOverflow ¶
func ErrInsufficientCoins ¶
func ErrInsufficientFee ¶
func ErrInsufficientFunds ¶
func ErrInvalidAccount ¶
func ErrInvalidAddr ¶
func ErrInvalidAddress ¶
func ErrInvalidAmount ¶
func ErrInvalidAsset ¶
func ErrInvalidBlkNumber ¶
func ErrInvalidCUType ¶
func ErrInvalidCoins ¶
func ErrInvalidCollect ¶
func ErrInvalidOnhold ¶
func ErrInvalidOrder ¶
func ErrInvalidPubKey ¶
func ErrInvalidSequence ¶
func ErrInvalidSymbol ¶
func ErrInvalidTx ¶
func ErrInvalidUtxo ¶
func ErrMemoTooLarge ¶
func ErrMigrationInProgress ¶
func ErrMismatchUtxoAmount ¶
func ErrNoSignatures ¶
func ErrNotFoundAsset ¶
func ErrNotFoundOrder ¶
func ErrOutOfGas ¶
func ErrPreKeyGenTooMany ¶
func ErrSystemBusy ¶
func ErrTooManySignatures ¶
func ErrTooMuchPrecision ¶
func ErrTxDecode ¶
func ErrUnSupportAddressType ¶
func ErrUnSupportToken ¶
func ErrUnauthorized ¶
func ErrUnknownAddress ¶
func ErrUnknownRequest ¶
func ErrUnknownUtxo ¶
func ErrWaitAssignTooMany ¶
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 GasRefundHandler ¶ added in v0.9.3
type Hash ¶
type Hash [HashLength]byte
Hash to identify uniqueness
func BytesToHash ¶
func ProtoToHash ¶
type IBCToken ¶ added in v0.9.3
type IBCToken struct { BaseToken TokenType TokenType `json:"type" yaml:"type"` //token's type DepositEnabled bool `json:"deposit_enabled" yaml:"deposit_enabled"` //whether send enabled or not WithdrawalEnabled bool `json:"withdrawal_enabled" yaml:"withdrawal_enabled"` //whether withdrawal enabled or not CollectThreshold Int `json:"collect_threshold" yaml:"collect_threshold" ` // token's collect threshold == account threshold DepositThreshold Int `json:"deposit_threshold" yaml:"deposit_threshold"` // token's deposit threshold OpenFee Int `json:"open_fee" yaml:"open_fee"` // token's open fee for custodianunit address SysOpenFee Int `json:"sys_open_fee" yaml:"sys_open_fee"` // token's open fee for external address WithdrawalFeeRate Dec `json:"withdrawal_fee_rate" yaml:"withdrawal_fee_rate"` // token's WithdrawalFeeRate MaxOpCUNumber uint64 `json:"max_op_cu_number" yaml:"max_op_cu_number"` // token's opcu num SysTransferNum Int `json:"sys_transfer_num" yaml:"sys_transfer_num"` // 给user反向打币每次限额 OpCUSysTransferNum Int `json:"op_cu_sys_transfer_num" yaml:"op_cu_sys_transfer_num"` // 给 opcu之间转gas的每次限额 GasLimit Int `json:"gas_limit" yaml:"gas_limit"` GasPrice Int `json:"gas_price" yaml:"gas_price"` Confirmations uint64 `json:"confirmations" yaml:"confirmations"` //confirmation of chain IsNonceBased bool `json:"is_nonce_based" yaml:"is_nonce_based"` NeedCollectFee bool `json:"need_collect_fee" yaml:"need_collect_fee"` }
IBCToken defines information of inter-blockchain token
func (*IBCToken) CollectFee ¶ added in v0.9.3
func (*IBCToken) OpCUSysTransferAmount ¶ added in v0.9.3
func (*IBCToken) SysTransferAmount ¶ added in v0.9.3
func (*IBCToken) WithdrawalFee ¶ added in v0.9.3
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 DefaultUtxoCollectTxSize ¶ added in v0.9.3
func DefaultUtxoCollectTxSize() Int
func DefaultUtxoWithdrawTxSize ¶ added in v0.9.3
func DefaultUtxoWithdrawTxSize() Int
func EstimateSignedUtxoTxSize ¶
EstimateSignedUtxoTxSize, the number of changeback should be counted into numVout.
for example, if 1 withdrawal to and 1 changeback, numVout =2
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 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 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 KeyGenFinishFlow ¶
type KeyGenFlow ¶
type KeyGenWaitSignFlow ¶
type MappingBalanceFlow ¶
type MappingBalanceFlow struct { // Symbol token symbol for the mapping asset IssueSymbol Symbol PreviousIssuePool Int IssuePoolChange Int }
MappingBalanceFlow for mapping balance change
type MigrationStatus ¶
type MigrationStatus int
const ( MigrationBegin MigrationStatus = 0x00 MigrationKeyGenBegin MigrationStatus = 0x01 MigrationKeyGenFinish MigrationStatus = 0x02 MigrationAssetBegin MigrationStatus = 0x03 MigrationMainTokenFinish MigrationStatus = 0x04 MigrationFinish MigrationStatus = 0x05 )
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() []CUAddress }
Transactions messages must fulfill the Msg
type OpCUAstInfo ¶ added in v0.9.3
type OpCUAstInfo struct { Symbol string `json:"symbol"` CuAddress string `json:"cu_address"` Locked bool `json:"locked"` Amount Int `json:"amount"` // TODO 计算当前余额 MultisignAddress string `json:"multisign_address"` LastEpochMultisignAddress string `json:"last_epoch_multisign_address"` DepositList DepositList `json:"deposit_list"` MainNetAmount Int `json:"main_net_amount"` // erc20's amount of eth GasUsed Int `json:"gas_used"` GasReceived Int `json:"gas_received"` MigrationStatus MigrationStatus `json:"migration_status"` }
----------------------------------------------------------------------
func (*OpCUAstInfo) String ¶ added in v0.9.3
func (oc *OpCUAstInfo) String() string
String implements fmt.Stringer
type OpCUsAstInfo ¶ added in v0.9.3
type OpCUsAstInfo []OpCUAstInfo
func (OpCUsAstInfo) String ¶ added in v0.9.3
func (cs OpCUsAstInfo) String() string
type OpcuAssetTransferFlow ¶
type OrderBase ¶
type OrderBase struct { CUAddress CUAddress `json:"cu_address"` ID string `json:"id"` OrderType OrderType `json:"order_type"` Symbol string `json:"symbol"` Status OrderStatus `json:"status"` Height uint64 `json:"height"` }
func (*OrderBase) GetCUAddress ¶
func (*OrderBase) GetOrderStatus ¶
func (o *OrderBase) GetOrderStatus() OrderStatus
func (*OrderBase) GetOrderType ¶
func (*OrderBase) SetOrderStatus ¶
func (o *OrderBase) SetOrderStatus(status OrderStatus)
func (*OrderBase) SetOrderType ¶
type OrderCollect ¶
type OrderCollect struct { OrderBase CollectFromCU CUAddress `json:"collect_from_cu"` CollectFromAddress string `json:"collect_from_address"` CollectToCU CUAddress `json:"collect_to_cu"` Amount Int `json:"amount"` GasPrice Int `json:"gas_price"` GasLimit Int `json:"gas_limit"` CostFee Int `json:"cost_fee"` // external chain deposit tx hash Txhash string `json:"tx_hash"` // external chain deposit tx index Index uint64 `json:"index"` Memo string `json:"memo"` RawData []byte `json:"raw_data"` SignedTx []byte `json:"signed_Tx"` // external chain collect tx hash ExtTxHash string `json:"ext_txhash"` DepositStatus uint16 `json:"deposit_status"` }
func (*OrderCollect) GetRawdata ¶
func (o *OrderCollect) GetRawdata() []byte
func (*OrderCollect) GetSignedTx ¶
func (o *OrderCollect) GetSignedTx() []byte
func (*OrderCollect) MarshalYAML ¶
func (o *OrderCollect) MarshalYAML() (interface{}, error)
MarshalYAML returns the YAML representation of an SysTransfer order.
func (*OrderCollect) String ¶
func (o *OrderCollect) String() string
type OrderFlow ¶
type OrderFlow struct { Symbol Symbol // CUAddress the address for the custodian unit for the order change CUAddress CUAddress // OrderID for the order change OrderID string // OrderType for the order OrderType OrderType OrderStatus OrderStatus }
OrderFlow for order change
type OrderKeyGen ¶
type OrderKeyGen struct { OrderBase KeyNodes []CUAddress `json:"key_nodes"` SignThreshold uint64 `json:"sign_threshold"` To CUAddress `json:"to"` OpenFee Coin `json:"open_fee"` MultiSignAddress string `json:"multi_sign_address"` Pubkey []byte `json:"pubkey"` Epoch uint64 `json:"epoch"` }
func (*OrderKeyGen) String ¶
func (o *OrderKeyGen) String() string
type OrderOpcuAssetTransfer ¶
type OrderOpcuAssetTransfer struct { OrderBase TransfertItems []TransferItem `json:"transfer_items"` ToAddr string `json:"to_address"` RawData []byte `json:"raw_data"` SignedTx []byte `json:"signed_tx"` Txhash string `json:"tx_hash"` CostFee Int `json:"cost_fee"` }
func (*OrderOpcuAssetTransfer) DeepCopy ¶
func (o *OrderOpcuAssetTransfer) DeepCopy() Order
DeepCopy OrderWithdrawal
func (*OrderOpcuAssetTransfer) GetRawdata ¶
func (o *OrderOpcuAssetTransfer) GetRawdata() []byte
func (*OrderOpcuAssetTransfer) GetSignedTx ¶
func (o *OrderOpcuAssetTransfer) GetSignedTx() []byte
func (*OrderOpcuAssetTransfer) GetTxHash ¶
func (o *OrderOpcuAssetTransfer) GetTxHash() string
func (*OrderOpcuAssetTransfer) MarshalYAML ¶
func (o *OrderOpcuAssetTransfer) MarshalYAML() (interface{}, error)
MarshalYAML returns the YAML representation of an withdrawal order.
func (*OrderOpcuAssetTransfer) String ¶
func (o *OrderOpcuAssetTransfer) String() string
type OrderRetryFlow ¶
type OrderStatus ¶
type OrderStatus int
const ( OrderStatusBegin OrderStatus = 0x1 OrderStatusWaitSign OrderStatus = 0x2 OrderStatusSignFinish OrderStatus = 0x3 OrderStatusFinish OrderStatus = 0x4 OrderStatusCancel OrderStatus = 0x5 // order cancelled without broadcasting to chain OrderStatusFailed OrderStatus = 0x6 // order failed after broadcasting to chain )
func (OrderStatus) Match ¶
func (s OrderStatus) Match(other OrderStatus) bool
Match check if status equals or `s` == SignFinish and `other` is at terminate status
func (OrderStatus) Terminated ¶
func (s OrderStatus) Terminated() bool
Terminated check if status is at terminate status (OrderStatusFinish, OrderStatusCancel, OrderStatusFailed)
type OrderSysTransfer ¶
type OrderSysTransfer struct { OrderBase Amount Int `json:"amount"` CostFee Int `json:"cost_fee"` ToCU string `json:"to_cu"` ToAddress string `json:"to_address"` FromAddress string `json:"from_address"` OpCUaddress string `json:"opcu_address"` TxHash string `json:"tx_hash"` RawData []byte `json:"raw_data"` SignedTx []byte `json:"signed_tx"` }
func (*OrderSysTransfer) DeepCopy ¶
func (o *OrderSysTransfer) DeepCopy() Order
DeepCopy OrderWithdrawal
func (*OrderSysTransfer) GetRawdata ¶
func (o *OrderSysTransfer) GetRawdata() []byte
func (*OrderSysTransfer) GetSignedTx ¶
func (o *OrderSysTransfer) GetSignedTx() []byte
func (*OrderSysTransfer) MarshalYAML ¶
func (o *OrderSysTransfer) MarshalYAML() (interface{}, error)
MarshalYAML returns the YAML representation of an SysTransfer order.
func (*OrderSysTransfer) String ¶
func (o *OrderSysTransfer) String() string
type OrderWithdrawal ¶
type OrderWithdrawal struct { OrderBase Amount Int `json:"amount"` GasFee Int `json:"gas_fee"` CostFee Int `json:"cost_fee"` WithdrawToAddress string `json:"withdraw_to_address"` FromAddress string `json:"from_address"` OpCUaddress string `json:"opcu_address"` UtxoInNum int `json:"utxoin_num"` Txhash string `json:"tx_hash"` RawData []byte `json:"raw_data"` SignedTx []byte `json:"signed_tx"` WithdrawStatus WithdrawStatus `json:"withdraw_status"` }
func (*OrderWithdrawal) DeepCopy ¶
func (o *OrderWithdrawal) DeepCopy() Order
DeepCopy OrderWithdrawal
func (*OrderWithdrawal) GetRawdata ¶
func (o *OrderWithdrawal) GetRawdata() []byte
func (*OrderWithdrawal) GetSignedTx ¶
func (o *OrderWithdrawal) GetSignedTx() []byte
func (*OrderWithdrawal) MarshalYAML ¶
func (o *OrderWithdrawal) MarshalYAML() (interface{}, error)
MarshalYAML returns the YAML representation of an withdrawal order.
func (*OrderWithdrawal) String ¶
func (o *OrderWithdrawal) String() string
type PeerFilter ¶
type PeerFilter func(info string) abci.ResponseQuery
PeerFilter responds to p2p filtering queries from Tendermint
type QueryRouter ¶
type QueryRouter interface { AddRoute(r string, h Querier) QueryRouter Route(path string) Querier }
QueryRouter provides queryables for each query path.
type Receipt ¶
type Receipt struct { // Category for the transaction that causes the receipt. Category CategoryType // Flows list of flows. Flows []Flow }
Receipt defines basic interface for all kind of receipts
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 // Events contains a slice of Event objects that were emitted during some // execution. Events Events }
Result is the union of ResponseFormat and ResponseCheckTx.
func NewResultFromDeliverTx ¶
func NewResultFromDeliverTx(res *abci.ResponseDeliverTx) Result
func NewResultFromResultTx ¶
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 SettleMsg ¶
SettleMsg is the msgs sent by settle. Note that a SettleMsg is not necessarily sent by settle, DepositMsg is SettleMsg but can also be sent by normal users)
type SettleQuota ¶
type SettleQuota interface {
Consume(cu ValAddress, amount Gas) bool
}
type SortUtxoIns ¶
type SortUtxoIns UtxoIns
func (SortUtxoIns) Len ¶
func (s SortUtxoIns) Len() int
func (SortUtxoIns) Less ¶
func (s SortUtxoIns) Less(i, j int) bool
func (SortUtxoIns) Swap ¶
func (s SortUtxoIns) Swap(i, j int)
type SortUtxoOuts ¶
type SortUtxoOuts UtxoOuts
func (SortUtxoOuts) Len ¶
func (s SortUtxoOuts) Len() int
func (SortUtxoOuts) Less ¶
func (s SortUtxoOuts) Less(i, j int) bool
func (SortUtxoOuts) Swap ¶
func (s SortUtxoOuts) Swap(i, j int)
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 SysTransferFinishFlow ¶
type SysTransferFlow ¶
type SysTransferWaitSignFlow ¶
type TestMsg ¶
type TestMsg struct {
// contains filtered or unexported fields
}
msg type for testing
func NewTestMsg ¶
func (*TestMsg) GetSignBytes ¶
func (*TestMsg) GetSigners ¶
func (*TestMsg) ValidateBasic ¶
type TokensGasPrice ¶
type TokensGasPrice struct { Chain string `json:"chain" yaml:"chain"` GasPrice Int `json:"gas_price" yaml:"gas_price"` }
func (TokensGasPrice) String ¶
func (gp TokensGasPrice) String() string
type TraceContext ¶
type TraceContext = types.TraceContext
TraceContext contains TraceKVStore context data. It will be written with every trace operation.
type TransferItem ¶
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 TxFinishNodeData ¶
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"` Codespace string `json:"codespace,omitempty"` Tx Tx `json:"tx,omitempty"` Timestamp string `json:"timestamp,omitempty"` // DEPRECATED: Remove in the next next major release in favor of using the // ABCIMessageLog.Events field. Events StringEvents `json:"events,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(cdc *codec.Codec, 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 UtxoIn ¶
type UtxoIn struct { Hash string `json:"hash"` Index uint64 `json:"index"` Amount Int `json:"amount"` Address string `json:"address"` }
UtxoIn defines UtxoIn in address module
type UtxoIns ¶
type UtxoIns []UtxoIn
func (UtxoIns) HasDuplicatedItem ¶
HasDuplicatedItem check whether duplication items exist in utxoins
func (UtxoIns) IsSubsetOf ¶
IsSubsetOf check whether us is subset of others
func (UtxoIns) PrintUtxoIn ¶
func (us UtxoIns) PrintUtxoIn()
func (UtxoIns) RemoveOneUtxoIn ¶
RemoveOneUtxoIn remove a utxo from utxoIns, then return the remained utxoIns
func (UtxoIns) RemoveUtxoIns ¶
RemoveUtxoIns
func (UtxoIns) UtxoInTotalAmount ¶
UtxoInTotalAmount return the us's total amount
type UtxoOuts ¶
type UtxoOuts []UtxoOut
func (UtxoOuts) UtxoOutTotalAmount ¶
UtxoOutTotalAmount calculate UtxoOut total amount
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 CUAddress 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.
type WithdrawStatus ¶
type WithdrawStatus int
type WithdrawalConfirmFlow ¶
type WithdrawalConfirmFlow struct { OrderID string WithdrawStatus WithdrawStatus }
type WithdrawalFinishFlow ¶
type WithdrawalFlow ¶
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
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. |