var fs = require('fs'); | |
var Module = require('module'); | |
var file = require.resolve('esprima'); | |
var source = fs.readFileSync(file, 'utf-8'); | |
// inject '@' as a valid identifier! | |
source = source.replace(/(function isIdentifierStart\(ch\) {\s+return)/m, '$1 (ch == 0x40) || '); | |
//If run as script just output patched file | |
if (require.main === module) | |
console.log(source); | |
else { | |
var _module = new Module('aesprim'); | |
_module._compile(source, __filename); | |
module.exports = _module.exports; | |
} |