From: Budo Zindovic Date: Tue, 25 Apr 2023 11:58:04 +0000 (+0200) Subject: Fix a typo in part 6 X-Git-Url: https://git.ralfj.de/rust-101.git/commitdiff_plain/79b3d41f9ee58f167f757218da02f82cec8f811d?ds=sidebyside;hp=-c Fix a typo in part 6 Fix a typo in part 6 with character //@ appearing in rendered document. --- 79b3d41f9ee58f167f757218da02f82cec8f811d diff --git a/src/part06.rs b/src/part06.rs index 939fe08..de90cb6 100644 --- a/src/part06.rs +++ b/src/part06.rs @@ -127,8 +127,8 @@ fn head(v: &Vec) -> Option<&T> { //@ have aliasing (of `first` and `v`) and mutation. But this time, the bug is hidden behind the //@ call to `head`. How does Rust solve this? If we translate the code above to Rust, it doesn't //@ compile, so clearly we are good - but how and why? -//@ (Notice that have to explicitly assert using //@ `unwrap` that `first` is not `None`, whereas -//@ the C++ code above would silently dereference a //@ `NULL`-pointer. But that's another point.) +//@ (Notice that have to explicitly assert using `unwrap` that `first` is not `None`, whereas +//@ the C++ code above would silently dereference a `NULL`-pointer. But that's another point.) fn rust_foo(mut v: Vec) -> i32 { let first: Option<&i32> = head(&v); /* v.push(42); */