pub trait Recorder<L, N>{
// Required method
fn identifier(&self) -> Cow<'static, str>;
// Provided methods
fn record_before_search<'r>(
&self,
iteration: usize,
egraph: &'r EGraph<L, N>,
rewrite: &'r Rewrite<L, N>,
) -> Option<String> { ... }
fn record_after_search<'r>(
&self,
iteration: usize,
egraph: &'r EGraph<L, N>,
rewrite: &'r Rewrite<L, N>,
matches: &[SearchMatches<'_, L>],
) -> Option<String> { ... }
fn record_before_rewrite(
&self,
iteration: usize,
egraph: &mut EGraph<L, N>,
rewrite: &Rewrite<L, N>,
matches: &[SearchMatches<'_, L>],
) -> Option<String> { ... }
fn record_after_rewrite(
&self,
iteration: usize,
egraph: &mut EGraph<L, N>,
rewrite: &Rewrite<L, N>,
n_matches: usize,
) -> Option<String> { ... }
}Required Methods§
fn identifier(&self) -> Cow<'static, str>
Provided Methods§
fn record_before_search<'r>( &self, iteration: usize, egraph: &'r EGraph<L, N>, rewrite: &'r Rewrite<L, N>, ) -> Option<String>
fn record_after_search<'r>( &self, iteration: usize, egraph: &'r EGraph<L, N>, rewrite: &'r Rewrite<L, N>, matches: &[SearchMatches<'_, L>], ) -> Option<String>
fn record_before_rewrite( &self, iteration: usize, egraph: &mut EGraph<L, N>, rewrite: &Rewrite<L, N>, matches: &[SearchMatches<'_, L>], ) -> Option<String>
fn record_after_rewrite( &self, iteration: usize, egraph: &mut EGraph<L, N>, rewrite: &Rewrite<L, N>, n_matches: usize, ) -> Option<String>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".