https://doc.rust-jp.rs/book-ja/ch07-04-bringing-paths-into-scope-with-the-use-keyword.html#%E6%85%A3%E4%BE%8B%E3%81%AB%E5%BE%93%E3%81%A3%E3%81%9Fuse%E3%83%91%E3%82%B9%E3%82%92%E4%BD%9C%E3%82%8B ## 概要 以下のような[[モジュール (Rust)|モジュール]]と構造体があったとき。 ```rust mod outer { pub mod inner { pub struct User { pub id: i32, pub name: String, } } } ``` 以下のようにする。 ```rust use outer::inner::User; fn sample() { let user = User { id: 1, name: "Ichi".to_string(), }; } ``` ## 理由 - 明確な理由はなく、このやり方に慣れてしまっただけとか。。。 - 異なる[[モジュール (Rust)|モジュール]]で同じ名前のものを使うときは親モジュールまでを`use`する - [[Rustで別モジュールの関数を利用する場合は、関数の親モジュールをuseする]] と同じ