the acorn javascript parser, preloaded with plugins for syntax parity with recent node versions
npm install acorn-nodeAcorn preloaded with plugins for syntax parity with recent Node versions.
It also includes versions of the plugins compiled with Bublé, so they can be run on old Node versions (0.6 and up).
[![npm][npm-image]][npm-url]
[![travis][travis-image]][travis-url]
[![standard][standard-image]][standard-url]
[npm-image]: https://img.shields.io/npm/v/acorn-node.svg?style=flat-square
[npm-url]: https://www.npmjs.com/package/acorn-node
[travis-image]: https://img.shields.io/travis/browserify/acorn-node/master.svg?style=flat-square
[travis-url]: https://travis-ci.org/browserify/acorn-node
[standard-image]: https://img.shields.io/badge/code%20style-standard-brightgreen.svg?style=flat-square
[standard-url]: http://npm.im/standard
```
npm install acorn-node
`js`
var acorn = require('acorn-node')
The API is the same as acorn, but the following syntax features are enabled by default:
- Bigint syntax 10n10_000
- Numeric separators syntax import()
- Public and private class instance fields
- Public and private class static fields
- Dynamic import.meta
- The propertyexport * as ns from
- syntax
And the following options have different defaults from acorn, to match Node modules:
- ecmaVersion: 2019allowHashBang: true
- allowReturnOutsideFunction: true
-
`js``
var walk = require('acorn-node/walk')
The Acorn syntax tree walker. Comes preconfigured for the syntax plugins if necessary.
See the acorn documentation for details.
The files in the repo root and the ./test folder are licensed as Apache-2.0.
The files in lib/ are generated from other packages:
- lib/bigint: acorn-bigint, MIT
- lib/class-private-elements: acorn-class-private-elements, MIT
- lib/export-ns-from: acorn-export-ns-from, MIT
- lib/import-meta: acorn-import-meta, MIT
- lib/numeric-separator: acorn-numeric-separator, MIT
- lib/static-class-features: acorn-static-class-features, MIT