Documentation
¶
Index ¶
- Constants
- Variables
- func AddrsToStrings(addrs ...sdk.AccAddress) []string
- func CombineErrors(errs ...error) (outErr error)
- func CombineErrorsFromStrings(strs ...string) (err error)
- func CombineErrorsGeneric(errAnySlice any) (out error, ok bool)
- func StringsToAddrs(strs ...string) []sdk.AccAddress
- func ToError(v any) (out error, ok bool)
- func TryCatch(callback func()) func() error
- type AssetPair
- func (pair AssetPair) BaseDenom() string
- func (pair AssetPair) Equal(other AssetPair) bool
- func (pair AssetPair) Inverse() AssetPair
- func (pair AssetPair) Marshal() ([]byte, error)
- func (pair AssetPair) MarshalJSON() ([]byte, error)
- func (pair AssetPair) MarshalTo(data []byte) (n int, err error)
- func (pair AssetPair) QuoteDenom() string
- func (pair AssetPair) Size() int
- func (pair AssetPair) String() string
- func (pair *AssetPair) Unmarshal(data []byte) error
- func (pair *AssetPair) UnmarshalJSON(data []byte) error
- func (pair AssetPair) Validate() error
- type AssetPairs
Constants ¶
const ( ModuleName = "common" TreasuryPoolModuleAccount = "treasury_pool" PairSeparator = ":" )
Variables ¶
var ( // paired against USD ErrInvalidTokenPair = sdkerrors.Register(ModuleName, 1, "invalid token pair") APrecision = uint256.NewInt().SetUint64(1) // Precision for int representation in sdk.Int objects Precision = int64(1_000_000) )
var AssetPairKeyEncoder collections.KeyEncoder[AssetPair] = assetPairKeyEncoder{}
Functions ¶
func AddrsToStrings ¶ added in v0.5.2
func AddrsToStrings(addrs ...sdk.AccAddress) []string
func CombineErrors ¶ added in v0.17.0
Combines errors into single error. Error descriptions are ordered the same way they're passed to the function.
func CombineErrorsFromStrings ¶ added in v0.17.0
func CombineErrorsGeneric ¶ added in v0.17.0
func StringsToAddrs ¶ added in v0.5.2
func StringsToAddrs(strs ...string) []sdk.AccAddress
func ToError ¶ added in v0.17.0
ToError converts a value to an error type if it: (1) is a string, (2) has a String() function (3) is already an error. (4) or is a slice of these cases I.e., the types supported are: string, []string, error, []error, fmt.Stringer, []fmt.Stringer
The type is inferred from try catch blocks at runtime.
func TryCatch ¶ added in v0.17.0
func TryCatch(callback func()) func() error
TryCatch is an implementation of the try-catch block from languages like C++ and JS. Given a 'callback' function, TryCatch defers and recovers from any panics or errors, allowing one to safely handle multiple panics in succession.
Typically, you'll write something like: `err := TryCatch(aRiskyFunction)()`
Usage example:
var calmPanic error = TryCatch(func() { panic("something crazy") })() fmt.Println(calmPanic.Error()) // prints "something crazy"
Note that TryCatch doesn't return an error. It returns a function that returns an error. Only when you call the output of TryCatch will it "feel" like a try-catch block from other languages.
This means that TryCatch can be used to restart go routines that panic as well.
Types ¶
type AssetPair ¶
type AssetPair string
func MustNewAssetPair ¶ added in v0.5.2
MustNewAssetPair returns a new asset pair. It will panic if 'pair' is invalid. The form, "token0:token1", is expected for 'pair'.
func NewAssetPair ¶ added in v0.5.2
func TryNewAssetPair ¶
NewAssetPair returns a new asset pair instance if the pair is valid. The form, "token0:token1", is expected for 'pair'. Use this function to return an error instead of panicking.
func (AssetPair) MarshalJSON ¶
func (AssetPair) QuoteDenom ¶ added in v0.11.0
func (AssetPair) String ¶
String returns the string representation of the asset pair.
Note that this differs from the output of the proto-generated 'String' method.
func (*AssetPair) UnmarshalJSON ¶
type AssetPairs ¶ added in v0.5.2
type AssetPairs []AssetPair
AssetPairs is a set of AssetPair, one per pair.
func NewAssetPairs ¶ added in v0.5.2
func NewAssetPairs(pairStrings ...string) (pairs AssetPairs)
NewAssetPairs constructs a new asset pair set. A panic will occur if one of the provided pair names is invalid.
func (AssetPairs) Contains ¶ added in v0.5.2
func (haystack AssetPairs) Contains(needle AssetPair) bool
Contains checks if a token pair is contained within 'Pairs'
func (AssetPairs) MarshalJSON ¶ added in v0.5.2
func (pairs AssetPairs) MarshalJSON() ([]byte, error)
MarshalJSON implements a custom JSON marshaller for the AssetPairs type to allow nil AssetPairs to be encoded as empty
func (AssetPairs) Strings ¶ added in v0.5.2
func (pairs AssetPairs) Strings() []string
func (AssetPairs) Validate ¶ added in v0.5.2
func (pairs AssetPairs) Validate() error