Stop accumulating line comments when trackComments is off
This commit is contained in:
parent
b660ff6d1c
commit
043386067a
4
acorn.js
4
acorn.js
@ -444,6 +444,7 @@
|
||||
++tokPos;
|
||||
ch = input.charCodeAt(tokPos);
|
||||
}
|
||||
if (options.trackComments)
|
||||
(tokComments || (tokComments = [])).push(input.slice(start, tokPos));
|
||||
}
|
||||
|
||||
@ -878,7 +879,8 @@
|
||||
if (tokCommentsAfter) {
|
||||
node.commentsAfter = tokCommentsAfter;
|
||||
tokCommentsAfter = null;
|
||||
} else if (lastFinishedNode && lastFinishedNode.end === lastEnd) {
|
||||
} else if (lastFinishedNode && lastFinishedNode.end === lastEnd &&
|
||||
lastFinishedNode.commentsAfter) {
|
||||
node.commentsAfter = lastFinishedNode.commentsAfter;
|
||||
lastFinishedNode.commentsAfter = null;
|
||||
}
|
||||
|
||||
@ -263,6 +263,7 @@ the right position.</p> </td> <td class="code">
|
||||
<span class="o">++</span><span class="nx">tokPos</span><span class="p">;</span>
|
||||
<span class="nx">ch</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="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">trackComments</span><span class="p">)</span>
|
||||
<span class="p">(</span><span class="nx">tokComments</span> <span class="o">||</span> <span class="p">(</span><span class="nx">tokComments</span> <span class="o">=</span> <span class="p">[])).</span><span class="nx">push</span><span class="p">(</span><span class="nx">input</span><span class="p">.</span><span class="nx">slice</span><span class="p">(</span><span class="nx">start</span><span class="p">,</span> <span class="nx">tokPos</span><span class="p">));</span>
|
||||
<span class="p">}</span></pre></div> </td> </tr> <tr id="section-53"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-53">¶</a> </div> <p>Called at the start of the parse and after every token. Skips
|
||||
whitespace and comments, and, if <code>options.trackComments</code> is on,
|
||||
@ -605,7 +606,8 @@ operator node, not the second literal node.</p> </td> <t
|
||||
<span class="k">if</span> <span class="p">(</span><span class="nx">tokCommentsAfter</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="nx">node</span><span class="p">.</span><span class="nx">commentsAfter</span> <span class="o">=</span> <span class="nx">tokCommentsAfter</span><span class="p">;</span>
|
||||
<span class="nx">tokCommentsAfter</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
||||
<span class="p">}</span> <span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="nx">lastFinishedNode</span> <span class="o">&&</span> <span class="nx">lastFinishedNode</span><span class="p">.</span><span class="nx">end</span> <span class="o">===</span> <span class="nx">lastEnd</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="p">}</span> <span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="nx">lastFinishedNode</span> <span class="o">&&</span> <span class="nx">lastFinishedNode</span><span class="p">.</span><span class="nx">end</span> <span class="o">===</span> <span class="nx">lastEnd</span> <span class="o">&&</span>
|
||||
<span class="nx">lastFinishedNode</span><span class="p">.</span><span class="nx">commentsAfter</span><span class="p">)</span> <span class="p">{</span>
|
||||
<span class="nx">node</span><span class="p">.</span><span class="nx">commentsAfter</span> <span class="o">=</span> <span class="nx">lastFinishedNode</span><span class="p">.</span><span class="nx">commentsAfter</span><span class="p">;</span>
|
||||
<span class="nx">lastFinishedNode</span><span class="p">.</span><span class="nx">commentsAfter</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
||||
<span class="p">}</span>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user