projects
/
rust-101.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge pull request #7 from leesper/master
[rust-101.git]
/
workspace
/
src
/
part07.rs
diff --git
a/workspace/src/part07.rs
b/workspace/src/part07.rs
index e2796b409855bedd9fdaca3d8dbc27fcaefaadd0..916cb01bc67514492a933ceee01caef41b8ad665 100644
(file)
--- a/
workspace/src/part07.rs
+++ b/
workspace/src/part07.rs
@@
-11,7
+11,10
@@
pub trait Minimum {
pub fn vec_min<T: Minimum>(v: &Vec<T>) -> Option<&T> {
let mut min: Option<&T> = None;
for e in v {
pub fn vec_min<T: Minimum>(v: &Vec<T>) -> Option<&T> {
let mut min: Option<&T> = None;
for e in v {
- unimplemented!()
+ min = Some(match min {
+ None => e,
+ Some(n) => n.min(e)
+ });
}
min
}
}
min
}
@@
-36,7
+39,7
@@
impl PartialEq for BigInt {
}
}
-// Now we can compare `BigInt`s. Rust treats `P
ra
tialEq` special in that it is wired to the operator `==`:
+// Now we can compare `BigInt`s. Rust treats `P
ar
tialEq` special in that it is wired to the operator `==`:
fn compare_big_ints() {
let b1 = BigInt::new(13);
let b2 = BigInt::new(37);
fn compare_big_ints() {
let b1 = BigInt::new(13);
let b2 = BigInt::new(37);
@@
-58,7
+61,7
@@
fn test_min() {
// ## Formatting
// ## Formatting
-// All formating is handled by [`std::fmt`](http://doc.rust-lang.org/std/fmt/index.html). I won't explain
+// All formating is handled by [`std::fmt`](http
s
://doc.rust-lang.org/std/fmt/index.html). I won't explain
// all the details, and refer you to the documentation instead.
use std::fmt;
// all the details, and refer you to the documentation instead.
use std::fmt;