报告于https://users.rust-lang.org/t/giving-names-to-callback-parameters/12877。
pub fn f(callback: fn(len: usize)) {}
Rustdoc显示为:
pub fn f(callback: fn(_: usize))
这与rustc 1.22.0-nightly(539f2083d 2017-09-13)一起使用。
最初报告过此消息后,我真的很想修复此问题。 我将在周末开始调查。
编辑:由于我没有时间研究这个问题,因此其他人可以随时接手。
@ rust-lang / compiler @petrochenkov哦,为什么我们甚至允许这种语法?
但是,如果我们想要这样做,应该像extern {...}
函数(不带任何主体)那样完成,该函数保留Vec
的名称,与带有主体的函数中的自变量模式不同。
@eddyb
哦,为什么我们甚至允许这种语法?
为了在回调类型中支持自记录参数,在外部函数中支持名称的原因大致相同。
除了_
和IDENT
以外的任何模式都被同一支票所禁止,该支票禁止在外来功能中使用它们,因此合法模式可以简化为“ Vec
names”。
最有用的评论
最初报告过此消息后,我真的很想修复此问题。 我将在周末开始调查。
编辑:由于我没有时间研究这个问题,因此其他人可以随时接手。