Rujira.Assets (rujira_ex v0.0.1)

Copy Markdown View Source

Asset resolution for Rujira.

Merges base-layer asset handling (chain/symbol/denom parsing) with app-layer token support (x/ruji, x/staking-, x/bow-xyk-, etc.).

Summary

Functions

chain(str)

@spec chain(String.t()) :: String.t()

decimals(arg1)

@spec decimals(Rujira.Assets.Asset.t() | map()) :: non_neg_integer()

eq_denom(a, denom)

@spec eq_denom(Rujira.Assets.Asset.t(), String.t()) :: boolean()

from_denom(denom)

@spec from_denom(String.t()) ::
  {:ok, Rujira.Assets.Asset.t()} | {:error, :invalid_denom}

from_id(id)

@spec from_id(String.t()) :: {:ok, Rujira.Assets.Asset.t()}

from_shortcode(str)

@spec from_shortcode(String.t()) :: Rujira.Assets.Asset.t()

from_string(id)

@spec from_string(String.t()) :: Rujira.Assets.Asset.t()

label(map)

@spec label(Rujira.Assets.Asset.t() | map()) :: String.t()

load_metadata(asset)

@spec load_metadata(Rujira.Assets.Asset.t()) :: {:ok, map()} | {:error, term()}

symbol(str)

@spec symbol(String.t()) :: String.t()

ticker(str)

@spec ticker(String.t()) :: String.t()

to_native(a)

@spec to_native(Rujira.Assets.Asset.t() | map() | nil) ::
  {:ok, String.t() | nil} | {:error, term()}

to_secured(a)

@spec to_secured(Rujira.Assets.Asset.t()) ::
  {:ok, Rujira.Assets.Asset.t()} | {:error, :not_supported}

type(str)

@spec type(String.t()) :: :native | :layer_1 | :synth | :trade | :secured