GitHub - RReverser/sourcemap-to-ast: Updates a mozilla AST(produced by acorn/esprima) with location info from a source map (original) (raw)
sourcemap-to-ast
Updates a mozilla AST(produced by acorn/esprima) with location info from a source map
Installation
npm install --save sourcemap-to-ast
Usage
var acorn = require('acorn'); var coffee = require('coffee-script'); var sourceMapToAst = require('sourcemap-to-ast');
var compiled = coffee.compile('x =\n 1', {sourceMap: true}); var ast = acorn.parse(compiled.js, {locations: true});
var func = ast.body[0].expression.callee.object; var funcBody = func.body.body; var assignment = funcBody[1].expression;
sourceMapToAst(ast, compiled.v3SourceMap);
assignment.loc.start // {line: 1, column: 0} assignment.loc.end // {line: 2, column: 1}