Skip to content

Commit

Permalink
replace impls with deriving where applicable
Browse files Browse the repository at this point in the history
  • Loading branch information
apasel422 committed Mar 23, 2013
1 parent 2b83def commit 45677ee
Show file tree
Hide file tree
Showing 6 changed files with 7 additions and 63 deletions.
9 changes: 1 addition & 8 deletions src/libcore/pipes.rs
Expand Up @@ -82,7 +82,6 @@ bounded and unbounded protocols allows for less code duplication.
*/

use cmp::Eq;
use cast::{forget, reinterpret_cast, transmute};
use cell::Cell;
use either::{Either, Left, Right};
Expand All @@ -103,20 +102,14 @@ macro_rules! move_it (
)

#[doc(hidden)]
#[deriving(Eq)]
enum State {
Empty,
Full,
Blocked,
Terminated
}

impl Eq for State {
fn eq(&self, other: &State) -> bool {
((*self) as uint) == ((*other) as uint)
}
fn ne(&self, other: &State) -> bool { !(*self).eq(other) }
}

pub struct BufferHeader {
// Tracks whether this buffer needs to be freed. We can probably
// get away with restricting it to 0 or 1, if we're careful.
Expand Down
11 changes: 1 addition & 10 deletions src/libcore/task/mod.rs
Expand Up @@ -72,21 +72,12 @@ pub enum Task {
* If you wish for this result's delivery to block until all linked and/or
* children tasks complete, recommend using a result future.
*/
#[deriving(Eq)]
pub enum TaskResult {
Success,
Failure,
}

impl Eq for TaskResult {
fn eq(&self, other: &TaskResult) -> bool {
match ((*self), (*other)) {
(Success, Success) | (Failure, Failure) => true,
(Success, _) | (Failure, _) => false
}
}
fn ne(&self, other: &TaskResult) -> bool { !(*self).eq(other) }
}

/// Scheduler modes
#[deriving(Eq)]
pub enum SchedMode {
Expand Down
7 changes: 1 addition & 6 deletions src/libcore/vec.rs
Expand Up @@ -2533,12 +2533,7 @@ impl<A:Copy> iter::CopyableNonstrictIter<A> for @[A] {
impl<A:Clone> Clone for ~[A] {
#[inline]
fn clone(&self) -> ~[A] {
let mut dolly = ~[];
vec::reserve(&mut dolly, self.len());
for self.each |item| {
dolly.push(item.clone());
}
return dolly;
self.map(|item| item.clone())
}
}

Expand Down
6 changes: 1 addition & 5 deletions src/libstd/bigint.rs
Expand Up @@ -557,13 +557,9 @@ priv fn get_radix_base(radix: uint) -> (uint, uint) {
}

/// A Sign is a BigInt's composing element.
#[deriving(Eq)]
pub enum Sign { Minus, Zero, Plus }

impl Eq for Sign {
fn eq(&self, other: &Sign) -> bool { self.cmp(other) == 0 }
fn ne(&self, other: &Sign) -> bool { self.cmp(other) != 0 }
}

impl Ord for Sign {
fn lt(&self, other: &Sign) -> bool { self.cmp(other) < 0 }
fn le(&self, other: &Sign) -> bool { self.cmp(other) <= 0 }
Expand Down
10 changes: 1 addition & 9 deletions src/libstd/json.rs
Expand Up @@ -35,6 +35,7 @@ pub enum Json {
pub type List = ~[Json];
pub type Object = LinearMap<~str, Json>;

#[deriving(Eq)]
pub struct Error {
line: uint,
col: uint,
Expand Down Expand Up @@ -1060,15 +1061,6 @@ impl Ord for Json {
fn gt(&self, other: &Json) -> bool { (*other).lt(&(*self)) }
}

impl Eq for Error {
fn eq(&self, other: &Error) -> bool {
(*self).line == other.line &&
(*self).col == other.col &&
(*self).msg == other.msg
}
fn ne(&self, other: &Error) -> bool { !(*self).eq(other) }
}

trait ToJson { fn to_json(&self) -> Json; }

impl ToJson for Json {
Expand Down
27 changes: 2 additions & 25 deletions src/libstd/time.rs
Expand Up @@ -40,6 +40,7 @@ pub mod rustrt {
/// A record specifying a time value in seconds and nanoseconds.
#[auto_encode]
#[auto_decode]
#[deriving(Eq)]
pub struct Timespec { sec: i64, nsec: i32 }

/*
Expand All @@ -57,13 +58,6 @@ pub impl Timespec {
}
}

impl Eq for Timespec {
fn eq(&self, other: &Timespec) -> bool {
self.sec == other.sec && self.nsec == other.nsec
}
fn ne(&self, other: &Timespec) -> bool { !self.eq(other) }
}

impl Ord for Timespec {
fn lt(&self, other: &Timespec) -> bool {
self.sec < other.sec ||
Expand Down Expand Up @@ -117,6 +111,7 @@ pub fn tzset() {

#[auto_encode]
#[auto_decode]
#[deriving(Eq)]
pub struct Tm {
tm_sec: i32, // seconds after the minute ~[0-60]
tm_min: i32, // minutes after the hour ~[0-59]
Expand All @@ -132,24 +127,6 @@ pub struct Tm {
tm_nsec: i32, // nanoseconds
}

impl Eq for Tm {
fn eq(&self, other: &Tm) -> bool {
self.tm_sec == (*other).tm_sec &&
self.tm_min == (*other).tm_min &&
self.tm_hour == (*other).tm_hour &&
self.tm_mday == (*other).tm_mday &&
self.tm_mon == (*other).tm_mon &&
self.tm_year == (*other).tm_year &&
self.tm_wday == (*other).tm_wday &&
self.tm_yday == (*other).tm_yday &&
self.tm_isdst == (*other).tm_isdst &&
self.tm_gmtoff == (*other).tm_gmtoff &&
self.tm_zone == (*other).tm_zone &&
self.tm_nsec == (*other).tm_nsec
}
fn ne(&self, other: &Tm) -> bool { !self.eq(other) }
}

pub fn empty_tm() -> Tm {
Tm {
tm_sec: 0_i32,
Expand Down

9 comments on commit 45677ee

@bors
Copy link
Contributor

@bors bors commented on 45677ee Mar 23, 2013

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@bors
Copy link
Contributor

@bors bors commented on 45677ee Mar 23, 2013

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

merging apasel422/rust/deriving = 45677ee into auto

@bors
Copy link
Contributor

@bors bors commented on 45677ee Mar 23, 2013

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

apasel422/rust/deriving = 45677ee merged ok, testing candidate = 15d13f58

@bors
Copy link
Contributor

@bors bors commented on 45677ee Mar 23, 2013

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@bors
Copy link
Contributor

@bors bors commented on 45677ee Mar 26, 2013

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@bors
Copy link
Contributor

@bors bors commented on 45677ee Mar 26, 2013

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

merging apasel422/rust/deriving = 45677ee into auto

@bors
Copy link
Contributor

@bors bors commented on 45677ee Mar 26, 2013

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

apasel422/rust/deriving = 45677ee merged ok, testing candidate = 00605d5

@bors
Copy link
Contributor

@bors bors commented on 45677ee Mar 26, 2013

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@bors
Copy link
Contributor

@bors bors commented on 45677ee Mar 26, 2013

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fast-forwarding incoming to auto = 00605d5

Please sign in to comment.