{"_id":"ast-query","_rev":"301770","name":"ast-query","description":"Declarative JavaScript AST modification façade","dist-tags":{"latest":"2.0.0"},"maintainers":[{"name":"sboudrias","email":""}],"time":{"modified":"2021-06-03T19:12:05.000Z","created":"2013-07-29T00:11:58.703Z","2.0.0":"2016-06-10T04:27:21.656Z","1.2.0":"2016-03-15T07:25:23.827Z","1.1.1":"2016-03-15T07:15:51.104Z","1.1.0":"2015-12-23T19:15:26.462Z","1.0.1":"2015-02-18T07:14:04.701Z","1.0.0":"2015-02-18T07:02:33.767Z","0.3.1":"2015-01-25T22:54:13.833Z","0.3.0":"2014-09-19T06:32:12.883Z","0.2.5":"2014-09-19T06:20:32.881Z","0.2.4":"2014-05-07T06:03:28.868Z","0.2.3":"2014-04-05T21:30:41.923Z","0.2.2":"2014-04-05T21:23:50.956Z","0.2.1":"2014-04-05T21:08:38.941Z","0.2.0":"2014-04-05T20:39:36.269Z","0.1.0-pre.2":"2014-02-28T21:31:39.590Z","0.1.0-pre.1":"2013-07-31T02:02:00.309Z","0.1.0-pre":"2013-07-29T00:11:58.703Z"},"users":{"itonyyo":true,"jjdanois":true,"bplok20010":true,"laomu":true},"author":{"name":"Simon Boudrias","email":"admin@simonboudrias.com"},"repository":{"type":"git","url":"git+https://github.com/sboudrias/AST-query.git"},"versions":{"2.0.0":{"name":"ast-query","version":"2.0.0","description":"Declarative JavaScript AST modification façade","main":"lib/tree.js","author":{"name":"Simon Boudrias","email":"admin@simonboudrias.com"},"license":"MIT","keywords":["AST","source","traversal","syntax","tree"],"scripts":{"test":"grunt"},"repository":{"type":"git","url":"git+https://github.com/sboudrias/AST-query.git"},"dependencies":{"class-extend":"^0.1.1","escodegen-wallaby":"^1.6.7","acorn-jsx":"^3.0.1","lodash":"^4.6.1","traverse":"^0.6.6"},"devDependencies":{"grunt":"^0.4.5","grunt-cli":"^0.1.9","grunt-contrib-jshint":"^1.0.0","grunt-simple-mocha":"^0.4.0"},"gitHead":"e9d39f3aaca367e8e4771bf82f208376ddb5a48e","bugs":{"url":"https://github.com/sboudrias/AST-query/issues"},"homepage":"https://github.com/sboudrias/AST-query#readme","_id":"ast-query@2.0.0","_shasum":"3588e79ad8de07ce50df1e781cc2bda1fd69a453","_from":".","_npmVersion":"3.5.3","_nodeVersion":"6.2.1","_npmUser":{"name":"sboudrias","email":"admin@simonboudrias.com"},"dist":{"shasum":"3588e79ad8de07ce50df1e781cc2bda1fd69a453","size":11261,"noattachment":false,"key":"/ast-query/-/ast-query-2.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/ast-query/download/ast-query-2.0.0.tgz"},"maintainers":[{"name":"sboudrias","email":""}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/ast-query-2.0.0.tgz_1465532837773_0.6222541665192693"},"directories":{},"publish_time":1465532841656,"_cnpm_publish_time":1465532841656,"_hasShrinkwrap":false},"1.2.0":{"name":"ast-query","version":"1.2.0","description":"Declarative JavaScript AST modification façade","main":"lib/tree.js","author":{"name":"Simon Boudrias","email":"admin@simonboudrias.com"},"license":"MIT","keywords":["AST","source","traversal","syntax","tree"],"scripts":{"test":"grunt"},"repository":{"type":"git","url":"git+https://github.com/sboudrias/AST-query.git"},"dependencies":{"class-extend":"^0.1.1","escodegen":"^1.6.0","esprima":"^2.0.0","lodash":"^4.6.1","traverse":"^0.6.6"},"devDependencies":{"grunt":"^0.4.5","grunt-cli":"^0.1.9","grunt-contrib-jshint":"^1.0.0","grunt-simple-mocha":"^0.4.0"},"gitHead":"9663627db08d583fd3b866378d3c45fb1d5c5dc3","bugs":{"url":"https://github.com/sboudrias/AST-query/issues"},"homepage":"https://github.com/sboudrias/AST-query#readme","_id":"ast-query@1.2.0","_shasum":"4b725e9f3922a5edc41dc669c87bbfbfd20171a2","_from":".","_npmVersion":"3.5.3","_nodeVersion":"5.2.0","_npmUser":{"name":"sboudrias","email":"admin@simonboudrias.com"},"dist":{"shasum":"4b725e9f3922a5edc41dc669c87bbfbfd20171a2","size":10582,"noattachment":false,"key":"/ast-query/-/ast-query-1.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/ast-query/download/ast-query-1.2.0.tgz"},"maintainers":[{"name":"sboudrias","email":""}],"_npmOperationalInternal":{"host":"packages-13-west.internal.npmjs.com","tmp":"tmp/ast-query-1.2.0.tgz_1458026723139_0.6472864085808396"},"directories":{},"publish_time":1458026723827,"_cnpm_publish_time":1458026723827,"_hasShrinkwrap":false},"1.1.1":{"name":"ast-query","version":"1.1.1","description":"Declarative JavaScript AST modification façade","main":"lib/tree.js","author":{"name":"Simon Boudrias","email":"admin@simonboudrias.com"},"license":"MIT","keywords":["AST","source","traversal","syntax","tree"],"scripts":{"test":"grunt"},"repository":{"type":"git","url":"git+https://github.com/sboudrias/AST-query.git"},"dependencies":{"class-extend":"^0.1.1","escodegen":"^1.6.0","esprima":"^2.0.0","lodash":"^4.6.1","traverse":"^0.6.6"},"devDependencies":{"grunt":"^0.4.5","grunt-cli":"^0.1.9","grunt-contrib-jshint":"^1.0.0","grunt-simple-mocha":"^0.4.0"},"gitHead":"52f907652eeb3dca8f37b535afbb6982ed1cea0d","bugs":{"url":"https://github.com/sboudrias/AST-query/issues"},"homepage":"https://github.com/sboudrias/AST-query#readme","_id":"ast-query@1.1.1","_shasum":"51a76011b38efecdc5a29b5b34aec7ee4ccded72","_from":".","_npmVersion":"3.5.3","_nodeVersion":"5.2.0","_npmUser":{"name":"sboudrias","email":"admin@simonboudrias.com"},"dist":{"shasum":"51a76011b38efecdc5a29b5b34aec7ee4ccded72","size":10032,"noattachment":false,"key":"/ast-query/-/ast-query-1.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/ast-query/download/ast-query-1.1.1.tgz"},"maintainers":[{"name":"sboudrias","email":""}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/ast-query-1.1.1.tgz_1458026150413_0.5578466872684658"},"directories":{},"publish_time":1458026151104,"_cnpm_publish_time":1458026151104,"_hasShrinkwrap":false},"1.1.0":{"name":"ast-query","version":"1.1.0","description":"Declarative JavaScript AST modification façade","main":"lib/tree.js","author":{"name":"Simon Boudrias","email":"admin@simonboudrias.com"},"license":"MIT","keywords":["AST","source","traversal","syntax","tree"],"scripts":{"test":"grunt"},"repository":{"type":"git","url":"git+https://github.com/sboudrias/AST-query.git"},"dependencies":{"class-extend":"^0.1.1","escodegen":"^1.6.0","esprima":"^2.0.0","lodash":"^3.2.0","traverse":"^0.6.6"},"devDependencies":{"grunt":"^0.4.5","grunt-cli":"^0.1.9","grunt-contrib-jshint":"^0.11.0","grunt-release":"^0.11.0","grunt-simple-mocha":"^0.4.0"},"gitHead":"8e594587481ce705853d238e33af68acfaa302a3","bugs":{"url":"https://github.com/sboudrias/AST-query/issues"},"homepage":"https://github.com/sboudrias/AST-query#readme","_id":"ast-query@1.1.0","_shasum":"1a24d26bbf3ae4ef3befba3ddd535fadfe7664ac","_from":".","_npmVersion":"3.5.0","_nodeVersion":"5.2.0","_npmUser":{"name":"sboudrias","email":"admin@simonboudrias.com"},"dist":{"shasum":"1a24d26bbf3ae4ef3befba3ddd535fadfe7664ac","size":12561,"noattachment":false,"key":"/ast-query/-/ast-query-1.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/ast-query/download/ast-query-1.1.0.tgz"},"maintainers":[{"name":"sboudrias","email":""}],"directories":{},"publish_time":1450898126462,"_cnpm_publish_time":1450898126462,"_hasShrinkwrap":false},"1.0.1":{"name":"ast-query","version":"1.0.1","description":"Declarative JavaScript AST modification façade","main":"lib/tree.js","author":{"name":"Simon Boudrias","email":"admin@simonboudrias.com"},"license":"MIT","keywords":["AST","source","traversal","syntax","tree"],"scripts":{"test":"grunt"},"repository":{"type":"git","url":"https://github.com/SBoudrias/AST-query"},"dependencies":{"class-extend":"^0.1.1","escodegen":"^1.6.0","esprima":"^2.0.0","lodash":"^3.2.0","traverse":"^0.6.6"},"devDependencies":{"grunt":"^0.4.5","grunt-cli":"^0.1.9","grunt-contrib-jshint":"^0.11.0","grunt-release":"^0.11.0","grunt-simple-mocha":"^0.4.0"},"gitHead":"274f7e68525e20f2ce1a187547bf93842cd552c4","bugs":{"url":"https://github.com/SBoudrias/AST-query/issues"},"homepage":"https://github.com/SBoudrias/AST-query","_id":"ast-query@1.0.1","_shasum":"22bdbe9c18b26ce4b2979dbe2938ce3f93fe7f72","_from":".","_npmVersion":"2.4.1","_nodeVersion":"0.10.32","_npmUser":{"name":"sboudrias","email":"admin@simonboudrias.com"},"maintainers":[{"name":"sboudrias","email":""}],"dist":{"shasum":"22bdbe9c18b26ce4b2979dbe2938ce3f93fe7f72","size":9820,"noattachment":false,"key":"/ast-query/-/ast-query-1.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/ast-query/download/ast-query-1.0.1.tgz"},"directories":{},"publish_time":1424243644701,"_cnpm_publish_time":1424243644701,"_hasShrinkwrap":false},"1.0.0":{"name":"ast-query","version":"1.0.0","description":"Declarative JavaScript AST modification façade","main":"lib/tree.js","author":{"name":"Simon Boudrias","email":"admin@simonboudrias.com"},"license":"MIT","keywords":["AST","source","traversal","syntax","tree"],"scripts":{"test":"grunt"},"repository":{"type":"git","url":"https://github.com/SBoudrias/AST-query"},"dependencies":{"class-extend":"^0.1.1","escodegen":"^1.6.0","esprima":"^2.0.0","lodash":"^3.2.0","traverse":"^0.6.6"},"devDependencies":{"grunt":"^0.4.5","grunt-cli":"^0.1.9","grunt-contrib-jshint":"^0.11.0","grunt-release":"^0.11.0","grunt-simple-mocha":"^0.4.0"},"gitHead":"1b3389c33b34c80c56693590a42a8effd5d36456","bugs":{"url":"https://github.com/SBoudrias/AST-query/issues"},"homepage":"https://github.com/SBoudrias/AST-query","_id":"ast-query@1.0.0","_shasum":"6881436a68d47bef19abefba46c0ae265f9f1081","_from":".","_npmVersion":"2.4.1","_nodeVersion":"0.10.32","_npmUser":{"name":"sboudrias","email":"admin@simonboudrias.com"},"maintainers":[{"name":"sboudrias","email":""}],"dist":{"shasum":"6881436a68d47bef19abefba46c0ae265f9f1081","size":9770,"noattachment":false,"key":"/ast-query/-/ast-query-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/ast-query/download/ast-query-1.0.0.tgz"},"directories":{},"publish_time":1424242953767,"_cnpm_publish_time":1424242953767,"_hasShrinkwrap":false},"0.3.1":{"name":"ast-query","version":"0.3.1","description":"Declarative JavaScript AST modification façade","main":"lib/tree.js","author":{"name":"Simon Boudrias","email":"admin@simonboudrias.com"},"license":"MIT","keywords":["AST","source","traversal","syntax","tree"],"scripts":{"test":"grunt"},"repository":{"type":"git","url":"https://github.com/SBoudrias/AST-query"},"dependencies":{"class-extend":"^0.1.1","escodegen":"^1.6.0","esprima":"^1.2.3","lodash":"^2.4.1","traverse":"^0.6.6"},"devDependencies":{"grunt":"^0.4.5","grunt-cli":"^0.1.9","grunt-contrib-jshint":"^0.11.0","grunt-release":"^0.10.0","grunt-simple-mocha":"^0.4.0"},"gitHead":"72d1d61dfda978f5169a8cfa01b222d3056c1ae0","bugs":{"url":"https://github.com/SBoudrias/AST-query/issues"},"homepage":"https://github.com/SBoudrias/AST-query","_id":"ast-query@0.3.1","_shasum":"65582f0a15f004820b0444a6f0157a3c170174b7","_from":".","_npmVersion":"2.1.18","_nodeVersion":"0.10.32","_npmUser":{"name":"sboudrias","email":"admin@simonboudrias.com"},"maintainers":[{"name":"sboudrias","email":""}],"dist":{"shasum":"65582f0a15f004820b0444a6f0157a3c170174b7","size":9512,"noattachment":false,"key":"/ast-query/-/ast-query-0.3.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/ast-query/download/ast-query-0.3.1.tgz"},"directories":{},"publish_time":1422226453833,"_cnpm_publish_time":1422226453833,"_hasShrinkwrap":false},"0.3.0":{"name":"ast-query","version":"0.3.0","description":"Declarative JavaScript AST modification façade","main":"lib/tree.js","author":{"name":"Simon Boudrias","email":"admin@simonboudrias.com"},"license":"MIT","keywords":["AST","source","traversal","syntax","tree"],"scripts":{"test":"grunt"},"repository":{"type":"git","url":"git@github.com:SBoudrias/AST-query.git"},"dependencies":{"esprima":"~1.1.1","escodegen":"~1.3.1","lodash":"~2.4.1","traverse":"~0.6.6","class-extend":"~0.1.1"},"devDependencies":{"grunt":"~0.4.1","grunt-cli":"~0.1.9","grunt-contrib-jshint":"~0.10.0","grunt-simple-mocha":"~0.4.0","grunt-release":"~0.7.0"},"gitHead":"eeeb541111fc8cbc4cbc0b394bb4cc79f6963497","bugs":{"url":"https://github.com/SBoudrias/AST-query/issues"},"homepage":"https://github.com/SBoudrias/AST-query","_id":"ast-query@0.3.0","_shasum":"ca0ae981e81da016ec4d3ce0c0abab9f86b54535","_from":".","_npmVersion":"1.4.23","_npmUser":{"name":"sboudrias","email":"admin@simonboudrias.com"},"maintainers":[{"name":"sboudrias","email":""}],"dist":{"shasum":"ca0ae981e81da016ec4d3ce0c0abab9f86b54535","size":9327,"noattachment":false,"key":"/ast-query/-/ast-query-0.3.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/ast-query/download/ast-query-0.3.0.tgz"},"directories":{},"publish_time":1411108332883,"_cnpm_publish_time":1411108332883,"_hasShrinkwrap":false},"0.2.5":{"name":"ast-query","version":"0.2.5","description":"Declarative JavaScript AST modification façade","main":"lib/tree.js","author":{"name":"Simon Boudrias","email":"admin@simonboudrias.com"},"license":"MIT","keywords":["AST","source","traversal","syntax","tree"],"scripts":{"test":"grunt"},"repository":{"type":"git","url":"git@github.com:SBoudrias/AST-query.git"},"dependencies":{"esprima":"~1.1.1","escodegen":"~1.3.1","lodash":"~2.4.1","traverse":"~0.6.6","class-extend":"~0.1.1"},"devDependencies":{"grunt":"~0.4.1","grunt-cli":"~0.1.9","grunt-contrib-jshint":"~0.10.0","grunt-simple-mocha":"~0.4.0","grunt-release":"~0.7.0"},"gitHead":"0bce01fa62db7dbb5a883580860f3bd337e9666c","bugs":{"url":"https://github.com/SBoudrias/AST-query/issues"},"homepage":"https://github.com/SBoudrias/AST-query","_id":"ast-query@0.2.5","_shasum":"f7047439f3f57b7f6bd8da8c1bb8503f70cd72d6","_from":".","_npmVersion":"1.4.23","_npmUser":{"name":"sboudrias","email":"admin@simonboudrias.com"},"maintainers":[{"name":"sboudrias","email":""}],"dist":{"shasum":"f7047439f3f57b7f6bd8da8c1bb8503f70cd72d6","size":9121,"noattachment":false,"key":"/ast-query/-/ast-query-0.2.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/ast-query/download/ast-query-0.2.5.tgz"},"directories":{},"publish_time":1411107632881,"_cnpm_publish_time":1411107632881,"_hasShrinkwrap":false},"0.2.4":{"name":"ast-query","version":"0.2.4","description":"Declarative JavaScript AST modification façade","main":"lib/tree.js","author":{"name":"Simon Boudrias","email":"admin@simonboudrias.com"},"license":"MIT","keywords":["AST","source","traversal","syntax","tree"],"scripts":{"test":"grunt"},"repository":{"type":"git","url":"git@github.com:SBoudrias/AST-query.git"},"dependencies":{"esprima":"~1.1.1","escodegen":"~1.3.1","lodash":"~2.4.1","traverse":"~0.6.6","class-extend":"~0.1.1"},"devDependencies":{"grunt":"~0.4.1","grunt-cli":"~0.1.9","grunt-contrib-jshint":"~0.10.0","grunt-simple-mocha":"~0.4.0","grunt-release":"~0.7.0"},"bugs":{"url":"https://github.com/SBoudrias/AST-query/issues"},"homepage":"https://github.com/SBoudrias/AST-query","_id":"ast-query@0.2.4","_shasum":"853d13e6493fe8c88c19b8fecb098183c3d7449a","_from":".","_npmVersion":"1.4.7","_npmUser":{"name":"sboudrias","email":"admin@simonboudrias.com"},"maintainers":[{"name":"sboudrias","email":""}],"dist":{"shasum":"853d13e6493fe8c88c19b8fecb098183c3d7449a","size":8807,"noattachment":false,"key":"/ast-query/-/ast-query-0.2.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/ast-query/download/ast-query-0.2.4.tgz"},"directories":{},"publish_time":1399442608868,"_cnpm_publish_time":1399442608868,"_hasShrinkwrap":false},"0.2.3":{"name":"ast-query","version":"0.2.3","description":"Declarative JavaScript AST modification façade","main":"lib/tree.js","author":{"name":"Simon Boudrias","email":"admin@simonboudrias.com"},"license":"MIT","keywords":["AST","source","traversal","syntax","tree"],"scripts":{"test":"grunt"},"repository":{"type":"git","url":"git@github.com:SBoudrias/AST-query.git"},"dependencies":{"esprima":"~1.1.1","escodegen":"~1.3.1","lodash":"~2.4.1","traverse":"~0.6.6","class-extend":"~0.1.1"},"devDependencies":{"grunt":"~0.4.1","grunt-cli":"~0.1.9","grunt-contrib-jshint":"~0.10.0","grunt-simple-mocha":"~0.4.0","grunt-release":"~0.7.0"},"bugs":{"url":"https://github.com/SBoudrias/AST-query/issues"},"homepage":"https://github.com/SBoudrias/AST-query","_id":"ast-query@0.2.3","dist":{"shasum":"de5f18b856b86d1552ec79e3812f2fead2010857","size":8612,"noattachment":false,"key":"/ast-query/-/ast-query-0.2.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/ast-query/download/ast-query-0.2.3.tgz"},"_from":".","_npmVersion":"1.3.21","_npmUser":{"name":"sboudrias","email":"admin@simonboudrias.com"},"maintainers":[{"name":"sboudrias","email":""}],"directories":{},"publish_time":1396733441923,"_hasShrinkwrap":false,"_cnpm_publish_time":1396733441923},"0.2.2":{"name":"ast-query","version":"0.2.2","description":"Declarative JavaScript AST modification façade","main":"lib/tree.js","author":{"name":"Simon Boudrias","email":"admin@simonboudrias.com"},"license":"MIT","keywords":["AST","source","traversal","syntax","tree"],"scripts":{"test":"grunt"},"repository":{"type":"git","url":"git@github.com:SBoudrias/AST-query.git"},"dependencies":{"esprima":"~1.1.1","escodegen":"~1.3.1","lodash":"~2.4.1","traverse":"~0.6.6","class-extend":"~0.1.1"},"devDependencies":{"grunt":"~0.4.1","grunt-cli":"~0.1.9","grunt-contrib-jshint":"~0.10.0","grunt-simple-mocha":"~0.4.0","grunt-release":"~0.7.0"},"bugs":{"url":"https://github.com/SBoudrias/AST-query/issues"},"homepage":"https://github.com/SBoudrias/AST-query","_id":"ast-query@0.2.2","dist":{"shasum":"e9c637b25459beb0d9b846b48815868d49b04dc6","size":8607,"noattachment":false,"key":"/ast-query/-/ast-query-0.2.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/ast-query/download/ast-query-0.2.2.tgz"},"_from":".","_npmVersion":"1.3.21","_npmUser":{"name":"sboudrias","email":"admin@simonboudrias.com"},"maintainers":[{"name":"sboudrias","email":""}],"directories":{},"publish_time":1396733030956,"_hasShrinkwrap":false,"_cnpm_publish_time":1396733030956},"0.2.1":{"name":"ast-query","version":"0.2.1","description":"Declarative JavaScript AST modification façade","main":"lib/tree.js","author":{"name":"Simon Boudrias","email":"admin@simonboudrias.com"},"license":"MIT","keywords":["AST","source","traversal","syntax","tree"],"scripts":{"test":"grunt"},"repository":{"type":"git","url":"git@github.com:SBoudrias/AST-query.git"},"dependencies":{"esprima":"~1.1.1","escodegen":"~1.3.1","lodash":"~2.4.1","traverse":"~0.6.6","class-extend":"~0.1.1"},"devDependencies":{"grunt":"~0.4.1","grunt-cli":"~0.1.9","grunt-contrib-jshint":"~0.10.0","grunt-simple-mocha":"~0.4.0","grunt-release":"~0.7.0"},"bugs":{"url":"https://github.com/SBoudrias/AST-query/issues"},"homepage":"https://github.com/SBoudrias/AST-query","_id":"ast-query@0.2.1","dist":{"shasum":"1aa12eb6d784d3a5fcb18113c81898ae4b901e71","size":8606,"noattachment":false,"key":"/ast-query/-/ast-query-0.2.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/ast-query/download/ast-query-0.2.1.tgz"},"_from":".","_npmVersion":"1.3.21","_npmUser":{"name":"sboudrias","email":"admin@simonboudrias.com"},"maintainers":[{"name":"sboudrias","email":""}],"directories":{},"publish_time":1396732118941,"_hasShrinkwrap":false,"_cnpm_publish_time":1396732118941},"0.2.0":{"name":"ast-query","version":"0.2.0","description":"Declarative JavaScript AST modification façade","main":"lib/tree.js","author":{"name":"Simon Boudrias","email":"admin@simonboudrias.com"},"license":"MIT","keywords":["AST","source","traversal","syntax","tree"],"scripts":{"test":"grunt"},"repository":{"type":"git","url":"git@github.com:SBoudrias/AST-query.git"},"dependencies":{"esprima":"~1.0.4","escodegen":"~1.2.0","lodash":"~2.4.1","traverse":"~0.6.6","class-extend":"~0.1.1"},"devDependencies":{"grunt":"~0.4.1","grunt-cli":"~0.1.9","grunt-contrib-jshint":"~0.5.0","grunt-simple-mocha":"~0.4.0","grunt-release":"~0.4.0"},"bugs":{"url":"https://github.com/SBoudrias/AST-query/issues"},"homepage":"https://github.com/SBoudrias/AST-query","_id":"ast-query@0.2.0","dist":{"shasum":"44883fcd3c984451f0c8d480ec6d16415946d89b","size":8492,"noattachment":false,"key":"/ast-query/-/ast-query-0.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/ast-query/download/ast-query-0.2.0.tgz"},"_from":".","_npmVersion":"1.3.21","_npmUser":{"name":"sboudrias","email":"admin@simonboudrias.com"},"maintainers":[{"name":"sboudrias","email":""}],"directories":{},"publish_time":1396730376269,"_hasShrinkwrap":false,"_cnpm_publish_time":1396730376269},"0.1.0-pre.2":{"name":"ast-query","version":"0.1.0-pre.2","description":"Declarative JavaScript AST modification façade","main":"lib/tree.js","author":{"name":"Simon Boudrias","email":"admin@simonboudrias.com"},"license":"MIT","keywords":["AST","source","traversal","syntax","tree"],"scripts":{"test":"grunt"},"repository":{"type":"git","url":"git@github.com:SBoudrias/AST-query.git"},"dependencies":{"falafel":"~0.3.1"},"devDependencies":{"chai":"~1.7.2","grunt":"~0.4.1","grunt-cli":"~0.1.9","grunt-contrib-jshint":"~0.5.0","grunt-simple-mocha":"~0.4.0","grunt-release":"~0.4.0"},"bugs":{"url":"https://github.com/SBoudrias/AST-query/issues"},"_id":"ast-query@0.1.0-pre.2","dist":{"shasum":"35567cec635a6a455a7567808b7c9ef95cbc2c3e","size":14432,"noattachment":false,"key":"/ast-query/-/ast-query-0.1.0-pre.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/ast-query/download/ast-query-0.1.0-pre.2.tgz"},"_from":".","_npmVersion":"1.3.5","_npmUser":{"name":"sboudrias","email":"admin@simonboudrias.com"},"maintainers":[{"name":"sboudrias","email":""}],"directories":{},"publish_time":1393623099590,"_hasShrinkwrap":false,"_cnpm_publish_time":1393623099590},"0.1.0-pre.1":{"name":"ast-query","version":"0.1.0-pre.1","description":"Declarative JavaScript AST modification façade","main":"lib/tree.js","author":{"name":"Simon Boudrias","email":"admin@simonboudrias.com"},"license":"MIT","keywords":["AST","source","traversal","syntax","tree"],"scripts":{"test":"grunt"},"repository":{"type":"git","url":"git@github.com:SBoudrias/AST-query.git"},"dependencies":{"falafel":"~0.3.1"},"devDependencies":{"chai":"~1.7.2","grunt":"~0.4.1","grunt-cli":"~0.1.9","grunt-contrib-jshint":"~0.5.0","grunt-simple-mocha":"~0.4.0","grunt-release":"~0.4.0"},"bugs":{"url":"https://github.com/SBoudrias/AST-query/issues"},"_id":"ast-query@0.1.0-pre.1","dist":{"shasum":"03cc60449d82d087003be9153b787cf822f82f1c","size":6944,"noattachment":false,"key":"/ast-query/-/ast-query-0.1.0-pre.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/ast-query/download/ast-query-0.1.0-pre.1.tgz"},"_from":".","_npmVersion":"1.2.32","_npmUser":{"name":"sboudrias","email":"admin@simonboudrias.com"},"maintainers":[{"name":"sboudrias","email":""}],"directories":{},"publish_time":1375236120309,"_hasShrinkwrap":false,"_cnpm_publish_time":1375236120309},"0.1.0-pre":{"name":"ast-query","version":"0.1.0-pre","description":"Declarative JavaScript AST modification façade","main":"lib/tree.js","author":{"name":"Simon Boudrias","email":"admin@simonboudrias.com"},"license":"MIT","keywords":["AST","source","traversal","syntax","tree"],"scripts":{"test":"grunt"},"repository":{"type":"git","url":"git@github.com:SBoudrias/AST-query.git"},"dependencies":{"falafel":"~0.3.1"},"devDependencies":{"chai":"~1.7.2","grunt":"~0.4.1","grunt-cli":"~0.1.9","grunt-contrib-jshint":"~0.5.0","grunt-simple-mocha":"~0.4.0","grunt-release":"~0.4.0"},"bugs":{"url":"https://github.com/SBoudrias/AST-query/issues"},"_id":"ast-query@0.1.0-pre","dist":{"shasum":"03824768bb0d6b5760c93b71e2c4a544b2a8c608","size":6762,"noattachment":false,"key":"/ast-query/-/ast-query-0.1.0-pre.tgz","tarball":"http://registry.cnpm.dingdandao.com/ast-query/download/ast-query-0.1.0-pre.tgz"},"_from":".","_npmVersion":"1.2.32","_npmUser":{"name":"sboudrias","email":"admin@simonboudrias.com"},"maintainers":[{"name":"sboudrias","email":""}],"directories":{},"publish_time":1375056718703,"_hasShrinkwrap":false,"_cnpm_publish_time":1375056718703}},"readme":"AST Query\n================\n\n[![npm](https://badge.fury.io/js/ast-query.svg)](http://badge.fury.io/js/ast-query) [![tests](https://travis-ci.org/SBoudrias/AST-query.svg?branch=master)](http://travis-ci.org/SBoudrias/AST-query) [![dependencies](https://david-dm.org/SBoudrias/AST-query.svg?theme=shields.io)](https://david-dm.org/SBoudrias/AST-query)\n\n\nThis project is a tentative to create a simple JavaScript AST modification library.\n\nIf you've ever worked with AST trying to edit source code, you'll know it is a bad time. AST syntax is terse and forces you to loop a tree and use conditional structure a lot. AST Query hide these complexities behind a declarative façade.\n\nMaking the simplicity choice means AST Query won't try to cover the full AST API. Rather we strive to answer commons needs.\n\n\nGetting Started\n================\n\nInstall: `npm install --save ast-query`\n\nFirst, you need to pass a program code into AST query:\n\n``` javascript\nvar program = require(\"ast-query\");\nvar tree = program(\"var a = 'foo'\");\n```\n\nThis function returns a wrapped AST tree you can query and modify.\n\nOnce you've modified the AST, get the source code back by calling the `toString` method on the tree.\n\n``` javascript\n// ...\ntree.var(\"a\").value(\"'bar'\");\n\nconsole.log( tree.toString() );\n// LOG: var a = 'bar';\n```\n\nRemember that you are editing source code. This mean you provide raw source code strings. This mean you need to double wrap strings (e.g.: `\"'foo'\"`). If that's not done, AST-query assume you're referencing a variable called `foo`.\n\n\nAPI\n================\n\nProgram\n----------------\n\n### `var tree = program( sourceCode, escodegenOptions, esprimaOptions )`\n- **sourceCode** (String) - The source code to edit.\n- **escodegenOptions** (Object) _optional_ - [escodegen](https://github.com/Constellation/escodegen) option object\n- **acornOptions** (Object) _optional_ - [acorn](https://github.com/ternjs/acorn) option object\n\nReturns an AST tree you can then query as explained below:\n\n### `tree.var( name )`\n- **name** (String) - The variable name\n\nFind and returns a [`Variable` node](#variable-node).\n\nGiven this code\n\n``` js\nvar bar = 23;\n```\n\nYou'd call `tree.var('bar')` to get the Variable node.\n\n### `tree.callExpression( name )`\n- **name** (String) - The name of the function or method being called.\n\nFind a function or method call and return a [`CallExpression` node](#callexpression-node)\n\nGiven this code\n\n```js\ngrunt.initConfig({});\n```\n\nYou'd call `tree.callExpression('grunt.initConfig')` to get the CallExpression node.\n\n### `tree.assignment( assignedTo )`\n- **assignedTo** (String) - The name (name or object) a value is assigned to\n\nFind and return an [`AssignmentExpression` node](#assignmentexpression-node).\n\nYou'd call `tree.assignment('module.exports')` to query the code below:\n\n```js\nmodule.exports = function () {\n  // code\n};\n```\n### `tree.body`\n\nProperty representing the program body in a [`Body` node](#body-node).\n\n### `tree.verbatim( body )`\n- **body** (String) - The source code to inline verbatim\n\nAdds body and return a token assigment.\n\n```js\ntree.body.append('var a = 1;' + tree.verbatim('ANYTHING'));\n```\n\nVariable node\n-----------------\n\n### `.value( value )`\n- **value** (String) _optionnal_ - A string containing the new variable value.\n\nIt returns the current or new value wrapped in AST query interface.\n\n### `.rename( name )`\n- **name** (String) - Change the variable name\n\nCallExpression node\n--------------------\n\n### `.filter( iterator )`\n- **iterator** (Function) - Function receiving each node as arguments and returning true to keep the current node in the returned set.\n\nReturn a new CallExpression nodes collection with nodes passing the iterator test.\n\n### `.arguments`\n\nA property pointing to an [`ArrayExpression` node](#arrayexpression-node) referencing the called function arguments.\n\nAssignmentExpression node\n--------------------\n\n### `.value( value )`\n\nReplace the assignment value with a new value or return the current value wrapped in an AST query interface.\n\nLiteral node\n--------------------\n\nA Literal node represent a raw JavaScript value as a String, a Number or a Boolean.\n\n### `.value( value )`\n\nGet or update the value.\n\nFunctionExpression node\n-------------------\n\nNode representing a function declaration (e.g. `function () {}`).\n\n### `.body`\n\nProperty pointing to a [`Body` node](#body-node) representing the function expression body.\n\nObjectExpression node\n-------------------\n\n### `.key( name )`\n- **name** (String) - Key name\nGet a key value object or create a blank placeholder\n\n### `value( value )`\n\nReplace current node with a new value. Returns the new value wrapped.\n\nArrayExpression node\n-------------------\n\n### `.push( value )`\n- **value** (String) - value to push in the array\n\n### `.unshift( value )`\n- **value** (String) - value to unshift in the array\n\n### `.at( index )`\n- **index** (Number) - Index of the value to fetch\n\nReturns a value wrapped in an AST query interface.\n\n### `value( value )`\n\nReplace current node with a new value. Returns the new value wrapped.\n\nBody node\n-------------------\n\n### `.prepend( code )`\n\nPreprend the given code lines in the body. If a `\"use strict\";` statement is present, it always stay first.\n\n### `.append( code )`\n\nAppend the given code lines in the body.\n\nContributing\n=====================\n\n**Style Guide**: Please base yourself on [Idiomatic.js](https://github.com/rwldrn/idiomatic.js)\nstyle guide with two space indent\n**Unit test**: Unit test are wrote in Mocha. Please add a unit test for every new feature\nor bug fix. `npm test` to run the test suite.\n**Documentation**: Add documentation for every API change. Feel free to send corrections\nor better docs!\n**Pull Requests**: Send _fixes_ PR on the `master` branch. Any new features should be send\non the `wip`branch.\n\n\nLicense\n=====================\n\nCopyright (c) 2013 Simon Boudrias (twitter: @vaxilart)\nLicensed under the MIT license.\n","_attachments":{},"homepage":"https://github.com/sboudrias/AST-query#readme","bugs":{"url":"https://github.com/sboudrias/AST-query/issues"},"license":"MIT"}