From e20549ff192edec9d625f1119bcb077c3abaf070 Mon Sep 17 00:00:00 2001 From: Patrick Walton Date: Wed, 10 Jul 2013 14:43:25 -0700 Subject: librustc: Remove all uses of the `Copy` bound. --- src/libextra/par.rs | 4 ++-- src/libextra/serialize.rs | 5 +---- src/libextra/sort.rs | 17 +++++++---------- src/libextra/timer.rs | 6 ++---- 4 files changed, 12 insertions(+), 20 deletions(-) (limited to 'src/libextra') diff --git a/src/libextra/par.rs b/src/libextra/par.rs index 1c686843ab0..74ebf525e00 100644 --- a/src/libextra/par.rs +++ b/src/libextra/par.rs @@ -85,7 +85,7 @@ fn map_slices( } /// A parallel version of map. -pub fn map( +pub fn map( xs: &[A], fn_factory: &fn() -> ~fn(&A) -> B) -> ~[B] { vec::concat(map_slices(xs, || { let f = fn_factory(); @@ -96,7 +96,7 @@ pub fn map( } /// A parallel version of mapi. -pub fn mapi( +pub fn mapi( xs: &[A], fn_factory: &fn() -> ~fn(uint, &A) -> B) -> ~[B] { let slices = map_slices(xs, || { diff --git a/src/libextra/serialize.rs b/src/libextra/serialize.rs index 9fec58e7495..53db93313a6 100644 --- a/src/libextra/serialize.rs +++ b/src/libextra/serialize.rs @@ -650,10 +650,7 @@ impl< } } -impl< - S: Encoder, - T: Encodable + Copy -> Encodable for DList { +impl> Encodable for @mut DList { fn encode(&self, s: &mut S) { do s.emit_seq(self.len()) |s| { let mut i = 0; diff --git a/src/libextra/sort.rs b/src/libextra/sort.rs index 8a21ea0bd3b..a11b819dda1 100644 --- a/src/libextra/sort.rs +++ b/src/libextra/sort.rs @@ -24,12 +24,12 @@ type Le<'self, T> = &'self fn(v1: &T, v2: &T) -> bool; * Has worst case O(n log n) performance, best case O(n), but * is not space efficient. This is a stable sort. */ -pub fn merge_sort(v: &[T], le: Le) -> ~[T] { +pub fn merge_sort(v: &[T], le: Le) -> ~[T] { type Slice = (uint, uint); return merge_sort_(v, (0u, v.len()), le); - fn merge_sort_(v: &[T], slice: Slice, le: Le) -> ~[T] { + fn merge_sort_(v: &[T], slice: Slice, le: Le) -> ~[T] { let begin = slice.first(); let end = slice.second(); @@ -44,7 +44,7 @@ pub fn merge_sort(v: &[T], le: Le) -> ~[T] { merge_sort_(v, b, |x,y| le(x,y))); } - fn merge(le: Le, a: &[T], b: &[T]) -> ~[T] { + fn merge(le: Le, a: &[T], b: &[T]) -> ~[T] { let mut rs = vec::with_capacity(a.len() + b.len()); let a_len = a.len(); let mut a_ix = 0; @@ -183,7 +183,7 @@ static MIN_GALLOP: uint = 7; static INITIAL_TMP_STORAGE: uint = 128; #[allow(missing_doc)] -pub fn tim_sort(array: &mut [T]) { +pub fn tim_sort(array: &mut [T]) { let size = array.len(); if size < 2 { return; @@ -227,7 +227,7 @@ pub fn tim_sort(array: &mut [T]) { ms.merge_force_collapse(array); } -fn binarysort(array: &mut [T], start: uint) { +fn binarysort(array: &mut [T], start: uint) { let size = array.len(); let mut start = start; assert!(start <= size); @@ -419,7 +419,7 @@ fn MergeState() -> MergeState { } } -impl MergeState { +impl MergeState { fn push_run(&mut self, run_base: uint, run_len: uint) { let tmp = RunState{base: run_base, len: run_len}; self.runs.push(tmp); @@ -739,10 +739,7 @@ fn copy_vec(dest: &mut [T], } #[inline] -fn shift_vec(dest: &mut [T], - s1: uint, - s2: uint, - len: uint) { +fn shift_vec(dest: &mut [T], s1: uint, s2: uint, len: uint) { assert!(s1+len <= dest.len()); let tmp = dest.slice(s2, s2+len).to_owned(); diff --git a/src/libextra/timer.rs b/src/libextra/timer.rs index d957ac43801..1cfbeb9e514 100644 --- a/src/libextra/timer.rs +++ b/src/libextra/timer.rs @@ -118,10 +118,8 @@ pub fn sleep(iotask: &IoTask, msecs: uint) { * on the provided port in the allotted timeout period, then the result will * be a `Some(T)`. If not, then `None` will be returned. */ -pub fn recv_timeout(iotask: &IoTask, - msecs: uint, - wait_po: &Port) - -> Option { +pub fn recv_timeout(iotask: &IoTask, msecs: uint, wait_po: &Port) + -> Option { let (timeout_po, timeout_ch) = stream::<()>(); let mut timeout_po = timeout_po; delayed_send(iotask, msecs, &timeout_ch, ()); -- cgit 1.4.1-3-g733a5