[−][src]Struct rchain_v1::rchain::Transaction
Stores a request to the blockchain
Fields
nonce: u128
Unique number (will be used for randomization later; prevents replay attacks)
from: String
Account ID
created_at: SystemTime
Stores the time the transaction was created
record: TransactionData
the type of the transaction and its additional information
signature: Option<String>
Signature of the hash of the whole message
Methods
impl Transaction
[src]
pub fn new(from: String, transaction_data: TransactionData, nonce: u128) -> Self
[src]
pub fn execute<T: WorldState>(
&self,
world_state: &mut T,
is_initial: &bool
) -> Result<(), &'static str>
[src]
&self,
world_state: &mut T,
is_initial: &bool
) -> Result<(), &'static str>
Will change the world state according to the transactions commands
pub fn calculate_hash(&self) -> Vec<u8>
[src]
Will calculate the hash using Blake2 hasher
pub fn check_signature(&self) -> bool
[src]
Will hash the transaction and check if the signature is valid (i.e., it is created by the owners private key) if the message is not signed it will always return false
pub fn is_signed(&self) -> bool
[src]
Trait Implementations
impl Clone for Transaction
[src]
fn clone(&self) -> Transaction
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for Transaction
[src]
Auto Trait Implementations
impl RefUnwindSafe for Transaction
impl Send for Transaction
impl Sync for Transaction
impl Unpin for Transaction
impl UnwindSafe for Transaction
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,