pub trait DynHook: Send {
// Required methods
fn pre_commit_boxed<'c>(
self: Box<Self>,
op: HookOperation<'c>,
) -> BoxFuture<'c, Result<(HookOperation<'c>, Box<dyn DynHook>), Error>>;
fn post_commit_boxed(self: Box<Self>);
fn on_rollback_boxed(self: Box<Self>);
fn try_merge(&mut self, other: &mut dyn DynHook) -> bool;
fn runs_after(&self) -> &[TypeId];
fn as_any(&self) -> &dyn Any;
fn as_any_mut(&mut self) -> &mut dyn Any;
fn into_any(self: Box<Self>) -> Box<dyn Any>;
}Required Methods§
fn pre_commit_boxed<'c>( self: Box<Self>, op: HookOperation<'c>, ) -> BoxFuture<'c, Result<(HookOperation<'c>, Box<dyn DynHook>), Error>>
fn post_commit_boxed(self: Box<Self>)
fn on_rollback_boxed(self: Box<Self>)
fn try_merge(&mut self, other: &mut dyn DynHook) -> bool
fn runs_after(&self) -> &[TypeId]
fn as_any(&self) -> &dyn Any
fn as_any_mut(&mut self) -> &mut dyn Any
fn into_any(self: Box<Self>) -> Box<dyn Any>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".