diff options
Diffstat (limited to 'database/src/backends/mod.rs')
| -rw-r--r-- | database/src/backends/mod.rs | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/database/src/backends/mod.rs b/database/src/backends/mod.rs index a95b00a..dd028f4 100644 --- a/database/src/backends/mod.rs +++ b/database/src/backends/mod.rs @@ -25,8 +25,11 @@ pub trait WriteTransaction: ReadTransaction { } pub trait ReadTransaction { fn get(&self, key: &[u8]) -> Result<Option<Vec<u8>>>; - fn next(&self, key: &[u8]) -> Result<Option<Vec<u8>>>; - fn prev(&self, key: &[u8]) -> Result<Option<Vec<u8>>>; + fn iter<'a>( + &'a self, + key: &[u8], + reverse: bool, + ) -> Result<Box<dyn Iterator<Item = Result<Vec<u8>>> + 'a>>; } pub fn create_backend(driver: &str, path: &Path) -> Result<Arc<dyn Db>> { |