pub struct CommonFields<'a, F>{Show 14 fields
pub account: Cow<'a, str>,
pub transaction_type: TransactionType,
pub account_txn_id: Option<Cow<'a, str>>,
pub fee: Option<XRPAmount<'a>>,
pub flags: FlagCollection<F>,
pub last_ledger_sequence: Option<u32>,
pub memos: Option<Vec<Memo>>,
pub network_id: Option<u32>,
pub sequence: Option<u32>,
pub signers: Option<Vec<Signer>>,
pub signing_pub_key: Option<Cow<'a, str>>,
pub source_tag: Option<u32>,
pub ticket_sequence: Option<u32>,
pub txn_signature: Option<Cow<'a, str>>,
}
Expand description
The base fields for all transaction models.
See Transaction Common Fields:
<https://xrpl.org/transaction-common-fields.html>
Fields§
§account: Cow<'a, str>
The unique address of the account that initiated the transaction.
transaction_type: TransactionType
The type of transaction.
See Transaction Types:
<https://xrpl.org/transaction-types.html>
account_txn_id: Option<Cow<'a, str>>
Hash value identifying another transaction. If provided, this transaction is only valid if the sending account’s previously-sent transaction matches the provided hash.
fee: Option<XRPAmount<'a>>
Integer amount of XRP, in drops, to be destroyed as a cost for distributing this transaction to the network. Some transaction types have different minimum requirements. See Transaction Cost for details.
flags: FlagCollection<F>
Set of bit-flags for this transaction.
last_ledger_sequence: Option<u32>
Highest ledger index this transaction can appear in. Specifying this field places a strict upper limit on how long the transaction can wait to be validated or rejected. See Reliable Transaction Submission for more details.
memos: Option<Vec<Memo>>
Additional arbitrary information used to identify this transaction.
network_id: Option<u32>
The network ID of the chain this transaction is intended for. MUST BE OMITTED for Mainnet and some test networks. REQUIRED on chains whose network ID is 1025 or higher.
sequence: Option<u32>
The sequence number of the account sending the transaction. A transaction is only valid if the Sequence number is exactly 1 greater than the previous transaction from the same account. The special case 0 means the transaction is using a Ticket instead.
signers: Option<Vec<Signer>>
Arbitrary integer used to identify the reason for this payment, or a sender on whose behalf this transaction is made. Conventionally, a refund should specify the initial payment’s SourceTag as the refund payment’s DestinationTag.
signing_pub_key: Option<Cow<'a, str>>
Hex representation of the public key that corresponds to the private key used to sign this transaction. If an empty string, indicates a multi-signature is present in the Signers field instead.
source_tag: Option<u32>
Arbitrary integer used to identify the reason for this payment, or a sender on whose behalf this transaction is made. Conventionally, a refund should specify the initial payment’s SourceTag as the refund payment’s DestinationTag.
ticket_sequence: Option<u32>
The sequence number of the ticket to use in place of a Sequence number. If this is provided, Sequence must be 0. Cannot be used with AccountTxnID.
txn_signature: Option<Cow<'a, str>>
The signature that verifies this transaction as originating from the account it says it is from.
Implementations§
Source§impl<'a, T> CommonFields<'a, T>
impl<'a, T> CommonFields<'a, T>
pub fn new( account: Cow<'a, str>, transaction_type: TransactionType, account_txn_id: Option<Cow<'a, str>>, fee: Option<XRPAmount<'a>>, flags: Option<FlagCollection<T>>, last_ledger_sequence: Option<u32>, memos: Option<Vec<Memo>>, network_id: Option<u32>, sequence: Option<u32>, signers: Option<Vec<Signer>>, signing_pub_key: Option<Cow<'a, str>>, source_tag: Option<u32>, ticket_sequence: Option<u32>, txn_signature: Option<Cow<'a, str>>, ) -> Self
Sourcepub fn with_flags(self, flags: Vec<T>) -> Self
pub fn with_flags(self, flags: Vec<T>) -> Self
Set multiple flags
Sourcepub fn with_signer(self, signer: Signer) -> Self
pub fn with_signer(self, signer: Signer) -> Self
Add a signer
Source§impl<T> CommonFields<'_, T>
impl<T> CommonFields<'_, T>
Source§impl<'a, T> CommonFields<'a, T>
impl<'a, T> CommonFields<'a, T>
pub fn with_transaction_type(self, transaction_type: TransactionType) -> Self
pub fn with_fee(self, fee: XRPAmount<'a>) -> Self
pub fn with_sequence(self, sequence: u32) -> Self
pub fn with_last_ledger_sequence(self, last_ledger_sequence: u32) -> Self
pub fn with_source_tag(self, source_tag: u32) -> Self
pub fn with_memo(self, memo: Memo) -> Self
pub fn with_memos(self, memos: Vec<Memo>) -> Self
pub fn with_network_id(self, network_id: u32) -> Self
pub fn with_ticket_sequence(self, ticket_sequence: u32) -> Self
pub fn with_account_txn_id(self, account_txn_id: Cow<'a, str>) -> Self
pub fn with_signers(self, signers: Vec<Signer>) -> Self
pub fn with_signing_pub_key(self, signing_pub_key: Cow<'a, str>) -> Self
pub fn with_txn_signature(self, txn_signature: Cow<'a, str>) -> Self
Sourcepub fn from_account(account: impl Into<Cow<'a, str>>) -> Self
pub fn from_account(account: impl Into<Cow<'a, str>>) -> Self
Create CommonFields from an account string (takes ownership)
Trait Implementations§
Source§impl<'a, F> Clone for CommonFields<'a, F>
impl<'a, F> Clone for CommonFields<'a, F>
Source§fn clone(&self) -> CommonFields<'a, F>
fn clone(&self) -> CommonFields<'a, F>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl<'a, F> Debug for CommonFields<'a, F>
impl<'a, F> Debug for CommonFields<'a, F>
Source§impl<'a, T> Default for CommonFields<'a, T>
impl<'a, T> Default for CommonFields<'a, T>
Source§impl<'de, 'a, F> Deserialize<'de> for CommonFields<'a, F>
impl<'de, 'a, F> Deserialize<'de> for CommonFields<'a, F>
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl<'a, T> From<String> for CommonFields<'a, T>
impl<'a, T> From<String> for CommonFields<'a, T>
Source§impl<'a, T> FromStr for CommonFields<'a, T>
impl<'a, T> FromStr for CommonFields<'a, T>
Source§impl<'a, F> PartialEq for CommonFields<'a, F>
impl<'a, F> PartialEq for CommonFields<'a, F>
Source§impl<'a, F> Serialize for CommonFields<'a, F>
impl<'a, F> Serialize for CommonFields<'a, F>
Source§impl<'a, T> Transaction<'a, T> for CommonFields<'a, T>
impl<'a, T> Transaction<'a, T> for CommonFields<'a, T>
fn has_flag(&self, flag: &T) -> bool
fn get_transaction_type(&self) -> &TransactionType
fn get_common_fields(&self) -> &CommonFields<'_, T>
fn get_mut_common_fields(&mut self) -> &mut CommonFields<'a, T>
fn get_field_value(&self, field: &str) -> XRPLModelResult<Option<String>>
fn is_signed(&self) -> bool
impl<'a, F> Eq for CommonFields<'a, F>
impl<'a, F> StructuralPartialEq for CommonFields<'a, F>
Auto Trait Implementations§
impl<'a, F> Freeze for CommonFields<'a, F>
impl<'a, F> RefUnwindSafe for CommonFields<'a, F>where
F: RefUnwindSafe,
impl<'a, F> Send for CommonFields<'a, F>where
F: Send,
impl<'a, F> Sync for CommonFields<'a, F>where
F: Sync,
impl<'a, F> Unpin for CommonFields<'a, F>where
F: Unpin,
impl<'a, F> UnwindSafe for CommonFields<'a, F>where
F: UnwindSafe,
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.