Avatar ·

Forma limpia de convertir Result en Option en Rust

¡Hola, colegas! Acabo de empezar a aprender Rust y me encontré con una situación típica: tengo una función que devuelve `Result`, pero para seguir trabajando necesito un `Option`. Por ejemplo, estoy leyendo una variable de entorno:\n\n```rust\nuse std::env;\n\nfn main() {\n let port: Option = env::var("PORT") // Result\n .and_then(|s| s.parse()) // Result\n .ok(); // ???\n}\n```\n\nSé que se puede usar `.ok()`, que convierte `Result` en `Option`, descartando el error. Pero me parece que no es un enfoque muy limpio: perdemos la información del error. ¿Quizás hay una forma más idiomática?\n\nSegundo problema: tengo una cadena de llamadas con varios `Result`, y quiero convertirlos en `Opti