Skip to content

Commit 29377ea

Browse files
committed
Fallout from stabilization
1 parent 6e1879e commit 29377ea

Some content is hidden

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

78 files changed

+411
-426
lines changed

src/compiletest/runtest.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ use std::io::process;
3232
use std::io::timer;
3333
use std::io;
3434
use std::os;
35+
use std::iter::repeat;
3536
use std::str;
3637
use std::string::String;
3738
use std::thread::Thread;
@@ -976,8 +977,7 @@ fn check_expected_errors(expected_errors: Vec<errors::ExpectedError> ,
976977
proc_res: &ProcRes) {
977978

978979
// true if we found the error in question
979-
let mut found_flags = Vec::from_elem(
980-
expected_errors.len(), false);
980+
let mut found_flags: Vec<_> = repeat(false).take(expected_errors.len()).collect();
981981

982982
if proc_res.status.success() {
983983
fatal("process did not return an error status");
@@ -1337,7 +1337,7 @@ fn make_run_args(config: &Config, props: &TestProps, testfile: &Path) ->
13371337
// Add the arguments in the run_flags directive
13381338
args.extend(split_maybe_args(&props.run_flags).into_iter());
13391339

1340-
let prog = args.remove(0).unwrap();
1340+
let prog = args.remove(0);
13411341
return ProcArgs {
13421342
prog: prog,
13431343
args: args,

src/liballoc/arc.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ use heap::deallocate;
9595
/// use std::thread::Thread;
9696
///
9797
/// fn main() {
98-
/// let numbers = Vec::from_fn(100, |i| i as f32);
98+
/// let numbers: Vec<_> = range(0, 100u32).map(|i| i as f32).collect();
9999
/// let shared_numbers = Arc::new(numbers);
100100
///
101101
/// for _ in range(0u, 10) {

src/libcollections/binary_heap.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@
6666
//! // for a simpler implementation.
6767
//! fn shortest_path(adj_list: &Vec<Vec<Edge>>, start: uint, goal: uint) -> uint {
6868
//! // dist[node] = current shortest distance from `start` to `node`
69-
//! let mut dist = Vec::from_elem(adj_list.len(), uint::MAX);
69+
//! let mut dist: Vec<_> = range(0, adj_list.len()).map(|_| uint::MAX).collect();
7070
//!
7171
//! let mut heap = BinaryHeap::new();
7272
//!

src/libcollections/bit.rs

+5-5
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ use core::prelude::*;
8585
use core::cmp;
8686
use core::default::Default;
8787
use core::fmt;
88-
use core::iter::{Cloned, Chain, Enumerate, Repeat, Skip, Take};
88+
use core::iter::{Cloned, Chain, Enumerate, Repeat, Skip, Take, repeat};
8989
use core::iter;
9090
use core::num::Int;
9191
use core::slice::{Iter, IterMut};
@@ -267,7 +267,7 @@ impl Bitv {
267267
pub fn from_elem(nbits: uint, bit: bool) -> Bitv {
268268
let nblocks = blocks_for_bits(nbits);
269269
let mut bitv = Bitv {
270-
storage: Vec::from_elem(nblocks, if bit { !0u32 } else { 0u32 }),
270+
storage: repeat(if bit { !0u32 } else { 0u32 }).take(nblocks).collect(),
271271
nbits: nbits
272272
};
273273
bitv.fix_last_block();
@@ -651,7 +651,7 @@ impl Bitv {
651651

652652
let len = self.nbits/8 +
653653
if self.nbits % 8 == 0 { 0 } else { 1 };
654-
Vec::from_fn(len, |i|
654+
range(0, len).map(|i|
655655
bit(self, i, 0) |
656656
bit(self, i, 1) |
657657
bit(self, i, 2) |
@@ -660,7 +660,7 @@ impl Bitv {
660660
bit(self, i, 5) |
661661
bit(self, i, 6) |
662662
bit(self, i, 7)
663-
)
663+
).collect()
664664
}
665665

666666
/// Deprecated: Use `iter().collect()`.
@@ -834,7 +834,7 @@ impl Bitv {
834834
// Allocate new words, if needed
835835
if new_nblocks > self.storage.len() {
836836
let to_add = new_nblocks - self.storage.len();
837-
self.storage.grow(to_add, full_value);
837+
self.storage.extend(repeat(full_value).take(to_add));
838838
}
839839

840840
// Adjust internal bit count

src/libcollections/btree/node.rs

+33-33
Original file line numberDiff line numberDiff line change
@@ -554,10 +554,10 @@ impl <K, V> Node<K, V> {
554554
let node = mem::replace(left_and_out, unsafe { Node::new_internal(capacity_from_b(b)) });
555555
left_and_out._len = 1;
556556
unsafe {
557-
ptr::write(left_and_out.keys_mut().unsafe_mut(0), key);
558-
ptr::write(left_and_out.vals_mut().unsafe_mut(0), value);
559-
ptr::write(left_and_out.edges_mut().unsafe_mut(0), node);
560-
ptr::write(left_and_out.edges_mut().unsafe_mut(1), right);
557+
ptr::write(left_and_out.keys_mut().get_unchecked_mut(0), key);
558+
ptr::write(left_and_out.vals_mut().get_unchecked_mut(0), value);
559+
ptr::write(left_and_out.edges_mut().get_unchecked_mut(0), node);
560+
ptr::write(left_and_out.edges_mut().get_unchecked_mut(1), right);
561561
}
562562
}
563563

@@ -636,7 +636,7 @@ impl<'a, K: 'a, V: 'a> Handle<&'a Node<K, V>, handle::Edge, handle::Internal> {
636636
/// making it more suitable for moving down a chain of nodes.
637637
pub fn into_edge(self) -> &'a Node<K, V> {
638638
unsafe {
639-
self.node.edges().unsafe_get(self.index)
639+
self.node.edges().get_unchecked(self.index)
640640
}
641641
}
642642
}
@@ -647,7 +647,7 @@ impl<'a, K: 'a, V: 'a> Handle<&'a mut Node<K, V>, handle::Edge, handle::Internal
647647
/// `edge_mut`, making it more suitable for moving down a chain of nodes.
648648
pub fn into_edge_mut(self) -> &'a mut Node<K, V> {
649649
unsafe {
650-
self.node.edges_mut().unsafe_mut(self.index)
650+
self.node.edges_mut().get_unchecked_mut(self.index)
651651
}
652652
}
653653
}
@@ -721,7 +721,7 @@ impl<K, V, NodeRef: DerefMut<Node<K, V>>> Handle<NodeRef, handle::Edge, handle::
721721
/// confused with `node`, which references the parent node of what is returned here.
722722
pub fn edge_mut(&mut self) -> &mut Node<K, V> {
723723
unsafe {
724-
self.node.edges_mut().unsafe_mut(self.index)
724+
self.node.edges_mut().get_unchecked_mut(self.index)
725725
}
726726
}
727727

@@ -829,8 +829,8 @@ impl<'a, K: 'a, V: 'a, NodeType> Handle<&'a Node<K, V>, handle::KV, NodeType> {
829829
let (keys, vals) = self.node.as_slices();
830830
unsafe {
831831
(
832-
keys.unsafe_get(self.index),
833-
vals.unsafe_get(self.index)
832+
keys.get_unchecked(self.index),
833+
vals.get_unchecked(self.index)
834834
)
835835
}
836836
}
@@ -844,8 +844,8 @@ impl<'a, K: 'a, V: 'a, NodeType> Handle<&'a mut Node<K, V>, handle::KV, NodeType
844844
let (keys, vals) = self.node.as_slices_mut();
845845
unsafe {
846846
(
847-
keys.unsafe_mut(self.index),
848-
vals.unsafe_mut(self.index)
847+
keys.get_unchecked_mut(self.index),
848+
vals.get_unchecked_mut(self.index)
849849
)
850850
}
851851
}
@@ -869,14 +869,14 @@ impl<'a, K: 'a, V: 'a, NodeRef: Deref<Node<K, V>> + 'a, NodeType> Handle<NodeRef
869869
// /// reference with a lifetime as large as `into_kv_mut`, but it also does not consume the
870870
// /// handle.
871871
// pub fn key(&'a self) -> &'a K {
872-
// unsafe { self.node.keys().unsafe_get(self.index) }
872+
// unsafe { self.node.keys().get_unchecked(self.index) }
873873
// }
874874
//
875875
// /// Returns a reference to the value pointed-to by this handle. This doesn't return a
876876
// /// reference with a lifetime as large as `into_kv_mut`, but it also does not consume the
877877
// /// handle.
878878
// pub fn val(&'a self) -> &'a V {
879-
// unsafe { self.node.vals().unsafe_get(self.index) }
879+
// unsafe { self.node.vals().get_unchecked(self.index) }
880880
// }
881881
}
882882

@@ -886,14 +886,14 @@ impl<'a, K: 'a, V: 'a, NodeRef: DerefMut<Node<K, V>> + 'a, NodeType> Handle<Node
886886
/// reference with a lifetime as large as `into_kv_mut`, but it also does not consume the
887887
/// handle.
888888
pub fn key_mut(&'a mut self) -> &'a mut K {
889-
unsafe { self.node.keys_mut().unsafe_mut(self.index) }
889+
unsafe { self.node.keys_mut().get_unchecked_mut(self.index) }
890890
}
891891

892892
/// Returns a mutable reference to the value pointed-to by this handle. This doesn't return a
893893
/// reference with a lifetime as large as `into_kv_mut`, but it also does not consume the
894894
/// handle.
895895
pub fn val_mut(&'a mut self) -> &'a mut V {
896-
unsafe { self.node.vals_mut().unsafe_mut(self.index) }
896+
unsafe { self.node.vals_mut().get_unchecked_mut(self.index) }
897897
}
898898
}
899899

@@ -1077,7 +1077,7 @@ impl<K, V> Node<K, V> {
10771077
debug_assert!(!self.is_leaf());
10781078

10791079
unsafe {
1080-
let ret = ptr::read(self.edges().unsafe_get(0));
1080+
let ret = ptr::read(self.edges().get_unchecked(0));
10811081
self.destroy();
10821082
ptr::write(self, ret);
10831083
}
@@ -1091,8 +1091,8 @@ impl<K, V> Node<K, V> {
10911091
unsafe fn push_kv(&mut self, key: K, val: V) {
10921092
let len = self.len();
10931093

1094-
ptr::write(self.keys_mut().unsafe_mut(len), key);
1095-
ptr::write(self.vals_mut().unsafe_mut(len), val);
1094+
ptr::write(self.keys_mut().get_unchecked_mut(len), key);
1095+
ptr::write(self.vals_mut().get_unchecked_mut(len), val);
10961096

10971097
self._len += 1;
10981098
}
@@ -1102,7 +1102,7 @@ impl<K, V> Node<K, V> {
11021102
unsafe fn push_edge(&mut self, edge: Node<K, V>) {
11031103
let len = self.len();
11041104

1105-
ptr::write(self.edges_mut().unsafe_mut(len), edge);
1105+
ptr::write(self.edges_mut().get_unchecked_mut(len), edge);
11061106
}
11071107

11081108
// This must be followed by insert_edge on an internal node.
@@ -1119,12 +1119,12 @@ impl<K, V> Node<K, V> {
11191119
self.len() - index
11201120
);
11211121

1122-
ptr::write(self.keys_mut().unsafe_mut(index), key);
1123-
ptr::write(self.vals_mut().unsafe_mut(index), val);
1122+
ptr::write(self.keys_mut().get_unchecked_mut(index), key);
1123+
ptr::write(self.vals_mut().get_unchecked_mut(index), val);
11241124

11251125
self._len += 1;
11261126

1127-
self.vals_mut().unsafe_mut(index)
1127+
self.vals_mut().get_unchecked_mut(index)
11281128
}
11291129

11301130
// This can only be called immediately after a call to insert_kv.
@@ -1135,14 +1135,14 @@ impl<K, V> Node<K, V> {
11351135
self.edges().as_ptr().offset(index as int),
11361136
self.len() - index
11371137
);
1138-
ptr::write(self.edges_mut().unsafe_mut(index), edge);
1138+
ptr::write(self.edges_mut().get_unchecked_mut(index), edge);
11391139
}
11401140

11411141
// This must be followed by pop_edge on an internal node.
11421142
#[inline]
11431143
unsafe fn pop_kv(&mut self) -> (K, V) {
1144-
let key = ptr::read(self.keys().unsafe_get(self.len() - 1));
1145-
let val = ptr::read(self.vals().unsafe_get(self.len() - 1));
1144+
let key = ptr::read(self.keys().get_unchecked(self.len() - 1));
1145+
let val = ptr::read(self.vals().get_unchecked(self.len() - 1));
11461146

11471147
self._len -= 1;
11481148

@@ -1152,16 +1152,16 @@ impl<K, V> Node<K, V> {
11521152
// This can only be called immediately after a call to pop_kv.
11531153
#[inline]
11541154
unsafe fn pop_edge(&mut self) -> Node<K, V> {
1155-
let edge = ptr::read(self.edges().unsafe_get(self.len() + 1));
1155+
let edge = ptr::read(self.edges().get_unchecked(self.len() + 1));
11561156

11571157
edge
11581158
}
11591159

11601160
// This must be followed by remove_edge on an internal node.
11611161
#[inline]
11621162
unsafe fn remove_kv(&mut self, index: uint) -> (K, V) {
1163-
let key = ptr::read(self.keys().unsafe_get(index));
1164-
let val = ptr::read(self.vals().unsafe_get(index));
1163+
let key = ptr::read(self.keys().get_unchecked(index));
1164+
let val = ptr::read(self.vals().get_unchecked(index));
11651165

11661166
ptr::copy_memory(
11671167
self.keys_mut().as_mut_ptr().offset(index as int),
@@ -1182,7 +1182,7 @@ impl<K, V> Node<K, V> {
11821182
// This can only be called immediately after a call to remove_kv.
11831183
#[inline]
11841184
unsafe fn remove_edge(&mut self, index: uint) -> Node<K, V> {
1185-
let edge = ptr::read(self.edges().unsafe_get(index));
1185+
let edge = ptr::read(self.edges().get_unchecked(index));
11861186

11871187
ptr::copy_memory(
11881188
self.edges_mut().as_mut_ptr().offset(index as int),
@@ -1229,8 +1229,8 @@ impl<K, V> Node<K, V> {
12291229
);
12301230
}
12311231

1232-
let key = ptr::read(self.keys().unsafe_get(right_offset - 1));
1233-
let val = ptr::read(self.vals().unsafe_get(right_offset - 1));
1232+
let key = ptr::read(self.keys().get_unchecked(right_offset - 1));
1233+
let val = ptr::read(self.vals().get_unchecked(right_offset - 1));
12341234

12351235
self._len = right_offset - 1;
12361236

@@ -1249,8 +1249,8 @@ impl<K, V> Node<K, V> {
12491249
let old_len = self.len();
12501250
self._len += right.len() + 1;
12511251

1252-
ptr::write(self.keys_mut().unsafe_mut(old_len), key);
1253-
ptr::write(self.vals_mut().unsafe_mut(old_len), val);
1252+
ptr::write(self.keys_mut().get_unchecked_mut(old_len), key);
1253+
ptr::write(self.vals_mut().get_unchecked_mut(old_len), val);
12541254

12551255
ptr::copy_nonoverlapping_memory(
12561256
self.keys_mut().as_mut_ptr().offset(old_len as int + 1),

src/libcollections/dlist.rs

+4-2
Original file line numberDiff line numberDiff line change
@@ -1290,8 +1290,10 @@ mod tests {
12901290
v.pop();
12911291
}
12921292
1 => {
1293-
m.pop_front();
1294-
v.remove(0);
1293+
if !v.is_empty() {
1294+
m.pop_front();
1295+
v.remove(0);
1296+
}
12951297
}
12961298
2 | 4 => {
12971299
m.push_front(-i);

src/libcollections/lib.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -128,8 +128,8 @@ mod prelude {
128128
pub use unicode::char::UnicodeChar;
129129

130130
// from collections.
131-
pub use slice::{CloneSliceExt, VectorVector};
132-
pub use str::{IntoMaybeOwned, StrVector};
131+
pub use slice::{CloneSliceExt, SliceConcatExt};
132+
pub use str::IntoMaybeOwned;
133133
pub use string::{String, ToString};
134134
pub use vec::Vec;
135135
}

src/libcollections/ring_buf.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -1137,7 +1137,7 @@ impl<'a, T> Iterator<&'a T> for Iter<'a, T> {
11371137
}
11381138
let tail = self.tail;
11391139
self.tail = wrap_index(self.tail + 1, self.ring.len());
1140-
unsafe { Some(self.ring.unsafe_get(tail)) }
1140+
unsafe { Some(self.ring.get_unchecked(tail)) }
11411141
}
11421142

11431143
#[inline]
@@ -1154,7 +1154,7 @@ impl<'a, T> DoubleEndedIterator<&'a T> for Iter<'a, T> {
11541154
return None;
11551155
}
11561156
self.head = wrap_index(self.head - 1, self.ring.len());
1157-
unsafe { Some(self.ring.unsafe_get(self.head)) }
1157+
unsafe { Some(self.ring.get_unchecked(self.head)) }
11581158
}
11591159
}
11601160

@@ -1173,7 +1173,7 @@ impl<'a, T> RandomAccessIterator<&'a T> for Iter<'a, T> {
11731173
None
11741174
} else {
11751175
let idx = wrap_index(self.tail + j, self.ring.len());
1176-
unsafe { Some(self.ring.unsafe_get(idx)) }
1176+
unsafe { Some(self.ring.get_unchecked(idx)) }
11771177
}
11781178
}
11791179
}

0 commit comments

Comments
 (0)