Documentation
¶
Index ¶
- Constants
- Variables
- func DecEq(t *testing.T, exp, got Dec) (*testing.T, bool, string, string, string)
- func DecsEqual(d1s, d2s []Dec) bool
- func GetDefaultChainId() (string, error)
- func ProtoQOSAccount() account.Account
- func RegisterCodec(cdc *go_amino.Codec)
- type 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 btypes.BigInt) Dec
- func NewDecFromIntWithPrec(i btypes.BigInt, prec int64) Dec
- func NewDecFromStr(str string) (d Dec, err error)
- func NewDecWithPrec(i, prec int64) Dec
- func OneDec() Dec
- func ZeroDec() Dec
- func (d Dec) Abs() Dec
- func (d Dec) Add(d2 Dec) Dec
- func (d Dec) Ceil() Dec
- func (d Dec) Equal(d2 Dec) bool
- func (d Dec) Format(s fmt.State, verb rune)
- func (d Dec) GT(d2 Dec) bool
- func (d Dec) GTE(d2 Dec) bool
- func (d Dec) IsInteger() bool
- func (d Dec) IsNegative() bool
- func (d Dec) IsNil() bool
- func (d Dec) IsPositive() bool
- func (d Dec) IsZero() bool
- func (d Dec) LT(d2 Dec) bool
- func (d Dec) LTE(d2 Dec) bool
- func (d Dec) MarshalAmino() (string, error)
- func (d Dec) MarshalJSON() ([]byte, error)
- func (d Dec) Mul(d2 Dec) Dec
- func (d Dec) MulInt(i btypes.BigInt) 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 btypes.BigInt) Dec
- func (d Dec) QuoTruncate(d2 Dec) Dec
- func (d Dec) RoundInt() btypes.BigInt
- 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() btypes.BigInt
- func (d Dec) TruncateInt64() int64
- func (d *Dec) UnmarshalAmino(text string) (err error)
- func (d *Dec) UnmarshalJSON(bz []byte) error
- type Fraction
- func (frac Fraction) Add(f1 Fraction) Fraction
- func (frac Fraction) Equal(f1 Fraction) bool
- func (frac Fraction) Mul(f1 Fraction) Fraction
- func (frac Fraction) MultiBigInt(t btypes.BigInt) btypes.BigInt
- func (frac Fraction) MultiInt64(t int64) btypes.BigInt
- func (frac Fraction) Sub(f1 Fraction) Fraction
- type QOSAccount
- func (account *QOSAccount) EnoughOf(qos btypes.BigInt, qscs QSCs) bool
- func (account *QOSAccount) EnoughOfQOS(qos btypes.BigInt) bool
- func (account *QOSAccount) EnoughOfQSC(qsc QSC) bool
- func (account *QOSAccount) EnoughOfQSCs(qscs QSCs) bool
- func (account *QOSAccount) GetQOS() btypes.BigInt
- func (account *QOSAccount) GetQSC(qscName string) (qsc QSC, exists bool)
- func (account *QOSAccount) GetQSCs() QSCs
- func (account *QOSAccount) Minus(qos btypes.BigInt, qscs QSCs) error
- func (account *QOSAccount) MinusQOS(qos btypes.BigInt) error
- func (account *QOSAccount) MinusQSC(qsc QSC) error
- func (account *QOSAccount) MinusQSCs(qscs QSCs) error
- func (account *QOSAccount) MustMinus(qos btypes.BigInt, qscs QSCs)
- func (account *QOSAccount) MustMinusQOS(qos btypes.BigInt)
- func (account *QOSAccount) MustMinusQSC(qsc QSC)
- func (account *QOSAccount) MustMinusQSCs(qscs QSCs)
- func (account *QOSAccount) MustPlus(qos btypes.BigInt, qscs QSCs)
- func (account *QOSAccount) MustPlusQOS(qos btypes.BigInt)
- func (account *QOSAccount) MustPlusQSC(qsc QSC)
- func (account *QOSAccount) MustPlusQSCs(qscs QSCs)
- func (account *QOSAccount) Plus(qos btypes.BigInt, qscs QSCs) error
- func (account *QOSAccount) PlusQOS(qos btypes.BigInt) error
- func (account *QOSAccount) PlusQSC(qsc QSC) error
- func (account *QOSAccount) PlusQSCs(qscs QSCs) error
- func (account *QOSAccount) RemoveQSC(qscName string)
- func (account *QOSAccount) SetQOS(qos btypes.BigInt) error
- func (account *QOSAccount) SetQSC(qsc QSC) error
- type QSC
- type QSCs
Constants ¶
const ( Qos = int64(1e8) BlockReward = int64(0 * Qos) )
const ( Precision = 18 // bytes required to represent the above precision // Ceiling[Log2[999 999 999 999 999 999]] DecimalPrecisionBits = 60 )
number of decimal places
Variables ¶
var ( DefaultCLIHome = os.ExpandEnv("$HOME/.qoscli") DefaultNodeHome = os.ExpandEnv("$HOME/.qosd") )
Functions ¶
func GetDefaultChainId ¶ added in v0.0.2
Get default chain-id.
func ProtoQOSAccount ¶ added in v0.0.4
Types ¶
type Dec ¶ added in v0.0.4
NOTE: never use new(Dec) or else we will panic unmarshalling into the nil embedded big.Int
func MustNewDecFromStr ¶ added in v0.0.4
Decimal from string, panic on error
func NewDecFromBigInt ¶ added in v0.0.4
create a new Dec from big integer assuming whole numbers CONTRACT: prec <= Precision
func NewDecFromBigIntWithPrec ¶ added in v0.0.4
create a new Dec from big integer assuming whole numbers CONTRACT: prec <= Precision
func NewDecFromInt ¶ added in v0.0.4
create a new Dec from big integer assuming whole numbers CONTRACT: prec <= Precision
func NewDecFromIntWithPrec ¶ added in v0.0.4
create a new Dec from big integer with decimal place at prec CONTRACT: prec <= Precision
func NewDecFromStr ¶ added in v0.0.4
create a decimal from an input decimal string. valid must come in the form:
(-) whole integers (.) decimal integers
examples of acceptable input include:
-123.456 456.7890 345 -456789
NOTE - An error will return if more decimal places are provided in the string than the constant Precision.
CONTRACT - This function does not mutate the input str.
func NewDecWithPrec ¶ added in v0.0.4
create a new Dec from integer with decimal place at prec CONTRACT: prec <= Precision
func (Dec) Ceil ¶ added in v0.0.4
Ceil returns the smallest interger value (as a decimal) that is greater than or equal to the given decimal.
func (Dec) IsNegative ¶ added in v0.0.4
func (Dec) IsNil ¶ added in v0.0.4
______________________________________________________________________________________________ nolint
func (Dec) IsPositive ¶ added in v0.0.4
func (Dec) MarshalAmino ¶ added in v0.0.4
wraps d.MarshalText()
func (Dec) MarshalJSON ¶ added in v0.0.4
MarshalJSON marshals the decimal
func (Dec) MulTruncate ¶ added in v0.0.4
multiplication truncate
func (Dec) RoundInt64 ¶ added in v0.0.4
RoundInt64 rounds the decimal using bankers rounding
func (Dec) TruncateDec ¶ added in v0.0.4
TruncateDec truncates the decimals from the number and returns a Dec
func (Dec) TruncateInt ¶ added in v0.0.4
TruncateInt truncates the decimals from the number and returns an Int
func (Dec) TruncateInt64 ¶ added in v0.0.4
TruncateInt64 truncates the decimals from the number and returns an int64
func (*Dec) UnmarshalAmino ¶ added in v0.0.4
requires a valid JSON string - strings quotes and calls UnmarshalText
func (*Dec) UnmarshalJSON ¶ added in v0.0.4
UnmarshalJSON defines custom decoding scheme
type Fraction ¶ added in v0.0.4
type Fraction struct {
Value Dec `json:"value"`
}
func NewFraction ¶ added in v0.0.4
func NewFractionFromBigInt ¶ added in v0.0.4
func OneFraction ¶ added in v0.0.4
func OneFraction() Fraction
func ZeroFraction ¶ added in v0.0.4
func ZeroFraction() Fraction
func (Fraction) MultiBigInt ¶ added in v0.0.4
type QOSAccount ¶ added in v0.0.4
type QOSAccount struct { account.BaseAccount `json:"base_account"` // inherits BaseAccount QOS btypes.BigInt `json:"qos"` // coins in public chain QSCs QSCs `json:"qscs"` // varied QSCs }
func NewQOSAccount ¶ added in v0.0.4
func NewQOSAccountWithAddress ¶ added in v0.0.4
func NewQOSAccountWithAddress(addr btypes.Address) *QOSAccount
func NewQOSAccountZero ¶ added in v0.0.4
func NewQOSAccountZero() *QOSAccount
func ParseAccounts ¶ added in v0.0.4
func ParseAccounts(str string) ([]*QOSAccount, error)
Parse accounts from string address16lwp3kykkjdc2gdknpjy6u9uhfpa9q4vj78ytd,1000000qos,1000000qstars. Multiple accounts separated by ';'
func (*QOSAccount) EnoughOf ¶ added in v0.0.4
func (account *QOSAccount) EnoughOf(qos btypes.BigInt, qscs QSCs) bool
func (*QOSAccount) EnoughOfQOS ¶ added in v0.0.4
func (account *QOSAccount) EnoughOfQOS(qos btypes.BigInt) bool
是否有足够QOS
func (*QOSAccount) EnoughOfQSC ¶ added in v0.0.4
func (account *QOSAccount) EnoughOfQSC(qsc QSC) bool
是否有足够QSC
func (*QOSAccount) EnoughOfQSCs ¶ added in v0.0.4
func (account *QOSAccount) EnoughOfQSCs(qscs QSCs) bool
是否有足够QSCs
func (*QOSAccount) GetQOS ¶ added in v0.0.4
func (account *QOSAccount) GetQOS() btypes.BigInt
func (*QOSAccount) GetQSC ¶ added in v0.0.4
func (account *QOSAccount) GetQSC(qscName string) (qsc QSC, exists bool)
返回指定币种币值
func (*QOSAccount) GetQSCs ¶ added in v0.0.4
func (account *QOSAccount) GetQSCs() QSCs
func (*QOSAccount) Minus ¶ added in v0.0.4
func (account *QOSAccount) Minus(qos btypes.BigInt, qscs QSCs) error
减少QOS,QSCs
func (*QOSAccount) MinusQOS ¶ added in v0.0.4
func (account *QOSAccount) MinusQOS(qos btypes.BigInt) error
减少QOS,减少量小于0或结果小于0时返回错误
func (*QOSAccount) MinusQSC ¶ added in v0.0.4
func (account *QOSAccount) MinusQSC(qsc QSC) error
减少QSC
func (*QOSAccount) MinusQSCs ¶ added in v0.0.4
func (account *QOSAccount) MinusQSCs(qscs QSCs) error
减少QSCs
func (*QOSAccount) MustMinus ¶ added in v0.0.4
func (account *QOSAccount) MustMinus(qos btypes.BigInt, qscs QSCs)
func (*QOSAccount) MustMinusQOS ¶ added in v0.0.4
func (account *QOSAccount) MustMinusQOS(qos btypes.BigInt)
减少QOS,返回错误panic
func (*QOSAccount) MustMinusQSC ¶ added in v0.0.4
func (account *QOSAccount) MustMinusQSC(qsc QSC)
func (*QOSAccount) MustMinusQSCs ¶ added in v0.0.4
func (account *QOSAccount) MustMinusQSCs(qscs QSCs)
func (*QOSAccount) MustPlus ¶ added in v0.0.4
func (account *QOSAccount) MustPlus(qos btypes.BigInt, qscs QSCs)
func (*QOSAccount) MustPlusQOS ¶ added in v0.0.4
func (account *QOSAccount) MustPlusQOS(qos btypes.BigInt)
增加QOS,返回错误时panic
func (*QOSAccount) MustPlusQSC ¶ added in v0.0.4
func (account *QOSAccount) MustPlusQSC(qsc QSC)
func (*QOSAccount) MustPlusQSCs ¶ added in v0.0.4
func (account *QOSAccount) MustPlusQSCs(qscs QSCs)
func (*QOSAccount) Plus ¶ added in v0.0.4
func (account *QOSAccount) Plus(qos btypes.BigInt, qscs QSCs) error
增加QOS,QSCs
func (*QOSAccount) PlusQOS ¶ added in v0.0.4
func (account *QOSAccount) PlusQOS(qos btypes.BigInt) error
增加QOS,增加量小于0时返回错误
func (*QOSAccount) PlusQSC ¶ added in v0.0.4
func (account *QOSAccount) PlusQSC(qsc QSC) error
增加QSC
func (*QOSAccount) PlusQSCs ¶ added in v0.0.4
func (account *QOSAccount) PlusQSCs(qscs QSCs) error
增加QSCs
func (*QOSAccount) RemoveQSC ¶ added in v0.0.4
func (account *QOSAccount) RemoveQSC(qscName string)
移除QSC