Confusão com módulos em Rust: main.rs e lib.rs no mesmo projeto
Olá a todos! Sou novo em Rust e não consigo entender os módulos quando o projeto tem tanto `main.rs` quanto `lib.rs`.\n\nTenho um projeto assim:\n\n```\nmy_project/\n├── Cargo.toml\n├── src/\n│ ├── main.rs\n│ └── lib.rs\n```\n\nNo `lib.rs`, declarei o módulo `utils`:\n\n```rust\n// lib.rs\nmod utils;\n\npub fn greet() {\n println!(\"Hello from lib!\");\n}\n```\n\nE no `utils.rs`, tenho uma função `add`:\n\n```rust\n// utils.rs\npub fn add(a: i32, b: i32) -> i32 {\n a + b\n}\n```\n\nNo `main.rs`, estou tentando chamar a função `greet` de `lib.rs` e a função `add` do módulo `utils`:\n\n```rust\n// main.rs\nfn main() {\n greet(); // erro\n println!(\"2 + 3 = {}\", utils::add(2, 3)); // também erro\n}\n```\n\nO compilador reclama: \"cannot find function `greet` in this scope\" e \"unresolved import `utils`\". Eu pensei que, se os arquivos estão na mesma pasta `src`, eles se veem automaticamente. Mas não é assim. Digam-me como organizar corretamente os módulos em Rust quando há tanto