pub fn pre_commit<T: CommandTransaction, F>( f: F, ) -> ClosurePreCommitInterceptor<T, F>where F: for<'a> Fn(&mut PreCommitContext<'a, T>) -> Result<()> + Send + Sync + Clone + 'static,