Warum findet Rost in einem Submodul keine Funktion? [Duplikat
Diese Frage hat hier bereits eine Antwort:
Wie binde ich ein Modul aus einer anderen Datei desselben Projekts ein? 2 AntwortenIch versuche, eine Funktion von einem Modul aus aufzurufen, das sich in einer separaten Datei befindet. Die Funktion ist öffentlich und ich rufe sie unter Verwendung eines vollständigen Pfads auf, aber rustc beklagt sich weiterhin über "ungelösten Namen".
a.rspub mod b;
fn main() {
b::f()
}
b.rspub mod b {
pub fn f(){
println!("Hello World!");
}
}
Zusammenstellun$ rustc a.rs
a.rs:3:5: 3:9 error: unresolved name `b::f`.
Wenn ich das Modul in die Hauptdatei der Kiste verschiebe, funktioniert alles einwandfrei.
one_file.rspub mod b {
pub fn f(){
println!("Hello World!");
}
}
fn main() {
b::f()
}
Sollen diese beiden Möglichkeiten nicht gleichwertig sein? Mache ich etwas falsch oder ist es ein Fehler in rustc?