pub struct RpcSimulateBundleTransactionResult {Show 14 fields
pub err: Option<TransactionError>,
pub logs: Option<Vec<String>>,
pub pre_execution_accounts: Option<Vec<UiAccount>>,
pub post_execution_accounts: Option<Vec<UiAccount>>,
pub units_consumed: Option<u64>,
pub loaded_accounts_data_size: Option<u32>,
pub return_data: Option<UiTransactionReturnData>,
pub replacement_blockhash: Option<RpcBlockhash>,
pub fee: Option<u64>,
pub pre_balances: Option<Vec<u64>>,
pub post_balances: Option<Vec<u64>>,
pub pre_token_balances: Option<Vec<UiTransactionTokenBalance>>,
pub post_token_balances: Option<Vec<UiTransactionTokenBalance>>,
pub loaded_addresses: Option<UiLoadedAddresses>,
}Expand description
Per-transaction simulation outcome inside a bundle. Matches the wire shape
Jito-Solana returns from simulateBundle. Fields are Option because not
every backend populates every enrichment. Surfpool currently populates
err, logs, pre/post_execution_accounts, units_consumed, and
replacement_blockhash. The remaining fields — return_data, fee,
pre/post_balances, pre/post_token_balances, loaded_addresses,
loaded_accounts_data_size — are uniformly None from this backend.
This is the same gap that already exists on the single-tx
simulateTransaction path’s bundle-only fields; closing it requires
piping richer metadata through ProfileResult and is tracked for a
follow-up PR. Wire-format clients should treat None as “not provided
by this server” rather than “field unsupported”.
Fields§
§err: Option<TransactionError>§logs: Option<Vec<String>>§pre_execution_accounts: Option<Vec<UiAccount>>§post_execution_accounts: Option<Vec<UiAccount>>§units_consumed: Option<u64>§loaded_accounts_data_size: Option<u32>§return_data: Option<UiTransactionReturnData>§replacement_blockhash: Option<RpcBlockhash>§fee: Option<u64>§pre_balances: Option<Vec<u64>>§post_balances: Option<Vec<u64>>§pre_token_balances: Option<Vec<UiTransactionTokenBalance>>§post_token_balances: Option<Vec<UiTransactionTokenBalance>>§loaded_addresses: Option<UiLoadedAddresses>Trait Implementations§
Source§impl Clone for RpcSimulateBundleTransactionResult
impl Clone for RpcSimulateBundleTransactionResult
Source§fn clone(&self) -> RpcSimulateBundleTransactionResult
fn clone(&self) -> RpcSimulateBundleTransactionResult
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl<'de> Deserialize<'de> for RpcSimulateBundleTransactionResult
impl<'de> Deserialize<'de> for RpcSimulateBundleTransactionResult
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for RpcSimulateBundleTransactionResult
impl RefUnwindSafe for RpcSimulateBundleTransactionResult
impl Send for RpcSimulateBundleTransactionResult
impl Sync for RpcSimulateBundleTransactionResult
impl Unpin for RpcSimulateBundleTransactionResult
impl UnsafeUnpin for RpcSimulateBundleTransactionResult
impl UnwindSafe for RpcSimulateBundleTransactionResult
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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>
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>
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 more