line_push/node_modules/eslint-template-visitor/lib/recurse.js
2022-07-17 13:16:16 +08:00

21 lines
364 B
JavaScript

const esrecurse = require('esrecurse');
const visit = (ast, visitor) => {
const newVisitor = {};
for (const key of Object.keys(visitor)) {
const value = visitor[key];
newVisitor[key] = function (node, ...rest) {
value.call(this, node, ...rest);
this.visitChildren(node);
};
}
esrecurse.visit(ast, newVisitor);
};
module.exports = {
visit,
};