walkes

0.2.1 • Public • Published

walker, texas ranger

very simple walker for estree AST

Build Status Coverage Status Dependency Status

Installation

$ npm install walkes

Or as a component:

$ component install Swatinem/walkes

Compatibility warning

walkes ~ 0.1.0 used to pass in the node as this. This changed with version ~ 0.2.0 which passes it as the first parameter. Please keep that in mind, and sorry for the inconvenience.

Usage

walkes works with an estree spec compatible ast. You are free to choose whichever parser you would like, such as esprima, espree, babel, acorn or others.

walker(espree.parse(""), {
    MemberExpression: function (node, recurse, stop) {
        // you are responsible to call `recurse()` on all the children yourself
        recurse(node.object);
        recurse(node.property);
        // or use `walker.checkProps` to walk all child properties (also takes care of arrays)
        walker.checkProps(node, recurse);
    },
    default: function (recurse, stop) {
        // call or throw `stop` to completely stop walking.
        stop();
        throw stop;
    }
}, offset);
// when offset is set, will only recurse to nodes that lie within the offset
// esprima option {range: true} needs to be set for this to work

License

LGPL-3.0

Package Sidebar

Install

npm i walkes

Weekly Downloads

17,082

Version

0.2.1

License

LGPL-3.0

Last publish

Collaborators

  • swatinem