ecma262-jison

0.3.0-alpha.2 • Public • Published

ECMA262-JISON

用js的Lex/Yacc工具来实现和扩展ECMAScript规范,学习ECMAScript规范并尝试打造一个parser。

Nothing increases your learning power more than working on something big, real, confusing and frustrating.

安装

 
npm install ecma262-jison
 

构建

Nodejs v6版本以上,推荐使用v8或更高版本

 
git clone https://github.com/w-y/ecma262-jison.git
 

构建parser:

 
npm run buildparser
 

src到lib:

 
npm run build
 

测试:

 
npm run test
 

特性

目前已实现ECMAScript(7.0)的大部分语法特性,并扩展了JSX支持

特性 支持 备注
Arrows
Classes
Template Strings foo`` ❌
Destructuring
Default+Rest+Spread
Let + Const
Unicode \u{20BB7} ❌
Modules
Enhanced Object Literals
Generators
jsx
Spread Element
Spread Property
ASI 出错加分号重试方式

示例

const code = 'foo;';
 
const parser = require('ecma262-jison');
 
const ast = parser.parse(code);
 
console.log(JSON.stringify(ast, null, 2));

在线示例

Readme

Keywords

Package Sidebar

Install

npm i ecma262-jison

Weekly Downloads

19

Version

0.3.0-alpha.2

License

MIT

Unpacked Size

17.4 MB

Total Files

655

Last publish

Collaborators

  • w-y