Struct solana_runtime::cost_tracker::CostTracker
source · pub struct CostTracker { /* private fields */ }
Implementations§
source§impl CostTracker
impl CostTracker
sourcepub fn new_with_account_data_size_limit(
account_data_size_limit: Option<u64>
) -> Self
pub fn new_with_account_data_size_limit( account_data_size_limit: Option<u64> ) -> Self
Construct and new CostTracker and set the account data size limit.
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 try_add( &mut self, tx_cost: &TransactionCost ) -> Result<u64, CostTrackerError>
sourcepub fn try_add_requested_cus(
&mut self,
write_lock_accounts: &[Pubkey],
requested_cus: u64,
is_vote: bool
) -> Result<u64, CostTrackerError>
pub fn try_add_requested_cus( &mut self, write_lock_accounts: &[Pubkey], requested_cus: u64, is_vote: bool ) -> Result<u64, CostTrackerError>
Using user requested compute-units to track cost.
pub fn update_execution_cost( &mut self, estimated_tx_cost: &TransactionCost, actual_execution_units: u64 )
pub fn remove(&mut self, tx_cost: &TransactionCost)
pub fn block_cost(&self) -> u64
pub fn transaction_count(&self) -> u64
pub fn report_stats(&self, bank_slot: Slot)
Trait Implementations§
source§impl AbiExample for CostTracker
impl AbiExample for CostTracker
source§impl Debug for CostTracker
impl Debug for CostTracker
Auto Trait Implementations§
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