diff options
author | Felix Mulder <felix.mulder@gmail.com> | 2017-01-16 14:05:15 +0100 |
---|---|---|
committer | Felix Mulder <felix.mulder@gmail.com> | 2017-01-31 14:32:35 +0100 |
commit | 6f6dc9767badd4bcacd8f00ef0ed467bcabc6296 (patch) | |
tree | e381a1be3195be8c69abb84a3e59b0c5470e557c /doc-tool/resources/_includes | |
parent | 248f469ddcf57067d02e8b1bea41237766a75cfb (diff) | |
download | dotty-6f6dc9767badd4bcacd8f00ef0ed467bcabc6296.tar.gz dotty-6f6dc9767badd4bcacd8f00ef0ed467bcabc6296.tar.bz2 dotty-6f6dc9767badd4bcacd8f00ef0ed467bcabc6296.zip |
Re-implement template expansion of references as filter
The original implementation used the template engine to recursively
expand references. This was very error-prone and with no typesafety and
proper stack traces it was very hard to diagnose. As such, these two
expansions (links and references) have been re-implemented as filters.
Diffstat (limited to 'doc-tool/resources/_includes')
-rw-r--r-- | doc-tool/resources/_includes/link.html | 6 | ||||
-rw-r--r-- | doc-tool/resources/_includes/reference.html | 77 |
2 files changed, 0 insertions, 83 deletions
diff --git a/doc-tool/resources/_includes/link.html b/doc-tool/resources/_includes/link.html deleted file mode 100644 index 621894eaf..000000000 --- a/doc-tool/resources/_includes/link.html +++ /dev/null @@ -1,6 +0,0 @@ -{% case tpeLink.kind %} -{% when 'NoLink' %} - {{ tpeLink.title }} -{% else %} - <a href="{{ tpeLink.target }}">{{ tpeLink.title }}</a> -{% endcase %} diff --git a/doc-tool/resources/_includes/reference.html b/doc-tool/resources/_includes/reference.html deleted file mode 100644 index eb741c02c..000000000 --- a/doc-tool/resources/_includes/reference.html +++ /dev/null @@ -1,77 +0,0 @@ -{% case reference.kind %} -{% when 'TypeReference' %} - - {% assign tpeLink = reference.tpeLink %} - {% include 'link' %} - {% if reference.paramLinks.size > 0 %} - <span class="no-left no-right">[</span> - {% for reference in reference.paramLinks %} - {% include 'reference' %} - {% if forloop.last != true %} - <span class="no-left">, </span> - {% endif %} - {% endfor %} - <span class="no-left">]</span> - {% endif %} - -{% when 'FunctionReference' %} - - {% assign originalLink = reference %} - {% case reference.args.size %} - {% when 0 %} - <span>()</span> - {% when 1 %} - {% for reference in reference.args %} - {% include 'reference' %} - {% endfor %} - {% else %} - {% for reference in reference.args %} - {% if forloop.first %} - <span class="no-right">(</span> - {% endif %} - {% include 'reference' %} - {% if forloop.last != true %} - <span class="no-left">,</span> - {% else %} - <span class="no-left">)</span> - {% endif %} - {% endfor %} - {% endcase %} - <span>=></span> - {% assign reference = originalLink.returnValue %} - {% include 'reference' %} - -{% when 'TupleReference' %} - - {% for reference in reference.args %} - {% if forloop.first %}<span class="no-right">(</span>{% endif %} - {% include 'reference' %} - {% if forloop.last %} - <span class="no-left">)</span> - {% else %} - <span class="no-left">,</span> - {% endif %} - {% endfor %} - -{% when 'BoundsReference' %} - - {% assign oldRef = reference %} - {% assign reference = oldRef.low %} - {% include 'reference' %} - <span><:</span> - {% assign reference = oldRef.hi %} - {% include 'reference' %} - -{% when 'ConstantReference' %} - {{ reference.title }} - -{% else %} - - {% assign original= reference %} - {% assign reference = original.left %} - {% include 'reference' %} - <span>{% if original.kind == "OrTypeReference" %}|{% else %}&{% endif %}</span> - {% assign reference = original.right %} - {% include 'reference' %} - -{% endcase %} |