pub struct ComputeMeter { /* private fields */ }Expand description
Compute meter for tracking and consuming compute units
Implementations§
Source§impl ComputeMeter
impl ComputeMeter
pub fn new(limit: u64) -> Self
pub fn consume(&self, amount: u64) -> Result<(), SbpfVmError>
pub fn get_remaining(&self) -> u64
pub fn get_consumed(&self) -> u64
pub fn reset(&self)
pub fn borrow(&self) -> Ref<'_, ComputeMeterInner>
pub fn borrow_mut(&self) -> RefMut<'_, ComputeMeterInner>
Trait Implementations§
Source§impl Clone for ComputeMeter
impl Clone for ComputeMeter
Source§fn clone(&self) -> ComputeMeter
fn clone(&self) -> ComputeMeter
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl !RefUnwindSafe for ComputeMeter
impl !Send for ComputeMeter
impl !Sync for ComputeMeter
impl !UnwindSafe for ComputeMeter
impl Freeze for ComputeMeter
impl Unpin for ComputeMeter
impl UnsafeUnpin for ComputeMeter
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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