Hemos visto cómo los bloques impl nos permiten asignar funciones de espacio de nombres a un tipo.
De manera similar, mod nos permite tipos de espacios de nombres y funciones:
mod foo {
pub fn do_something() {
println!("In the foo module");
}
}
mod bar {
pub fn do_something() {
println!("In the bar module");
}
}
fn main() {
foo::do_something();
bar::do_something();
}
Los paquetes brindan funcionalidad e incluyen un archivo Cargo.toml que describe cómo crear un paquete de más de 1 caja.
Las cajas son un árbol de módulos, donde una caja binaria crea un ejecutable y una caja de biblioteca se compila en una biblioteca.
Los módulos definen la organización y alcance.