Update to use newer Rust features.

This re-introduces several cleanups that we previously deferred for not
supporting Rust 1.25.
This commit is contained in:
Dan Gohman
2018-10-24 11:10:20 -07:00
parent 62e55f63e6
commit 9471c06da4
11 changed files with 14 additions and 33 deletions

View File

@@ -105,7 +105,7 @@ impl<F: Forest> NodeData<F> {
let size = usize::from(size);
// TODO: We could probably use `get_unchecked()` here since `size` is always in
// range.
(&keys[0..size], &tree[0..size + 1])
(&keys[0..size], &tree[0..=size])
}
_ => panic!("Expected inner node"),
}
@@ -175,10 +175,10 @@ impl<F: Forest> NodeData<F> {
debug_assert!(sz <= keys.len());
debug_assert!(index <= sz, "Can't insert at {} with {} keys", index, sz);
if let Some(ks) = keys.get_mut(0..sz + 1) {
if let Some(ks) = keys.get_mut(0..=sz) {
*size = (sz + 1) as u8;
slice_insert(ks, index, key);
slice_insert(&mut tree[1..sz + 2], index, node);
slice_insert(&mut tree[1..=sz + 1], index, node);
true
} else {
false
@@ -203,10 +203,10 @@ impl<F: Forest> NodeData<F> {
debug_assert!(sz <= keys.len());
debug_assert!(index <= sz);
if let Some(ks) = keys.get_mut(0..sz + 1) {
if let Some(ks) = keys.get_mut(0..=sz) {
*size = (sz + 1) as u8;
slice_insert(ks, index, key);
slice_insert(&mut vals[0..sz + 1], index, value);
slice_insert(&mut vals[0..=sz], index, value);
true
} else {
false