aboutsummaryrefslogtreecommitdiff
path: root/doc-tool/src/dotty/tools/dottydoc/model/comment/MarkdownShortener.scala
diff options
context:
space:
mode:
Diffstat (limited to 'doc-tool/src/dotty/tools/dottydoc/model/comment/MarkdownShortener.scala')
-rw-r--r--doc-tool/src/dotty/tools/dottydoc/model/comment/MarkdownShortener.scala17
1 files changed, 14 insertions, 3 deletions
diff --git a/doc-tool/src/dotty/tools/dottydoc/model/comment/MarkdownShortener.scala b/doc-tool/src/dotty/tools/dottydoc/model/comment/MarkdownShortener.scala
index 8ad8024ae..f7d970959 100644
--- a/doc-tool/src/dotty/tools/dottydoc/model/comment/MarkdownShortener.scala
+++ b/doc-tool/src/dotty/tools/dottydoc/model/comment/MarkdownShortener.scala
@@ -14,7 +14,7 @@ class MarkdownShortener {
def shorten(node: Node, maxLen: Int = 150): Node = {
var len = 0
- var didUnlinkBullets = false
+ var didUnlinkListItem = false
def count(node: Node, length: => Int, shortenOrUnlink: Int => Unit) = {
val remaining = math.max(maxLen - len, 0)
@@ -53,11 +53,22 @@ class MarkdownShortener {
new VisitHandler(classOf[BulletListItem], new Visitor[BulletListItem] {
override def visit(node: BulletListItem) = count(
node,
- if (didUnlinkBullets) maxLen
+ if (didUnlinkListItem) maxLen
else node.getSegments.map(_.length).reduceLeft(_ + _),
_ => {
node.unlink()
- didUnlinkBullets = true // unlink all following bullets
+ didUnlinkListItem = true // unlink all following bullets
+ }
+ )
+ }),
+ new VisitHandler(classOf[OrderedListItem], new Visitor[OrderedListItem] {
+ override def visit(node: OrderedListItem) = count(
+ node,
+ if (didUnlinkListItem) maxLen
+ else node.getSegments.map(_.length).reduceLeft(_ + _),
+ _ => {
+ node.unlink()
+ didUnlinkListItem = true // unlink all following bullets
}
)
})