Ich dokumentiere eine Scala-Klasse mit overloaded methods. Wie kann ich sie unterscheiden, wenn ich sie in scaladoc-Kommentaren anspreche? Zum Beispiel, wenn ichWie können Links zu Methoden in scaladoc disambiguiert werden?
/**
* The most important method is [[Doc.foo]].
*/
object Doc {
def foo[A]: A = throw new UnsupportedOperationException;
def foo[A,B >: A](x: A): B = x;
}
und laufe sbt doc
ich
Doc.scala: 1: Warnung: Das Link-Ziel "Doc.foo" nicht eindeutig ist. Mehrere (möglicherweise überlastet) Mitglieder passen die Target:
- Methode
foo[A,B>:A](x:A):B
in Objekt Doc [ausgewählt]- Methode
foo[A]:Nothing
in Objekt Doc
Verwenden von foo[A,B >: A]
usw. auf die Verbindung nicht Arbeit.
Würde '[[Doc.foo()]]' funktionieren? Ich weiß, dass in C#, wenn es eine mehrdeutige Referenz in der Dokumentation gibt, Sie entweder '()' verwenden müssen, wenn Sie die Methode ohne Parameter oder die * Argumenttypen * buchstabieren, z. 'foo (string)'. Vielleicht ist es hier ähnlich ... –
@ Trustme-I'maDoctor Das funktioniert nicht, beschwert sich mit: _warning: Es konnte kein Mitglied für "Doc.foo()" gefunden werden ._ –
ein PR unter https: // github.com/scala/docs.scala-lang das Hinzufügen von Dokumentation dazu http://docs.scala-lang.org/overviews/scaladoc/for-library-authors.html wäre willkommen –