diff options
author | Gilles Dubochet <gilles.dubochet@epfl.ch> | 2010-01-15 14:43:34 +0000 |
---|---|---|
committer | Gilles Dubochet <gilles.dubochet@epfl.ch> | 2010-01-15 14:43:34 +0000 |
commit | b0e6451e78740747da641d3c4b7f524f102810f9 (patch) | |
tree | b69a666e5755138979dc19cae29e6de146972fe7 | |
parent | a40276ad9a846248d9bd76ebc58b836522f7c36e (diff) | |
download | scala-b0e6451e78740747da641d3c4b7f524f102810f9.tar.gz scala-b0e6451e78740747da641d3c4b7f524f102810f9.tar.bz2 scala-b0e6451e78740747da641d3c4b7f524f102810f9.zip |
[scaladoc] Companion classes are printed.
3 files changed, 14 insertions, 0 deletions
diff --git a/src/compiler/scala/tools/nsc/doc/html/page/Template.scala b/src/compiler/scala/tools/nsc/doc/html/page/Template.scala index 575d671c8c..119823ff13 100644 --- a/src/compiler/scala/tools/nsc/doc/html/page/Template.scala +++ b/src/compiler/scala/tools/nsc/doc/html/page/Template.scala @@ -185,6 +185,15 @@ class Template(tpl: DocTemplateEntity) extends HtmlPage { case _ => NodeSeq.Empty } } + { tpl.companion match { + case Some(companion) => + <div class="block"> + Go to: <a href={relativeLinkTo(companion)}>companion</a> + </div> + case None => + NodeSeq.Empty + } + } </xml:group> def kindToString(mbr: MemberEntity): String = mbr match { diff --git a/src/compiler/scala/tools/nsc/doc/model/Entity.scala b/src/compiler/scala/tools/nsc/doc/model/Entity.scala index 39e3f0ce59..d7ef2b866d 100644 --- a/src/compiler/scala/tools/nsc/doc/model/Entity.scala +++ b/src/compiler/scala/tools/nsc/doc/model/Entity.scala @@ -70,6 +70,7 @@ trait DocTemplateEntity extends TemplateEntity with MemberEntity { def values: List[Val] def abstractTypes: List[AbstractType] def aliasTypes: List[AliasType] + def companion: Option[DocTemplateEntity] } /** A ''documentable'' trait. */ diff --git a/src/compiler/scala/tools/nsc/doc/model/ModelFactory.scala b/src/compiler/scala/tools/nsc/doc/model/ModelFactory.scala index 9a74099b2f..f935dd4478 100644 --- a/src/compiler/scala/tools/nsc/doc/model/ModelFactory.scala +++ b/src/compiler/scala/tools/nsc/doc/model/ModelFactory.scala @@ -178,6 +178,10 @@ class ModelFactory(val global: Global, val settings: doc.Settings) { extractor = val aliasTypes = members partialMap { case t: AliasType => t } override def isTemplate = true def isDocTemplate = true + def companion = sym.linkedSym match { + case NoSymbol => None + case comSym => Some(makeDocTemplate(comSym, inTpl)) + } } abstract class PackageImpl(sym: Symbol, inTpl: => PackageImpl) extends DocTemplateImpl(sym, inTpl) with Package { |