aboutsummaryrefslogtreecommitdiff
path: root/dottydoc
diff options
context:
space:
mode:
authorFelix Mulder <felix.mulder@gmail.com>2016-07-11 13:30:53 +0200
committerFelix Mulder <felix.mulder@gmail.com>2016-08-19 15:37:29 +0200
commit7d8dadeffe73ebe6bbf094c7e2ca3ee9d18528fd (patch)
treedbf5a7f001327a667f59f5d53b4c786a10e48f81 /dottydoc
parent5e88fe39ac7ac1422a13af39428143215297d23f (diff)
downloaddotty-7d8dadeffe73ebe6bbf094c7e2ca3ee9d18528fd.tar.gz
dotty-7d8dadeffe73ebe6bbf094c7e2ca3ee9d18528fd.tar.bz2
dotty-7d8dadeffe73ebe6bbf094c7e2ca3ee9d18528fd.zip
Implement by name in parameter lists
Diffstat (limited to 'dottydoc')
-rw-r--r--dottydoc/js/src/html/Member.scala2
-rw-r--r--dottydoc/js/src/model/references.scala1
-rw-r--r--dottydoc/jvm/src/dotty/tools/dottydoc/core/TypeLinkingPhases.scala2
-rw-r--r--dottydoc/jvm/src/dotty/tools/dottydoc/model/json.scala6
-rw-r--r--dottydoc/shared/src/main/scala/dotty/tools/dottydoc/model/comment/BodyEntities.scala2
-rw-r--r--dottydoc/shared/src/main/scala/dotty/tools/dottydoc/model/factories.scala2
6 files changed, 10 insertions, 5 deletions
diff --git a/dottydoc/js/src/html/Member.scala b/dottydoc/js/src/html/Member.scala
index 1786f745a..772a1ed23 100644
--- a/dottydoc/js/src/html/Member.scala
+++ b/dottydoc/js/src/html/Member.scala
@@ -86,7 +86,7 @@ trait MemberLayout {
xs.flatMap { tr =>
Seq(
span(cls := "param-name", tr.title).render,
- span(cls := "type-separator no-left-margin", ":").render,
+ span(cls := "type-separator no-left-margin", if (tr.isByName) ": =>" else ":").render,
span(referenceToLinks(tr.ref)).render,
span(cls := "type-separator no-left-margin", ",").render
)
diff --git a/dottydoc/js/src/model/references.scala b/dottydoc/js/src/model/references.scala
index 8e725b5d9..3fab228af 100644
--- a/dottydoc/js/src/model/references.scala
+++ b/dottydoc/js/src/model/references.scala
@@ -35,6 +35,7 @@ trait AndTypeReference extends Reference {
trait NamedReference extends Reference {
val title: String
val ref: Reference
+ val isByName: Boolean
}
@ScalaJSDefined
diff --git a/dottydoc/jvm/src/dotty/tools/dottydoc/core/TypeLinkingPhases.scala b/dottydoc/jvm/src/dotty/tools/dottydoc/core/TypeLinkingPhases.scala
index 105aeaef6..c1ad520ff 100644
--- a/dottydoc/jvm/src/dotty/tools/dottydoc/core/TypeLinkingPhases.scala
+++ b/dottydoc/jvm/src/dotty/tools/dottydoc/core/TypeLinkingPhases.scala
@@ -63,7 +63,7 @@ trait TypeLinker extends MemberLookup {
rv.copy(left = linkReference(ent, left, packs), right = linkReference(ent, right, packs))
case rv @ AndTypeReference(left, right) =>
rv.copy(left = linkReference(ent, left, packs), right = linkReference(ent, right, packs))
- case rv @ NamedReference(_, ref) => rv.copy(ref = linkReference(ent, ref, packs))
+ case rv @ NamedReference(_, ref, _) => rv.copy(ref = linkReference(ent, ref, packs))
case _ => rv
}
}
diff --git a/dottydoc/jvm/src/dotty/tools/dottydoc/model/json.scala b/dottydoc/jvm/src/dotty/tools/dottydoc/model/json.scala
index da6e4d909..621ab0868 100644
--- a/dottydoc/jvm/src/dotty/tools/dottydoc/model/json.scala
+++ b/dottydoc/jvm/src/dotty/tools/dottydoc/model/json.scala
@@ -20,6 +20,10 @@ object json {
}
}
+ implicit class JsonBoolean(val boo: Boolean) extends AnyVal {
+ def json: String = if (boo) "true" else "false"
+ }
+
implicit class JsonComment(val cmt: Comment) extends AnyVal {
def json: String = s"""{"body":${cmt.body.json},"short":${cmt.short.json}}"""
}
@@ -43,7 +47,7 @@ object json {
case ref: OrTypeReference =>
s"""{"left":${refToJson(ref.left)},"right":${refToJson(ref.right)},"kind":"OrTypeReference"}"""
case ref: NamedReference =>
- s"""{"title":${ref.title.json},"ref":${refToJson(ref.ref)},"kind":"NamedReference"}"""
+ s"""{"title":${ref.title.json},"ref":${refToJson(ref.ref)},"isByName":${ref.isByName.json},"kind":"NamedReference"}"""
case ref: ConstantReference =>
s"""{"title":${ref.title.json},"kind": "ConstantReference"}"""
}
diff --git a/dottydoc/shared/src/main/scala/dotty/tools/dottydoc/model/comment/BodyEntities.scala b/dottydoc/shared/src/main/scala/dotty/tools/dottydoc/model/comment/BodyEntities.scala
index 526eff50c..d7ad4de71 100644
--- a/dottydoc/shared/src/main/scala/dotty/tools/dottydoc/model/comment/BodyEntities.scala
+++ b/dottydoc/shared/src/main/scala/dotty/tools/dottydoc/model/comment/BodyEntities.scala
@@ -103,5 +103,5 @@ sealed trait Reference
final case class TypeReference(title: String, tpeLink: MaterializableLink, paramLinks: List[MaterializableLink]) extends Reference
final case class OrTypeReference(left: Reference, right: Reference) extends Reference
final case class AndTypeReference(left: Reference, right: Reference) extends Reference
-final case class NamedReference(title: String, ref: Reference) extends Reference
+final case class NamedReference(title: String, ref: Reference, isByName: Boolean = false) extends Reference
final case class ConstantReference(title: String) extends Reference
diff --git a/dottydoc/shared/src/main/scala/dotty/tools/dottydoc/model/factories.scala b/dottydoc/shared/src/main/scala/dotty/tools/dottydoc/model/factories.scala
index 452c1a3b4..72e52a96f 100644
--- a/dottydoc/shared/src/main/scala/dotty/tools/dottydoc/model/factories.scala
+++ b/dottydoc/shared/src/main/scala/dotty/tools/dottydoc/model/factories.scala
@@ -113,7 +113,7 @@ object factories {
case mt: MethodType =>
mt.paramNames.zip(mt.paramTypes).map { case (name, tpe) =>
- NamedReference(name.decode.toString, returnType(tpe))
+ NamedReference(name.decode.toString, returnType(tpe), tpe.isInstanceOf[ExprType])
} :: paramLists(mt.resultType)
case annot: AnnotatedType => paramLists(annot.tpe)