mirror of https://github.com/spacejam/sled
Merge branch 'main' into tyler_simplify_before_rewrite
This commit is contained in:
commit
b19e34db30
|
@ -9,7 +9,7 @@
|
|||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/sponsors/spacejam">buy a coffee for us to convert into databases</a></td>
|
||||
<td><a href="https://github.com/sponsors/spacejam"><img src="https://img.shields.io/opencollective/backers/sled"></a></td>
|
||||
<td><a href="https://github.com/sponsors/spacejam"><img src="https://img.shields.io/github/sponsors/spacejam"></a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://docs.rs/sled">documentation</a></td>
|
||||
|
|
28
src/node.rs
28
src/node.rs
|
@ -412,10 +412,9 @@ impl<'a> Iterator for Iter<'a> {
|
|||
(Some((_, Some(_))), None) => {
|
||||
log::trace!("src/node.rs:114");
|
||||
log::trace!("iterator returning {:?}", self.next_a);
|
||||
return self
|
||||
.next_a
|
||||
.take()
|
||||
.map(|(k, v)| (KeyRef::Slice(k), v.unwrap().as_ref()));
|
||||
return self.next_a.take().map(|(k, v)| {
|
||||
(KeyRef::Slice(k), v.unwrap().as_ref())
|
||||
});
|
||||
}
|
||||
(Some((k_a, v_a_opt)), Some((k_b, _))) => {
|
||||
let cmp = KeyRef::Slice(k_a).cmp(&k_b);
|
||||
|
@ -512,10 +511,9 @@ impl<'a> DoubleEndedIterator for Iter<'a> {
|
|||
(Some((_, Some(_))), None) => {
|
||||
log::trace!("src/node.rs:483");
|
||||
log::trace!("iterator returning {:?}", self.next_back_a);
|
||||
return self
|
||||
.next_back_a
|
||||
.take()
|
||||
.map(|(k, v)| (KeyRef::Slice(k), v.unwrap().as_ref()));
|
||||
return self.next_back_a.take().map(|(k, v)| {
|
||||
(KeyRef::Slice(k), v.unwrap().as_ref())
|
||||
});
|
||||
}
|
||||
(Some((k_a, Some(_))), Some((k_b, _))) if k_b > *k_a => {
|
||||
log::trace!("src/node.rs:508");
|
||||
|
@ -524,20 +522,18 @@ impl<'a> DoubleEndedIterator for Iter<'a> {
|
|||
}
|
||||
(Some((k_a, Some(_))), Some((k_b, _))) if k_b < *k_a => {
|
||||
log::trace!("iterator returning {:?}", self.next_back_a);
|
||||
return self
|
||||
.next_back_a
|
||||
.take()
|
||||
.map(|(k, v)| (KeyRef::Slice(k), v.unwrap().as_ref()));
|
||||
return self.next_back_a.take().map(|(k, v)| {
|
||||
(KeyRef::Slice(k), v.unwrap().as_ref())
|
||||
});
|
||||
}
|
||||
(Some((k_a, Some(_))), Some((k_b, _))) if k_b == *k_a => {
|
||||
// prefer overlay, discard node value
|
||||
self.next_back_b.take();
|
||||
log::trace!("src/node.rs:520");
|
||||
log::trace!("iterator returning {:?}", self.next_back_a);
|
||||
return self
|
||||
.next_back_a
|
||||
.take()
|
||||
.map(|(k, v)| (KeyRef::Slice(k), v.unwrap().as_ref()));
|
||||
return self.next_back_a.take().map(|(k, v)| {
|
||||
(KeyRef::Slice(k), v.unwrap().as_ref())
|
||||
});
|
||||
}
|
||||
_ => unreachable!(
|
||||
"did not expect combination a: {:?} b: {:?}",
|
||||
|
|
Loading…
Reference in New Issue