summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelix Mulder <felix.mulder@gmail.com>2016-04-03 17:17:27 +0200
committerFelix Mulder <felix.mulder@gmail.com>2016-04-03 17:17:27 +0200
commitc608dfc552fc8d33b3cbae2fea3724e511c7a069 (patch)
tree9ba8847a01543b58eb0c38e5533bb38caf4d85b1
parent9121b4600899b2e768a67d411c676fe0fc8a3b07 (diff)
downloadscala-c608dfc552fc8d33b3cbae2fea3724e511c7a069.tar.gz
scala-c608dfc552fc8d33b3cbae2fea3724e511c7a069.tar.bz2
scala-c608dfc552fc8d33b3cbae2fea3724e511c7a069.zip
Fix sidebar not displaying objects with no companion
-rw-r--r--src/scaladoc/scala/tools/nsc/doc/html/Page.scala5
-rw-r--r--src/scaladoc/scala/tools/nsc/doc/html/page/Entity.scala33
2 files changed, 23 insertions, 15 deletions
diff --git a/src/scaladoc/scala/tools/nsc/doc/html/Page.scala b/src/scaladoc/scala/tools/nsc/doc/html/Page.scala
index 875d7919c2..c720c4939f 100644
--- a/src/scaladoc/scala/tools/nsc/doc/html/Page.scala
+++ b/src/scaladoc/scala/tools/nsc/doc/html/Page.scala
@@ -102,6 +102,11 @@ abstract class Page {
relativize(thisPage.path.reverse, destPath.reverse).mkString("/")
}
+ def hasCompanion(mbr: TemplateEntity): Boolean = mbr match {
+ case dtpl: DocTemplateEntity => dtpl.companion.isDefined
+ case _ => false
+ }
+
protected def inlineToStr(inl: comment.Inline): String = inl match {
case comment.Chain(items) => items flatMap (inlineToStr(_)) mkString ""
case comment.Italic(in) => inlineToStr(in)
diff --git a/src/scaladoc/scala/tools/nsc/doc/html/page/Entity.scala b/src/scaladoc/scala/tools/nsc/doc/html/page/Entity.scala
index e45847da78..6076945929 100644
--- a/src/scaladoc/scala/tools/nsc/doc/html/page/Entity.scala
+++ b/src/scaladoc/scala/tools/nsc/doc/html/page/Entity.scala
@@ -79,21 +79,24 @@ trait EntityPage extends HtmlPage {
<ul>
{
def entityToUl(mbr: TemplateEntity with MemberEntity, indentation: Int): NodeSeq =
- <li class={"current-entities indented" + indentation}>
- {
- mbr match {
- case dtpl: DocTemplateEntity =>
- dtpl.companion.fold(<span class="separator"></span>) { c: DocTemplateEntity =>
- <a class="object" href={relativeLinkTo(c)} title={c.comment.fold("")(com => inlineToStr(com.short))}></a>
- }
- case _ => <span class="separator"></span>
+ if (mbr.isObject && hasCompanion(mbr))
+ NodeSeq.Empty
+ else
+ <li class={"current-entities indented" + indentation}>
+ {
+ mbr match {
+ case dtpl: DocTemplateEntity =>
+ dtpl.companion.fold(<span class="separator"></span>) { c: DocTemplateEntity =>
+ <a class="object" href={relativeLinkTo(c)} title={c.comment.fold("")(com => inlineToStr(com.short))}></a>
+ }
+ case _ => <span class="separator"></span>
+ }
}
- }
- <a class={mbr.kind} href={relativeLinkTo(mbr)} title={mbr.comment.fold("")(com => inlineToStr(com.short))}></a>
- <a href={relativeLinkTo(mbr)} title={mbr.comment.fold("")(com => inlineToStr(com.short))}>
- {mbr.name}
- </a>
- </li>
+ <a class={mbr.kind} href={relativeLinkTo(mbr)} title={mbr.comment.fold("")(com => inlineToStr(com.short))}></a>
+ <a href={relativeLinkTo(mbr)} title={mbr.comment.fold("")(com => inlineToStr(com.short))}>
+ {mbr.name}
+ </a>
+ </li>
// Get path from root
val rootToParentLis = tpl.toRoot
@@ -123,7 +126,7 @@ trait EntityPage extends HtmlPage {
val subsToTplLis = subsToTpl.map(memberToHtml(_, tpl, indentation = rootToParentLis.length))
val subsAfterTplLis = subsAfterTpl.map(memberToHtml(_, tpl, indentation = rootToParentLis.length))
val currEntityLis = currentPackageTpls
- .filter(x => !x.isPackage && (x.isTrait || x.isClass || x.isAbstractType))
+ .filter(x => !x.isPackage && (x.isTrait || x.isClass || x.isAbstractType || x.isObject))
.sortBy(_.name)
.map(entityToUl(_, (if (tpl.isPackage) 0 else -1) + rootToParentLis.length))
val currSubLis = tpl.templates