pub struct IterCaptureGuard { /* private fields */ }Expand description
RAII activation of per-iteration capture for one solve.
Construct with IterCaptureGuard::start immediately before the
solve and call IterCaptureGuard::finish after it to take the
collected records. Solves run synchronously on one thread, so a
thread-local slot suffices; restoration sub-solves are excluded by
span scoping in the collector rather than by nesting guards.
Implementations§
Source§impl IterCaptureGuard
impl IterCaptureGuard
Sourcepub fn start() -> IterCaptureGuard
pub fn start() -> IterCaptureGuard
Begin capturing iteration records on this thread.
Sourcepub fn finish(self) -> Vec<IterRecord>
pub fn finish(self) -> Vec<IterRecord>
End capture and return the records collected since start.
Trait Implementations§
Source§impl Drop for IterCaptureGuard
impl Drop for IterCaptureGuard
Auto Trait Implementations§
impl Freeze for IterCaptureGuard
impl RefUnwindSafe for IterCaptureGuard
impl Send for IterCaptureGuard
impl Sync for IterCaptureGuard
impl Unpin for IterCaptureGuard
impl UnsafeUnpin for IterCaptureGuard
impl UnwindSafe for IterCaptureGuard
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
impl<T, U> Imply<T> for U
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