Skip to content

Commit f24f0de

Browse files
authored
Merge pull request #75 from bcomnes/rest-spread
Add rest spread support
2 parents 9aa7130 + ad2b996 commit f24f0de

5 files changed

Lines changed: 22 additions & 3 deletions

File tree

.travis.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,3 @@ node_js:
44
- 8
55
- 6
66
- 4
7-
- "0.12"

index.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
var acorn = require('acorn');
1+
var acorn = require('acorn5-object-spread/inject')(require('acorn'));
22
var walk = require('acorn/dist/walk');
33
var defined = require('defined');
44

@@ -18,7 +18,8 @@ function parse (src, opts) {
1818
allowImportExportEverywhere: defined(
1919
opts.allowImportExportEverywhere, true
2020
),
21-
allowHashBang: defined(opts.allowHashBang, true)
21+
allowHashBang: defined(opts.allowHashBang, true),
22+
plugins: { objectSpread: true }
2223
});
2324
}
2425

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
},
1919
"dependencies": {
2020
"acorn": "^5.2.1",
21+
"acorn5-object-spread": "^5.0.0",
2122
"defined": "^1.0.0"
2223
},
2324
"devDependencies": {

test/files/rest-spread.js

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
var a = require('a');
2+
var b = require('b');
3+
var c = require('c');
4+
5+
6+
var obj = { foo: 'bar', bee: 'bop' }
7+
var spread = { ...obj }
8+
var { foo, ...rest } = obj
9+

test/rest-spread.js

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
var test = require('tap').test;
2+
var detective = require('../');
3+
var fs = require('fs');
4+
var src = fs.readFileSync(__dirname + '/files/rest-spread.js');
5+
6+
test('rest-spread', function (t) {
7+
t.doesNotThrow(detective.bind(detective, src), 'Files with rest or spread do not throw')
8+
t.end();
9+
});

0 commit comments

Comments
 (0)