Rust: Rückrufparameternamen fehlen in rustdoc

Erstellt am 14. Sept. 2017  ·  3Kommentare  ·  Quelle: rust-lang/rust

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).

C-bug T-dev-tools T-rustdoc

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.

Alle 3 Kommentare

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.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen