我正在尝试Rust,并且当我的函数签名与特征所期望的那些不对应时,发现很难解释该做什么。实施例
impl std::fmt::Display for MyType {
// Not sure what to put here so I stub it and hope to get help from error
fn fmt() -> () { }
}
编译器错误消息是
method `fmt` has a `&self` declaration in the trait, but not in the impl
我希望看到的是帮助我实施该方法的一些内容:
Incorrect method signature for `fmt`
Actual signature fn fmt() -> ()
Expected signature fn fmt(&self, &mut Formatter) -> Result<(), Error>
是否可以像这样从编译器获得签名帮助?我通常对非常友好和详细的编译错误印象深刻,所以这个让我感到惊讶。我正在使用防锈操场(https://play.rust-lang.org/),但我认为这对编译器输出没有任何影响。
答案 0 :(得分:3)
不,这是不可能的。如果您认为这是一项重要功能,则可以随时向Rust issue tracker提交功能请求。
同时,您可以使用rustdoc生成的文档,例如these用于标准库。它们通常非常棒,特别是考虑到有搜索功能。