aboutsummaryrefslogtreecommitdiff
path: root/dottydoc/js
diff options
context:
space:
mode:
authorFelix Mulder <felix.mulder@gmail.com>2016-06-10 18:17:59 +0200
committerFelix Mulder <felix.mulder@gmail.com>2016-08-19 15:37:25 +0200
commit091272744ac958e847b408cd30b3bc9978136d0e (patch)
tree2424cc79a0d3d66bd15c51de79d2da4009572b2d /dottydoc/js
parenta099344f81ddb0463bbc6da99c376df9f70667df (diff)
downloaddotty-091272744ac958e847b408cd30b3bc9978136d0e.tar.gz
dotty-091272744ac958e847b408cd30b3bc9978136d0e.tar.bz2
dotty-091272744ac958e847b408cd30b3bc9978136d0e.zip
Add type parameters to rendered entity
Diffstat (limited to 'dottydoc/js')
-rw-r--r--dottydoc/js/src/html/Member.scala10
-rw-r--r--dottydoc/js/src/model/entities.scala17
2 files changed, 21 insertions, 6 deletions
diff --git a/dottydoc/js/src/html/Member.scala b/dottydoc/js/src/html/Member.scala
index c4989e762..8b6a85e59 100644
--- a/dottydoc/js/src/html/Member.scala
+++ b/dottydoc/js/src/html/Member.scala
@@ -48,7 +48,10 @@ trait MemberLayout {
onclick := { () => toggleBetween(shortComment, and = fullComment) },
div(
cls := "mdl-cell mdl-cell--12-col",
- span(cls := "member-name", m.modifiers.mkString(" ") + " " + m.kind + " " + m.name),
+ span(
+ cls := "member-name",
+ m.modifiers.mkString(" ") + " " + m.kind + " " + m.name + typeParams(m)
+ ),
returnValue(m, parent)
),
shortComment,
@@ -59,6 +62,11 @@ trait MemberLayout {
}
}
+ def typeParams(m: Entity): String = m match {
+ case d: Def if d.typeParams.nonEmpty => d.typeParams.mkString("[", ", ", "]")
+ case _ => ""
+ }
+
def returnValue(m: Entity with Modifiers, parent: Entity) = {
// shortens: "Option.this.A" => "A"
def shorten(s: String): String = s.split('.').toList match {
diff --git a/dottydoc/js/src/model/entities.scala b/dottydoc/js/src/model/entities.scala
index 4a4984a34..1d8c00b2c 100644
--- a/dottydoc/js/src/model/entities.scala
+++ b/dottydoc/js/src/model/entities.scala
@@ -21,9 +21,7 @@ import sjs.annotation.ScalaJSDefined
@ScalaJSDefined
trait Entity extends sjs.Object {
val kind: String
-
val name: String
-
val path: sjs.Array[String]
}
@@ -53,13 +51,15 @@ trait Object extends Class
trait Trait extends Class
@ScalaJSDefined
-trait Def extends Entity with Modifiers
+trait Def extends Entity with Modifiers {
+ val typeParams: sjs.Array[String]
+}
@ScalaJSDefined
-trait Val extends Def
+trait Val extends Entity with Modifiers
@ScalaJSDefined
-trait Var extends Def
+trait Var extends Entity with Modifiers
object ops {
val EntitiesWithMembers =
@@ -79,4 +79,11 @@ object ops {
val members = mbrs
}
}
+
+ implicit class EntityOps(val ent: Entity) {
+ def typeParams: sjs.Array[String] =
+ if (ent.kind == "def")
+ ent.asInstanceOf[Def].typeParams
+ else sjs.Array()
+ }
}