【发布时间】:2015-06-11 17:13:16
【问题描述】:
由于某种原因,Rust 编译器抱怨 Result 没有实现 unwrap,即使我提供的 Error 类型确实实现了 Debug。下面提供了出错的代码。
use std::fmt::{Display, Debug};
use std::error::Error;
trait MyError: Error + Display + Debug {}
type MyResult<T> = Result<T, MyError>;
trait Foo: Clone {}
trait MyTrait {
fn my_function<T: Foo>(&self) -> MyResult<T>;
fn unwrap_function<T: Foo>(&self) -> T {
self.my_function().unwrap()
}
}
【问题讨论】:
标签: rust