Skip to content

Commit d2ea031

Browse files
committed
Revert "Use slice syntax instead of slice_to, etc."
This reverts commit 40b9f5d.
1 parent c0c6c89 commit d2ea031

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

81 files changed

+363
-331
lines changed

src/compiletest/runtest.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -874,7 +874,7 @@ fn check_error_patterns(props: &TestProps,
874874
if done { return; }
875875

876876
let missing_patterns =
877-
props.error_patterns[next_err_idx..];
877+
props.error_patterns.slice(next_err_idx, props.error_patterns.len());
878878
if missing_patterns.len() == 1u {
879879
fatal_proc_rec(format!("error pattern '{}' not found!",
880880
missing_patterns[0]).as_slice(),

src/libcollections/bitv.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -194,7 +194,7 @@ impl Bitv {
194194
if start > self.storage.len() {
195195
start = self.storage.len();
196196
}
197-
let mut iter = self.storage[start..].iter();
197+
let mut iter = self.storage.slice_from(start).iter();
198198
MaskWords {
199199
next_word: iter.next(),
200200
iter: iter,

src/libcollections/ringbuf.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -271,7 +271,7 @@ impl<T> RingBuf<T> {
271271
/// *num = *num - 2;
272272
/// }
273273
/// let b: &[_] = &[&mut 3, &mut 1, &mut 2];
274-
/// assert_eq!(buf.iter_mut().collect::<Vec<&mut int>>()[], b);
274+
/// assert_eq!(buf.iter_mut().collect::<Vec<&mut int>>().as_slice(), b);
275275
/// ```
276276
pub fn iter_mut<'a>(&'a mut self) -> MutItems<'a, T> {
277277
let start_index = raw_index(self.lo, self.elts.len(), 0);
@@ -291,7 +291,7 @@ impl<T> RingBuf<T> {
291291
} else {
292292
// Items to iterate goes from start_index to end_index:
293293
let (empty, elts) = self.elts.split_at_mut(0);
294-
let remaining1 = elts[mut start_index..end_index];
294+
let remaining1 = elts.slice_mut(start_index, end_index);
295295
MutItems { remaining1: remaining1,
296296
remaining2: empty,
297297
nelts: self.nelts }

src/libcollections/slice.rs

+23-30
Original file line numberDiff line numberDiff line change
@@ -46,13 +46,12 @@
4646
//! These traits include `ImmutableSlice`, which is defined for `&[T]` types,
4747
//! and `MutableSlice`, defined for `&mut [T]` types.
4848
//!
49-
//! An example is the `slice` method which enables slicing syntax `[a..b]` that
50-
//! returns an immutable "view" into a `Vec` or another slice from the index
51-
//! interval `[a, b)`:
49+
//! An example is the method `.slice(a, b)` that returns an immutable "view" into
50+
//! a `Vec` or another slice from the index interval `[a, b)`:
5251
//!
5352
//! ```rust
5453
//! let numbers = [0i, 1i, 2i];
55-
//! let last_numbers = numbers[1..3];
54+
//! let last_numbers = numbers.slice(1, 3);
5655
//! // last_numbers is now &[1i, 2i]
5756
//! ```
5857
//!
@@ -611,7 +610,7 @@ impl<'a,T> MutableSliceAllocating<'a, T> for &'a mut [T] {
611610

612611
#[inline]
613612
fn move_from(self, mut src: Vec<T>, start: uint, end: uint) -> uint {
614-
for (a, b) in self.iter_mut().zip(src[mut start..end].iter_mut()) {
613+
for (a, b) in self.iter_mut().zip(src.slice_mut(start, end).iter_mut()) {
615614
mem::swap(a, b);
616615
}
617616
cmp::min(self.len(), end-start)
@@ -703,7 +702,7 @@ impl<'a, T: Ord> MutableOrdSlice<T> for &'a mut [T] {
703702
self.swap(j, i-1);
704703

705704
// Step 4: Reverse the (previously) weakly decreasing part
706-
self[mut i..].reverse();
705+
self.slice_from_mut(i).reverse();
707706

708707
true
709708
}
@@ -724,7 +723,7 @@ impl<'a, T: Ord> MutableOrdSlice<T> for &'a mut [T] {
724723
}
725724

726725
// Step 2: Reverse the weakly increasing part
727-
self[mut i..].reverse();
726+
self.slice_from_mut(i).reverse();
728727

729728
// Step 3: Find the rightmost element equal to or bigger than the pivot (i-1)
730729
let mut j = self.len() - 1;
@@ -991,24 +990,24 @@ mod tests {
991990
fn test_slice() {
992991
// Test fixed length vector.
993992
let vec_fixed = [1i, 2, 3, 4];
994-
let v_a = vec_fixed[1u..vec_fixed.len()].to_vec();
993+
let v_a = vec_fixed.slice(1u, vec_fixed.len()).to_vec();
995994
assert_eq!(v_a.len(), 3u);
996995
let v_a = v_a.as_slice();
997996
assert_eq!(v_a[0], 2);
998997
assert_eq!(v_a[1], 3);
999998
assert_eq!(v_a[2], 4);
1000999

10011000
// Test on stack.
1002-
let vec_stack: &[_] = &[1i, 2, 3];
1003-
let v_b = vec_stack[1u..3u].to_vec();
1001+
let vec_stack = &[1i, 2, 3];
1002+
let v_b = vec_stack.slice(1u, 3u).to_vec();
10041003
assert_eq!(v_b.len(), 2u);
10051004
let v_b = v_b.as_slice();
10061005
assert_eq!(v_b[0], 2);
10071006
assert_eq!(v_b[1], 3);
10081007

10091008
// Test `Box<[T]>`
10101009
let vec_unique = vec![1i, 2, 3, 4, 5, 6];
1011-
let v_d = vec_unique[1u..6u].to_vec();
1010+
let v_d = vec_unique.slice(1u, 6u).to_vec();
10121011
assert_eq!(v_d.len(), 5u);
10131012
let v_d = v_d.as_slice();
10141013
assert_eq!(v_d[0], 2);
@@ -1021,21 +1020,21 @@ mod tests {
10211020
#[test]
10221021
fn test_slice_from() {
10231022
let vec: &[int] = &[1, 2, 3, 4];
1024-
assert_eq!(vec[0..], vec);
1023+
assert_eq!(vec.slice_from(0), vec);
10251024
let b: &[int] = &[3, 4];
1026-
assert_eq!(vec[2..], b);
1025+
assert_eq!(vec.slice_from(2), b);
10271026
let b: &[int] = &[];
1028-
assert_eq!(vec[4..], b);
1027+
assert_eq!(vec.slice_from(4), b);
10291028
}
10301029

10311030
#[test]
10321031
fn test_slice_to() {
10331032
let vec: &[int] = &[1, 2, 3, 4];
1034-
assert_eq!(vec[..4], vec);
1033+
assert_eq!(vec.slice_to(4), vec);
10351034
let b: &[int] = &[1, 2];
1036-
assert_eq!(vec[..2], b);
1035+
assert_eq!(vec.slice_to(2), b);
10371036
let b: &[int] = &[];
1038-
assert_eq!(vec[..0], b);
1037+
assert_eq!(vec.slice_to(0), b);
10391038
}
10401039

10411040

@@ -1976,7 +1975,7 @@ mod tests {
19761975
assert!(a == [7i,2,3,4]);
19771976
let mut a = [1i,2,3,4,5];
19781977
let b = vec![5i,6,7,8,9,0];
1979-
assert_eq!(a[mut 2..4].move_from(b,1,6), 2);
1978+
assert_eq!(a.slice_mut(2,4).move_from(b,1,6), 2);
19801979
assert!(a == [1i,2,6,7,5]);
19811980
}
19821981

@@ -1996,7 +1995,7 @@ mod tests {
19961995
#[test]
19971996
fn test_reverse_part() {
19981997
let mut values = [1i,2,3,4,5];
1999-
values[mut 1..4].reverse();
1998+
values.slice_mut(1, 4).reverse();
20001999
assert!(values == [1,4,3,2,5]);
20012000
}
20022001

@@ -2043,9 +2042,9 @@ mod tests {
20432042
fn test_bytes_set_memory() {
20442043
use slice::bytes::MutableByteVector;
20452044
let mut values = [1u8,2,3,4,5];
2046-
values[mut 0..5].set_memory(0xAB);
2045+
values.slice_mut(0,5).set_memory(0xAB);
20472046
assert!(values == [0xAB, 0xAB, 0xAB, 0xAB, 0xAB]);
2048-
values[mut 2..4].set_memory(0xFF);
2047+
values.slice_mut(2,4).set_memory(0xFF);
20492048
assert!(values == [0xAB, 0xAB, 0xFF, 0xFF, 0xAB]);
20502049
}
20512050

@@ -2071,18 +2070,12 @@ mod tests {
20712070
let mut values = [1u8,2,3,4,5];
20722071
{
20732072
let (left, right) = values.split_at_mut(2);
2074-
{
2075-
let left: &[_] = left;
2076-
assert!(left[0..left.len()] == [1, 2]);
2077-
}
2073+
assert!(left.slice(0, left.len()) == [1, 2]);
20782074
for p in left.iter_mut() {
20792075
*p += 1;
20802076
}
20812077

2082-
{
2083-
let right: &[_] = right;
2084-
assert!(right[0..right.len()] == [3, 4, 5]);
2085-
}
2078+
assert!(right.slice(0, right.len()) == [3, 4, 5]);
20862079
for p in right.iter_mut() {
20872080
*p += 2;
20882081
}
@@ -2106,7 +2099,7 @@ mod tests {
21062099
}
21072100
assert_eq!(cnt, 3);
21082101

2109-
for f in v[1..3].iter() {
2102+
for f in v.slice(1, 3).iter() {
21102103
assert!(*f == Foo);
21112104
cnt += 1;
21122105
}

src/libcollections/str.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -1680,7 +1680,7 @@ mod tests {
16801680
let mut bytes = [0u8, ..4];
16811681
for c in range(0u32, 0x110000).filter_map(|c| ::core::char::from_u32(c)) {
16821682
let len = c.encode_utf8(bytes).unwrap_or(0);
1683-
let s = ::core::str::from_utf8(bytes[..len]).unwrap();
1683+
let s = ::core::str::from_utf8(bytes.slice_to(len)).unwrap();
16841684
if Some(c) != s.chars().next() {
16851685
fail!("character {:x}={} does not decode correctly", c as u32, c);
16861686
}
@@ -1692,7 +1692,7 @@ mod tests {
16921692
let mut bytes = [0u8, ..4];
16931693
for c in range(0u32, 0x110000).filter_map(|c| ::core::char::from_u32(c)) {
16941694
let len = c.encode_utf8(bytes).unwrap_or(0);
1695-
let s = ::core::str::from_utf8(bytes[..len]).unwrap();
1695+
let s = ::core::str::from_utf8(bytes.slice_to(len)).unwrap();
16961696
if Some(c) != s.chars().rev().next() {
16971697
fail!("character {:x}={} does not decode correctly", c as u32, c);
16981698
}

src/libcollections/string.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ impl String {
160160

161161
if i > 0 {
162162
unsafe {
163-
res.as_mut_vec().push_all(v.[..i])
163+
res.as_mut_vec().push_all(v.slice_to(i))
164164
};
165165
}
166166

@@ -177,7 +177,7 @@ impl String {
177177
macro_rules! error(() => ({
178178
unsafe {
179179
if subseqidx != i_ {
180-
res.as_mut_vec().push_all(vv[subseqidx..i_]);
180+
res.as_mut_vec().push_all(v.slice(subseqidx, i_));
181181
}
182182
subseqidx = i;
183183
res.as_mut_vec().push_all(REPLACEMENT);
@@ -246,7 +246,7 @@ impl String {
246246
}
247247
if subseqidx < total {
248248
unsafe {
249-
res.as_mut_vec().push_all(v[subseqidx..total])
249+
res.as_mut_vec().push_all(v.slice(subseqidx, total))
250250
};
251251
}
252252
Owned(res.into_string())

src/libcollections/trie.rs

+3-4
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ use core::fmt;
2424
use core::fmt::Show;
2525
use core::mem::zeroed;
2626
use core::mem;
27-
use core::ops::{Slice,SliceMut};
2827
use core::uint;
2928
use core::iter;
3029
use std::hash::{Writer, Hash};
@@ -379,7 +378,7 @@ macro_rules! bound {
379378
}
380379
};
381380
// push to the stack.
382-
it.stack[it.length] = children.$slice_from(&slice_idx).$iter();
381+
it.stack[it.length] = children.$slice_from(slice_idx).$iter();
383382
it.length += 1;
384383
if ret { return it }
385384
})
@@ -393,7 +392,7 @@ impl<T> TrieMap<T> {
393392
fn bound<'a>(&'a self, key: uint, upper: bool) -> Entries<'a, T> {
394393
bound!(Entries, self = self,
395394
key = key, is_upper = upper,
396-
slice_from = slice_from_, iter = iter,
395+
slice_from = slice_from, iter = iter,
397396
mutability = )
398397
}
399398

@@ -435,7 +434,7 @@ impl<T> TrieMap<T> {
435434
fn bound_mut<'a>(&'a mut self, key: uint, upper: bool) -> MutEntries<'a, T> {
436435
bound!(MutEntries, self = self,
437436
key = key, is_upper = upper,
438-
slice_from = slice_from_mut_, iter = iter_mut,
437+
slice_from = slice_from_mut, iter = iter_mut,
439438
mutability = mut)
440439
}
441440

0 commit comments

Comments
 (0)