pub struct LedgerTransaction {
pub version: u32,
pub type: u32,
/* private fields */
}Expand description
Ledger transaction wrapper around a CanonicalTransaction.
Fields§
§version: u32§type: u32Implementations§
Source§impl LedgerTransaction
impl LedgerTransaction
pub fn decode_for_ingress( bytes: &[u8], block_height: u64, ) -> Result<Self, Error>
pub fn decode_for_ledger(bytes: &[u8], block_height: u64) -> Result<Self, Error>
pub fn decode_any(bytes: &[u8]) -> Result<Self, Error>
Sourcepub fn from_protocol_with_format(
protocol: ProtocolTransaction,
format: TransactionFormat,
) -> Self
pub fn from_protocol_with_format( protocol: ProtocolTransaction, format: TransactionFormat, ) -> Self
Builds a ledger transaction from a native protocol transaction and an explicit format.
pub fn from_protocol_for_ledger( protocol: ProtocolTransaction, block_height: u64, ) -> Self
pub fn from_protocol_for_ingress( protocol: ProtocolTransaction, block_height: u64, ) -> Self
Sourcepub fn reformat_for_ledger(&self, block_height: u64) -> Self
pub fn reformat_for_ledger(&self, block_height: u64) -> Self
Reformats a ledger transaction to the ledger format active at
block_height.
Sourcepub fn reformat_for_ingress(&self, block_height: u64) -> Self
pub fn reformat_for_ingress(&self, block_height: u64) -> Self
Reformats a ledger transaction to the ingress format active at
block_height.
pub fn format(&self) -> TransactionFormat
pub fn canonical(&self) -> &CanonicalTransaction
pub fn protocol(&self) -> &ProtocolTransaction
pub fn protocol_bytes(&self) -> Vec<u8> ⓘ
Sourcepub fn digest(&self) -> [u8; 32]
pub fn digest(&self) -> [u8; 32]
Computes the hash digest of the entire transaction data.
This method returns the Sha3 256 digest of the entire transaction in its serialized form. If the transaction is a blob transaction, the sidecar is stripped
The digest hash is currently only being used in the merkle tree.
§Returns
An array of 32 bytes representing the hash of the transaction.
Sourcepub fn id(&self) -> [u8; 32]
pub fn id(&self) -> [u8; 32]
Computes the transaction ID.
The transaction ID is a unique identifier for the transaction.
Unlike the digest() method, which is computed over
the entire transaction, the transaction ID is derived from specific
fields of the transaction and serves as a unique identifier of the
transaction itself.
§Returns
An array of 32 bytes representing the transaction ID.
pub fn gas_price(&self) -> u64
pub fn to_spend_ids(&self) -> Vec<SpendingId>
pub fn next_spending_id(&self) -> Option<SpendingId>
pub fn blob_mut(&mut self) -> Option<&mut Vec<BlobData>>
pub fn strip_blobs(&mut self) -> Option<Vec<([u8; 32], BlobSidecar)>>
Trait Implementations§
Source§impl Clone for LedgerTransaction
impl Clone for LedgerTransaction
Source§fn clone(&self) -> LedgerTransaction
fn clone(&self) -> LedgerTransaction
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for LedgerTransaction
impl Debug for LedgerTransaction
impl Eq for LedgerTransaction
Source§impl From<CanonicalTransaction> for LedgerTransaction
impl From<CanonicalTransaction> for LedgerTransaction
Source§fn from(value: CanonicalTransaction) -> Self
fn from(value: CanonicalTransaction) -> Self
Source§impl From<LedgerTransaction> for Payload
impl From<LedgerTransaction> for Payload
Source§fn from(value: LedgerTransaction) -> Self
fn from(value: LedgerTransaction) -> Self
Source§impl PartialEq for LedgerTransaction
impl PartialEq for LedgerTransaction
Source§impl Serializable for LedgerTransaction
impl Serializable for LedgerTransaction
fn write<W: Write>(&self, w: &mut W) -> Result<()>
fn read<R: Read>(r: &mut R) -> Result<Self>where
Self: Sized,
fn read_bytes<R: Read, const N: usize>(r: &mut R) -> Result<[u8; N]>
fn read_u8<R: Read>(r: &mut R) -> Result<u8>
fn read_u16_le<R: Read>(r: &mut R) -> Result<u16>
fn read_u64_le<R: Read>(r: &mut R) -> Result<u64>
fn read_u32_le<R: Read>(r: &mut R) -> Result<u32>
Source§impl Serialize for LedgerTransaction
impl Serialize for LedgerTransaction
Source§impl WireMessage for LedgerTransaction
impl WireMessage for LedgerTransaction
Auto Trait Implementations§
impl Freeze for LedgerTransaction
impl RefUnwindSafe for LedgerTransaction
impl Send for LedgerTransaction
impl Sync for LedgerTransaction
impl Unpin for LedgerTransaction
impl UnsafeUnpin for LedgerTransaction
impl UnwindSafe for LedgerTransaction
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
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<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<F, W, T, D> Deserialize<With<T, W>, D> for F
Source§impl<T> FmtForward for T
impl<T> FmtForward for T
Source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self to use its Binary implementation when Debug-formatted.Source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self to use its Display implementation when
Debug-formatted.Source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self to use its LowerExp implementation when
Debug-formatted.Source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self to use its LowerHex implementation when
Debug-formatted.Source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self to use its Octal implementation when Debug-formatted.Source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self to use its Pointer implementation when
Debug-formatted.Source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self to use its UpperExp implementation when
Debug-formatted.Source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self to use its UpperHex implementation when
Debug-formatted.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> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Source§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self, then passes self.as_ref() into the pipe function.Source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self, then passes self.as_mut() into the pipe
function.Source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self, then passes self.deref() into the pipe function.Source§impl<T> Tap for T
impl<T> Tap for T
Source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B> of a value. Read moreSource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B> of a value. Read moreSource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R> view of a value. Read moreSource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R> view of a value. Read moreSource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap() only in debug builds, and is erased in release builds.Source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut() only in debug builds, and is erased in release
builds.Source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref() only in debug builds, and is erased in release
builds.Source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut() only in debug builds, and is erased in release
builds.Source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref() only in debug builds, and is erased in release
builds.