Typed IHub.Asset — Hub-level liquidity, shares, and drawn-rate environment.
Amounts are raw integers. RAY-scaled fields keep the _ray / rate / index
suffix rather than converting to Decimal.
API Functions
| Function | Arity | Description | Param Kinds |
|---|---|---|---|
from_raw | 1 | Convert a decoded IHub.Asset tuple into a typed struct. | raw: exchange_data |
Summary
Functions
Convert a decoded IHub.Asset tuple into a typed struct.
Types
@type t() :: %Onchain.Aave.V4.Hub.Asset{ added_shares: non_neg_integer(), decimals: non_neg_integer(), deficit_ray: non_neg_integer(), drawn_index: non_neg_integer(), drawn_rate: non_neg_integer(), drawn_shares: non_neg_integer(), fee_receiver: String.t(), ir_strategy: String.t(), last_update_timestamp: non_neg_integer(), liquidity: non_neg_integer(), liquidity_fee: non_neg_integer(), premium_offset_ray: integer(), premium_shares: non_neg_integer(), realized_fees: non_neg_integer(), reinvestment_controller: String.t(), swept: non_neg_integer(), underlying: String.t() }
Functions
Convert a decoded IHub.Asset tuple into a typed struct.
Parameters
raw- 17-element tuple from getAsset (exchange_data)
Returns
%Onchain.Aave.V4.Hub.Asset{} (struct)
# descripex:contract
%{
params: %{
raw: %{
description: "17-element tuple from getAsset",
source: "Onchain.Aave.V4.Hub.get_asset/3",
kind: :exchange_data
}
},
returns: %{type: :struct, description: "%Onchain.Aave.V4.Hub.Asset{}"}
}