Merge pull request #19 from avkrotov/memoty
[rust-101.git] / src / part06.rs
index 9552eb5316224fa15e27bc216286ceb8b2afb7d7..7113094f457e3a77d77267ba129ae85bab165a46 100644 (file)
@@ -44,7 +44,7 @@ fn vec_min(v: &Vec<BigInt>) -> Option<BigInt> {
 //@ The answer is already hidden in the type of `vec_min`: `v` is just borrowed, but
 //@ the Option<BigInt> that it returns is *owned*. We can't just return one of the elements of `v`,
 //@ as that would mean that it is no longer in the vector! In our code, this comes up when we update
 //@ The answer is already hidden in the type of `vec_min`: `v` is just borrowed, but
 //@ the Option<BigInt> that it returns is *owned*. We can't just return one of the elements of `v`,
 //@ as that would mean that it is no longer in the vector! In our code, this comes up when we update
-//@ the intermediate variable `min`, which also has type `Option<BigInt>`. If you replace get rid of the
+//@ the intermediate variable `min`, which also has type `Option<BigInt>`. If you get rid of the
 //@ `e.clone()`, Rust will complain "Cannot move out of borrowed content". That's because
 //@ `e` is a `&BigInt`. Assigning `min = Some(*e)` works just like a function call: Ownership of the
 //@ underlying data is transferred from `e` to `min`. But that's not allowed, since
 //@ `e.clone()`, Rust will complain "Cannot move out of borrowed content". That's because
 //@ `e` is a `&BigInt`. Assigning `min = Some(*e)` works just like a function call: Ownership of the
 //@ underlying data is transferred from `e` to `min`. But that's not allowed, since
@@ -148,4 +148,4 @@ fn rust_foo(mut v: Vec<i32>) -> i32 {
 //@ Most of the time, we don't have to explicitly add lifetimes to function types. This is thanks to *lifetime elision*,
 //@ where Rust will automatically insert lifetimes we did not specify, following some [simple, well-documented rules](https://doc.rust-lang.org/stable/book/lifetimes.html#lifetime-elision).
 
 //@ Most of the time, we don't have to explicitly add lifetimes to function types. This is thanks to *lifetime elision*,
 //@ where Rust will automatically insert lifetimes we did not specify, following some [simple, well-documented rules](https://doc.rust-lang.org/stable/book/lifetimes.html#lifetime-elision).
 
-//@ [index](main.html) | [previous](part05.html) | [raw source](https://www.ralfj.de/git/rust-101.git/blob_plain/HEAD:/workspace/src/part06.rs) | [next](part07.html)
+//@ [index](main.html) | [previous](part05.html) | [raw source](workspace/src/part06.rs) | [next](part07.html)