sensordb2 e64a8defe5 3.17 | há 1 ano atrás | |
---|---|---|
.. | ||
bench | há 1 ano atrás | |
bin | há 1 ano atrás | |
example | há 1 ano atrás | |
test | há 1 ano atrás | |
.travis.yml | há 1 ano atrás | |
CHANGELOG.md | há 1 ano atrás | |
LICENSE | há 1 ano atrás | |
index.js | há 1 ano atrás | |
package.json | há 1 ano atrás | |
readme.markdown | há 1 ano atrás |
find all calls to require()
by walking the AST
strings_src.js:
var a = require('a');
var b = require('b');
var c = require('c');
strings.js:
var detective = require('detective');
var fs = require('fs');
var src = fs.readFileSync(__dirname + '/strings_src.js');
var requires = detective(src);
console.dir(requires);
output:
$ node examples/strings.js
[ 'a', 'b', 'c' ]
var detective = require('detective');
Give some source body src
, return an array of all the require()
calls with
string arguments.
The options parameter opts
is passed along to detective.find()
.
Give some source body src
, return found
with:
found.strings
- an array of each string found in a require()
found.expressions
- an array of each stringified expression found in a
require()
callfound.nodes
(when opts.nodes === true
) - an array of AST nodes for each
argument found in a require()
callOptionally:
opts.word
- specify a different function name instead of "require"
opts.nodes
- when true
, populate found.nodes
opts.isRequire(node)
- a function returning whether an AST CallExpression
node is a require callopts.parse
- supply options directly to
acorn with some support for esprima-style
options range
and loc
opts.ecmaVersion
- default: 9With npm do:
npm install detective
MIT