この Book はこの 2 つの図を理解できることを目的とした。

↓ UTF-8 バイト列と、StringOsString の違いについて

↓ 文字列っぽいものの構成と変換について

どの型の間は安全に変換できるのか、内部構造はどうなっているのか、を理解できた。

僕は「OsString ってなんぞ?」「ただの String がほしいぞ?」という段階からは脱することができたので、個人的にはまとめた価値があった。

さらに、頻出する from や、open の引数がなぜ &str でも PathBuf でもいいのかを理解するために、あわせて Into<T>From<T>AsRef<T> を整理した。

文字列型に関しては僕はまだ Rust 初心者だし実務経験もないから知らなかっただけで、もしかしたら Rustaceans には常識的な内容だったかもしれない。
けど僕はおそろかにしていた基礎を一部とはいえしっかりと固められた感触があるのでとても満足している。