diff --git a/src/database/stream.rs b/src/database/stream.rs index d9b74215..a2a72e44 100644 --- a/src/database/stream.rs +++ b/src/database/stream.rs @@ -71,6 +71,7 @@ impl<'a> State<'a> { self } + #[inline] fn seek_fwd(&mut self) { if !exchange(&mut self.init, false) { self.inner.next(); @@ -79,6 +80,7 @@ impl<'a> State<'a> { } } + #[inline] fn seek_rev(&mut self) { if !exchange(&mut self.init, false) { self.inner.prev(); @@ -95,6 +97,7 @@ impl<'a> State<'a> { fn status(&self) -> Option { self.inner.status().map_err(map_err).err() } + #[inline] fn valid(&self) -> bool { self.inner.valid() } } diff --git a/src/database/stream/items.rs b/src/database/stream/items.rs index 31d5e9e8..54f8bc5c 100644 --- a/src/database/stream/items.rs +++ b/src/database/stream/items.rs @@ -28,6 +28,7 @@ impl<'a> Cursor<'a, KeyVal<'a>> for Items<'a> { fn fetch(&self) -> Option> { self.state.fetch().map(keyval_longevity) } + #[inline] fn seek(&mut self) { self.state.seek_fwd(); } } @@ -40,5 +41,6 @@ impl<'a> Stream for Items<'a> { } impl FusedStream for Items<'_> { + #[inline] fn is_terminated(&self) -> bool { !self.state.init && !self.state.valid() } } diff --git a/src/database/stream/items_rev.rs b/src/database/stream/items_rev.rs index ab57a250..26492db8 100644 --- a/src/database/stream/items_rev.rs +++ b/src/database/stream/items_rev.rs @@ -28,6 +28,7 @@ impl<'a> Cursor<'a, KeyVal<'a>> for ItemsRev<'a> { fn fetch(&self) -> Option> { self.state.fetch().map(keyval_longevity) } + #[inline] fn seek(&mut self) { self.state.seek_rev(); } } @@ -40,5 +41,6 @@ impl<'a> Stream for ItemsRev<'a> { } impl FusedStream for ItemsRev<'_> { + #[inline] fn is_terminated(&self) -> bool { !self.state.init && !self.state.valid() } } diff --git a/src/database/stream/keys.rs b/src/database/stream/keys.rs index 1c5d12e3..91884c8d 100644 --- a/src/database/stream/keys.rs +++ b/src/database/stream/keys.rs @@ -26,8 +26,10 @@ impl<'a> Keys<'a> { impl<'a> Cursor<'a, Key<'a>> for Keys<'a> { fn state(&self) -> &State<'a> { &self.state } + #[inline] fn fetch(&self) -> Option> { self.state.fetch_key().map(slice_longevity) } + #[inline] fn seek(&mut self) { self.state.seek_fwd(); } } @@ -40,5 +42,6 @@ impl<'a> Stream for Keys<'a> { } impl FusedStream for Keys<'_> { + #[inline] fn is_terminated(&self) -> bool { !self.state.init && !self.state.valid() } } diff --git a/src/database/stream/keys_rev.rs b/src/database/stream/keys_rev.rs index 26707483..59f66c2e 100644 --- a/src/database/stream/keys_rev.rs +++ b/src/database/stream/keys_rev.rs @@ -26,8 +26,10 @@ impl<'a> KeysRev<'a> { impl<'a> Cursor<'a, Key<'a>> for KeysRev<'a> { fn state(&self) -> &State<'a> { &self.state } + #[inline] fn fetch(&self) -> Option> { self.state.fetch_key().map(slice_longevity) } + #[inline] fn seek(&mut self) { self.state.seek_rev(); } } @@ -40,5 +42,6 @@ impl<'a> Stream for KeysRev<'a> { } impl FusedStream for KeysRev<'_> { + #[inline] fn is_terminated(&self) -> bool { !self.state.init && !self.state.valid() } }