GithubHelp home page GithubHelp logo

anthrax3 / regenerator Goto Github PK

View Code? Open in Web Editor NEW

This project forked from facebook/regenerator

0.0 0.0 0.0 3.77 MB

Source transformer enabling ECMAScript 6 generator functions in JavaScript-of-today.

Home Page: http://facebook.github.io/regenerator/

License: MIT License

JavaScript 99.74% HTML 0.26%

regenerator's Introduction

regenerator Build Status

This package implements a fully-functional source transformation that takes the syntax for generators/yield from ECMAScript 2015 or ES2015 and Asynchronous Iteration proposal and spits out efficient JS-of-today (ES5) that behaves the same way.

A small runtime library (less than 1KB compressed) is required to provide the wrapGenerator function. You can install it either as a CommonJS module or as a standalone .js file, whichever you prefer.

Installation

From npm:

npm install -g regenerator

From GitHub:

cd path/to/node_modules
git clone git://github.com/facebook/regenerator.git
cd regenerator
npm install .
npm test

Usage

You have several options for using this module.

Simplest usage:

regenerator es6.js > es5.js # Just the transform.
regenerator --include-runtime es6.js > es5.js # Add the runtime too.
regenerator src lib # Transform every .js file in src and output to lib.

Programmatic usage:

var es5Source = require("regenerator").compile(es6Source).code;
var es5SourceWithRuntime = require("regenerator").compile(es6Source, {
  includeRuntime: true
}).code;

AST transformation:

var recast = require("recast");
var ast = recast.parse(es6Source);
ast = require("regenerator").transform(ast);
var es5Source = recast.print(ast);

How can you get involved?

The easiest way to get involved is to look for buggy examples using the sandbox, and when you find something strange just click the "report a bug" link (the new issue form will be populated automatically with the problematic code).

Alternatively, you can fork the repository, create some failing tests cases in test/tests.es6.js, and send pull requests for me to fix.

If you're feeling especially brave, you are more than welcome to dive into the transformer code and fix the bug(s) yourself, but I must warn you that the code could really benefit from better implementation comments.

regenerator's People

Contributors

agchou avatar aickin avatar amasad avatar amccloud avatar andarist avatar bartekn avatar bcamper avatar benjamn avatar bsuh avatar chenglou avatar chicoxyzzy avatar cpojer avatar danez avatar eventualbuddha avatar flarnie avatar hzoo avatar jonathanong avatar josephfrazier avatar kangax avatar kpdecker avatar mathiasbynens avatar maxnordlund avatar mehcode avatar modosc avatar raynos avatar scttnlsn avatar sebmck avatar sophiebits avatar termi avatar yavorsky avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.