以下代码有效,我不知道原因:
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
答案 0 :(得分:6)
read_to_end
来自Reader
特征,如果你看一下,你可以看到there是IoResult<R>
对任何R
的读者的实现实现Reader
:
impl<R: Reader> Reader for IoResult<R>