diff options
Diffstat (limited to 'doc-tool/src/dotty/tools/dottydoc/staticsite/LiquidTemplate.scala')
-rw-r--r-- | doc-tool/src/dotty/tools/dottydoc/staticsite/LiquidTemplate.scala | 32 |
1 files changed, 3 insertions, 29 deletions
diff --git a/doc-tool/src/dotty/tools/dottydoc/staticsite/LiquidTemplate.scala b/doc-tool/src/dotty/tools/dottydoc/staticsite/LiquidTemplate.scala index a92e5d48e..a86a5bb54 100644 --- a/doc-tool/src/dotty/tools/dottydoc/staticsite/LiquidTemplate.scala +++ b/doc-tool/src/dotty/tools/dottydoc/staticsite/LiquidTemplate.scala @@ -6,18 +6,15 @@ import dotc.config.Printers.dottydoc case class LiquidTemplate(contents: String) extends ResourceFinder { import scala.collection.JavaConverters._ - import liqp.{ Template, TemplateContext } - import liqp.nodes.LNode - import liqp.tags.Tag + import liqp.Template import liqp.filters.Filter import liqp.parser.Flavor.JEKYLL import java.util.{ HashMap, Map => JMap } import filters._ + import tags._ /** Register filters to static container */ Filter.registerFilter(new Reverse) - Filter.registerFilter(new RenderReference) - Filter.registerFilter(new RenderLink) // For some reason, liqp rejects a straight conversion using `.asJava` private def toJavaMap(map: Map[String, AnyRef]): HashMap[String, Object] = @@ -29,29 +26,6 @@ case class LiquidTemplate(contents: String) extends ResourceFinder { def render(params: Map[String, AnyRef], includes: Map[String, String]): String = Template.parse(contents, JEKYLL) .`with`(ResourceInclude(params, includes)) + .`with`(RenderReference(params)) .render(toJavaMap(params)) - - private case class ResourceInclude(params: Map[String, AnyRef], includes: Map[String, String]) - extends Tag("include") { - val DefaultExtension = ".html" - - 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 - case file => file + DefaultExtension - } - - includes - .get(incResource) - .map { template => - if (nodes.length > 1) ctx.put(origInclude, nodes(1).render(ctx)) - LiquidTemplate(template).render(Map.empty ++ ctx.getVariables.asScala, includes) - } - .getOrElse { - /*dottydoc.*/println(s"couldn't find include file '$origInclude'") - "" - } - } - } } |