vec: convert append and append_one to methods
These were only free functions on `~[T]` because taking self by-value used to be broken.
This commit is contained in:
parent
612e22e417
commit
cbbc1fc843
30 changed files with 126 additions and 222 deletions
|
|
@ -92,7 +92,7 @@ fn vec_plus() {
|
|||
if r.gen() {
|
||||
v.push_all_move(rv);
|
||||
} else {
|
||||
v = vec::append(rv.clone(), v.as_slice());
|
||||
v = rv.clone().append(v.as_slice());
|
||||
}
|
||||
i += 1;
|
||||
}
|
||||
|
|
@ -106,10 +106,10 @@ fn vec_append() {
|
|||
while i < 1500 {
|
||||
let rv = Vec::from_elem(r.gen_range(0u, i + 1), i);
|
||||
if r.gen() {
|
||||
v = vec::append(v.clone(), rv.as_slice());
|
||||
v = v.clone().append(rv.as_slice());
|
||||
}
|
||||
else {
|
||||
v = vec::append(rv.clone(), v.as_slice());
|
||||
v = rv.clone().append(v.as_slice());
|
||||
}
|
||||
i += 1;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -126,8 +126,7 @@ fn make_sequence_processor(sz: uint,
|
|||
line = from_parent.recv();
|
||||
if line == Vec::new() { break; }
|
||||
|
||||
carry = windows_with_carry(vec::append(carry,
|
||||
line.as_slice()).as_slice(),
|
||||
carry = windows_with_carry(carry.append(line.as_slice()).as_slice(),
|
||||
sz,
|
||||
|window| {
|
||||
update_freq(&mut freqs, window);
|
||||
|
|
|
|||
|
|
@ -97,8 +97,7 @@ fn recurse_or_fail(depth: int, st: Option<State>) {
|
|||
unique: ~Cons((), @*st.unique),
|
||||
tuple: (@Cons((), st.tuple.ref0().clone()),
|
||||
~Cons((), @*st.tuple.ref1().clone())),
|
||||
vec: vec::append(st.vec.clone(),
|
||||
&[@Cons((), *st.vec.last().unwrap())]),
|
||||
vec: st.vec.clone().append(&[@Cons((), *st.vec.last().unwrap())]),
|
||||
res: r(@Cons((), st.res._l))
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ fn main() {
|
|||
for _i in range(0u, 10u) {
|
||||
arr.push(@~"key stuff");
|
||||
map.insert(arr.clone(),
|
||||
vec::append(arr.clone(), &[@~"value stuff"]));
|
||||
arr.clone().append([@~"value stuff"]));
|
||||
if arr.len() == 5 {
|
||||
fail!();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ use std::vec;
|
|||
pub fn main() {
|
||||
let a: Vec<int> = vec!(1, 2, 3, 4, 5);
|
||||
let b: Vec<int> = vec!(6, 7, 8, 9, 0);
|
||||
let v: Vec<int> = vec::append(a, b.as_slice());
|
||||
let v: Vec<int> = a.append(b.as_slice());
|
||||
println!("{}", *v.get(9));
|
||||
assert_eq!(*v.get(0), 1);
|
||||
assert_eq!(*v.get(7), 8);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue