aboutsummaryrefslogtreecommitdiff
path: root/api/dotty/tools/dotc/transform/PatternMatcher/Translator.html
diff options
context:
space:
mode:
authordotty-bot <felix.mulder@epfl.ch>2017-02-03 18:05:53 +0000
committerdotty-bot <felix.mulder@epfl.ch>2017-02-03 18:05:53 +0000
commit881c3b182fda1036d5a507d08ff85f7709d70703 (patch)
treec0248d0a1664dcbf9f483b65f65e4d4710c3d0bb /api/dotty/tools/dotc/transform/PatternMatcher/Translator.html
parentb45ed2e609603cdaa94f9b7f5099da01e5e45314 (diff)
downloaddotty-881c3b182fda1036d5a507d08ff85f7709d70703.tar.gz
dotty-881c3b182fda1036d5a507d08ff85f7709d70703.tar.bz2
dotty-881c3b182fda1036d5a507d08ff85f7709d70703.zip
Update gh-pages site for da7d7231b7f21fe1085abc569eb783590074a359
Diffstat (limited to 'api/dotty/tools/dotc/transform/PatternMatcher/Translator.html')
-rw-r--r--api/dotty/tools/dotc/transform/PatternMatcher/Translator.html349
1 files changed, 332 insertions, 17 deletions
diff --git a/api/dotty/tools/dotc/transform/PatternMatcher/Translator.html b/api/dotty/tools/dotc/transform/PatternMatcher/Translator.html
index f1d26a087..5db221fc0 100644
--- a/api/dotty/tools/dotc/transform/PatternMatcher/Translator.html
+++ b/api/dotty/tools/dotc/transform/PatternMatcher/Translator.html
@@ -5321,6 +5321,9 @@
<div id="entity-container">
<div id="entity-title">
+ <span id="entity-annotations">
+
+ </span>
<span id="entity-modifiers">
</span>
@@ -5330,16 +5333,59 @@
<span id="entity-name">
Translator
</span>
+
+
</div>
- <h1 class="section ">Members</h1>
+ <h1 class="section ">
+ Constructors
+ </h1>
+
+ <div id="entity-constructors" class="entity-section ">
+
+
+ <div class="member">
+ <div class="member-title">
+ <span class="member-name">Translator</span>
+ <span class="no-left">(</span>
+
+
+ <span class="no-left">)</span>
+ </div>
+ </div>
+
+ <div class="member">
+ <div class="member-title">
+ <span class="member-name">Translator</span>
+ <span class="no-left">(</span>
+
+ <span class="no-left keyword">implicit</span>
+
+
+ <span class="no-left">
+ ctx:
+ </span>
+ Context
+
+
+ <span class="no-left">)</span>
+ </div>
+ </div>
+
+
+ </div>
+
+ <h1 class="section ">
+ Members
+ </h1>
<div id="entity-members" class="entity-section ">
<div id="CodegenCore" class="member ">
<div class="member-title">
+ <span class="expand-button" onclick="toggleMemberBody(this, 'CodegenCore');">[+]</span>
<span class="member-annotations">
</span>
@@ -5363,12 +5409,29 @@
</div><!-- end member-title -->
<div class="member-body">
-
+ <div class="member-body-short" id="short-body-CodegenCore">
+
+ </div>
+ <div class="member-body-long" id ="long-body-CodegenCore">
+
+ </div>
</div>
+ <script>
+ function toggleMemberBody(span, sig) {
+ var shortBody = document.getElementById("short-body-" + sig);
+ var longBody = document.getElementById("long-body-" + sig);
+
+ shortBody.classList.toggle("toggled")
+ longBody.classList.toggle("toggled")
+
+ span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
+ }
+ </script>
</div><!-- end member -->
<div id="MatchOptimizer" class="member ">
<div class="member-title">
+ <span class="expand-button" onclick="toggleMemberBody(this, 'MatchOptimizer');">[+]</span>
<span class="member-annotations">
</span>
@@ -5392,12 +5455,29 @@
</div><!-- end member-title -->
<div class="member-body">
-
+ <div class="member-body-short" id="short-body-MatchOptimizer">
+
+ </div>
+ <div class="member-body-long" id ="long-body-MatchOptimizer">
+
+ </div>
</div>
+ <script>
+ function toggleMemberBody(span, sig) {
+ var shortBody = document.getElementById("short-body-" + sig);
+ var longBody = document.getElementById("long-body-" + sig);
+
+ shortBody.classList.toggle("toggled")
+ longBody.classList.toggle("toggled")
+
+ span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
+ }
+ </script>
</div><!-- end member -->
<div id="MatchTranslator" class="member ">
<div class="member-title">
+ <span class="expand-button" onclick="toggleMemberBody(this, 'MatchTranslator');">[+]</span>
<span class="member-annotations">
</span>
@@ -5421,12 +5501,29 @@
</div><!-- end member-title -->
<div class="member-body">
-
+ <div class="member-body-short" id="short-body-MatchTranslator">
+
+ </div>
+ <div class="member-body-long" id ="long-body-MatchTranslator">
+
+ </div>
</div>
+ <script>
+ function toggleMemberBody(span, sig) {
+ var shortBody = document.getElementById("short-body-" + sig);
+ var longBody = document.getElementById("long-body-" + sig);
+
+ shortBody.classList.toggle("toggled")
+ longBody.classList.toggle("toggled")
+
+ span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
+ }
+ </script>
</div><!-- end member -->
<div id="NoRebindings$" class="member ">
<div class="member-title">
+ <span class="expand-button" onclick="toggleMemberBody(this, 'NoRebindings$');">[+]</span>
<span class="member-annotations">
</span>
@@ -5450,12 +5547,29 @@
</div><!-- end member-title -->
<div class="member-body">
-
+ <div class="member-body-short" id="short-body-NoRebindings$">
+
+ </div>
+ <div class="member-body-long" id ="long-body-NoRebindings$">
+
+ </div>
</div>
+ <script>
+ function toggleMemberBody(span, sig) {
+ var shortBody = document.getElementById("short-body-" + sig);
+ var longBody = document.getElementById("long-body-" + sig);
+
+ shortBody.classList.toggle("toggled")
+ longBody.classList.toggle("toggled")
+
+ span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
+ }
+ </script>
</div><!-- end member -->
<div id="OptimizedCodegen" class="member ">
<div class="member-title">
+ <span class="expand-button" onclick="toggleMemberBody(this, 'OptimizedCodegen');">[+]</span>
<span class="member-annotations">
</span>
@@ -5479,12 +5593,29 @@
</div><!-- end member-title -->
<div class="member-body">
-
+ <div class="member-body-short" id="short-body-OptimizedCodegen">
+
+ </div>
+ <div class="member-body-long" id ="long-body-OptimizedCodegen">
+
+ </div>
</div>
+ <script>
+ function toggleMemberBody(span, sig) {
+ var shortBody = document.getElementById("short-body-" + sig);
+ var longBody = document.getElementById("long-body-" + sig);
+
+ shortBody.classList.toggle("toggled")
+ longBody.classList.toggle("toggled")
+
+ span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
+ }
+ </script>
</div><!-- end member -->
<div id="OptimizingMatchTranslator" class="member ">
<div class="member-title">
+ <span class="expand-button" onclick="toggleMemberBody(this, 'OptimizingMatchTranslator');">[+]</span>
<span class="member-annotations">
</span>
@@ -5508,12 +5639,29 @@
</div><!-- end member-title -->
<div class="member-body">
-
+ <div class="member-body-short" id="short-body-OptimizingMatchTranslator">
+
+ </div>
+ <div class="member-body-long" id ="long-body-OptimizingMatchTranslator">
+
+ </div>
</div>
+ <script>
+ function toggleMemberBody(span, sig) {
+ var shortBody = document.getElementById("short-body-" + sig);
+ var longBody = document.getElementById("long-body-" + sig);
+
+ shortBody.classList.toggle("toggled")
+ longBody.classList.toggle("toggled")
+
+ span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
+ }
+ </script>
</div><!-- end member -->
<div id="PatternExpander" class="member ">
<div class="member-title">
+ <span class="expand-button" onclick="toggleMemberBody(this, 'PatternExpander');">[+]</span>
<span class="member-annotations">
</span>
@@ -5537,7 +5685,8 @@
</div><!-- end member-title -->
<div class="member-body">
- <p>An extractor returns: F1, F2, ..., Fi, opt[Seq[E] or E*]
+ <div class="member-body-short" id="short-body-PatternExpander">
+ <p>An extractor returns: F1, F2, ..., Fi, opt[Seq[E] or E*]
A case matches: P1, P2, ..., Pj, opt[Seq[E]]
Put together: P1/F1, P2/F2, ... Pi/Fi, Pi+1/E, Pi+2/E,...[E]</p>
<p></p>
@@ -5546,11 +5695,40 @@ Put together: P1/F1, P2/F2, ... Pi/Fi, Pi+1/E, Pi+2/E,...[E]</p>
<p>
</p>
+ </div>
+ <div class="member-body-long" id ="long-body-PatternExpander">
+ <p>An extractor returns: F1, F2, ..., Fi, opt[Seq[E] or E*]
+A case matches: P1, P2, ..., Pj, opt[Seq[E]]
+Put together: P1/F1, P2/F2, ... Pi/Fi, Pi+1/E, Pi+2/E, ... Pj/E, opt[Seq[E]]</p>
+<p>Here Pm/Fi is the last pattern to match the fixed arity section.</p>
+<p>prodArity: the value of i, i.e. the number of non-sequence types in the extractor
+nonStarArity: the value of j, i.e. the number of non-star patterns in the case definition
+elementArity: j - i, i.e. the number of non-star patterns which must match sequence elements
+starArity: 1 or 0 based on whether there is a star (sequence-absorbing) pattern
+totalArity: nonStarArity + starArity, i.e. the number of patterns in the case definition</p>
+<p>Note that prodArity is a function only of the extractor, and
+nonStar/star/totalArity are all functions of the patterns. The key
+value for aligning and typing the patterns is elementArity, as it
+is derived from both sets of information.</p>
+
+ </div>
</div>
+ <script>
+ function toggleMemberBody(span, sig) {
+ var shortBody = document.getElementById("short-body-" + sig);
+ var longBody = document.getElementById("long-body-" + sig);
+
+ shortBody.classList.toggle("toggled")
+ longBody.classList.toggle("toggled")
+
+ span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
+ }
+ </script>
</div><!-- end member -->
<div id="Rebindings" class="member ">
<div class="member-title">
+ <span class="expand-button" onclick="toggleMemberBody(this, 'Rebindings');">[+]</span>
<span class="member-annotations">
</span>
@@ -5574,12 +5752,29 @@ Put together: P1/F1, P2/F2, ... Pi/Fi, Pi+1/E, Pi+2/E,...[E]</p>
</div><!-- end member-title -->
<div class="member-body">
-
+ <div class="member-body-short" id="short-body-Rebindings">
+
+ </div>
+ <div class="member-body-long" id ="long-body-Rebindings">
+
+ </div>
</div>
+ <script>
+ function toggleMemberBody(span, sig) {
+ var shortBody = document.getElementById("short-body-" + sig);
+ var longBody = document.getElementById("long-body-" + sig);
+
+ shortBody.classList.toggle("toggled")
+ longBody.classList.toggle("toggled")
+
+ span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
+ }
+ </script>
</div><!-- end member -->
<div id="Rebindings$" class="member ">
<div class="member-title">
+ <span class="expand-button" onclick="toggleMemberBody(this, 'Rebindings$');">[+]</span>
<span class="member-annotations">
</span>
@@ -5603,12 +5798,29 @@ Put together: P1/F1, P2/F2, ... Pi/Fi, Pi+1/E, Pi+2/E,...[E]</p>
</div><!-- end member-title -->
<div class="member-body">
-
+ <div class="member-body-short" id="short-body-Rebindings$">
+
+ </div>
+ <div class="member-body-long" id ="long-body-Rebindings$">
+
+ </div>
</div>
+ <script>
+ function toggleMemberBody(span, sig) {
+ var shortBody = document.getElementById("short-body-" + sig);
+ var longBody = document.getElementById("long-body-" + sig);
+
+ shortBody.classList.toggle("toggled")
+ longBody.classList.toggle("toggled")
+
+ span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
+ }
+ </script>
</div><!-- end member -->
<div id="ScalacPatternExpanders" class="member ">
<div class="member-title">
+ <span class="expand-button" onclick="toggleMemberBody(this, 'ScalacPatternExpanders');">[+]</span>
<span class="member-annotations">
</span>
@@ -5632,14 +5844,33 @@ Put together: P1/F1, P2/F2, ... Pi/Fi, Pi+1/E, Pi+2/E,...[E]</p>
</div><!-- end member-title -->
<div class="member-body">
- <p>This is scalac-specific logic layered on top of the scalac-agnostic
+ <div class="member-body-short" id="short-body-ScalacPatternExpanders">
+ <p>This is scalac-specific logic layered on top of the scalac-agnostic
&quot;matching products to patterns&quot; logic defined in PatternExpander.</p>
+ </div>
+ <div class="member-body-long" id ="long-body-ScalacPatternExpanders">
+ <p>This is scalac-specific logic layered on top of the scalac-agnostic
+&quot;matching products to patterns&quot; logic defined in PatternExpander.</p>
+
+ </div>
</div>
+ <script>
+ function toggleMemberBody(span, sig) {
+ var shortBody = document.getElementById("short-body-" + sig);
+ var longBody = document.getElementById("long-body-" + sig);
+
+ shortBody.classList.toggle("toggled")
+ longBody.classList.toggle("toggled")
+
+ span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
+ }
+ </script>
</div><!-- end member -->
<div id="Suppression" class="member ">
<div class="member-title">
+ <span class="expand-button" onclick="toggleMemberBody(this, 'Suppression');">[+]</span>
<span class="member-annotations">
</span>
@@ -5663,12 +5894,29 @@ Put together: P1/F1, P2/F2, ... Pi/Fi, Pi+1/E, Pi+2/E,...[E]</p>
</div><!-- end member-title -->
<div class="member-body">
-
+ <div class="member-body-short" id="short-body-Suppression">
+
+ </div>
+ <div class="member-body-long" id ="long-body-Suppression">
+
+ </div>
</div>
+ <script>
+ function toggleMemberBody(span, sig) {
+ var shortBody = document.getElementById("short-body-" + sig);
+ var longBody = document.getElementById("long-body-" + sig);
+
+ shortBody.classList.toggle("toggled")
+ longBody.classList.toggle("toggled")
+
+ span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
+ }
+ </script>
</div><!-- end member -->
<div id="Suppression$" class="member ">
<div class="member-title">
+ <span class="expand-button" onclick="toggleMemberBody(this, 'Suppression$');">[+]</span>
<span class="member-annotations">
</span>
@@ -5692,12 +5940,29 @@ Put together: P1/F1, P2/F2, ... Pi/Fi, Pi+1/E, Pi+2/E,...[E]</p>
</div><!-- end member-title -->
<div class="member-body">
-
+ <div class="member-body-short" id="short-body-Suppression$">
+
+ </div>
+ <div class="member-body-long" id ="long-body-Suppression$">
+
+ </div>
</div>
+ <script>
+ function toggleMemberBody(span, sig) {
+ var shortBody = document.getElementById("short-body-" + sig);
+ var longBody = document.getElementById("long-body-" + sig);
+
+ shortBody.classList.toggle("toggled")
+ longBody.classList.toggle("toggled")
+
+ span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
+ }
+ </script>
</div><!-- end member -->
<div id="TreeMakers" class="member ">
<div class="member-title">
+ <span class="expand-button" onclick="toggleMemberBody(this, 'TreeMakers');">[+]</span>
<span class="member-annotations">
</span>
@@ -5721,12 +5986,29 @@ Put together: P1/F1, P2/F2, ... Pi/Fi, Pi+1/E, Pi+2/E,...[E]</p>
</div><!-- end member-title -->
<div class="member-body">
-
+ <div class="member-body-short" id="short-body-TreeMakers">
+
+ </div>
+ <div class="member-body-long" id ="long-body-TreeMakers">
+
+ </div>
</div>
+ <script>
+ function toggleMemberBody(span, sig) {
+ var shortBody = document.getElementById("short-body-" + sig);
+ var longBody = document.getElementById("long-body-" + sig);
+
+ shortBody.classList.toggle("toggled")
+ longBody.classList.toggle("toggled")
+
+ span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
+ }
+ </script>
</div><!-- end member -->
<div id="ctx" class="member private">
<div class="member-title">
+ <span class="expand-button" onclick="toggleMemberBody(this, 'ctx');">[+]</span>
<span class="member-annotations">
</span>
@@ -5747,17 +6029,34 @@ Put together: P1/F1, P2/F2, ... Pi/Fi, Pi+1/E, Pi+2/E,...[E]</p>
- <span class="no-left">: Context</span>
+ <span class="no-left">: <a href="../../../../../.././api/dotty/tools/dotc/core/Contexts$/Context.html">Context</a></span>
</div><!-- end member-title -->
<div class="member-body">
-
+ <div class="member-body-short" id="short-body-ctx">
+
+ </div>
+ <div class="member-body-long" id ="long-body-ctx">
+
+ </div>
</div>
+ <script>
+ function toggleMemberBody(span, sig) {
+ var shortBody = document.getElementById("short-body-" + sig);
+ var longBody = document.getElementById("long-body-" + sig);
+
+ shortBody.classList.toggle("toggled")
+ longBody.classList.toggle("toggled")
+
+ span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
+ }
+ </script>
</div><!-- end member -->
<div id="translator" class="member ">
<div class="member-title">
+ <span class="expand-button" onclick="toggleMemberBody(this, 'translator');">[+]</span>
<span class="member-annotations">
</span>
@@ -5783,8 +6082,24 @@ Put together: P1/F1, P2/F2, ... Pi/Fi, Pi+1/E, Pi+2/E,...[E]</p>
</div><!-- end member-title -->
<div class="member-body">
-
+ <div class="member-body-short" id="short-body-translator">
+
+ </div>
+ <div class="member-body-long" id ="long-body-translator">
+
+ </div>
</div>
+ <script>
+ function toggleMemberBody(span, sig) {
+ var shortBody = document.getElementById("short-body-" + sig);
+ var longBody = document.getElementById("long-body-" + sig);
+
+ shortBody.classList.toggle("toggled")
+ longBody.classList.toggle("toggled")
+
+ span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
+ }
+ </script>
</div><!-- end member -->
</div>