Struct miden_client::transactions::request::TransactionRequest
source · pub struct TransactionRequest { /* private fields */ }Expand description
A request for executing a transaction against a specific account.
A request contains information about input notes to be consumed by the transaction (if any), description of the transaction script to be executed (if any), and a set of notes expected to be generated by the transaction or by consuming notes generated by the transaction.
Implementations§
source§impl TransactionRequest
impl TransactionRequest
pub fn new() -> Self
sourcepub fn with_unauthenticated_input_notes(
self,
notes: impl IntoIterator<Item = (Note, Option<NoteArgs>)>,
) -> Self
pub fn with_unauthenticated_input_notes( self, notes: impl IntoIterator<Item = (Note, Option<NoteArgs>)>, ) -> Self
Adds the specified notes as unauthenticated input notes to the transaction request.
sourcepub fn with_authenticated_input_notes(
self,
notes: impl IntoIterator<Item = (NoteId, Option<NoteArgs>)>,
) -> Self
pub fn with_authenticated_input_notes( self, notes: impl IntoIterator<Item = (NoteId, Option<NoteArgs>)>, ) -> Self
Adds the specified notes as authenticated input notes to the transaction request.
sourcepub fn with_own_output_notes(
self,
notes: impl IntoIterator<Item = OutputNote>,
) -> Result<Self, TransactionRequestError>
pub fn with_own_output_notes( self, notes: impl IntoIterator<Item = OutputNote>, ) -> Result<Self, TransactionRequestError>
Specifies the output notes that should be created in the transaction script and will be used as a transaction script template. These notes will also be added the the expected output notes of the transaction.
If a transaction script template is already set (e.g. by calling with_custom_script), this
method will return an error.
sourcepub fn with_custom_script(
self,
script: TransactionScript,
) -> Result<Self, TransactionRequestError>
pub fn with_custom_script( self, script: TransactionScript, ) -> Result<Self, TransactionRequestError>
Specifies a custom transaction script to be used.
If a script template is already set (e.g. by calling with_own_output_notes), this method
will return an error.
pub fn with_expected_output_notes(self, notes: Vec<Note>) -> Self
pub fn with_expected_future_notes(self, notes: Vec<NoteDetails>) -> Self
pub fn extend_advice_map<T: IntoIterator<Item = (Digest, Vec<Felt>)>>( self, iter: T, ) -> Self
pub fn extend_merkle_store<T: IntoIterator<Item = InnerNodeInfo>>( self, iter: T, ) -> Self
sourcepub fn consume_notes(note_ids: Vec<NoteId>) -> Self
pub fn consume_notes(note_ids: Vec<NoteId>) -> Self
Returns a new TransactionRequest for a transaction to consume the specified notes.
note_idsis a list of note IDs to be consumed.
sourcepub fn mint_fungible_asset(
asset: FungibleAsset,
target_id: AccountId,
note_type: NoteType,
rng: &mut impl FeltRng,
) -> Result<Self, TransactionRequestError>
pub fn mint_fungible_asset( asset: FungibleAsset, target_id: AccountId, note_type: NoteType, rng: &mut impl FeltRng, ) -> Result<Self, TransactionRequestError>
Returns a new TransactionRequest for a transaction to mint fungible assets. This request must be executed against a fungible faucet account.
assetis the fungible asset to be minted.target_idis the account ID of the account to receive the minted asset.note_typedetermines the visibility of the note to be created.rngis the random number generator used to generate the serial number for the created note.
sourcepub fn pay_to_id(
payment_data: PaymentTransactionData,
recall_height: Option<u32>,
note_type: NoteType,
rng: &mut impl FeltRng,
) -> Result<Self, TransactionRequestError>
pub fn pay_to_id( payment_data: PaymentTransactionData, recall_height: Option<u32>, note_type: NoteType, rng: &mut impl FeltRng, ) -> Result<Self, TransactionRequestError>
Returns a new TransactionRequest for a transaction to send a P2ID or P2IDR note. This request must be executed against the wallet sender account.
payment_datais the data for the payment transaction that contains the asset to be transferred, the sender account ID, and the target account ID.recall_heightis the block height after which the sender can recall the assets. If None, a P2ID note is created. If Some(), a P2IDR note is created.note_typedetermines the visibility of the note to be created.rngis the random number generator used to generate the serial number for the created note.
sourcepub fn swap(
swap_data: SwapTransactionData,
note_type: NoteType,
rng: &mut impl FeltRng,
) -> Result<Self, TransactionRequestError>
pub fn swap( swap_data: SwapTransactionData, note_type: NoteType, rng: &mut impl FeltRng, ) -> Result<Self, TransactionRequestError>
Returns a new TransactionRequest for a transaction to send a SWAP note. This request must be executed against the wallet sender account.
swap_datais the data for the swap transaction that contains the sender account ID, the offered asset, and the requested asset.note_typedetermines the visibility of the note to be created.rngis the random number generator used to generate the serial number for the created note.
pub fn unauthenticated_input_notes(&self) -> &[Note]
pub fn unauthenticated_input_note_ids( &self, ) -> impl Iterator<Item = NoteId> + '_
pub fn authenticated_input_note_ids(&self) -> impl Iterator<Item = NoteId> + '_
pub fn input_notes(&self) -> &BTreeMap<NoteId, Option<NoteArgs>>
pub fn get_input_note_ids(&self) -> Vec<NoteId>
pub fn get_note_args(&self) -> BTreeMap<NoteId, NoteArgs>
pub fn expected_output_notes(&self) -> impl Iterator<Item = &Note>
pub fn expected_future_notes(&self) -> impl Iterator<Item = &NoteDetails>
pub fn script_template(&self) -> &Option<TransactionScriptTemplate>
pub fn advice_map(&self) -> &AdviceMap
pub fn merkle_store(&self) -> &MerkleStore
Trait Implementations§
source§impl Clone for TransactionRequest
impl Clone for TransactionRequest
source§fn clone(&self) -> TransactionRequest
fn clone(&self) -> TransactionRequest
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for TransactionRequest
impl Debug for TransactionRequest
source§impl Default for TransactionRequest
impl Default for TransactionRequest
source§impl Deserializable for TransactionRequest
impl Deserializable for TransactionRequest
source§fn read_from<R: ByteReader>(
source: &mut R,
) -> Result<Self, DeserializationError>
fn read_from<R: ByteReader>( source: &mut R, ) -> Result<Self, DeserializationError>
source, attempts to deserialize these bytes
into Self, and returns the result. Read moresource§fn read_from_bytes(bytes: &[u8]) -> Result<Self, DeserializationError>
fn read_from_bytes(bytes: &[u8]) -> Result<Self, DeserializationError>
source§impl PartialEq for TransactionRequest
impl PartialEq for TransactionRequest
source§impl Serializable for TransactionRequest
impl Serializable for TransactionRequest
source§fn write_into<W: ByteWriter>(&self, target: &mut W)
fn write_into<W: ByteWriter>(&self, target: &mut W)
self into bytes and writes these bytes into the target.source§fn get_size_hint(&self) -> usize
fn get_size_hint(&self) -> usize
Auto Trait Implementations§
impl Freeze for TransactionRequest
impl RefUnwindSafe for TransactionRequest
impl Send for TransactionRequest
impl Sync for TransactionRequest
impl Unpin for TransactionRequest
impl UnwindSafe for TransactionRequest
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§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)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<D> OwoColorize for D
impl<D> OwoColorize for D
source§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
source§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
source§fn black(&self) -> FgColorDisplay<'_, Black, Self>
fn black(&self) -> FgColorDisplay<'_, Black, Self>
source§fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
source§fn red(&self) -> FgColorDisplay<'_, Red, Self>
fn red(&self) -> FgColorDisplay<'_, Red, Self>
source§fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
source§fn green(&self) -> FgColorDisplay<'_, Green, Self>
fn green(&self) -> FgColorDisplay<'_, Green, Self>
source§fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
source§fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
source§fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
source§fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
source§fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
source§fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
source§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
source§fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
source§fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
source§fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
source§fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
source§fn white(&self) -> FgColorDisplay<'_, White, Self>
fn white(&self) -> FgColorDisplay<'_, White, Self>
source§fn on_white(&self) -> BgColorDisplay<'_, White, Self>
fn on_white(&self) -> BgColorDisplay<'_, White, Self>
source§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
source§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
source§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
source§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
source§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
source§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
source§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
source§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
source§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
source§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
source§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
source§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
source§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
source§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
source§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
source§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
source§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
source§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
source§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
source§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
source§fn bold(&self) -> BoldDisplay<'_, Self>
fn bold(&self) -> BoldDisplay<'_, Self>
source§fn dimmed(&self) -> DimDisplay<'_, Self>
fn dimmed(&self) -> DimDisplay<'_, Self>
source§fn italic(&self) -> ItalicDisplay<'_, Self>
fn italic(&self) -> ItalicDisplay<'_, Self>
source§fn underline(&self) -> UnderlineDisplay<'_, Self>
fn underline(&self) -> UnderlineDisplay<'_, Self>
source§fn blink(&self) -> BlinkDisplay<'_, Self>
fn blink(&self) -> BlinkDisplay<'_, Self>
source§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
source§fn reversed(&self) -> ReversedDisplay<'_, Self>
fn reversed(&self) -> ReversedDisplay<'_, Self>
source§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
source§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::fg or
a color-specific method, such as OwoColorize::green, Read moresource§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::bg or
a color-specific method, such as OwoColorize::on_yellow, Read more