pub trait TransactionContext {
type Input: TransactionInputContext;
type Output: TransactionOutputContext;
// Required methods
fn version(&self) -> i32;
fn inputs(&self) -> &[Self::Input];
fn outputs(&self) -> &[Self::Output];
fn lock_time(&self) -> u32;
// Provided methods
fn input(&self, index: usize) -> Option<&Self::Input> { ... }
fn output(&self, index: usize) -> Option<&Self::Output> { ... }
fn input_count(&self) -> usize { ... }
fn output_count(&self) -> usize { ... }
}Expand description
Full transaction context for script validation.
This trait provides all the data needed by the Spend validator to validate a transaction input. The Transaction module will implement this trait.
Required Associated Types§
Sourcetype Input: TransactionInputContext
type Input: TransactionInputContext
The input type implementing TransactionInputContext.
Sourcetype Output: TransactionOutputContext
type Output: TransactionOutputContext
The output type implementing TransactionOutputContext.
Required Methods§
Provided Methods§
Sourcefn input_count(&self) -> usize
fn input_count(&self) -> usize
Number of inputs.
Sourcefn output_count(&self) -> usize
fn output_count(&self) -> usize
Number of outputs.