pub struct CostTracker { /* private fields */ }
Implementations§
Source§impl CostTracker
impl CostTracker
pub fn new_from_parent_limits(&self) -> Self
pub fn reset(&mut self)
Sourcepub fn set_limits(
&mut self,
account_cost_limit: u64,
block_cost_limit: u64,
vote_cost_limit: u64,
)
pub fn set_limits( &mut self, account_cost_limit: u64, block_cost_limit: u64, vote_cost_limit: u64, )
allows to adjust limits initiated during construction
pub fn in_flight_transaction_count(&self) -> usize
pub fn add_transactions_in_flight(&mut self, in_flight_transaction_count: usize)
pub fn sub_transactions_in_flight(&mut self, in_flight_transaction_count: usize)
pub fn try_add( &mut self, tx_cost: &TransactionCost<'_, impl SVMMessage>, ) -> Result<UpdatedCosts, CostTrackerError>
pub fn update_execution_cost( &mut self, estimated_tx_cost: &TransactionCost<'_, impl SVMMessage>, actual_execution_units: u64, actual_loaded_accounts_data_size_cost: u64, )
pub fn remove(&mut self, tx_cost: &TransactionCost<'_, impl SVMMessage>)
pub fn block_cost(&self) -> u64
pub fn vote_cost(&self) -> u64
pub fn transaction_count(&self) -> u64
pub fn report_stats(&self, bank_slot: Slot)
Trait Implementations§
Source§impl Debug for CostTracker
impl Debug for CostTracker
Auto Trait Implementations§
impl Freeze for CostTracker
impl RefUnwindSafe for CostTracker
impl Send for CostTracker
impl Sync for CostTracker
impl Unpin for CostTracker
impl UnwindSafe for CostTracker
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
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 more