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