Trait CommonTransactionBuilder

Source
pub trait CommonTransactionBuilder<'a, F>{
    // Required methods
    fn get_mut_common_fields(&mut self) -> &mut CommonFields<'a, F>;
    fn into_self(self) -> Self;

    // Provided methods
    fn with_fee(self, fee: XRPAmount<'a>) -> Self
       where Self: Sized { ... }
    fn with_sequence(self, sequence: u32) -> Self
       where Self: Sized { ... }
    fn with_last_ledger_sequence(self, last_ledger_sequence: u32) -> Self
       where Self: Sized { ... }
    fn with_memo(self, memo: Memo) -> Self
       where Self: Sized { ... }
    fn with_source_tag(self, source_tag: u32) -> Self
       where Self: Sized { ... }
    fn with_ticket_sequence(self, ticket_sequence: u32) -> Self
       where Self: Sized { ... }
    fn with_account_txn_id(self, account_txn_id: Cow<'a, str>) -> Self
       where Self: Sized { ... }
}
Expand description

A trait providing common builder methods for all transaction types. This eliminates code duplication across transaction implementations.

Required Methods§

Source

fn get_mut_common_fields(&mut self) -> &mut CommonFields<'a, F>

Get mutable reference to common fields

Source

fn into_self(self) -> Self

Return self after modification (for method chaining)

Provided Methods§

Source

fn with_fee(self, fee: XRPAmount<'a>) -> Self
where Self: Sized,

Set fee

Source

fn with_sequence(self, sequence: u32) -> Self
where Self: Sized,

Set sequence

Source

fn with_last_ledger_sequence(self, last_ledger_sequence: u32) -> Self
where Self: Sized,

Set last ledger sequence

Source

fn with_memo(self, memo: Memo) -> Self
where Self: Sized,

Add memo

Source

fn with_source_tag(self, source_tag: u32) -> Self
where Self: Sized,

Set source tag

Source

fn with_ticket_sequence(self, ticket_sequence: u32) -> Self
where Self: Sized,

Set ticket sequence

Source

fn with_account_txn_id(self, account_txn_id: Cow<'a, str>) -> Self
where Self: Sized,

Set account transaction ID

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.

Implementors§

Source§

impl<'a> CommonTransactionBuilder<'a, NoFlags> for AccountDelete<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NoFlags> for AMMBid<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NoFlags> for AMMCreate<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NoFlags> for AMMDelete<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NoFlags> for AMMVote<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NoFlags> for CheckCancel<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NoFlags> for CheckCash<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NoFlags> for CheckCreate<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NoFlags> for DepositPreauth<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NoFlags> for EscrowCancel<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NoFlags> for EscrowCreate<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NoFlags> for EscrowFinish<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NoFlags> for NFTokenAcceptOffer<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NoFlags> for NFTokenBurn<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NoFlags> for NFTokenCancelOffer<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NoFlags> for OfferCancel<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NoFlags> for PaymentChannelCreate<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NoFlags> for PaymentChannelFund<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NoFlags> for SetRegularKey<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NoFlags> for SignerListSet<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NoFlags> for TicketCreate<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, AccountSetFlag> for AccountSet<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, AMMDepositFlag> for AMMDeposit<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, AMMWithdrawFlag> for AMMWithdraw<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NFTokenCreateOfferFlag> for NFTokenCreateOffer<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, NFTokenMintFlag> for NFTokenMint<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, OfferCreateFlag> for OfferCreate<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, PaymentFlag> for Payment<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, PaymentChannelClaimFlag> for PaymentChannelClaim<'a>

Source§

impl<'a> CommonTransactionBuilder<'a, TrustSetFlag> for TrustSet<'a>