Dokumentuję klasę Scala z overloaded methods. Jak mogę je rozróżnić, odwołując się do nich w komentarzach skaladoc? Na przykład, jeśli mamJak rozróżniać linki do metod w skaladoc?
/**
* 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;
}
i uruchomić sbt doc
uzyskać
Doc.scala: 1: ostrzeżenie: Cel Link "Doc.foo" jest niejednoznaczna. Kilka (ewentualnie przeciążone) członków dopasować cel:
- sposób
foo[A,B>:A](x:A):B
w obiekcie Doc [wybrany]- metodą
foo[A]:Nothing
w obiekcie Doc
za pomocą foo[A,B >: A]
itp aby związek nie praca.
Czy użycie '[[Doc.foo()]] 'działałoby? Wiem, że w języku C#, gdy istnieje niejednoznaczne odniesienie w dokumentacji, musisz użyć '()', gdy masz jedną metodę bez parametrów lub przeliteruj * typy argumentów *, np. 'foo (ciąg)'. Może to jest podobne tutaj ... –
@ Trustme-I'maDoctor To nie działa, narzeka z: _warning: Nie można znaleźć żadnego członka do połączenia z "Doc.foo()" ._ –
PR na https: // github.com/scala/docs.scala-lang dodanie dokumentacji na ten temat do http://docs.scala-lang.org/overviews/scaladoc/for-library-authors.html byłoby mile widziane –