Skip to content

Commit

Permalink
auto merge of #14492 : alexcrichton/rust/totaleq, r=pnkfelix
Browse files Browse the repository at this point in the history
This is a transitionary step towards completing #12517. This change modifies the
compiler to accept Partial{Ord,Eq} as deriving modes which will currently expand
to implementations of PartialOrd and PartialEq (synonyms for Eq/Ord).

After a snapshot, all of deriving(Eq, Ord) will be removed, and after a snapshot
of that, TotalEq/TotalOrd will be renamed to Eq/Ord.
  • Loading branch information
bors committed May 29, 2014
2 parents c631d3d + f786f9b commit 50b8528
Show file tree
Hide file tree
Showing 4 changed files with 8 additions and 4 deletions.
3 changes: 3 additions & 0 deletions src/libcore/cmp.rs
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,9 @@
//! assert!(SketchyNum {num: 25} != SketchyNum {num: 57});
//! ```

pub use PartialEq = cmp::Eq;
pub use PartialOrd = cmp::Ord;

/// Trait for values that can be compared for equality and inequality.
///
/// This trait allows partial equality, where types can be unordered instead of
Expand Down
2 changes: 1 addition & 1 deletion src/libsyntax/ext/deriving/cmp/eq.rs
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ pub fn expand_deriving_eq(cx: &mut ExtCtxt,
let trait_def = TraitDef {
span: span,
attributes: Vec::new(),
path: Path::new(vec!("std", "cmp", "Eq")),
path: Path::new(vec!("std", "cmp", "PartialEq")),
additional_bounds: Vec::new(),
generics: LifetimeBounds::empty(),
methods: vec!(
Expand Down
2 changes: 1 addition & 1 deletion src/libsyntax/ext/deriving/cmp/ord.rs
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ pub fn expand_deriving_ord(cx: &mut ExtCtxt,
let trait_def = TraitDef {
span: span,
attributes: Vec::new(),
path: Path::new(vec!("std", "cmp", "Ord")),
path: Path::new(vec!("std", "cmp", "PartialOrd")),
additional_bounds: Vec::new(),
generics: LifetimeBounds::empty(),
methods: vec!(
Expand Down
5 changes: 3 additions & 2 deletions src/libsyntax/ext/deriving/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -77,9 +77,10 @@ pub fn expand_meta_deriving(cx: &mut ExtCtxt,
"Encodable" => expand!(encodable::expand_deriving_encodable),
"Decodable" => expand!(decodable::expand_deriving_decodable),

"Eq" => expand!(eq::expand_deriving_eq),
// NOTE this needs treatment after a stage0 snap
"PartialEq" | "Eq" => expand!(eq::expand_deriving_eq),
"TotalEq" => expand!(totaleq::expand_deriving_totaleq),
"Ord" => expand!(ord::expand_deriving_ord),
"PartialOrd" | "Ord" => expand!(ord::expand_deriving_ord),
"TotalOrd" => expand!(totalord::expand_deriving_totalord),

"Rand" => expand!(rand::expand_deriving_rand),
Expand Down

0 comments on commit 50b8528

Please sign in to comment.