Deprecation fallout in libcollections

This commit is contained in:
Aaron Turon 2014-08-11 16:47:46 -07:00
parent 0b5204f55e
commit f77cabecbb
10 changed files with 43 additions and 40 deletions

View File

@ -264,7 +264,7 @@ impl Bitv {
assert!(i < self.nbits); assert!(i < self.nbits);
let w = i / uint::BITS; let w = i / uint::BITS;
let b = i % uint::BITS; let b = i % uint::BITS;
let x = self.storage.get(w) & (1 << b); let x = self.storage[w] & (1 << b);
x != 0 x != 0
} }
@ -289,8 +289,8 @@ impl Bitv {
let w = i / uint::BITS; let w = i / uint::BITS;
let b = i % uint::BITS; let b = i % uint::BITS;
let flag = 1 << b; let flag = 1 << b;
*self.storage.get_mut(w) = if x { *self.storage.get(w) | flag } *self.storage.get_mut(w) = if x { self.storage[w] | flag }
else { *self.storage.get(w) & !flag }; else { self.storage[w] & !flag };
} }
/// Set all bits to 1. /// Set all bits to 1.
@ -827,7 +827,7 @@ impl Clone for Bitv {
fn clone_from(&mut self, source: &Bitv) { fn clone_from(&mut self, source: &Bitv) {
self.nbits = source.nbits; self.nbits = source.nbits;
self.storage.reserve(source.storage.len()); self.storage.reserve(source.storage.len());
for (i, w) in self.storage.mut_iter().enumerate() { *w = *source.storage.get(i); } for (i, w) in self.storage.mut_iter().enumerate() { *w = source.storage[i]; }
} }
} }
@ -1146,7 +1146,7 @@ impl BitvSet {
self_bitv.reserve(other_bitv.capacity()); self_bitv.reserve(other_bitv.capacity());
// Apply values // Apply values
for (i, w) in other_bitv.mask_words(0) { for (i, w) in other_bitv.mask_words(0) {
let old = *self_bitv.storage.get(i); let old = self_bitv.storage[i];
let new = f(old, w); let new = f(old, w);
*self_bitv.storage.get_mut(i) = new; *self_bitv.storage.get_mut(i) = new;
} }
@ -1573,10 +1573,10 @@ impl<'a> Iterator<uint> for TwoBitPositions<'a> {
// one Bitv might be longer than the other // one Bitv might be longer than the other
let word_idx = self.next_idx / uint::BITS; let word_idx = self.next_idx / uint::BITS;
let w1 = if word_idx < s_bitv.storage.len() { let w1 = if word_idx < s_bitv.storage.len() {
*s_bitv.storage.get(word_idx) s_bitv.storage[word_idx]
} else { 0 }; } else { 0 };
let w2 = if word_idx < o_bitv.storage.len() { let w2 = if word_idx < o_bitv.storage.len() {
*o_bitv.storage.get(word_idx) o_bitv.storage[word_idx]
} else { 0 }; } else { 0 };
self.current_word = (self.merge)(w1, w2); self.current_word = (self.merge)(w1, w2);
} }

View File

