7
由於某些原因,Rust編譯器抱怨Result
未實現unwrap
,即使錯誤類型I提供的確沒有實現Debug。下面提供了錯誤代碼。結果類型未實現名爲`unwrap`的範圍內的方法
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()
}
}