rust - 为什么我可以调用 File::open(...).read_to_end()?

标签 rust

以下代码有效,我不知道为什么:

File::open(&some_path).read_to_end().unwrap();

查看 API 文档我可以看到 File::open()返回 IoResult 没有 read_to_end() .

是否存在某种语法糖?是否Result<T, Error>不知何故变成Result<U, Error>

文档:http://doc.rust-lang.org/std/io/fs/struct.File.html#method.read_to_end

最佳答案

read_to_end来自Reader trait 如果你看那里你可以看到 thereIoResult<R> 阅读器的一个实现对于任何 R实现 Reader :

impl<R: Reader> Reader for IoResult<R>

关于rust - 为什么我可以调用 File::open(...).read_to_end()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25939951/

相关文章:

compiler-errors - 为什么将同一文件中的相同结构包含到多个包装箱中会导致类型不匹配错误?

rust - 如何遍历具有str并返回String的函数

rust - 如何为 actix_web() 配置 app_data()

rust - 为什么在 trait 方法声明中允许使用 unsized 类型?

rust - 如何为特定的 rustup 工具链安装 Rust 目标?

rust - 如何使用 match 以保证非详尽且不需要克隆的方式修改可变变量?

rust - 检查一个数字是否可以精确表示为 `f32`

vector - 如何从另一个矢量制作盒装特征对象的矢量?

rust - 在 GTK4 中制作可点击框

rust - 如何避免在 stdin 和 stdout 上缓冲?