2016-06-27 14 views
1

Entschuldigung, wenn das eine dumme Frage ist, aber ich bleibe einfach dran, wie man diese typisierte Klasse am besten dokumentiert.So verweisen Sie auf eine typisierte Klasse in der ScalaDoc-Dokumentation (Version 2.10.6)

Ich arbeite seit kurzem in Scala und arbeite daran, Code aufzuräumen und Dokumentation hinzuzufügen.

Ich habe eine API in meinem Projekt, die eine Anfrage an APIs anderer Dienste stellt und die Antwort von der API dieses Dienstes in ein zukünftiges Ergebnis für die API meines Projekts übersetzt.

Beispielstruktur:

object RequestClient { 
    def Request(method: String, path: String, queryString: String, body: String = ""): Future[Result] = { 
     // Do work here 
     return Future[Result] 
    } 
} 

Ich versuche, die Request-Methode zu dokumentieren, wie folgt:

/** 
    * Returns [[scala.concurrent.future]] of Response to Some service's API. 
    */ 

Aber es scheint, dass dies Referenz nur die Zukunft Klasse ohne erwähnen, dass es speziell ist ein Future [] vom Typ Result.

Es scheint irgendwie ein wichtiges Detail, dass dies ein Ergebnis Typ ist (im Gegensatz zu einem Int String oder etwas anderes), aber wenn ich es spezifizieren war wie:

/** 
    * Returns [[play.api.mvc.Result]] of Response to Some service's API. 
    */ 

Dann verliert sie den Verweis auf die Tatsache, dass es eine Zukunft ist [Ergebnis].

Es scheint so, als könnte man so etwas tun, aber es riecht daran.

/** 
    * Returns [[scala.concurrent.future]] `[` [[play.api.mvc.Result]] `]` of Response to Some service's API. 
    */ 

Irgendwelche Vorschläge oder bin ich nur Pech und muss einen auswählen?

Vielen Dank im Voraus für jede Hilfe.

** Update

Zur Klarstellung ich für etwas Hoffnung, bin, der liest:

Zukunft [Ergebnis]

wo die Zukunft Text klicken für scala.concurrent.future auf die docs verbinden würde und Klicken Sie auf den Ergebnistext würde Link zu den Dokumenten für play.api.mvc.Result

+0

Scaladoc kann einen "Geruch" haben, aber Ihre Lösung sieht genau so aus, wie Sie es sich wünschen. –

Antwort

0

Wenn ich verstanden, was Sie wollen, eine Verknüpfung mit benutzerdefinierten Text, können Sie einen gültigen Link mit einem Leerzeichen folgen und dann Ihren Text:

* Returns [[scala.concurrent.future play.api.mvc.Result]] 

Edit:

Re-Lektüre der Frage, meine Antwort ist nicht das, was Sie wollen. Ich denke deine Lösung ist richtig.

+0

Wäre diese Verknüpfung zu den zukünftigen und den Ergebnistypen, oder nur zu dem zukünftigen Typ verlinken und den zweiten Teil als Text enthalten? – DVS

+0

Das Element nach dem '[[] und vor dem Leerzeichen ist der Link, es muss etwas sein, das Scaladoc in einen http-Link konvertieren kann. Alles, was dem Raum folgt, ist Text. Das Beispiel, das ich gab, sollte zu etwas wie, ' –

+0

umgewandelt werden Das macht vollkommenen Sinn. Wenn ich weiß, dass es sich bei der Beschreibung in HTML umwandelt, scheint es, als müsste ich nur eins auswählen. – DVS