pub struct BundleProcessor {
pub resolved_transactions: Vec<VersionedTransactionResolved>,
pub total_required_lamports: u64,
pub total_payment_lamports: u64,
pub total_solana_estimated_fee: u64,
}Fields§
§resolved_transactions: Vec<VersionedTransactionResolved>§total_required_lamports: u64§total_payment_lamports: u64§total_solana_estimated_fee: u64Implementations§
Source§impl BundleProcessor
impl BundleProcessor
Sourcepub fn extract_transactions_to_process(
transactions: &[String],
sign_only_indices: Option<Vec<usize>>,
) -> Result<(Vec<String>, HashMap<usize, usize>), KoraError>
pub fn extract_transactions_to_process( transactions: &[String], sign_only_indices: Option<Vec<usize>>, ) -> Result<(Vec<String>, HashMap<usize, usize>), KoraError>
Extract transactions at specified indices for processing.
Returns (filtered_transactions, index_to_position_map).
If sign_only_indices is None, returns all transactions with all indices.
Sourcepub fn merge_signed_transactions(
original_transactions: &[String],
signed_transactions: Vec<String>,
index_to_position: &HashMap<usize, usize>,
) -> Vec<String>
pub fn merge_signed_transactions( original_transactions: &[String], signed_transactions: Vec<String>, index_to_position: &HashMap<usize, usize>, ) -> Vec<String>
Merge signed transactions back into the original list, preserving order.
index_to_position maps original transaction index -> position in signed_transactions vec.
pub async fn process_bundle<'a>( encoded_txs: &[String], fee_payer: Pubkey, payment_destination: &Pubkey, config: &Config, rpc_client: &Arc<RpcClient>, sig_verify: bool, plugin_context: Option<PluginExecutionContext>, processing_mode: BundleProcessingMode<'a>, ) -> Result<Self, KoraError>
pub async fn sign_all( self, signer: &Arc<Signer>, fee_payer: &Pubkey, rpc_client: &RpcClient, config: &Config, will_send: bool, ) -> Result<Vec<VersionedTransactionResolved>, KoraError>
Auto Trait Implementations§
impl Freeze for BundleProcessor
impl RefUnwindSafe for BundleProcessor
impl Send for BundleProcessor
impl Sync for BundleProcessor
impl Unpin for BundleProcessor
impl UnsafeUnpin for BundleProcessor
impl UnwindSafe for BundleProcessor
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
Mutably borrows from an owned value. Read more
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreCreates a shared type from an unshared type.