diff options
author | Felix Mulder <felix.mulder@gmail.com> | 2017-01-11 19:05:22 +0100 |
---|---|---|
committer | Felix Mulder <felix.mulder@gmail.com> | 2017-01-31 14:31:06 +0100 |
commit | 4f177580ff08eeea183cdcfec53eba2888162157 (patch) | |
tree | 2210890c2b75262eb02914bea985f6bea2604364 /doc-tool/src/dotty/tools | |
parent | df21ea53e5ff015906500c95db8c68af8fcfd602 (diff) | |
download | dotty-4f177580ff08eeea183cdcfec53eba2888162157.tar.gz dotty-4f177580ff08eeea183cdcfec53eba2888162157.tar.bz2 dotty-4f177580ff08eeea183cdcfec53eba2888162157.zip |
Add `reverse` filter
Diffstat (limited to 'doc-tool/src/dotty/tools')
-rw-r--r-- | doc-tool/src/dotty/tools/dottydoc/staticsite/LiquidTemplate.scala | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/doc-tool/src/dotty/tools/dottydoc/staticsite/LiquidTemplate.scala b/doc-tool/src/dotty/tools/dottydoc/staticsite/LiquidTemplate.scala index b3d497ee5..eaf1c6bef 100644 --- a/doc-tool/src/dotty/tools/dottydoc/staticsite/LiquidTemplate.scala +++ b/doc-tool/src/dotty/tools/dottydoc/staticsite/LiquidTemplate.scala @@ -13,6 +13,14 @@ case class LiquidTemplate(contents: String) extends ResourceFinder { import liqp.parser.Flavor.JEKYLL import java.util.{ HashMap, Map => JMap } + Filter.registerFilter(new Filter("reverse") { + override def apply(value: Any, params: AnyRef*): AnyRef = { + val array = super.asArray(value) + if (array.length == 0) null + else array.reverse + } + }) + // For some reason, liqp rejects a straight conversion using `.asJava` private def toJavaMap(map: Map[String, AnyRef]): HashMap[String, Object] = map.foldLeft(new HashMap[String, Object]()) { case (map, (k, v)) => @@ -29,7 +37,7 @@ case class LiquidTemplate(contents: String) extends ResourceFinder { extends Tag("include") { val DefaultExtension = ".html" - override def render(ctx: TemplateContext, nodes: LNode*): AnyRef = try { + override def render(ctx: TemplateContext, nodes: LNode*): AnyRef = { val origInclude = asString(nodes(0).render(ctx)) val incResource = origInclude match { case fileWithExt if fileWithExt.indexOf('.') > 0 => fileWithExt @@ -50,10 +58,6 @@ case class LiquidTemplate(contents: String) extends ResourceFinder { /*dottydoc.*/println(s"couldn't find include file '$origInclude'") "" } - } catch { - case t: Throwable => - println(s"got error: ${t.getMessage}") - throw t } } } |