#[non_exhaustive]
pub struct Transaction {
Show 19 fields pub network: QueryNetwork, pub block_hash: Option<String>, pub transaction_hash: String, pub block_number: Option<String>, pub transaction_timestamp: DateTime, pub transaction_index: i64, pub number_of_transactions: i64, pub status: QueryTransactionStatus, pub to: String, pub from: Option<String>, pub contract_address: Option<String>, pub gas_used: Option<String>, pub cumulative_gas_used: Option<String>, pub effective_gas_price: Option<String>, pub signature_v: Option<i32>, pub signature_r: Option<String>, pub signature_s: Option<String>, pub transaction_fee: Option<String>, pub transaction_id: Option<String>,
}
Expand description

There are two possible types of transactions used for this data type:

  • A Bitcoin transaction is a movement of BTC from one address to another.

  • An Ethereum transaction refers to an action initiated by an externally owned account, which is an account managed by a human, not a contract. For example, if Bob sends Alice 1 ETH, Bob's account must be debited and Alice's must be credited. This state-changing action occurs within a transaction.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§network: QueryNetwork

The blockchain network where the transaction occurred.

§block_hash: Option<String>

The block hash is a unique identifier for a block. It is a fixed-size string that is calculated by using the information in the block. The block hash is used to verify the integrity of the data in the block.

§transaction_hash: String

The hash of the transaction. It is generated whenever a transaction is verified and added to the blockchain.

§block_number: Option<String>

The block number in which the transaction is recorded.

§transaction_timestamp: DateTime

The Timestamp of the transaction.

§transaction_index: i64

The index of the transaction within a blockchain.

§number_of_transactions: i64

The number of transactions in the block.

§status: QueryTransactionStatus

The status of the transaction.

§to: String

The identifier of the transaction. It is generated whenever a transaction is verified and added to the blockchain.

§from: Option<String>

The initiator of the transaction. It is either in the form a public key or a contract address.

§contract_address: Option<String>

The blockchain address for the contract.

§gas_used: Option<String>

The amount of gas used for the transaction.

§cumulative_gas_used: Option<String>

The amount of gas used up to the specified point in the block.

§effective_gas_price: Option<String>

The effective gas price.

§signature_v: Option<i32>

The signature of the transaction. The Z coordinate of a point V.

§signature_r: Option<String>

The signature of the transaction. The X coordinate of a point R.

§signature_s: Option<String>

The signature of the transaction. The Y coordinate of a point S.

§transaction_fee: Option<String>

The transaction fee.

§transaction_id: Option<String>

The unique identifier of the transaction. It is generated whenever a transaction is verified and added to the blockchain.

Implementations§

source§

impl Transaction

source

pub fn network(&self) -> &QueryNetwork

The blockchain network where the transaction occurred.

source

pub fn block_hash(&self) -> Option<&str>

The block hash is a unique identifier for a block. It is a fixed-size string that is calculated by using the information in the block. The block hash is used to verify the integrity of the data in the block.

source

pub fn transaction_hash(&self) -> &str

The hash of the transaction. It is generated whenever a transaction is verified and added to the blockchain.

source

pub fn block_number(&self) -> Option<&str>

The block number in which the transaction is recorded.

source

pub fn transaction_timestamp(&self) -> &DateTime

The Timestamp of the transaction.

source

pub fn transaction_index(&self) -> i64

The index of the transaction within a blockchain.

source

pub fn number_of_transactions(&self) -> i64

The number of transactions in the block.

source

pub fn status(&self) -> &QueryTransactionStatus

The status of the transaction.

source

pub fn to(&self) -> &str

The identifier of the transaction. It is generated whenever a transaction is verified and added to the blockchain.

source

pub fn from(&self) -> Option<&str>

The initiator of the transaction. It is either in the form a public key or a contract address.

source

pub fn contract_address(&self) -> Option<&str>

The blockchain address for the contract.

source

pub fn gas_used(&self) -> Option<&str>

The amount of gas used for the transaction.

source

pub fn cumulative_gas_used(&self) -> Option<&str>

The amount of gas used up to the specified point in the block.

source

pub fn effective_gas_price(&self) -> Option<&str>

The effective gas price.

source

pub fn signature_v(&self) -> Option<i32>

The signature of the transaction. The Z coordinate of a point V.

source

pub fn signature_r(&self) -> Option<&str>

The signature of the transaction. The X coordinate of a point R.

source

pub fn signature_s(&self) -> Option<&str>

The signature of the transaction. The Y coordinate of a point S.

source

pub fn transaction_fee(&self) -> Option<&str>

The transaction fee.

source

pub fn transaction_id(&self) -> Option<&str>

The unique identifier of the transaction. It is generated whenever a transaction is verified and added to the blockchain.

source§

impl Transaction

source

pub fn builder() -> TransactionBuilder

Creates a new builder-style object to manufacture Transaction.

Trait Implementations§

source§

impl Clone for Transaction

source§

fn clone(&self) -> Transaction

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Transaction

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for Transaction

source§

fn eq(&self, other: &Transaction) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for Transaction

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<Unshared, Shared> IntoShared<Shared> for Unsharedwhere Shared: FromUnshared<Unshared>,

source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more