diff options
| -rw-r--r-- | rust/src/binary_view.rs | 4 | ||||
| -rw-r--r-- | rust/src/progress.rs | 4 |
2 files changed, 8 insertions, 0 deletions
diff --git a/rust/src/binary_view.rs b/rust/src/binary_view.rs index a07ace7f..76efc40e 100644 --- a/rust/src/binary_view.rs +++ b/rust/src/binary_view.rs @@ -235,11 +235,15 @@ pub trait BinaryViewExt: BinaryViewBase { } /// Search the view using the query options. + /// + /// In the `on_match` callback return `false` to stop searching. fn search<C: FnMut(u64, &DataBuffer) -> bool>(&self, query: &SearchQuery, on_match: C) -> bool { self.search_with_progress(query, on_match, NoProgressCallback) } /// Search the view using the query options. + /// + /// In the `on_match` callback return `false` to stop searching. fn search_with_progress<P: ProgressCallback, C: FnMut(u64, &DataBuffer) -> bool>( &self, query: &SearchQuery, diff --git a/rust/src/progress.rs b/rust/src/progress.rs index 5ebf8273..e6897e68 100644 --- a/rust/src/progress.rs +++ b/rust/src/progress.rs @@ -2,6 +2,10 @@ use std::ffi::c_void; pub trait ProgressCallback: Sized { type SplitProgressType: SplitProgressBuilder; + + /// Caller function will call this to report progress. + /// + /// Return `false` to tell the caller to stop. fn progress(&mut self, progress: usize, total: usize) -> bool; unsafe extern "C" fn cb_progress_callback( |
