ast-redeclare

1.0.4 • Public • Published

ast-redeclare Build Status

Hoist and fold variable declarations within scopes, so that each variable has only one declaration per scope. Don’t touch functions. Useful to normalize code before analysis, like data-flow etc.

Usage

npm install ast-redeclare
var parse = require('esprima').parse;
var generate = require('escodegen').generate;
var redeclare = require('ast-redeclare');
 
var ast = parse(
    'var a = 1, b = 2; if (a > 1) { var c = b; } else {var c = 3;} var d = 4;'
);
ast = redeclare(ast);
 
generate(ast);
//var a, b, c, d; a = 1; b = 2; if (a > 1) { c = b; } else { c = 3; }; d = 4;
 

API

redeclare(Node) → Node

Analogs

NPM

Package Sidebar

Install

npm i ast-redeclare

Weekly Downloads

6

Version

1.0.4

License

Unlicensed

Last publish

Collaborators

  • dfcreative