Frage Welche neuen Features werden (oder werden) Scaladoc in Scala 2.10 hinzugefügt? [geschlossen]


Unter den verschiedenen unvollständigen Listen von Funktionen, die in Scala 2.10 behandelt werden, gibt es verschiedene Erwähnungen von Verbesserungen an Scaladoc. Aber es ist unklar, welche es gibt und welche tatsächlich hineingehen - z. Eine der Listen der Verbesserungen sagt "Fixes to Scaladoc" mit Links zu verschiedenen Pull-Anfragen, von denen einige abgelehnt wurden.

Kann jemand zusammenfassen, was sich eigentlich zwischen Scala 2.9 und 2.10 Meilenstein 4 geändert hat, und vielleicht angeben, was sonst noch für 2.10 geplant ist?

Auch, sind sie endlich das Problem lösen, nicht mit Methoden verknüpfen zu können? Z.B. in meinem Code verstreut habe ich solche Dinge:

/**
 * Reverse the encoding computed using `encode_ngram`.
 */
def decode_ngram(ngram: String): Iterable[String] = {
  DistDocument.decode_ngram_for_counts_field(ngram)
}

wo ich auf eine andere Methode in der gleichen Klasse verweisen möchte, aber AFAIK gibt es einfach keine Möglichkeit, es zu tun. IMO sollte es etwas offensichtliches sein wie [[encode_ngram]] - dh ich sollte definitiv keine absolute Klasse geben müssen (was alles zum Brüchen bringen würde, sobald ich eine Klasse heraushole und sie woanders hinhalte), und ich sollte die Parametertypen nicht angeben müssen, wenn der Methodenname selbst ist eindeutig (dh nicht-polymorph).


11
2017-07-06 04:38


Ursprung


Antworten:


Es gibt einige neue Features sowie viele Bugfixes, aber es gibt noch keine definitive Liste aller Fixes, die es gibt. Von den bemerkenswerten neuen Funktionen:

  • Implizit hinzugefügte Mitglieder sind jetzt sichtbar. Ein gutes Beispiel ist zu sehen scala.Array, wo Methoden wie map was Sie angenommen haben könnten, sind jetzt im Scaladoc sichtbar.
  • Automatisch generierte SVG-Vererbungsdiagramme, für eine Vogelperspektive von Beziehungen zwischen Klassen / Merkmalen / Objekten auf der Paketebene und dann auch auf der Ebene einzelner Klassen usw. Siehe zum Beispiel die Scaladoc-Diagramme in der Nacht auf beiden Seiten Paket-Ebene (Klicken Sie auf "Inhaltshierarchie") sowie auf die Klassenebene.
  • Methodenverknüpfung in einer begrenzten Form sollte gehe in 2.10 (noch nicht in der Nacht). (Es ist eigentlich nicht völlig trivial, in seiner vollständigen Form zu implementieren, aufgrund von praktischen Dingen wie Überladen, wie Sie bemerkt haben.)
  • Verbesserte Anwendungsfälle Ein Mitglied mit einem Anwendungsfall wird nicht mehr doppelt generiert und ist jetzt ein bisschen klarer und einfacher als zuvor.
  • (Weniger bemerkenswert) Tastatürkürzel zum Navigieren von Scaladoc wurden hinzugefügt, sie werden erklärt Hier und Hier

Für eine ausführlichere Liste von Bugfixes könnte es eine gute Idee sein, an scala-internals zu schreiben - es besteht die große Chance, dass jemand eine Liste aller größeren Bugfixes im letzten Jahr für Sie zusammenstellt.


18
2017-07-06 07:42