Auto merge of #51033 - coryshrmn:master, r=dtolnay

stabilize RangeBounds collections_range #30877

The FCP for #30877 closed last month, with the decision to:
1. move from `collections::range::RangeArgument` to `ops::RangeBounds`, and
2. rename `start()` and `end()` to `start_bounds()` and `end_bounds()`.

Simon Sapin already moved it to `ops::RangeBounds` in #49163.

I renamed the functions, and removed the old `collections::range::RangeArgument` alias.

This is my first Rust PR, please let me know if I can improve anything. This passes all tests for me, except the `clippy` tool (which uses `RangeArgument::start()`).

I considered deprecating `start()` and `end()` instead of removing them, but the contribution guidelines indicate we can break `clippy` temporarily. I thought it was best to remove the functions, since we're worried about name collisions with `Range::start` and `end`.

Closes #30877.
This commit is contained in:
bors 2018-05-25 22:18:27 +00:00
commit 07c415c215
8 changed files with 68 additions and 108 deletions

View file

@ -119,12 +119,12 @@ impl<A: Array> ArrayVec<A> {
// the hole, and the vector length is restored to the new length.
//
let len = self.len();
let start = match range.start() {
let start = match range.start_bound() {
Included(&n) => n,
Excluded(&n) => n + 1,
Unbounded => 0,
};
let end = match range.end() {
let end = match range.end_bound() {
Included(&n) => n + 1,
Excluded(&n) => n,
Unbounded => len,

View file

@ -215,7 +215,7 @@ impl<K: Ord, V> SortedMap<K, V> {
fn range_slice_indices<R>(&self, range: R) -> (usize, usize)
where R: RangeBounds<K>
{
let start = match range.start() {
let start = match range.start_bound() {
Bound::Included(ref k) => {
match self.lookup_index_for(k) {
Ok(index) | Err(index) => index
@ -230,7 +230,7 @@ impl<K: Ord, V> SortedMap<K, V> {
Bound::Unbounded => 0,
};
let end = match range.end() {
let end = match range.end_bound() {
Bound::Included(ref k) => {
match self.lookup_index_for(k) {
Ok(index) => index + 1,