La declaración use
La declaración use
se puede utilizar para enlazar una ruta completa a un
nuevo nombre, para facilitar el acceso. A menudo se usa así:
use crate::profundamente::anidado::{
mi_primera_funcion,
mi_segunda_funcion,
YUnTipoRasgo
};
fn main() {
mi_primera_funcion();
}
Puedes utilizar la palabra clave as
para enlazar importaciones a un nombre
diferente:
// Enlaza la ruta `profundamente::anidado::funcion` a `otra_funcion`. use profundamente::anidado::funcion as otra_funcion; fn funcion() { println!("`funcion()` llamada"); } mod profundamente { pub mod anidado { pub fn funcion() { println!("`profundamente::anidado::funcion()` llamada"); } } } fn main() { // Acceso más fácil a `profundamente::anidado::funcion` otra_funcion(); println!("Ingresando al bloque"); { // Esto es equivalente a `use profundamente::anidado::funcion as funcion` // Esta `funcion()` sombreará la externa. use crate::profundamente::anidado::funcion; // Los enlaces `use` tienen un alcance local. En este caso, el sombreado // de `funcion()` está solo en este bloque. funcion(); println!("Dejando el bloque"); } funcion(); }