Documentation ¶
Index ¶
- Constants
- Variables
- func Bool2Byte(in bool) []byte
- func CheckQscName(qscName string) bool
- func CodeToDefaultMsg(code CodeType) string
- func DecoderTx(cdc *go_amino.Codec, txBytes []byte) (Tx, Error)
- func GetAddrFromBech32(bech32Addr string) (address []byte, err error)
- func Int2Byte(in int64) []byte
- func MustSortJSON(toSortJSON []byte) []byte
- func SortJSON(toSortJSON []byte) ([]byte, error)
- type ABCICodeType
- type Address
- func (add Address) Bytes() []byte
- func (add Address) Empty() bool
- func (add Address) EqualsTo(anotherAdd Address) bool
- func (add Address) Marshal() ([]byte, error)
- func (add Address) MarshalJSON() ([]byte, error)
- func (add Address) String() string
- func (add *Address) Unmarshal(data []byte) error
- func (add *Address) UnmarshalJSON(bech32Addr []byte) error
- type BaseCoin
- func (coin *BaseCoin) GetAmount() BigInt
- func (coin *BaseCoin) GetName() string
- func (coin *BaseCoin) IsEqual(another Coin) bool
- func (coin *BaseCoin) IsGreaterThan(another Coin) bool
- func (coin *BaseCoin) IsLessThan(another Coin) bool
- func (coin *BaseCoin) IsNegative() bool
- func (coin *BaseCoin) IsNotNegative() bool
- func (coin *BaseCoin) IsPositive() bool
- func (coin *BaseCoin) IsZero() bool
- func (coin *BaseCoin) Minus(coinB Coin) Coin
- func (coin *BaseCoin) MinusByAmount(amountminus BigInt)
- func (coin *BaseCoin) Plus(coinB Coin) Coin
- func (coin *BaseCoin) PlusByAmount(amountplus BigInt)
- func (coin *BaseCoin) SameNameAs(another Coin) bool
- func (coin *BaseCoin) SetAmount(amount BigInt)
- func (coin *BaseCoin) String() string
- type BaseCoins
- func (coins BaseCoins) AmountOf(name string) BigInt
- func (coins BaseCoins) IsEqual(coinsB BaseCoins) bool
- func (coins BaseCoins) IsGTE(coinsB BaseCoins) bool
- func (coins BaseCoins) IsLT(coinsB BaseCoins) bool
- func (coins BaseCoins) IsNotNegative() bool
- func (coins BaseCoins) IsPositive() bool
- func (coins BaseCoins) IsValid() bool
- func (coins BaseCoins) IsZero() bool
- func (coins BaseCoins) Len() int
- func (coins BaseCoins) Less(i, j int) bool
- func (coins BaseCoins) Minus(coinsB BaseCoins) BaseCoins
- func (coins BaseCoins) Negative() BaseCoins
- func (coins BaseCoins) Plus(coinsB BaseCoins) BaseCoins
- func (coins BaseCoins) Sort() BaseCoins
- func (coins BaseCoins) String() string
- func (coins BaseCoins) Swap(i, j int)
- type BigInt
- func (i BigInt) Add(i2 BigInt) (res BigInt)
- func (i BigInt) AddRaw(i2 int64) BigInt
- func (i BigInt) BigInt() *big.Int
- func (i BigInt) Div(i2 BigInt) (res BigInt)
- func (i BigInt) DivRaw(i2 int64) BigInt
- func (i BigInt) Equal(i2 BigInt) bool
- func (i BigInt) GT(i2 BigInt) bool
- func (i BigInt) Int64() int64
- func (i BigInt) IsInt64() bool
- func (bi BigInt) IsNil() bool
- func (i BigInt) IsZero() bool
- func (i BigInt) LT(i2 BigInt) bool
- func (i BigInt) MarshalAmino() (string, error)
- func (i BigInt) MarshalJSON() ([]byte, error)
- func (i BigInt) Mod(i2 BigInt) BigInt
- func (i BigInt) ModRaw(i2 int64) BigInt
- func (i BigInt) Mul(i2 BigInt) (res BigInt)
- func (i BigInt) MulRaw(i2 int64) BigInt
- func (i BigInt) Neg() (res BigInt)
- func (i BigInt) NilToZero() BigInt
- func (i BigInt) Sign() int
- func (i BigInt) String() string
- func (i BigInt) Sub(i2 BigInt) (res BigInt)
- func (i BigInt) SubRaw(i2 int64) BigInt
- func (i *BigInt) UnmarshalAmino(text string) error
- func (i *BigInt) UnmarshalJSON(bz []byte) error
- type CodeType
- type CodespaceType
- type Coin
- type Error
- func ErrInsufficientCoins(msg string) Error
- func ErrInsufficientFunds(msg string) Error
- func ErrInternal(msg string) Error
- func ErrInvalidAddress(msg string) Error
- func ErrInvalidCoins(msg string) Error
- func ErrInvalidPubKey(msg string) Error
- func ErrInvalidSequence(msg string) Error
- func ErrMemoTooLarge(msg string) Error
- func ErrOutOfGas(msg string) Error
- func ErrTxDecode(msg string) Error
- func ErrUnauthorized(msg string) Error
- func ErrUnknownAddress(msg string) Error
- func ErrUnknownRequest(msg string) Error
- func NewError(codespace CodespaceType, code CodeType, format string, args ...interface{}) Error
- type ErrorOutOfGas
- type Gas
- type GasConfig
- type GasMeter
- type GenesisState
- type QCPConfig
- type Result
- type Tag
- type Tags
- type Tx
- type Uint
- func (i Uint) Add(i2 Uint) (res Uint)
- func (i Uint) AddRaw(i2 uint64) Uint
- func (i Uint) BigInt() *big.Int
- func (i Uint) Div(i2 Uint) (res Uint)
- func (i Uint) DivRaw(i2 uint64) Uint
- func (i Uint) Equal(i2 Uint) bool
- func (i Uint) GT(i2 Uint) bool
- func (i Uint) IsUint64() bool
- func (i Uint) IsZero() bool
- func (i Uint) LT(i2 Uint) bool
- func (i Uint) MarshalAmino() (string, error)
- func (i Uint) MarshalJSON() ([]byte, error)
- func (i Uint) Mod(i2 Uint) Uint
- func (i Uint) ModRaw(i2 uint64) Uint
- func (i Uint) Mul(i2 Uint) (res Uint)
- func (i Uint) MulRaw(i2 uint64) Uint
- func (i Uint) Sign() int
- func (i Uint) String() string
- func (i Uint) Sub(i2 Uint) (res Uint)
- func (i Uint) SubRaw(i2 uint64) Uint
- func (i Uint) Uint64() uint64
- func (i *Uint) UnmarshalAmino(text string) error
- func (i *Uint) UnmarshalJSON(bz []byte) error
Constants ¶
const ( // ABCI error codes ABCICodeOK ABCICodeType = 0 // 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 // 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 = 0 CodespaceRoot CodespaceType = 1 // Maximum reservable codespace (2^16 - 1) MaximumCodespace CodespaceType = 65535 )
SDK error codes
const (
PREF_ADD = "address" // 地址前缀
)
Variables ¶
var ( CachedDefaultGasConfig = DefaultGasConfig() CachedTransientGasConfig = TransientGasConfig() )
var ( TagAction = "action" TagSrcValidator = "source-validator" TagDstValidator = "destination-validator" TagDelegator = "delegator" )
common tags
Functions ¶
func CheckQscName ¶ added in v0.0.2
功能:检查 QscName 的合法性 备注:合法(3-10个字符,数字-字母-下划线)
func CodeToDefaultMsg ¶
NOTE: Don't stringer this, we'll put better messages in later. nolint: gocyclo
func GetAddrFromBech32 ¶
由Bech32编码的地址解码为byte数组 prefix_type 验证类型是否相符
func MustSortJSON ¶
MustSortJSON is like SortJSON but panic if an error occurs, e.g., if the passed JSON isn't valid.
Types ¶
type ABCICodeType ¶
type ABCICodeType uint32
ABCICodeType - combined codetype / codespace
func ToABCICode ¶
func ToABCICode(space CodespaceType, code CodeType) ABCICodeType
get the abci code from the local code and codespace
type Address ¶
type Address []byte
地址,类型byte数组
func (Address) MarshalJSON ¶
用Bech32编码将地址marshal为Json
func (*Address) UnmarshalJSON ¶
将Bech32编码的地址Json进行UnMarshal
type BaseCoin ¶ added in v0.0.2
func NewBaseCoin ¶ added in v0.0.2
func (*BaseCoin) IsGreaterThan ¶ added in v0.0.2
同名币,判断数量是否更大
func (*BaseCoin) IsLessThan ¶ added in v0.0.2
同名币,判断数量是否更小
func (*BaseCoin) IsNotNegative ¶ added in v0.0.4
判断币的数量是否为非负值
func (*BaseCoin) MinusByAmount ¶ added in v0.0.2
减掉一定数量的币
func (*BaseCoin) PlusByAmount ¶ added in v0.0.2
增加一定数量的币
func (*BaseCoin) SameNameAs ¶ added in v0.0.2
判断是否与另一币同名
type BaseCoins ¶ added in v0.0.4
type BaseCoins []*BaseCoin
BaseCoin集合
func (BaseCoins) IsNotNegative ¶ added in v0.0.4
返回coins内币种币值是否均大于等于0
func (BaseCoins) IsPositive ¶ added in v0.0.4
返回coins内币种币值是否均大于0
type BigInt ¶
type BigInt struct {
// contains filtered or unexported fields
}
BigInt wraps integer with 256 bit range bound Checks overflow, underflow and division by zero Exists in range from -(2^255-1) to 2^255-1
func NewIntFromBigInt ¶
NewIntFromBigInt constructs BigInt from big.BigInt
func NewIntFromString ¶
NewIntFromString constructs BigInt from string
func NewIntWithDecimal ¶
NewIntWithDecimal constructs BigInt with decimal Result value is n*10^dec
func (BigInt) MarshalAmino ¶
MarshalAmino defines custom encoding scheme
func (BigInt) MarshalJSON ¶
MarshalJSON defines custom encoding scheme
func (*BigInt) UnmarshalAmino ¶
UnmarshalAmino defines custom decoding scheme
func (*BigInt) UnmarshalJSON ¶
UnmarshalJSON defines custom decoding scheme
type Coin ¶
type Coin interface { // getters and setters GetName() string GetAmount() BigInt SetAmount(amount BigInt) // 判断是否同种币 SameNameAs(Coin) bool String() string // 判断币的数量 IsZero() bool IsPositive() bool IsNotNegative() bool IsNegative() bool IsGreaterThan(Coin) bool IsLessThan(Coin) bool IsEqual(Coin) bool // 币的数量运算 Plus(coinB Coin) Coin Minus(coinB Coin) Coin }
币的通用接口
type Error ¶
type Error interface { // convenience TraceSDK(format string, args ...interface{}) Error // set codespace WithDefaultCodespace(CodespaceType) Error Code() CodeType Codespace() CodespaceType ABCILog() string ABCICode() ABCICodeType Result() Result QueryResult() abci.ResponseQuery // contains filtered or unexported methods }
sdk Error type
func ErrInsufficientCoins ¶
func ErrInsufficientFunds ¶
func ErrInvalidAddress ¶
func ErrInvalidCoins ¶
func ErrInvalidPubKey ¶
func ErrInvalidSequence ¶
func ErrMemoTooLarge ¶
func ErrOutOfGas ¶
func ErrTxDecode ¶
func ErrUnauthorized ¶
func ErrUnknownAddress ¶
func ErrUnknownRequest ¶
type GasConfig ¶
type GasConfig struct { HasCost Gas ReadCostFlat Gas ReadCostPerByte Gas WriteCostFlat Gas WriteCostPerByte Gas KeyCostFlat Gas ValueCostFlat Gas ValueCostPerByte Gas }
GasConfig defines gas cost for each operation on KVStores
func TransientGasConfig ¶
func TransientGasConfig() GasConfig
Default gas config for TransientStores
type GasMeter ¶
GasMeter interface to track gas consumption
func NewGasMeter ¶
func NewInfiniteGasMeter ¶
func NewInfiniteGasMeter() GasMeter
type GenesisState ¶ added in v0.0.5
type GenesisState struct {
QCPs []*QCPConfig `json:"qcps"`
}
app_state in genesis.json
type QCPConfig ¶ added in v0.0.5
type QCPConfig struct { Name string `json:"name"` ChainId string `json:"chain_id"` PubKey crypto.PubKey `json:"pub_key"` }
QCP配置
type Result ¶
type Result struct { // Code is the response code, is stored back on the chain. Code ABCICodeType // Data is any data returned from the app. Data []byte // Log is just debug information. NOTE: nondeterministic. Log string // GasWanted is the maximum units of work we allow this tx to perform. GasWanted int64 // GasUsed is the amount of gas actually consumed. NOTE: unimplemented GasUsed int64 // Tx fee amount and denom. FeeAmount int64 FeeDenom string // Tags are used for transaction indexing and pubsub. Tags Tags }
Result is the union of ResponseDeliverTx and ResponseCheckTx.
type Tags ¶
Type synonym for convenience
type Uint ¶
type Uint struct {
// contains filtered or unexported fields
}
BigInt 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 NewUintWithDecimal ¶
NewUintWithDecimal constructs Uint with decimal Result value is n*10^dec
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