Rustでクレートを混ぜ込む話
RustとTauriでGUI付きDockerのステータスを表示したりするアプリを作ってみてる件、ちまちまと検証しながら進めているのですが、 main.rs が膨らんでくるとやっぱり「あぁDocker関連のコードを分離したい」となってきます。 そういう時にどうすればいいのか、ちょっとやってみてました。キットもっと楽な方法があるはずなのですが、今の私の知見です。 単純に切り出す 切り出す mod 指示でインポートする 例えば元コードがこんな感じ。 1 2 3 4 5 6 7 fn hoge() -> String { "hogehoge".to_string() } fn main() { println!("{}", hoge()); } ここから hoge() を切り出したければ、まずは単純に切り出してみます。 hoge.rsを作成してお引っ越し 1 2 3 4 // hoge.rs fn hoge() -> String { "hogehoge".to_string() } これをmain.rsから読み込ませてみるのは、 mod キーワードでファイル名を渡してモジュールとして認識させることができます。 1 2 3 4 5 mod hoge; // hoge.rsを取り込む(モジュールとして) fn main() { println!("{}", hoge::hoge()); } でもこれはエラーになります。 ❯ cargo check Checking libkiridashi v0....