pub struct EvmProvider { /* private fields */ }Implementations§
Source§impl EvmProvider
impl EvmProvider
pub fn new(data_dir: &str, store: Arc<StorageBackend>) -> Self
Trait Implementations§
Source§impl PayProvider for EvmProvider
impl PayProvider for EvmProvider
fn network(&self) -> Network
Source§fn writes_locally(&self) -> bool
fn writes_locally(&self) -> bool
Whether this provider writes to local disk (needs data-dir lock).
fn create_wallet<'life0, 'life1, 'async_trait>(
&'life0 self,
request: &'life1 WalletCreateRequest,
) -> Pin<Box<dyn Future<Output = Result<WalletInfo, PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn close_wallet<'life0, 'life1, 'async_trait>(
&'life0 self,
wallet_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn list_wallets<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<WalletSummary>, PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn balance<'life0, 'life1, 'async_trait>(
&'life0 self,
wallet_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<BalanceInfo, PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn balance_all<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<WalletBalanceItem>, PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn receive_info<'life0, 'life1, 'async_trait>(
&'life0 self,
wallet_id: &'life1 str,
_amount: Option<Amount>,
) -> Pin<Box<dyn Future<Output = Result<ReceiveInfo, PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn receive_claim<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_wallet: &'life1 str,
_quote_id: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<u64, PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn cashu_send<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_wallet: &'life1 str,
_amount: Amount,
_onchain_memo: Option<&'life2 str>,
_mints: Option<&'life3 [String]>,
) -> Pin<Box<dyn Future<Output = Result<CashuSendResult, PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn cashu_receive<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_wallet: &'life1 str,
_token: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<CashuReceiveResult, PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn send<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
wallet: &'life1 str,
to: &'life2 str,
onchain_memo: Option<&'life3 str>,
_mints: Option<&'life4 [String]>,
) -> Pin<Box<dyn Future<Output = Result<SendResult, PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
fn send_quote<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
wallet: &'life1 str,
to: &'life2 str,
_mints: Option<&'life3 [String]>,
) -> Pin<Box<dyn Future<Output = Result<SendQuoteInfo, PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn history_list<'life0, 'life1, 'async_trait>(
&'life0 self,
wallet: &'life1 str,
limit: usize,
offset: usize,
) -> Pin<Box<dyn Future<Output = Result<Vec<HistoryRecord>, PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn history_status<'life0, 'life1, 'async_trait>(
&'life0 self,
transaction_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<HistoryStatusInfo, PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§fn history_onchain_memo<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
wallet: &'life1 str,
transaction_id: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<Option<String>, PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn history_onchain_memo<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
wallet: &'life1 str,
transaction_id: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<Option<String>, PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Optional provider-specific on-chain memo decoding for a transaction.
Returns
Ok(None) when memo cannot be decoded or is absent.fn history_sync<'life0, 'life1, 'async_trait>(
&'life0 self,
wallet: &'life1 str,
limit: usize,
) -> Pin<Box<dyn Future<Output = Result<HistorySyncStats, PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§fn ping<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn ping<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Connectivity check. Remote providers ping the RPC endpoint; local providers no-op.
fn create_ln_wallet<'life0, 'async_trait>(
&'life0 self,
_request: LnWalletCreateRequest,
) -> Pin<Box<dyn Future<Output = Result<WalletInfo, PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn check_balance<'life0, 'life1, 'async_trait>(
&'life0 self,
_wallet: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<BalanceInfo, PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn restore<'life0, 'life1, 'async_trait>(
&'life0 self,
_wallet: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<RestoreResult, PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn cashu_send_quote<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_wallet: &'life1 str,
_amount: &'life2 Amount,
) -> Pin<Box<dyn Future<Output = Result<CashuSendQuoteInfo, PayError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Auto Trait Implementations§
impl Freeze for EvmProvider
impl !RefUnwindSafe for EvmProvider
impl Send for EvmProvider
impl Sync for EvmProvider
impl Unpin for EvmProvider
impl UnsafeUnpin for EvmProvider
impl !UnwindSafe for EvmProvider
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request