Skip to content

Commit e7d7859

Browse files
authored
Merge pull request #11842 from lampepfl/scaladoc/doc-fix
Scaladoc: Fix brief comments in member documentation, remove artifact members
2 parents a460479 + f46cacd commit e7d7859

File tree

4 files changed

+15
-8
lines changed

4 files changed

+15
-8
lines changed

scaladoc/resources/dotty_res/styles/scalastyle.css

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -566,18 +566,22 @@ footer .pull-right {
566566
display: inline-block;
567567
}
568568

569+
.documentableElement.expand .documentableBrief {
570+
display: none;
571+
}
572+
569573
.documentableAnchor {
570574
position: absolute;
571575
width: 24px;
572576
height: 24px;
573577
background: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="darkgray" xmlns="http://www.w3.org/2000/svg"><path d="M21.2496 5.3C20.3496 4.5 19.2496 4 18.0496 4C16.8496 4 15.6496 4.5 14.8496 5.3L10.3496 9.8L11.7496 11.2L16.2496 6.7C17.2496 5.7 18.8496 5.7 19.8496 6.7C20.8496 7.7 20.8496 9.3 19.8496 10.3L15.3496 14.8L16.7496 16.2L21.2496 11.7C22.1496 10.8 22.5496 9.7 22.5496 8.5C22.5496 7.3 22.1496 6.2 21.2496 5.3Z"></path><path d="M8.35 16.7998C7.35 17.7998 5.75 17.7998 4.75 16.7998C3.75 15.7998 3.75 14.1998 4.75 13.1998L9.25 8.6998L7.85 7.2998L3.35 11.7998C1.55 13.5998 1.55 16.3998 3.35 18.1998C4.25 19.0998 5.35 19.4998 6.55 19.4998C7.75 19.4998 8.85 19.0998 9.75 18.1998L14.25 13.6998L12.85 12.2998L8.35 16.7998Z"></path></svg> ');
574578
}
575579

576-
.documentableBrief {
580+
.memberDocumentation {
577581
font-size: 14px;
578582
}
579583

580-
.documentableBrief>p{
584+
.memberDocumentation>p{
581585
margin: .5em 0 0 0;
582586
}
583587

scaladoc/src/dotty/tools/scaladoc/renderers/MemberRenderer.scala

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -93,12 +93,13 @@ class MemberRenderer(signatureRenderer: SignatureRenderer)(using DocContext) ext
9393
}
9494

9595
def memberInfo(m: Member): Seq[AppliedTag] =
96+
val comment = m.docs
9697
val bodyContents = m.docs.fold(Nil)(e => renderDocPart(e.body) :: Nil)
9798

9899
Seq(
99-
div(cls := "documentableBrief doc")(bodyContents.take(1)),
100+
div(cls := "documentableBrief doc")(comment.flatMap(_.short).fold("")(renderDocPart)),
100101
div(cls := "cover")(
101-
div(cls := "doc")(bodyContents.drop(1)),
102+
div(cls := "doc")(bodyContents),
102103
dl(cls := "attributes")(
103104
docAttributes(m),
104105
companion(m),
@@ -169,7 +170,7 @@ class MemberRenderer(signatureRenderer: SignatureRenderer)(using DocContext) ext
169170
span(cls := "modifiers"), // just to have padding on left
170171
div(
171172
div(cls := "originInfo")(originInfo(member):_*),
172-
div(cls := "documentableBrief")(memberInfo(member)),
173+
div(cls := "memberDocumentation")(memberInfo(member)),
173174
)
174175
)
175176
)

scaladoc/src/dotty/tools/scaladoc/tasty/ClassLikeSupport.scala

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ trait ClassLikeSupport:
116116
parseMethod(c, dd.symbol,specificKind = Kind.Extension(target, _))
117117
}
118118
// TODO check given methods?
119-
case dd: DefDef if !dd.symbol.isHiddenByVisibility && dd.symbol.isGiven =>
119+
case dd: DefDef if !dd.symbol.isHiddenByVisibility && dd.symbol.isGiven && !dd.symbol.isArtifact =>
120120
Some(dd.symbol.owner.memberType(dd.name))
121121
.filterNot(_.exists)
122122
.map { _ =>
@@ -125,7 +125,7 @@ trait ClassLikeSupport:
125125
)
126126
}
127127

128-
case dd: DefDef if !dd.symbol.isHiddenByVisibility && dd.symbol.isExported =>
128+
case dd: DefDef if !dd.symbol.isHiddenByVisibility && dd.symbol.isExported && !dd.symbol.isArtifact =>
129129
val exportedTarget = dd.rhs.collect {
130130
case a: Apply => a.fun.asInstanceOf[Select]
131131
case s: Select => s
@@ -142,7 +142,7 @@ trait ClassLikeSupport:
142142
Some(parseMethod(c, dd.symbol, specificKind = Kind.Exported(_))
143143
.withOrigin(Origin.ExportedFrom(s"$instanceName.$functionName", dri)))
144144

145-
case dd: DefDef if !dd.symbol.isHiddenByVisibility && !dd.symbol.isGiven && !dd.symbol.isSyntheticFunc && !dd.symbol.isExtensionMethod =>
145+
case dd: DefDef if !dd.symbol.isHiddenByVisibility && !dd.symbol.isGiven && !dd.symbol.isSyntheticFunc && !dd.symbol.isExtensionMethod && !dd.symbol.isArtifact =>
146146
Some(parseMethod(c, dd.symbol))
147147

148148
case td: TypeDef if !td.symbol.flags.is(Flags.Synthetic) && (!td.symbol.flags.is(Flags.Case) || !td.symbol.flags.is(Flags.Enum)) =>

scaladoc/src/dotty/tools/scaladoc/tasty/SymOps.scala

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,8 @@ class SymOps[Q <: Quotes](val q: Q) extends JavadocAnchorCreator with Scaladoc2A
109109

110110
def isExtensionMethod: Boolean = sym.flags.is(Flags.ExtensionMethod)
111111

112+
def isArtifact: Boolean = sym.flags.is(Flags.Artifact)
113+
112114
def isLeftAssoc(d: Symbol): Boolean = !d.name.endsWith(":")
113115

114116
def extendedSymbol: Option[ValDef] =

0 commit comments

Comments
 (0)