@@ -3,12 +3,12 @@ package dotty.tools.scaladoc.tasty.comments.markdown
3
3
import com .vladsch .flexmark .html ._
4
4
5
5
import dotty .tools .scaladoc .snippets ._
6
+ import dotty .tools .scaladoc .util .HTML ._
6
7
7
8
case class SnippetLine (content : String , lineNo : Int , classes : Set [String ] = Set .empty, messages : Seq [String ] = Seq .empty):
8
9
def withClass (cls : String ) = this .copy(classes = classes + cls)
9
- private def escapeQuotes (msg : String ): String = msg.replace(" \" " , " "" )
10
10
def toHTML =
11
- val label = if messages.nonEmpty then s """ label=" ${messages.map(escapeQuotes ).mkString(" \n " )}" """ else " "
11
+ val label = if messages.nonEmpty then s """ label=" ${messages.map(_.escapeReservedTokens ).mkString(" \n " )}" """ else " "
12
12
s """ <span id=" $lineNo" class=" ${classes.mkString(" " )}" $label> $content</span> """
13
13
14
14
object SnippetRenderer :
@@ -89,14 +89,14 @@ object SnippetRenderer:
89
89
90
90
private def wrapCodeLines (codeLines : Seq [String ]): Seq [SnippetLine ] =
91
91
val snippetLines = codeLines.zipWithIndex.map {
92
- case (content, idx) => SnippetLine (content, idx)
92
+ case (content, idx) => SnippetLine (content.escapeReservedTokens , idx)
93
93
}
94
94
wrapHiddenSymbols
95
95
.andThen(wrapSingleLineComments)
96
96
.andThen(wrapMultiLineComments)
97
97
.apply(snippetLines)
98
98
99
- private def addCompileMessages (messages : Seq [SnippetCompilerMessage ])(codeLines : Seq [SnippetLine ]): Seq [SnippetLine ] = // TODO add tooltips and stuff
99
+ private def addCompileMessages (messages : Seq [SnippetCompilerMessage ])(codeLines : Seq [SnippetLine ]): Seq [SnippetLine ] =
100
100
val messagesDict = messages.filter(_.position.nonEmpty).groupBy(_.position.get.relativeLine).toMap[Int , Seq [SnippetCompilerMessage ]]
101
101
codeLines.map { line =>
102
102
messagesDict.get(line.lineNo) match
0 commit comments