pub struct Producer<'a> { /* private fields */ }Expand description
Borrowed producing execution, without retaining an algorithm, parser input buffer or account owner. This is not a document/value identity.
Implementations§
Source§impl<'a> Producer<'a>
impl<'a> Producer<'a>
Sourcepub fn charge_work_in<W: Work>(
&self,
work: &W,
amount: u64,
) -> Result<(), MemoryError>
pub fn charge_work_in<W: Work>( &self, work: &W, amount: u64, ) -> Result<(), MemoryError>
Admits one joint operation without replacing a source already carried by current work. Distinct source ceilings and the account are paid once.
Sourcepub fn charge_work_with<W: Work>(
&self,
other: Self,
work: &W,
amount: u64,
) -> Result<(), MemoryError>
pub fn charge_work_with<W: Work>( &self, other: Self, work: &W, amount: u64, ) -> Result<(), MemoryError>
Admits a comparison or operation jointly derived from two producers, preserving every existing current ceiling with one aggregate bill.
Sourcepub fn execution_in<'q, W: Work>(&self, work: &'q W) -> Execution<'q>where
'a: 'q,
pub fn execution_in<'q, W: Work>(&self, work: &'q W) -> Execution<'q>where
'a: 'q,
Funds new work against this producer and the current operation.
Trait Implementations§
Auto Trait Implementations§
impl<'a> !RefUnwindSafe for Producer<'a>
impl<'a> !Send for Producer<'a>
impl<'a> !Sync for Producer<'a>
impl<'a> !UnwindSafe for Producer<'a>
impl<'a> Freeze for Producer<'a>
impl<'a> Unpin for Producer<'a>
impl<'a> UnsafeUnpin for Producer<'a>
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