@ -299,14 +299,14 @@ impl<K: Ord, V> Leaf<K, V> {
midpoint = 0; midpoint = 0;
} }
loop { loop {
let order = self.elts.get(midpoint).key.cmp(&k); let order = self.elts[midpoint].key.cmp(&k);
match order { match order {
Equal => { Equal => {
return None; return None;
} }
Greater => { Greater => {
if midpoint > 0 { if midpoint > 0 {
if self.elts.get(midpoint - 1).key.cmp(&k) == Less { if self.elts[midpoint - 1].key.cmp(&k) == Less {
return Some(midpoint); return Some(midpoint);
} }
else { else {
@ -322,7 +322,7 @@ impl<K: Ord, V> Leaf<K, V> {
} }
Less => { Less => {
if midpoint + 1 < self.elts.len() { if midpoint + 1 < self.elts.len() {
if self.elts.get(midpoint + 1).key.cmp(&k) == Greater { if self.elts[midpoint + 1].key.cmp(&k) == Greater {
return Some(midpoint); return Some(midpoint);
} }
else { else {
@ -422,7 +422,7 @@ impl<K: Ord, V: Eq> Ord for Leaf<K, V> {
if self.elts.len() < other.elts.len() { if self.elts.len() < other.elts.len() {
return Less; return Less;
} }
self.elts.get(0).cmp(other.elts.get(0)) self.elts[0].cmp(&other.elts[0])
} }
} }
@ -457,14 +457,14 @@ impl<K: Ord, V> Branch<K, V> {
midpoint = 0u; midpoint = 0u;
} }
loop { loop {
let order = self.elts.get(midpoint).key.cmp(&k); let order = self.elts[midpoint].key.cmp(&k);
match order { match order {
Equal => { Equal => {
return None; return None;
} }
Greater => { Greater => {
if midpoint > 0 { if midpoint > 0 {
if self.elts.get(midpoint - 1).key.cmp(&k) == Less { if self.elts[midpoint - 1].key.cmp(&k) == Less {
return Some(midpoint); return Some(midpoint);
} }
else { else {
@ -480,7 +480,7 @@ impl<K: Ord, V> Branch<K, V> {
} }
Less => { Less => {
if midpoint + 1 < self.elts.len() { if midpoint + 1 < self.elts.len() {
if self.elts.get(midpoint + 1).key.cmp(&k) == Greater { if self.elts[midpoint + 1].key.cmp(&k) == Greater {
return Some(midpoint); return Some(midpoint);
} }
else { else {
@ -529,15 +529,15 @@ impl<K: Clone + Ord, V: Clone> Branch<K, V> {
Some(i) => { Some(i) => {
if i == self.elts.len() { if i == self.elts.len() {
let new_outcome = self.clone().rightmost_child.insert(k.clone(), let new_outcome = self.clone().rightmost_child.insert(k.clone(),
v.clone(), v.clone(),
ub.clone()); ub.clone());
new_branch = new_outcome.clone().val0(); new_branch = new_outcome.clone().val0();
outcome = new_outcome.val1(); outcome = new_outcome.val1();
} }
else { else {
let new_outcome = self.elts.get(i).left.clone().insert(k.clone(), let new_outcome = self.elts[i].left.clone().insert(k.clone(),
v.clone(), v.clone(),
ub.clone()); ub.clone());
new_branch = new_outcome.clone().val0(); new_branch = new_outcome.clone().val0();
outcome = new_outcome.val1(); outcome = new_outcome.val1();
} }
@ -581,7 +581,7 @@ impl<K: Clone + Ord, V: Clone> Branch<K, V> {
//If we have a new branch node, attempt to insert it into the tree //If we have a new branch node, attempt to insert it into the tree
//as with the key-value pair, then check to see if the node is overfull. //as with the key-value pair, then check to see if the node is overfull.
BranchNode(branch) => { BranchNode(branch) => {
let new_elt = branch.elts.get(0).clone(); let new_elt = branch.elts[0].clone();
let new_elt_index = self.bsearch_branch(new_elt.clone().key); let new_elt_index = self.bsearch_branch(new_elt.clone().key);
match new_elt_index { match new_elt_index {
None => { None => {
@ -652,7 +652,7 @@ impl<K: Ord, V: Eq> Ord for Branch<K, V> {
if self.elts.len() < other.elts.len() { if self.elts.len() < other.elts.len() {
return Less; return Less;
} }
self.elts.get(0).cmp(other.elts.get(0)) self.elts[0].cmp(&other.elts[0])
} }
} }

View File

@ -654,7 +654,7 @@ impl<A> Iterator<A> for MoveItems<A> {
impl<A> DoubleEndedIterator<A> for MoveItems<A> { impl<A> DoubleEndedIterator<A> for MoveItems<A> {
#[inline] #[inline]
fn next_back(&mut self) -> Option<A> { self.list.pop_back() } fn next_back(&mut self) -> Option<A> { self.list.pop() }
} }
impl<A> FromIterator<A> for DList<A> { impl<A> FromIterator<A> for DList<A> {
@ -667,7 +667,7 @@ impl<A> FromIterator<A> for DList<A> {
impl<A> Extendable<A> for DList<A> { impl<A> Extendable<A> for DList<A> {
fn extend<T: Iterator<A>>(&mut self, mut iterator: T) { fn extend<T: Iterator<A>>(&mut self, mut iterator: T) {
for elt in iterator { self.push_back(elt); } for elt in iterator { self.push(elt); }
} }
} }

View File

@ -261,7 +261,7 @@ impl<T: Ord> PriorityQueue<T> {
/// ///
/// ``` /// ```
pub fn top<'a>(&'a self) -> Option<&'a T> { pub fn top<'a>(&'a self) -> Option<&'a T> {
if self.is_empty() { None } else { Some(self.data.get(0)) } if self.is_empty() { None } else { Some(&self.data[0]) }
} }
#[deprecated="renamed to `top`"] #[deprecated="renamed to `top`"]
@ -473,7 +473,7 @@ impl<T: Ord> PriorityQueue<T> {
while pos > start { while pos > start {
let parent = (pos - 1) >> 1; let parent = (pos - 1) >> 1;
if new > *self.data.get(parent) { if new > self.data[parent] {
let x = replace(self.data.get_mut(parent), zeroed()); let x = replace(self.data.get_mut(parent), zeroed());
ptr::write(self.data.get_mut(pos), x); ptr::write(self.data.get_mut(pos), x);
pos = parent; pos = parent;
@ -493,7 +493,7 @@ impl<T: Ord> PriorityQueue<T> {
let mut child = 2 * pos + 1; let mut child = 2 * pos + 1;
while child < end { while child < end {
let right = child + 1; let right = child + 1;
if right < end && !(*self.data.get(child) > *self.data.get(right)) { if right < end && !(self.data[child] > self.data[right]) {
child = right; child = right;
} }
let x = replace(self.data.get_mut(child), zeroed()); let x = replace(self.data.get_mut(child), zeroed());

View File

@ -53,7 +53,7 @@ impl<T> Mutable for RingBuf<T> {
impl<T> Deque<T> for RingBuf<T> { impl<T> Deque<T> for RingBuf<T> {
/// Return a reference to the first element in the RingBuf /// Return a reference to the first element in the RingBuf
fn front<'a>(&'a self) -> Option<&'a T> { fn front<'a>(&'a self) -> Option<&'a T> {
if self.nelts > 0 { Some(self.get(0)) } else { None } if self.nelts > 0 { Some(&self[0]) } else { None }
} }
/// Return a mutable reference to the first element in the RingBuf /// Return a mutable reference to the first element in the RingBuf
@ -63,7 +63,7 @@ impl<T> Deque<T> for RingBuf<T> {
/// Return a reference to the last element in the RingBuf /// Return a reference to the last element in the RingBuf
fn back<'a>(&'a self) -> Option<&'a T> { fn back<'a>(&'a self) -> Option<&'a T> {
if self.nelts > 0 { Some(self.get(self.nelts - 1)) } else { None } if self.nelts > 0 { Some(&self[self.nelts - 1]) } else { None }
} }
/// Return a mutable reference to the last element in the RingBuf /// Return a mutable reference to the last element in the RingBuf
@ -152,7 +152,7 @@ impl<T> RingBuf<T> {
#[deprecated = "prefer using indexing, e.g., ringbuf[0]"] #[deprecated = "prefer using indexing, e.g., ringbuf[0]"]
pub fn get<'a>(&'a self, i: uint) -> &'a T { pub fn get<'a>(&'a self, i: uint) -> &'a T {
let idx = self.raw_index(i); let idx = self.raw_index(i);
match *self.elts.get(idx) { match self.elts[idx] {
None => fail!(), None => fail!(),
Some(ref v) => v Some(ref v) => v
} }
@ -481,6 +481,7 @@ impl<S: Writer, A: Hash<S>> Hash<S> for RingBuf<A> {
impl<A> Index<uint, A> for RingBuf<A> { impl<A> Index<uint, A> for RingBuf<A> {
#[inline] #[inline]
#[allow(deprecated)]
fn index<'a>(&'a self, i: &uint) -> &'a A { fn index<'a>(&'a self, i: &uint) -> &'a A {
self.get(*i) self.get(*i)
} }
@ -506,7 +507,7 @@ impl<A> FromIterator<A> for RingBuf<A> {
impl<A> Extendable<A> for RingBuf<A> { impl<A> Extendable<A> for RingBuf<A> {
fn extend<T: Iterator<A>>(&mut self, mut iterator: T) { fn extend<T: Iterator<A>>(&mut self, mut iterator: T) {
for elt in iterator { for elt in iterator {
self.push_back(elt); self.push(elt);
} }
} }
} }

View File

@ -190,7 +190,7 @@ impl Iterator<(uint, uint)> for ElementSwaps {
let max = self.sdir.iter().map(|&x| x).enumerate() let max = self.sdir.iter().map(|&x| x).enumerate()
.filter(|&(i, sd)| .filter(|&(i, sd)|
new_pos(i, sd.dir) < self.sdir.len() && new_pos(i, sd.dir) < self.sdir.len() &&
self.sdir.get(new_pos(i, sd.dir)).size < sd.size) self.sdir[new_pos(i, sd.dir)].size < sd.size)
.max_by(|&(_, sd)| sd.size); .max_by(|&(_, sd)| sd.size);
match max { match max {
Some((i, sd)) => { Some((i, sd)) => {

View File

@ -86,7 +86,7 @@ impl<V> Map<uint, V> for SmallIntMap<V> {
/// Return a reference to the value corresponding to the key. /// Return a reference to the value corresponding to the key.
fn find<'a>(&'a self, key: &uint) -> Option<&'a V> { fn find<'a>(&'a self, key: &uint) -> Option<&'a V> {
if *key < self.v.len() { if *key < self.v.len() {
match *self.v.get(*key) { match self.v[*key] {
Some(ref value) => Some(value), Some(ref value) => Some(value),
None => None None => None
} }
@ -421,6 +421,7 @@ impl<V> Extendable<(uint, V)> for SmallIntMap<V> {
impl<V> Index<uint, V> for SmallIntMap<V> { impl<V> Index<uint, V> for SmallIntMap<V> {
#[inline] #[inline]
#[allow(deprecated)]
fn index<'a>(&'a self, i: &uint) -> &'a V { fn index<'a>(&'a self, i: &uint) -> &'a V {
self.get(i) self.get(i)
} }

View File

@ -251,11 +251,11 @@ impl<'a> Iterator<char> for Decompositions<'a> {
match self.buffer.as_slice().head() { match self.buffer.as_slice().head() {
Some(&(c, 0)) => { Some(&(c, 0)) => {
self.sorted = false; self.sorted = false;
self.buffer.shift(); self.buffer.remove(0);
return Some(c); return Some(c);
} }
Some(&(c, _)) if self.sorted => { Some(&(c, _)) if self.sorted => {
self.buffer.shift(); self.buffer.remove(0);
return Some(c); return Some(c);
} }
_ => self.sorted = false _ => self.sorted = false
@ -287,7 +287,7 @@ impl<'a> Iterator<char> for Decompositions<'a> {
self.sorted = true; self.sorted = true;
} }
match self.buffer.shift() { match self.buffer.remove(0) {
Some((c, 0)) => { Some((c, 0)) => {
self.sorted = false; self.sorted = false;
Some(c) Some(c)
@ -805,21 +805,21 @@ pub trait StrAllocating: Str {
for (j, tc) in t.chars().enumerate() { for (j, tc) in t.chars().enumerate() {
let next = *dcol.get(j + 1); let next = dcol[j + 1];
if sc == tc { if sc == tc {
*dcol.get_mut(j + 1) = current; *dcol.get_mut(j + 1) = current;
} else { } else {
*dcol.get_mut(j + 1) = cmp::min(current, next); *dcol.get_mut(j + 1) = cmp::min(current, next);
*dcol.get_mut(j + 1) = cmp::min(*dcol.get(j + 1), *dcol.get_mut(j + 1) = cmp::min(dcol[j + 1],
*dcol.get(j)) + 1; dcol[j]) + 1;
} }
current = next; current = next;
} }
} }
return *dcol.get(tlen); return dcol[tlen];
} }
/// An Iterator over the string in Unicode Normalization Form D /// An Iterator over the string in Unicode Normalization Form D

View File

@ -669,7 +669,7 @@ impl String {
/// } /// }
/// ``` /// ```
pub unsafe fn shift_byte(&mut self) -> Option<u8> { pub unsafe fn shift_byte(&mut self) -> Option<u8> {
self.vec.shift() self.vec.remove(0)
} }
/// Removes the first character from the string buffer and returns it. /// Removes the first character from the string buffer and returns it.

View File

@ -453,6 +453,7 @@ impl<T:Clone> Clone for Vec<T> {
impl<T> Index<uint,T> for Vec<T> { impl<T> Index<uint,T> for Vec<T> {
#[inline] #[inline]
#[allow(deprecated)] // allow use of get
fn index<'a>(&'a self, index: &uint) -> &'a T { fn index<'a>(&'a self, index: &uint) -> &'a T {
self.get(*index) self.get(*index)
} }