Skip to content

Commit a7a2f29

Browse files
committed
---
yaml --- r: 23234 b: refs/heads/master c: ccd3643 h: refs/heads/master v: v3
1 parent 8845882 commit a7a2f29

File tree

7 files changed

+20
-23
lines changed

7 files changed

+20
-23
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
refs/heads/master: f78c90653535128b5a7c08d4850d6ef202beba40
2+
refs/heads/master: ccd36439f70814073c567bb22fdbcaafcf970b16
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: cd6f24f9d14ac90d167386a56e7a6ac1f0318195
55
refs/heads/try: ffbe0e0e00374358b789b0037bcb3a577cd218be

trunk/src/libcore/f32.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -180,7 +180,7 @@ impl f32: num::Num {
180180
pure fn neg() -> f32 { return -self; }
181181

182182
pure fn to_int() -> int { return self as int; }
183-
pure fn from_int(n: int) -> f32 { return n as f32; }
183+
static pure fn from_int(n: int) -> f32 { return n as f32; }
184184
}
185185

186186
//

trunk/src/libcore/f64.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -207,7 +207,7 @@ impl f64: num::Num {
207207
pure fn neg() -> f64 { return -self; }
208208

209209
pure fn to_int() -> int { return self as int; }
210-
pure fn from_int(n: int) -> f64 { return n as f64; }
210+
static pure fn from_int(n: int) -> f64 { return n as f64; }
211211
}
212212

213213
//

trunk/src/libcore/float.rs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -422,7 +422,7 @@ impl float: num::Num {
422422
pure fn neg() -> float { return -self; }
423423

424424
pure fn to_int() -> int { return self as int; }
425-
pure fn from_int(n: int) -> float { return n as float; }
425+
static pure fn from_int(n: int) -> float { return n as float; }
426426
}
427427

428428
#[test]
@@ -523,14 +523,14 @@ fn test_traits() {
523523
fn test<U:num::Num>(ten: &U) {
524524
assert (ten.to_int() == 10);
525525

526-
let two = ten.from_int(2);
526+
let two = from_int(2);
527527
assert (two.to_int() == 2);
528528

529-
assert (ten.add(two) == ten.from_int(12));
530-
assert (ten.sub(two) == ten.from_int(8));
531-
assert (ten.mul(two) == ten.from_int(20));
532-
assert (ten.div(two) == ten.from_int(5));
533-
assert (ten.modulo(two) == ten.from_int(0));
529+
assert (ten.add(two) == from_int(12));
530+
assert (ten.sub(two) == from_int(8));
531+
assert (ten.mul(two) == from_int(20));
532+
assert (ten.div(two) == from_int(5));
533+
assert (ten.modulo(two) == from_int(0));
534534
}
535535

536536
test(&10.0);

trunk/src/libcore/int-template.rs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ impl T: num::Num {
8484
pure fn neg() -> T { return -self; }
8585

8686
pure fn to_int() -> int { return self as int; }
87-
pure fn from_int(n: int) -> T { return n as T; }
87+
static pure fn from_int(n: int) -> T { return n as T; }
8888
}
8989

9090
impl T: iter::times {
@@ -238,15 +238,15 @@ fn test_interfaces() {
238238
fn test<U:num::Num>(ten: U) {
239239
assert (ten.to_int() == 10);
240240

241-
let two = ten.from_int(2);
241+
let two = from_int(2);
242242
assert (two.to_int() == 2);
243243

244-
assert (ten.add(two) == ten.from_int(12));
245-
assert (ten.sub(two) == ten.from_int(8));
246-
assert (ten.mul(two) == ten.from_int(20));
247-
assert (ten.div(two) == ten.from_int(5));
248-
assert (ten.modulo(two) == ten.from_int(0));
249-
assert (ten.neg() == ten.from_int(-10));
244+
assert (ten.add(two) == from_int(12));
245+
assert (ten.sub(two) == from_int(8));
246+
assert (ten.mul(two) == from_int(20));
247+
assert (ten.div(two) == from_int(5));
248+
assert (ten.modulo(two) == from_int(0));
249+
assert (ten.neg() == from_int(-10));
250250
}
251251

252252
test(10 as T);

trunk/src/libcore/num.rs

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
/// An interface for numbers.
22
33
trait Num {
4-
// FIXME: Cross-crate overloading doesn't work yet. (#2615)
54
// FIXME: Trait composition. (#2616)
65
pure fn add(&&other: self) -> self;
76
pure fn sub(&&other: self) -> self;
@@ -11,7 +10,5 @@ trait Num {
1110
pure fn neg() -> self;
1211

1312
pure fn to_int() -> int;
14-
pure fn from_int(n: int) -> self; // FIXME (#2376) Static functions.
15-
// n.b. #2376 is for classes, not traits, but it could be generalized...
13+
static pure fn from_int(n: int) -> self;
1614
}
17-

trunk/src/libcore/uint-template.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ impl T: num::Num {
7777
pure fn neg() -> T { return -self; }
7878

7979
pure fn to_int() -> int { return self as int; }
80-
pure fn from_int(n: int) -> T { return n as T; }
80+
static pure fn from_int(n: int) -> T { return n as T; }
8181
}
8282

8383
impl T: iter::times {

0 commit comments

Comments
 (0)