convert AST_Seq from binary tree to array (#1460)

- rename `AST_Seq` to `AST_Sequence`
- raise default sequences_limit from 200 to 800
This commit is contained in:
Alex Lam S.L
2017-04-12 21:56:27 +08:00
committed by GitHub
parent 04b8964505
commit 2244743545
14 changed files with 376 additions and 307 deletions

View File

@@ -1527,17 +1527,18 @@ function parse($TEXT, options) {
var expression = function(commas, no_in) {
var start = S.token;
var expr = maybe_assign(no_in);
if (commas && is("punc", ",")) {
var exprs = [];
while (true) {
exprs.push(maybe_assign(no_in));
if (!commas || !is("punc", ",")) break;
next();
return new AST_Seq({
start : start,
car : expr,
cdr : expression(true, no_in),
end : peek()
});
commas = true;
}
return expr;
return exprs.length == 1 ? exprs[0] : new AST_Sequence({
start : start,
expressions : exprs,
end : peek()
});
};
function in_loop(cont) {