Skip to content

Commit c540e94

Browse files
authored
Merge pull request #11271 from romanowski/scala3doc/html-rendering
Pages for enums
2 parents af15f6d + c35cac0 commit c540e94

File tree

1 file changed

+13
-3
lines changed

1 file changed

+13
-3
lines changed

scala3doc/src/dotty/renderers/HtmlRenderer.scala

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,20 @@ class HtmlRenderer(rootPackage: Member, val members: Map[DRI, Member])(using ctx
2929
private val args = summon[DocContext].args
3030
val staticSite = summon[DocContext].staticSiteContext
3131

32+
private def needsOwnPage(member: Member): Boolean =
33+
def properKind(kind: Kind): Boolean = kind match
34+
case Kind.Package => true
35+
case _ if kind.isInstanceOf[Classlike] => true
36+
case Kind.Given(inner, _, _) => properKind(inner)
37+
case Kind.EnumCase(inner) => properKind(inner)
38+
case _ => false
39+
40+
properKind(member.kind) &&
41+
member.origin == Origin.RegularlyDefined &&
42+
member.inheritedFrom.isEmpty
43+
3244
private def memberPage(member: Member): Page =
33-
val childrenPages = member
34-
.membersBy(m => m.kind == Kind.Package || m.kind.isInstanceOf[Classlike])
35-
.filter(m => m.origin == Origin.RegularlyDefined && m.inheritedFrom.isEmpty)
45+
val childrenPages = member.members.filter(needsOwnPage)
3646
Page(Link(member.name, member.dri), member, childrenPages.map(memberPage))
3747

3848
val navigablePage: Page =

0 commit comments

Comments
 (0)