pub struct WalletPostgresDatabase { /* private fields */ }Implementations§
Trait Implementations§
Source§impl<UT> LiftRef<UT> for WalletPostgresDatabase
impl<UT> LiftRef<UT> for WalletPostgresDatabase
type LiftType = Arc<WalletPostgresDatabase>
Source§impl<UT> LowerError<UT> for WalletPostgresDatabase
impl<UT> LowerError<UT> for WalletPostgresDatabase
Source§fn lower_error(obj: Self) -> RustBuffer
fn lower_error(obj: Self) -> RustBuffer
Lower this value for scaffolding function return Read more
Source§impl<UT> LowerReturn<UT> for WalletPostgresDatabase
impl<UT> LowerReturn<UT> for WalletPostgresDatabase
Source§type ReturnType = <Arc<WalletPostgresDatabase> as LowerReturn<UniFfiTag>>::ReturnType
type ReturnType = <Arc<WalletPostgresDatabase> as LowerReturn<UniFfiTag>>::ReturnType
The type that should be returned by scaffolding functions for this type. Read more
Source§fn lower_return(obj: Self) -> Result<Self::ReturnType, RustCallError>
fn lower_return(obj: Self) -> Result<Self::ReturnType, RustCallError>
Lower the return value from an scaffolding call Read more
Source§fn handle_failed_lift(
error: LiftArgsError,
) -> Result<Self::ReturnType, RustCallError>
fn handle_failed_lift( error: LiftArgsError, ) -> Result<Self::ReturnType, RustCallError>
Lower the return value for failed argument lifts Read more
Source§impl<UT> TypeId<UT> for WalletPostgresDatabase
impl<UT> TypeId<UT> for WalletPostgresDatabase
Source§impl WalletDatabase for WalletPostgresDatabase
impl WalletDatabase for WalletPostgresDatabase
Source§fn add_mint<'life0, 'async_trait>(
&'life0 self,
mint_url: MintUrl,
mint_info: Option<MintInfo>,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn add_mint<'life0, 'async_trait>(
&'life0 self,
mint_url: MintUrl,
mint_info: Option<MintInfo>,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Add Mint to storage
Source§fn remove_mint<'life0, 'async_trait>(
&'life0 self,
mint_url: MintUrl,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn remove_mint<'life0, 'async_trait>(
&'life0 self,
mint_url: MintUrl,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Remove Mint from storage
Source§fn get_mint<'life0, 'async_trait>(
&'life0 self,
mint_url: MintUrl,
) -> Pin<Box<dyn Future<Output = Result<Option<MintInfo>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_mint<'life0, 'async_trait>(
&'life0 self,
mint_url: MintUrl,
) -> Pin<Box<dyn Future<Output = Result<Option<MintInfo>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get mint from storage
Source§fn get_mints<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<HashMap<MintUrl, Option<MintInfo>>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_mints<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<HashMap<MintUrl, Option<MintInfo>>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get all mints from storage
Source§fn update_mint_url<'life0, 'async_trait>(
&'life0 self,
old_mint_url: MintUrl,
new_mint_url: MintUrl,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn update_mint_url<'life0, 'async_trait>(
&'life0 self,
old_mint_url: MintUrl,
new_mint_url: MintUrl,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Update mint url
Source§fn add_mint_keysets<'life0, 'async_trait>(
&'life0 self,
mint_url: MintUrl,
keysets: Vec<KeySetInfo>,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn add_mint_keysets<'life0, 'async_trait>(
&'life0 self,
mint_url: MintUrl,
keysets: Vec<KeySetInfo>,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Add mint keyset to storage
Source§fn get_mint_keysets<'life0, 'async_trait>(
&'life0 self,
mint_url: MintUrl,
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<KeySetInfo>>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_mint_keysets<'life0, 'async_trait>(
&'life0 self,
mint_url: MintUrl,
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<KeySetInfo>>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get mint keysets for mint url
Source§fn get_keyset_by_id<'life0, 'async_trait>(
&'life0 self,
keyset_id: Id,
) -> Pin<Box<dyn Future<Output = Result<Option<KeySetInfo>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_keyset_by_id<'life0, 'async_trait>(
&'life0 self,
keyset_id: Id,
) -> Pin<Box<dyn Future<Output = Result<Option<KeySetInfo>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get mint keyset by id
Source§fn add_mint_quote<'life0, 'async_trait>(
&'life0 self,
quote: MintQuote,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn add_mint_quote<'life0, 'async_trait>(
&'life0 self,
quote: MintQuote,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Add mint quote to storage
Source§fn get_mint_quote<'life0, 'async_trait>(
&'life0 self,
quote_id: String,
) -> Pin<Box<dyn Future<Output = Result<Option<MintQuote>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_mint_quote<'life0, 'async_trait>(
&'life0 self,
quote_id: String,
) -> Pin<Box<dyn Future<Output = Result<Option<MintQuote>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get mint quote from storage
Source§fn get_mint_quotes<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<MintQuote>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_mint_quotes<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<MintQuote>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get mint quotes from storage
Source§fn remove_mint_quote<'life0, 'async_trait>(
&'life0 self,
quote_id: String,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn remove_mint_quote<'life0, 'async_trait>(
&'life0 self,
quote_id: String,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Remove mint quote from storage
Source§fn add_melt_quote<'life0, 'async_trait>(
&'life0 self,
quote: MeltQuote,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn add_melt_quote<'life0, 'async_trait>(
&'life0 self,
quote: MeltQuote,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Add melt quote to storage
Source§fn get_melt_quote<'life0, 'async_trait>(
&'life0 self,
quote_id: String,
) -> Pin<Box<dyn Future<Output = Result<Option<MeltQuote>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_melt_quote<'life0, 'async_trait>(
&'life0 self,
quote_id: String,
) -> Pin<Box<dyn Future<Output = Result<Option<MeltQuote>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get melt quote from storage
Source§fn get_melt_quotes<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<MeltQuote>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_melt_quotes<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<MeltQuote>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get melt quotes from storage
Source§fn remove_melt_quote<'life0, 'async_trait>(
&'life0 self,
quote_id: String,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn remove_melt_quote<'life0, 'async_trait>(
&'life0 self,
quote_id: String,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Remove melt quote from storage
Source§fn add_keys<'life0, 'async_trait>(
&'life0 self,
keyset: KeySet,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn add_keys<'life0, 'async_trait>(
&'life0 self,
keyset: KeySet,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Add Keys to storage
Source§fn get_keys<'life0, 'async_trait>(
&'life0 self,
id: Id,
) -> Pin<Box<dyn Future<Output = Result<Option<Keys>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_keys<'life0, 'async_trait>(
&'life0 self,
id: Id,
) -> Pin<Box<dyn Future<Output = Result<Option<Keys>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get Keys from storage
Source§fn remove_keys<'life0, 'async_trait>(
&'life0 self,
id: Id,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn remove_keys<'life0, 'async_trait>(
&'life0 self,
id: Id,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Remove Keys from storage
Source§fn update_proofs<'life0, 'async_trait>(
&'life0 self,
added: Vec<ProofInfo>,
removed_ys: Vec<PublicKey>,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn update_proofs<'life0, 'async_trait>(
&'life0 self,
added: Vec<ProofInfo>,
removed_ys: Vec<PublicKey>,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Update the proofs in storage by adding new proofs or removing proofs by their Y value
Source§fn get_proofs<'life0, 'async_trait>(
&'life0 self,
mint_url: Option<MintUrl>,
unit: Option<CurrencyUnit>,
state: Option<Vec<ProofState>>,
spending_conditions: Option<Vec<SpendingConditions>>,
) -> Pin<Box<dyn Future<Output = Result<Vec<ProofInfo>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_proofs<'life0, 'async_trait>(
&'life0 self,
mint_url: Option<MintUrl>,
unit: Option<CurrencyUnit>,
state: Option<Vec<ProofState>>,
spending_conditions: Option<Vec<SpendingConditions>>,
) -> Pin<Box<dyn Future<Output = Result<Vec<ProofInfo>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get proofs from storage
Source§fn get_balance<'life0, 'async_trait>(
&'life0 self,
mint_url: Option<MintUrl>,
unit: Option<CurrencyUnit>,
state: Option<Vec<ProofState>>,
) -> Pin<Box<dyn Future<Output = Result<u64, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_balance<'life0, 'async_trait>(
&'life0 self,
mint_url: Option<MintUrl>,
unit: Option<CurrencyUnit>,
state: Option<Vec<ProofState>>,
) -> Pin<Box<dyn Future<Output = Result<u64, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get balance efficiently using SQL aggregation
Source§fn update_proofs_state<'life0, 'async_trait>(
&'life0 self,
ys: Vec<PublicKey>,
state: ProofState,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn update_proofs_state<'life0, 'async_trait>(
&'life0 self,
ys: Vec<PublicKey>,
state: ProofState,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Update proofs state in storage
Source§fn increment_keyset_counter<'life0, 'async_trait>(
&'life0 self,
keyset_id: Id,
count: u32,
) -> Pin<Box<dyn Future<Output = Result<u32, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn increment_keyset_counter<'life0, 'async_trait>(
&'life0 self,
keyset_id: Id,
count: u32,
) -> Pin<Box<dyn Future<Output = Result<u32, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Increment Keyset counter
Source§fn add_transaction<'life0, 'async_trait>(
&'life0 self,
transaction: Transaction,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn add_transaction<'life0, 'async_trait>(
&'life0 self,
transaction: Transaction,
) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Add transaction to storage
Source§fn get_transaction<'life0, 'async_trait>(
&'life0 self,
transaction_id: TransactionId,
) -> Pin<Box<dyn Future<Output = Result<Option<Transaction>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_transaction<'life0, 'async_trait>(
&'life0 self,
transaction_id: TransactionId,
) -> Pin<Box<dyn Future<Output = Result<Option<Transaction>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get transaction from storage
Source§fn list_transactions<'life0, 'async_trait>(
&'life0 self,
mint_url: Option<MintUrl>,
direction: Option<TransactionDirection>,
unit: Option<CurrencyUnit>,
) -> Pin<Box<dyn Future<Output = Result<Vec<Transaction>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn list_transactions<'life0, 'async_trait>(
&'life0 self,
mint_url: Option<MintUrl>,
direction: Option<TransactionDirection>,
unit: Option<CurrencyUnit>,
) -> Pin<Box<dyn Future<Output = Result<Vec<Transaction>, FfiError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
List transactions from storage
Auto Trait Implementations§
impl Freeze for WalletPostgresDatabase
impl RefUnwindSafe for WalletPostgresDatabase
impl Send for WalletPostgresDatabase
impl Sync for WalletPostgresDatabase
impl Unpin for WalletPostgresDatabase
impl UnwindSafe for WalletPostgresDatabase
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, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
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 more