Berichtet in https://users.rust-lang.org/t/giving-names-to-callback-parameters/12877.
pub fn f(callback: fn(len: usize)) {}
Rustdoc zeigt dies als:
pub fn f(callback: fn(_: usize))
Dies ist mit rustc 1.22.0-nightly (539f2083d 2017-09-13).
Nachdem ich dies ursprünglich gemeldet habe, würde ich wirklich gerne einen Stich in die Lösung machen. Ich werde über das Wochenende mit den Ermittlungen beginnen.
Bearbeiten: Da ich keine Zeit hatte, mir das anzuschauen, kann sich jemand anderes frei fühlen, dies zu übernehmen.
@ rust-lang / compiler @petrochenkov Oh wow, warum erlauben wir diese Syntax überhaupt?!
Aber wenn wir das wollen, sollte es wie extern {...}
-Funktionen (ohne Körper) gemacht werden, die Vec
Namen behalten, die sich von Argumentmustern in Funktionen mit Körpern unterscheiden.
@eddyb
Oh wow, warum erlauben wir diese Syntax überhaupt?!
Um selbstdokumentierende Argumente in Rückruftypen zu unterstützen, ist dies ungefähr der gleiche Grund, warum Namen in Fremdfunktionen unterstützt werden.
Alle Muster außer _
und IDENT
werden dort durch dieselbe Prüfung verboten, die sie in fremden Funktionen verbietet, sodass die legalen Muster in " Vec
von Namen" gesenkt werden können.
Hilfreichster Kommentar
Nachdem ich dies ursprünglich gemeldet habe, würde ich wirklich gerne einen Stich in die Lösung machen. Ich werde über das Wochenende mit den Ermittlungen beginnen.
Bearbeiten: Da ich keine Zeit hatte, mir das anzuschauen, kann sich jemand anderes frei fühlen, dies zu übernehmen.