src/unsafe-rust/unsafe.md
The Rust language has two parts:
We saw mostly safe Rust in this course, but it's important to know what Unsafe Rust is.
Unsafe code should be small and isolated, and its correctness should be carefully documented. It should be wrapped in a safe abstraction layer.
Unsafe Rust gives you access to five new capabilities:
union fields.unsafe functions, including extern functions.unsafe traits.We will briefly cover unsafe capabilities next. For full details, please see Chapter 19.1 in the Rust Book and the Rustonomicon.
<details>Unsafe Rust does not mean the code is incorrect. It means that developers have turned off some compiler safety features and have to write correct code by themselves. It means the compiler no longer enforces Rust's memory-safety rules.
</details>