pub trait CoinReadApiServer:
Sized
+ Send
+ Sync
+ 'static {
// Required methods
fn get_coins<'life0, 'async_trait>(
&'life0 self,
owner: IotaAddress,
coin_type: Option<String>,
cursor: Option<ObjectID>,
limit: Option<usize>,
) -> Pin<Box<dyn Future<Output = RpcResult<CoinPage>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_all_coins<'life0, 'async_trait>(
&'life0 self,
owner: IotaAddress,
cursor: Option<ObjectID>,
limit: Option<usize>,
) -> Pin<Box<dyn Future<Output = RpcResult<CoinPage>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_balance<'life0, 'async_trait>(
&'life0 self,
owner: IotaAddress,
coin_type: Option<String>,
) -> Pin<Box<dyn Future<Output = RpcResult<Balance>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_all_balances<'life0, 'async_trait>(
&'life0 self,
owner: IotaAddress,
) -> Pin<Box<dyn Future<Output = RpcResult<Vec<Balance>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_coin_metadata<'life0, 'async_trait>(
&'life0 self,
coin_type: String,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<IotaCoinMetadata>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_total_supply<'life0, 'async_trait>(
&'life0 self,
coin_type: String,
) -> Pin<Box<dyn Future<Output = RpcResult<Supply>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_circulating_supply<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RpcResult<IotaCirculatingSupply>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
// Provided method
fn into_rpc(self) -> RpcModule<Self> { ... }
}
Expand description
Server trait implementation for the CoinReadApi
RPC API.
Required Methods§
Sourcefn get_coins<'life0, 'async_trait>(
&'life0 self,
owner: IotaAddress,
coin_type: Option<String>,
cursor: Option<ObjectID>,
limit: Option<usize>,
) -> Pin<Box<dyn Future<Output = RpcResult<CoinPage>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_coins<'life0, 'async_trait>(
&'life0 self,
owner: IotaAddress,
coin_type: Option<String>,
cursor: Option<ObjectID>,
limit: Option<usize>,
) -> Pin<Box<dyn Future<Output = RpcResult<CoinPage>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Return all Coin<coin_type
> objects owned by an address.
Sourcefn get_all_coins<'life0, 'async_trait>(
&'life0 self,
owner: IotaAddress,
cursor: Option<ObjectID>,
limit: Option<usize>,
) -> Pin<Box<dyn Future<Output = RpcResult<CoinPage>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_all_coins<'life0, 'async_trait>(
&'life0 self,
owner: IotaAddress,
cursor: Option<ObjectID>,
limit: Option<usize>,
) -> Pin<Box<dyn Future<Output = RpcResult<CoinPage>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Return all Coin objects owned by an address.
Sourcefn get_balance<'life0, 'async_trait>(
&'life0 self,
owner: IotaAddress,
coin_type: Option<String>,
) -> Pin<Box<dyn Future<Output = RpcResult<Balance>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_balance<'life0, 'async_trait>(
&'life0 self,
owner: IotaAddress,
coin_type: Option<String>,
) -> Pin<Box<dyn Future<Output = RpcResult<Balance>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Return the total coin balance for one coin type, owned by the address owner.
Sourcefn get_all_balances<'life0, 'async_trait>(
&'life0 self,
owner: IotaAddress,
) -> Pin<Box<dyn Future<Output = RpcResult<Vec<Balance>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_all_balances<'life0, 'async_trait>(
&'life0 self,
owner: IotaAddress,
) -> Pin<Box<dyn Future<Output = RpcResult<Vec<Balance>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Return the total coin balance for all coin type, owned by the address owner.
Sourcefn get_coin_metadata<'life0, 'async_trait>(
&'life0 self,
coin_type: String,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<IotaCoinMetadata>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_coin_metadata<'life0, 'async_trait>(
&'life0 self,
coin_type: String,
) -> Pin<Box<dyn Future<Output = RpcResult<Option<IotaCoinMetadata>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Return metadata (e.g., symbol, decimals) for a coin.
Sourcefn get_total_supply<'life0, 'async_trait>(
&'life0 self,
coin_type: String,
) -> Pin<Box<dyn Future<Output = RpcResult<Supply>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_total_supply<'life0, 'async_trait>(
&'life0 self,
coin_type: String,
) -> Pin<Box<dyn Future<Output = RpcResult<Supply>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Return total supply for a coin.
Sourcefn get_circulating_supply<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RpcResult<IotaCirculatingSupply>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_circulating_supply<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RpcResult<IotaCirculatingSupply>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Return the circulating supply summary.
Provided Methods§
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.