Comment importer un module depuis un autre fichier dans le même projet Rust ?
Je viens de commencer à apprendre Rust et j'essaie de comprendre le système de modules. J'ai un projet simple créé avec `cargo new my_project`. Il contient le fichier standard `src/main.rs` où j'ai placé ma logique principale. Mais le code devient trop volumineux et je souhaite déplacer plusieurs fonctions dans des fichiers séparés.
J'ai créé le fichier `src/math.rs` avec une fonction simple :
```rust
// src/math.rs
fn add(x: i32, y: i32) -> i32 {
x + y
}
```
Maintenant, je veux utiliser cette fonction dans `src/main.rs`. J'ai essayé d'écrire `mod math;` puis d'appeler `math::add(2, 3)`, mais le compilateur génère une erreur : `error[E0603]: function `add` is private`. J'ai aussi essayé différentes variantes avec `use`, mais rien ne fonctionne.
J'ai lu la documentation, mais elle me semble compliquée. Expliquez-moi, s'il vous plaît, comment organiser correctement le code dans plusieurs fichiers ? Qu'est-ce que je fais de travers ? Dois-je modifier quelque chose dans `Cargo.toml` ? Comment rendre une fonction visible depuis d'autres modules ? Et comment structurer correctement un projet si j'ai beaucoup de fichiers ?