• cargo new --lib new_crateでプロジェクトを作成したら例えば
touch src/module_a.rs
touch src/module_b.rs

としたとするとモジュール名はそれぞれ.rsを外したmodule_a, module_bとして扱われる

  • module_a, module_bがこのクレートの中で有効であることを示すためにmodキーワードでそれを宣言しておく必要がある
mod module_a;
mod module_b;
  • ライブラリクレートの場合はこれをlib.rsに書き込む
  • 実行可能なバイナリクレートの場合はこれをmain.rsに書き込む