pub struct RecordingHandler<'a, H: ExternalFnHandler + ?Sized> { /* private fields */ }Expand description
Wraps an ExternalFnHandler and records every inline-Resolved external
result into a ReplayRecorder during a live run.
Pure/command bindings resolve inline and are captured here. World-access /
async bindings resolve out of band (the handler returns
ExternalResult::Pending and the value arrives later via
resolve_external), so the consumer records those itself when it supplies
the value — it has the name, args, and result at that point.
Implementations§
Source§impl<'a, H: ExternalFnHandler + ?Sized> RecordingHandler<'a, H>
impl<'a, H: ExternalFnHandler + ?Sized> RecordingHandler<'a, H>
Sourcepub fn new(inner: &'a H, recorder: &'a mut ReplayRecorder) -> Self
pub fn new(inner: &'a H, recorder: &'a mut ReplayRecorder) -> Self
Wrap inner, recording its inline-Resolved results into recorder.
Trait Implementations§
Source§impl<H: ExternalFnHandler + ?Sized> ExternalFnHandler for RecordingHandler<'_, H>
impl<H: ExternalFnHandler + ?Sized> ExternalFnHandler for RecordingHandler<'_, H>
Auto Trait Implementations§
impl<'a, H> !Freeze for RecordingHandler<'a, H>
impl<'a, H> !RefUnwindSafe for RecordingHandler<'a, H>
impl<'a, H> !Sync for RecordingHandler<'a, H>
impl<'a, H> !UnwindSafe for RecordingHandler<'a, H>
impl<'a, H> Send for RecordingHandler<'a, H>
impl<'a, H> Unpin for RecordingHandler<'a, H>where
H: ?Sized,
impl<'a, H> UnsafeUnpin for RecordingHandler<'a, H>where
H: ?Sized,
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