[Pkg-javascript-commits] [node-acorn-jsx] 258/484: Include Harmony tests in test/index.html

Bastien Roucariès rouca at moszumanska.debian.org
Sat Aug 19 14:20:40 UTC 2017


This is an automated email from the git hooks/post-receive script.

rouca pushed a commit to branch master
in repository node-acorn-jsx.

commit aac1807838729891ad0108262f942ee83730f4e0
Author: Marijn Haverbeke <marijnh at gmail.com>
Date:   Tue Jul 29 14:43:20 2014 +0200

    Include Harmony tests in test/index.html
---
 index.html      | 56 +++++++++++++++++++++++++++++++-------------------------
 test/index.html |  1 +
 2 files changed, 32 insertions(+), 25 deletions(-)

diff --git a/index.html b/index.html
index 0e18c66..eb69a8b 100644
--- a/index.html
+++ b/index.html
@@ -69,7 +69,7 @@ file in every node's <code>loc</code> object.</p>             </td>
 
   <span class="kd">function</span> <span class="nx">setOptions</span><span class="p">(</span><span class="nx">opts</span><span class="p">)</span> <span class="p">{</span>
     <span class="nx">options</span> <span class="o">=</span> <span class="nx">opts</span> <span class="o">||</span> <span class="p">{};</span>
-    <span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">opt</span> <span class="k">in</span> <span class="nx">defaultOptions</span><span class="p">)</span> <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nb">Object</span><span class="p">.</span><span class="nx">prototype</span><span class="p">.</span><span class="nx">hasOwnProperty</span><span class="p">.</span><span class="nx">call</span><span class="p">( [...]
+    <span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">opt</span> <span class="k">in</span> <span class="nx">defaultOptions</span><span class="p">)</span> <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">has</span><span class="p">(</span><span class="nx">options</span><span class="p">,</span> <span class="nx">opt</span><span class="p">))</span>
       <span class="nx">options</span><span class="p">[</span><span class="nx">opt</span><span class="p">]</span> <span class="o">=</span> <span class="nx">defaultOptions</span><span class="p">[</span><span class="nx">opt</span><span class="p">];</span>
     <span class="nx">sourceFile</span> <span class="o">=</span> <span class="nx">options</span><span class="p">.</span><span class="nx">sourceFile</span> <span class="o">||</span> <span class="kc">null</span><span class="p">;</span>
 
@@ -227,7 +227,7 @@ in AssignmentExpression nodes.</p>             </td>             <td class="code
   <span class="kd">var</span> <span class="nx">_relational</span> <span class="o">=</span> <span class="p">{</span><span class="nx">binop</span><span class="o">:</span> <span class="mi">7</span><span class="p">,</span> <span class="nx">beforeExpr</span><span class="o">:</span> <span class="kc">true</span><span class="p">};</span>
   <span class="kd">var</span> <span class="nx">_bitShift</span> <span class="o">=</span> <span class="p">{</span><span class="nx">binop</span><span class="o">:</span> <span class="mi">8</span><span class="p">,</span> <span class="nx">beforeExpr</span><span class="o">:</span> <span class="kc">true</span><span class="p">};</span>
   <span class="kd">var</span> <span class="nx">_plusMin</span> <span class="o">=</span> <span class="p">{</span><span class="nx">binop</span><span class="o">:</span> <span class="mi">9</span><span class="p">,</span> <span class="nx">prefix</span><span class="o">:</span> <span class="kc">true</span><span class="p">,</span> <span class="nx">beforeExpr</span><span class="o">:</span> <span class="kc">true</span><span class="p">};</span>
-  <span class="kd">var</span> <span class="nx">_multiplyModulo</span> <span class="o">=</span> <span class="p">{</span><span class="nx">binop</span><span class="o">:</span> <span class="mi">10</span><span class="p">,</span> <span class="nx">beforeExpr</span><span class="o">:</span> <span class="kc">true</span><span class="p">};</span></pre></div>             </td>           </tr>                               <tr id="section-40">             <td class="docs">               <div class="pi [...]
+  <span class="kd">var</span> <span class="nx">_modulo</span> <span class="o">=</span> <span class="p">{</span><span class="nx">binop</span><span class="o">:</span> <span class="mi">10</span><span class="p">,</span> <span class="nx">beforeExpr</span><span class="o">:</span> <span class="kc">true</span><span class="p">};</span></pre></div>             </td>           </tr>                               <tr id="section-40">             <td class="docs">               <div class="pilwrap">  [...]
 tokenizer.</p>             </td>             <td class="code">               <div class="highlight"><pre>  <span class="nx">exports</span><span class="p">.</span><span class="nx">tokTypes</span> <span class="o">=</span> <span class="p">{</span><span class="nx">bracketL</span><span class="o">:</span> <span class="nx">_bracketL</span><span class="p">,</span> <span class="nx">bracketR</span><span class="o">:</span> <span class="nx">_bracketR</span><span class="p">,</span> <span class="nx">b [...]
                       <span class="nx">parenL</span><span class="o">:</span> <span class="nx">_parenL</span><span class="p">,</span> <span class="nx">parenR</span><span class="o">:</span> <span class="nx">_parenR</span><span class="p">,</span> <span class="nx">comma</span><span class="o">:</span> <span class="nx">_comma</span><span class="p">,</span> <span class="nx">semi</span><span class="o">:</span> <span class="nx">_semi</span><span class="p">,</span> <span class="nx">colon</span><sp [...]
                       <span class="nx">dot</span><span class="o">:</span> <span class="nx">_dot</span><span class="p">,</span> <span class="nx">ellipsis</span><span class="o">:</span> <span class="nx">_ellipsis</span><span class="p">,</span> <span class="nx">question</span><span class="o">:</span> <span class="nx">_question</span><span class="p">,</span> <span class="nx">slash</span><span class="o">:</span> <span class="nx">_slash</span><span class="p">,</span> <span class="nx">eq</span> [...]
@@ -419,7 +419,7 @@ into it.</p>
   <span class="kd">function</span> <span class="nx">readToken_mult_modulo</span><span class="p">(</span><span class="nx">code</span><span class="p">)</span> <span class="p">{</span> <span class="c1">// '%*'</span>
     <span class="kd">var</span> <span class="nx">next</span> <span class="o">=</span> <span class="nx">input</span><span class="p">.</span><span class="nx">charCodeAt</span><span class="p">(</span><span class="nx">tokPos</span> <span class="o">+</span> <span class="mi">1</span><span class="p">);</span>
     <span class="k">if</span> <span class="p">(</span><span class="nx">next</span> <span class="o">===</span> <span class="mi">61</span><span class="p">)</span> <span class="k">return</span> <span class="nx">finishOp</span><span class="p">(</span><span class="nx">_assign</span><span class="p">,</span> <span class="mi">2</span><span class="p">);</span>
-    <span class="k">return</span> <span class="nx">finishOp</span><span class="p">(</span><span class="nx">code</span> <span class="o">===</span> <span class="mi">42</span> <span class="o">?</span> <span class="nx">_star</span> <span class="o">:</span> <span class="nx">_multiplyModulo</span><span class="p">,</span> <span class="mi">1</span><span class="p">);</span>
+    <span class="k">return</span> <span class="nx">finishOp</span><span class="p">(</span><span class="nx">code</span> <span class="o">===</span> <span class="mi">42</span> <span class="o">?</span> <span class="nx">_star</span> <span class="o">:</span> <span class="nx">_modulo</span><span class="p">,</span> <span class="mi">1</span><span class="p">);</span>
   <span class="p">}</span>
 
   <span class="kd">function</span> <span class="nx">readToken_pipe_amp</span><span class="p">(</span><span class="nx">code</span><span class="p">)</span> <span class="p">{</span> <span class="c1">// '|&'</span>
@@ -869,8 +869,8 @@ raise an unexpected token error.</p>             </td>             <td class="co
     <span class="nx">eat</span><span class="p">(</span><span class="nx">type</span><span class="p">)</span> <span class="o">||</span> <span class="nx">unexpected</span><span class="p">();</span>
   <span class="p">}</span></pre></div>             </td>           </tr>                               <tr id="section-98">             <td class="docs">               <div class="pilwrap">                 <a class="pilcrow" href="#section-98">¶</a>               </div>               <p>Raise an unexpected token error.</p>             </td>             <td class="code">               <div class="highlight"><pre>  <span class="kd">function</span> <span class="nx">unexpected</span><sp [...]
     <span class="nx">raise</span><span class="p">(</span><span class="nx">pos</span> <span class="o">!=</span> <span class="kc">null</span> <span class="o">?</span> <span class="nx">pos</span> <span class="o">:</span> <span class="nx">tokStart</span><span class="p">,</span> <span class="s2">"Unexpected token"</span><span class="p">);</span>
-  <span class="p">}</span></pre></div>             </td>           </tr>                               <tr id="section-99">             <td class="docs">               <div class="pilwrap">                 <a class="pilcrow" href="#section-99">¶</a>               </div>               <p>Creates an empty hash object.</p>             </td>             <td class="code">               <div class="highlight"><pre>  <span class="kd">function</span> <span class="nx">hash</span><span class= [...]
-    <span class="k">return</span> <span class="nb">Object</span><span class="p">.</span><span class="nx">create</span><span class="p">(</span><span class="kc">null</span><span class="p">);</span>
+  <span class="p">}</span></pre></div>             </td>           </tr>                               <tr id="section-99">             <td class="docs">               <div class="pilwrap">                 <a class="pilcrow" href="#section-99">¶</a>               </div>               <p>Checks if hash object has a property.</p>             </td>             <td class="code">               <div class="highlight"><pre>  <span class="kd">function</span> <span class="nx">has</span><span [...]
+    <span class="k">return</span> <span class="nb">Object</span><span class="p">.</span><span class="nx">prototype</span><span class="p">.</span><span class="nx">hasOwnProperty</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="nx">obj</span><span class="p">,</span> <span class="nx">propName</span><span class="p">);</span>
   <span class="p">}</span></pre></div>             </td>           </tr>                               <tr id="section-100">             <td class="docs">               <div class="pilwrap">                 <a class="pilcrow" href="#section-100">¶</a>               </div>               <p>Convert existing expression atom to assignable pattern
 if possible.</p>             </td>             <td class="code">               <div class="highlight"><pre>  <span class="kd">function</span> <span class="nx">toAssignable</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="nx">allowSpread</span><span class="p">,</span> <span class="nx">checkType</span><span class="p">)</span> <span class="p">{</span>
     <span class="k">if</span> <span class="p">(</span><span class="nx">options</span><span class="p">.</span><span class="nx">ecmaVersion</span> <span class="o">>=</span> <span class="mi">6</span> <span class="o">&&</span> <span class="nx">node</span><span class="p">)</span> <span class="p">{</span>
@@ -918,7 +918,7 @@ try to bind the words <code>eval</code> or <code>arguments</code>.</p>
       <span class="k">case</span> <span class="s2">"Identifier"</span><span class="o">:</span>
         <span class="k">if</span> <span class="p">(</span><span class="nx">isStrictReservedWord</span><span class="p">(</span><span class="nx">param</span><span class="p">.</span><span class="nx">name</span><span class="p">)</span> <span class="o">||</span> <span class="nx">isStrictBadIdWord</span><span class="p">(</span><span class="nx">param</span><span class="p">.</span><span class="nx">name</span><span class="p">))</span>
           <span class="nx">raise</span><span class="p">(</span><span class="nx">param</span><span class="p">.</span><span class="nx">start</span><span class="p">,</span> <span class="s2">"Defining '"</span> <span class="o">+</span> <span class="nx">param</span><span class="p">.</span><span class="nx">name</span> <span class="o">+</span> <span class="s2">"' in strict mode"</span><span class="p">);</span>
-        <span class="k">if</span> <span class="p">(</span><span class="nx">nameHash</span><span class="p">[</span><span class="nx">param</span><span class="p">.</span><span class="nx">name</span><span class="p">])</span>
+        <span class="k">if</span> <span class="p">(</span><span class="nx">has</span><span class="p">(</span><span class="nx">nameHash</span><span class="p">,</span> <span class="nx">param</span><span class="p">.</span><span class="nx">name</span><span class="p">))</span>
           <span class="nx">raise</span><span class="p">(</span><span class="nx">param</span><span class="p">.</span><span class="nx">start</span><span class="p">,</span> <span class="s2">"Argument name clash in strict mode"</span><span class="p">);</span>
         <span class="nx">nameHash</span><span class="p">[</span><span class="nx">param</span><span class="p">.</span><span class="nx">name</span><span class="p">]</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
         <span class="k">break</span><span class="p">;</span>
@@ -937,20 +937,25 @@ try to bind the words <code>eval</code> or <code>arguments</code>.</p>
 Object/class getters and setters are not allowed to clash —
 either with each other or with an init property — and in
 strict mode, init properties are also not allowed to be repeated.</p>             </td>             <td class="code">               <div class="highlight"><pre>  <span class="kd">function</span> <span class="nx">checkPropClash</span><span class="p">(</span><span class="nx">prop</span><span class="p">,</span> <span class="nx">propHash</span><span class="p">)</span> <span class="p">{</span>
+    <span class="k">if</span> <span class="p">(</span><span class="nx">prop</span><span class="p">.</span><span class="nx">computed</span><span class="p">)</span> <span class="k">return</span><span class="p">;</span>
     <span class="kd">var</span> <span class="nx">key</span> <span class="o">=</span> <span class="nx">prop</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span> <span class="nx">name</span><span class="p">;</span>
     <span class="k">switch</span> <span class="p">(</span><span class="nx">key</span><span class="p">.</span><span class="nx">type</span><span class="p">)</span> <span class="p">{</span>
       <span class="k">case</span> <span class="s2">"Identifier"</span><span class="o">:</span> <span class="nx">name</span> <span class="o">=</span> <span class="nx">key</span><span class="p">.</span><span class="nx">name</span><span class="p">;</span> <span class="k">break</span><span class="p">;</span>
       <span class="k">case</span> <span class="s2">"Literal"</span><span class="o">:</span> <span class="nx">name</span> <span class="o">=</span> <span class="nb">String</span><span class="p">(</span><span class="nx">key</span><span class="p">.</span><span class="nx">value</span><span class="p">);</span> <span class="k">break</span><span class="p">;</span>
       <span class="k">default</span><span class="o">:</span> <span class="k">return</span><span class="p">;</span>
     <span class="p">}</span>
-    <span class="kd">var</span> <span class="nx">kind</span> <span class="o">=</span> <span class="nx">prop</span><span class="p">.</span><span class="nx">kind</span> <span class="o">||</span> <span class="s2">"init"</span><span class="p">,</span> <span class="nx">other</span> <span class="o">=</span> <span class="nx">propHash</span><span class="p">[</span><span class="nx">name</span><span class="p">];</span>
-    <span class="k">if</span> <span class="p">(</span><span class="nx">other</span><span class="p">)</span> <span class="p">{</span>
+    <span class="kd">var</span> <span class="nx">kind</span> <span class="o">=</span> <span class="nx">prop</span><span class="p">.</span><span class="nx">kind</span> <span class="o">||</span> <span class="s2">"init"</span><span class="p">,</span> <span class="nx">other</span><span class="p">;</span>
+    <span class="k">if</span> <span class="p">(</span><span class="nx">has</span><span class="p">(</span><span class="nx">propHash</span><span class="p">,</span> <span class="nx">name</span><span class="p">))</span> <span class="p">{</span>
+      <span class="nx">other</span> <span class="o">=</span> <span class="nx">propHash</span><span class="p">[</span><span class="nx">name</span><span class="p">];</span>
       <span class="kd">var</span> <span class="nx">isGetSet</span> <span class="o">=</span> <span class="nx">kind</span> <span class="o">!==</span> <span class="s2">"init"</span><span class="p">;</span>
       <span class="k">if</span> <span class="p">((</span><span class="nx">strict</span> <span class="o">||</span> <span class="nx">isGetSet</span><span class="p">)</span> <span class="o">&&</span> <span class="nx">other</span><span class="p">[</span><span class="nx">kind</span><span class="p">]</span> <span class="o">||</span> <span class="o">!</span><span class="p">(</span><span class="nx">isGetSet</span> <span class="o">^</span> <span class="nx">other</span><span class="p">.</s [...]
         <span class="nx">raise</span><span class="p">(</span><span class="nx">key</span><span class="p">.</span><span class="nx">start</span><span class="p">,</span> <span class="s2">"Redefinition of property"</span><span class="p">);</span>
     <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
-      <span class="nx">other</span> <span class="o">=</span> <span class="nx">propHash</span><span class="p">[</span><span class="nx">name</span><span class="p">]</span> <span class="o">=</span> <span class="nx">hash</span><span class="p">();</span>
-      <span class="nx">other</span><span class="p">.</span><span class="nx">init</span> <span class="o">=</span> <span class="nx">other</span><span class="p">.</span><span class="nx">get</span> <span class="o">=</span> <span class="nx">other</span><span class="p">.</span><span class="nx">set</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
+      <span class="nx">other</span> <span class="o">=</span> <span class="nx">propHash</span><span class="p">[</span><span class="nx">name</span><span class="p">]</span> <span class="o">=</span> <span class="p">{</span>
+        <span class="nx">init</span><span class="o">:</span> <span class="kc">false</span><span class="p">,</span>
+        <span class="nx">get</span><span class="o">:</span> <span class="kc">false</span><span class="p">,</span>
+        <span class="nx">set</span><span class="o">:</span> <span class="kc">false</span>
+      <span class="p">};</span>
     <span class="p">}</span>
     <span class="nx">other</span><span class="p">[</span><span class="nx">kind</span><span class="p">]</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
   <span class="p">}</span></pre></div>             </td>           </tr>                               <tr id="section-104">             <td class="docs">               <div class="pilwrap">                 <a class="pilcrow" href="#section-104">¶</a>               </div>               <p>Verify that a node is an lval — something that can be assigned
@@ -1550,7 +1555,7 @@ least, not without wrapping it in parentheses. Thus, it uses the</p>
     <span class="nx">inTemplate</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
     <span class="k">return</span> <span class="nx">finishNode</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="s2">"TemplateLiteral"</span><span class="p">);</span>
   <span class="p">}</span></pre></div>             </td>           </tr>                               <tr id="section-137">             <td class="docs">               <div class="pilwrap">                 <a class="pilcrow" href="#section-137">¶</a>               </div>               <p>Parse an object literal.</p>             </td>             <td class="code">               <div class="highlight"><pre>  <span class="kd">function</span> <span class="nx">parseObj</span><span class [...]
-    <span class="kd">var</span> <span class="nx">node</span> <span class="o">=</span> <span class="nx">startNode</span><span class="p">(),</span> <span class="nx">first</span> <span class="o">=</span> <span class="kc">true</span><span class="p">,</span> <span class="nx">propHash</span> <span class="o">=</span> <span class="nx">hash</span><span class="p">();</span>
+    <span class="kd">var</span> <span class="nx">node</span> <span class="o">=</span> <span class="nx">startNode</span><span class="p">(),</span> <span class="nx">first</span> <span class="o">=</span> <span class="kc">true</span><span class="p">,</span> <span class="nx">propHash</span> <span class="o">=</span> <span class="p">{};</span>
     <span class="nx">node</span><span class="p">.</span><span class="nx">properties</span> <span class="o">=</span> <span class="p">[];</span>
     <span class="nx">next</span><span class="p">();</span>
     <span class="k">while</span> <span class="p">(</span><span class="o">!</span><span class="nx">eat</span><span class="p">(</span><span class="nx">_braceR</span><span class="p">))</span> <span class="p">{</span>
@@ -1706,7 +1711,7 @@ flag (restore them to their old value afterwards).</p>             </td>
     <span class="p">}</span></pre></div>             </td>           </tr>                               <tr id="section-145">             <td class="docs">               <div class="pilwrap">                 <a class="pilcrow" href="#section-145">¶</a>               </div>               <p>If this is a strict mode function, verify that argument names
 are not repeated, and it does not try to bind the words <code>eval</code>
 or <code>arguments</code>.</p>             </td>             <td class="code">               <div class="highlight"><pre>    <span class="k">if</span> <span class="p">(</span><span class="nx">strict</span> <span class="o">||</span> <span class="o">!</span><span class="nx">isExpression</span> <span class="o">&&</span> <span class="nx">node</span><span class="p">.</span><span class="nx">body</span><span class="p">.</span><span class="nx">body</span><span class="p">.</span><span cla [...]
-      <span class="kd">var</span> <span class="nx">nameHash</span> <span class="o">=</span> <span class="nx">hash</span><span class="p">();</span>
+      <span class="kd">var</span> <span class="nx">nameHash</span> <span class="o">=</span> <span class="p">{};</span>
       <span class="k">if</span> <span class="p">(</span><span class="nx">node</span><span class="p">.</span><span class="nx">id</span><span class="p">)</span>
         <span class="nx">checkFunctionParam</span><span class="p">(</span><span class="nx">node</span><span class="p">.</span><span class="nx">id</span><span class="p">,</span> <span class="nx">nameHash</span><span class="p">);</span>
       <span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="nx">node</span><span class="p">.</span><span class="nx">params</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span>
@@ -1720,28 +1725,29 @@ or <code>arguments</code>.</p>             </td>             <td class="code">
     <span class="nx">next</span><span class="p">();</span>
     <span class="nx">node</span><span class="p">.</span><span class="nx">id</span> <span class="o">=</span> <span class="nx">tokType</span> <span class="o">===</span> <span class="nx">_name</span> <span class="o">?</span> <span class="nx">parseIdent</span><span class="p">()</span> <span class="o">:</span> <span class="nx">isStatement</span> <span class="o">?</span> <span class="nx">unexpected</span><span class="p">()</span> <span class="o">:</span> <span class="kc">null</span><span class [...]
     <span class="nx">node</span><span class="p">.</span><span class="nx">superClass</span> <span class="o">=</span> <span class="nx">eat</span><span class="p">(</span><span class="nx">_extends</span><span class="p">)</span> <span class="o">?</span> <span class="nx">parseExpression</span><span class="p">()</span> <span class="o">:</span> <span class="kc">null</span><span class="p">;</span>
-    <span class="kd">var</span> <span class="nx">classBody</span> <span class="o">=</span> <span class="nx">startNode</span><span class="p">(),</span> <span class="nx">methodHash</span> <span class="o">=</span> <span class="nx">hash</span><span class="p">(),</span> <span class="nx">staticMethodHash</span> <span class="o">=</span> <span class="nx">hash</span><span class="p">();</span>
+    <span class="kd">var</span> <span class="nx">classBody</span> <span class="o">=</span> <span class="nx">startNode</span><span class="p">(),</span> <span class="nx">methodHash</span> <span class="o">=</span> <span class="p">{},</span> <span class="nx">staticMethodHash</span> <span class="o">=</span> <span class="p">{};</span>
     <span class="nx">classBody</span><span class="p">.</span><span class="nx">body</span> <span class="o">=</span> <span class="p">[];</span>
     <span class="nx">expect</span><span class="p">(</span><span class="nx">_braceL</span><span class="p">);</span>
     <span class="k">while</span> <span class="p">(</span><span class="o">!</span><span class="nx">eat</span><span class="p">(</span><span class="nx">_braceR</span><span class="p">))</span> <span class="p">{</span>
       <span class="kd">var</span> <span class="nx">method</span> <span class="o">=</span> <span class="nx">startNode</span><span class="p">();</span>
       <span class="k">if</span> <span class="p">(</span><span class="nx">tokType</span> <span class="o">===</span> <span class="nx">_name</span> <span class="o">&&</span> <span class="nx">tokVal</span> <span class="o">===</span> <span class="s2">"static"</span><span class="p">)</span> <span class="p">{</span>
         <span class="nx">next</span><span class="p">();</span>
-        <span class="nx">method</span><span class="p">.</span><span class="kr">static</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
+        <span class="nx">method</span><span class="p">[</span><span class="s1">'static'</span><span class="p">]</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
       <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
-        <span class="nx">method</span><span class="p">.</span><span class="kr">static</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
+        <span class="nx">method</span><span class="p">[</span><span class="s1">'static'</span><span class="p">]</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
       <span class="p">}</span>
       <span class="kd">var</span> <span class="nx">isGenerator</span> <span class="o">=</span> <span class="nx">eat</span><span class="p">(</span><span class="nx">_star</span><span class="p">);</span>
-      <span class="nx">method</span><span class="p">.</span><span class="nx">key</span> <span class="o">=</span> <span class="nx">parseIdent</span><span class="p">(</span><span class="kc">true</span><span class="p">);</span>
-      <span class="k">if</span> <span class="p">((</span><span class="nx">method</span><span class="p">.</span><span class="nx">key</span><span class="p">.</span><span class="nx">name</span> <span class="o">===</span> <span class="s2">"get"</span> <span class="o">||</span> <span class="nx">method</span><span class="p">.</span><span class="nx">key</span><span class="p">.</span><span class="nx">name</span> <span class="o">===</span> <span class="s2">"set"</span><span cl [...]
+      <span class="nx">parsePropertyName</span><span class="p">(</span><span class="nx">method</span><span class="p">);</span>
+      <span class="k">if</span> <span class="p">(</span><span class="nx">tokType</span> <span class="o">===</span> <span class="nx">_name</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">method</span><span class="p">.</span><span class="nx">computed</span> <span class="o">&&</span> <span class="nx">method</span><span class="p">.</span><span class="nx">key</span><span class="p">.</span><span class="nx">type</span> <span class="o">===</span> <span c [...]
+          <span class="p">(</span><span class="nx">method</span><span class="p">.</span><span class="nx">key</span><span class="p">.</span><span class="nx">name</span> <span class="o">===</span> <span class="s2">"get"</span> <span class="o">||</span> <span class="nx">method</span><span class="p">.</span><span class="nx">key</span><span class="p">.</span><span class="nx">name</span> <span class="o">===</span> <span class="s2">"set"</span><span class="p">))</span> <span [...]
         <span class="k">if</span> <span class="p">(</span><span class="nx">isGenerator</span><span class="p">)</span> <span class="nx">unexpected</span><span class="p">();</span>
         <span class="nx">method</span><span class="p">.</span><span class="nx">kind</span> <span class="o">=</span> <span class="nx">method</span><span class="p">.</span><span class="nx">key</span><span class="p">.</span><span class="nx">name</span><span class="p">;</span>
-        <span class="nx">method</span><span class="p">.</span><span class="nx">key</span> <span class="o">=</span> <span class="nx">parseIdent</span><span class="p">(</span><span class="kc">true</span><span class="p">);</span>
+        <span class="nx">parsePropertyName</span><span class="p">(</span><span class="nx">method</span><span class="p">);</span>
       <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
         <span class="nx">method</span><span class="p">.</span><span class="nx">kind</span> <span class="o">=</span> <span class="s2">""</span><span class="p">;</span>
       <span class="p">}</span>
       <span class="nx">method</span><span class="p">.</span><span class="nx">value</span> <span class="o">=</span> <span class="nx">parseMethod</span><span class="p">(</span><span class="nx">isGenerator</span><span class="p">);</span>
-      <span class="nx">checkPropClash</span><span class="p">(</span><span class="nx">method</span><span class="p">,</span> <span class="nx">method</span><span class="p">.</span><span class="kr">static</span> <span class="o">?</span> <span class="nx">staticMethodHash</span> <span class="o">:</span> <span class="nx">methodHash</span><span class="p">);</span>
+      <span class="nx">checkPropClash</span><span class="p">(</span><span class="nx">method</span><span class="p">,</span> <span class="nx">method</span><span class="p">[</span><span class="s1">'static'</span><span class="p">]</span> <span class="o">?</span> <span class="nx">staticMethodHash</span> <span class="o">:</span> <span class="nx">methodHash</span><span class="p">);</span>
       <span class="nx">classBody</span><span class="p">.</span><span class="nx">body</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">finishNode</span><span class="p">(</span><span class="nx">method</span><span class="p">,</span> <span class="s2">"MethodDefinition"</span><span class="p">));</span>
       <span class="nx">eat</span><span class="p">(</span><span class="nx">_semi</span><span class="p">);</span>
     <span class="p">}</span>
@@ -1787,19 +1793,19 @@ identifiers.</p>             </td>             <td class="code">               <
   <span class="p">}</span></pre></div>             </td>           </tr>                               <tr id="section-149">             <td class="docs">               <div class="pilwrap">                 <a class="pilcrow" href="#section-149">¶</a>               </div>               <p>Parses module export declaration.</p>             </td>             <td class="code">               <div class="highlight"><pre>  <span class="kd">function</span> <span class="nx">parseExport</span [...]
     <span class="nx">next</span><span class="p">();</span></pre></div>             </td>           </tr>                               <tr id="section-150">             <td class="docs">               <div class="pilwrap">                 <a class="pilcrow" href="#section-150">¶</a>               </div>               <p>export var|const|let|function|class ...;</p>             </td>             <td class="code">               <div class="highlight"><pre>    <span class="k">if</span>  [...]
       <span class="nx">node</span><span class="p">.</span><span class="nx">declaration</span> <span class="o">=</span> <span class="nx">parseStatement</span><span class="p">();</span>
-      <span class="nx">node</span><span class="p">.</span><span class="k">default</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
+      <span class="nx">node</span><span class="p">[</span><span class="s1">'default'</span><span class="p">]</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
       <span class="nx">node</span><span class="p">.</span><span class="nx">specifiers</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
       <span class="nx">node</span><span class="p">.</span><span class="nx">source</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
     <span class="p">}</span> <span class="k">else</span></pre></div>             </td>           </tr>                               <tr id="section-151">             <td class="docs">               <div class="pilwrap">                 <a class="pilcrow" href="#section-151">¶</a>               </div>               <p>export default ...;</p>             </td>             <td class="code">               <div class="highlight"><pre>    <span class="k">if</span> <span class="p">(</span [...]
       <span class="nx">node</span><span class="p">.</span><span class="nx">declaration</span> <span class="o">=</span> <span class="nx">parseExpression</span><span class="p">(</span><span class="kc">true</span><span class="p">);</span>
-      <span class="nx">node</span><span class="p">.</span><span class="k">default</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
+      <span class="nx">node</span><span class="p">[</span><span class="s1">'default'</span><span class="p">]</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
       <span class="nx">node</span><span class="p">.</span><span class="nx">specifiers</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
       <span class="nx">node</span><span class="p">.</span><span class="nx">source</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
       <span class="nx">semicolon</span><span class="p">();</span>
     <span class="p">}</span> <span class="k">else</span> <span class="p">{</span></pre></div>             </td>           </tr>                               <tr id="section-152">             <td class="docs">               <div class="pilwrap">                 <a class="pilcrow" href="#section-152">¶</a>               </div>               <p>export * from '...'
 export { x, y as z } [from '...']</p>             </td>             <td class="code">               <div class="highlight"><pre>      <span class="kd">var</span> <span class="nx">isBatch</span> <span class="o">=</span> <span class="nx">tokType</span> <span class="o">===</span> <span class="nx">_star</span><span class="p">;</span>
       <span class="nx">node</span><span class="p">.</span><span class="nx">declaration</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
-      <span class="nx">node</span><span class="p">.</span><span class="k">default</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
+      <span class="nx">node</span><span class="p">[</span><span class="s1">'default'</span><span class="p">]</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
       <span class="nx">node</span><span class="p">.</span><span class="nx">specifiers</span> <span class="o">=</span> <span class="nx">parseExportSpecifiers</span><span class="p">();</span>
       <span class="k">if</span> <span class="p">(</span><span class="nx">tokType</span> <span class="o">===</span> <span class="nx">_name</span> <span class="o">&&</span> <span class="nx">tokVal</span> <span class="o">===</span> <span class="s2">"from"</span><span class="p">)</span> <span class="p">{</span>
         <span class="nx">next</span><span class="p">();</span>
@@ -1844,7 +1850,7 @@ export { x, y as z } [from '...']</p>             </td>             <td class="c
       <span class="k">if</span> <span class="p">(</span><span class="nx">tokType</span> <span class="o">!==</span> <span class="nx">_name</span> <span class="o">||</span> <span class="nx">tokVal</span> <span class="o">!==</span> <span class="s2">"from"</span><span class="p">)</span> <span class="nx">unexpected</span><span class="p">();</span>
       <span class="nx">next</span><span class="p">();</span>
       <span class="nx">node</span><span class="p">.</span><span class="nx">source</span> <span class="o">=</span> <span class="nx">tokType</span> <span class="o">===</span> <span class="nx">_string</span> <span class="o">?</span> <span class="nx">parseExprAtom</span><span class="p">()</span> <span class="o">:</span> <span class="nx">unexpected</span><span class="p">();</span></pre></div>             </td>           </tr>                               <tr id="section-158">             <td [...]
-(it doesn't support mixed default + named yet)</p>             </td>             <td class="code">               <div class="highlight"><pre>      <span class="nx">node</span><span class="p">.</span><span class="nx">kind</span> <span class="o">=</span> <span class="nx">node</span><span class="p">.</span><span class="nx">specifiers</span><span class="p">[</span><span class="mi">0</span><span class="p">].</span><span class="k">default</span> <span class="o">?</span> <span class="s2">" [...]
+(it doesn't support mixed default + named yet)</p>             </td>             <td class="code">               <div class="highlight"><pre>      <span class="nx">node</span><span class="p">.</span><span class="nx">kind</span> <span class="o">=</span> <span class="nx">node</span><span class="p">.</span><span class="nx">specifiers</span><span class="p">[</span><span class="mi">0</span><span class="p">][</span><span class="s1">'default'</span><span class="p">]</span> <span class=" [...]
     <span class="p">}</span>
     <span class="k">return</span> <span class="nx">finishNode</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="s2">"ImportDeclaration"</span><span class="p">);</span>
   <span class="p">}</span></pre></div>             </td>           </tr>                               <tr id="section-159">             <td class="docs">               <div class="pilwrap">                 <a class="pilcrow" href="#section-159">¶</a>               </div>               <p>Parses a comma-separated list of module imports.</p>             </td>             <td class="code">               <div class="highlight"><pre>  <span class="kd">function</span> <span class="nx">pa [...]
@@ -1863,7 +1869,7 @@ export { x, y as z } [from '...']</p>             </td>             <td class="c
       <span class="nx">node</span><span class="p">.</span><span class="nx">id</span> <span class="o">=</span> <span class="nx">parseIdent</span><span class="p">();</span>
       <span class="nx">checkLVal</span><span class="p">(</span><span class="nx">node</span><span class="p">.</span><span class="nx">id</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
       <span class="nx">node</span><span class="p">.</span><span class="nx">name</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
-      <span class="nx">node</span><span class="p">.</span><span class="k">default</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
+      <span class="nx">node</span><span class="p">[</span><span class="s1">'default'</span><span class="p">]</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
       <span class="nx">nodes</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">finishNode</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="s2">"ImportSpecifier"</span><span class="p">));</span>
       <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">eat</span><span class="p">(</span><span class="nx">_comma</span><span class="p">))</span> <span class="k">return</span> <span class="nx">nodes</span><span class="p">;</span>
     <span class="p">}</span>
@@ -1883,7 +1889,7 @@ export { x, y as z } [from '...']</p>             </td>             <td class="c
         <span class="nx">node</span><span class="p">.</span><span class="nx">name</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
       <span class="p">}</span>
       <span class="nx">checkLVal</span><span class="p">(</span><span class="nx">node</span><span class="p">.</span><span class="nx">name</span> <span class="o">||</span> <span class="nx">node</span><span class="p">.</span><span class="nx">id</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
-      <span class="nx">node</span><span class="p">.</span><span class="k">default</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
+      <span class="nx">node</span><span class="p">[</span><span class="s1">'default'</span><span class="p">]</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
       <span class="nx">nodes</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">finishNode</span><span class="p">(</span><span class="nx">node</span><span class="p">,</span> <span class="s2">"ImportSpecifier"</span><span class="p">));</span>
     <span class="p">}</span>
     <span class="k">return</span> <span class="nx">nodes</span><span class="p">;</span>
diff --git a/test/index.html b/test/index.html
index c0003ff..96a9d95 100644
--- a/test/index.html
+++ b/test/index.html
@@ -5,6 +5,7 @@
   <script src="../acorn.js"></script>
   <script src="driver.js"></script>
   <script src="tests.js" charset="utf-8"></script>
+  <script src="tests-harmony.js" charset="utf-8"></script>
 </head>
 
 <script>

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-javascript/node-acorn-jsx.git



More information about the Pkg-javascript-commits mailing list