{"_id":"scope-analyzer","_rev":"1114873","name":"scope-analyzer","description":"simple scope analysis for javascript ASTs","dist-tags":{"latest":"2.1.2"},"maintainers":[{"name":"goto-bus-stop","email":""}],"time":{"modified":"2021-10-05T11:31:02.000Z","created":"2017-11-15T17:16:34.911Z","2.1.2":"2021-10-05T11:28:41.238Z","2.1.1":"2020-03-06T10:11:37.034Z","2.1.0":"2020-03-06T10:02:48.562Z","2.0.6":"2020-03-05T09:26:46.913Z","2.0.5":"2018-06-25T07:56:12.386Z","2.0.4":"2018-05-22T10:11:38.722Z","2.0.3":"2018-04-20T12:02:40.131Z","2.0.2":"2018-04-20T11:53:16.962Z","2.0.1":"2018-03-30T12:06:55.344Z","2.0.0":"2018-03-08T13:56:19.335Z","1.3.0":"2018-01-13T21:24:42.670Z","1.2.0":"2018-01-02T16:57:39.741Z","1.1.1":"2017-12-26T12:46:25.887Z","1.1.0":"2017-12-26T12:11:28.713Z","1.0.0":"2017-11-15T17:16:34.911Z"},"users":{},"author":{"name":"Renée Kooi","email":"renee@kooi.me"},"repository":{"type":"git","url":"git+https://github.com/goto-bus-stop/scope-analyzer.git"},"versions":{"2.1.2":{"name":"scope-analyzer","description":"simple scope analysis for javascript ASTs","version":"2.1.2","author":{"name":"Renée Kooi","email":"renee@kooi.me"},"bugs":{"url":"https://github.com/goto-bus-stop/scope-analyzer/issues"},"dependencies":{"array-from":"^2.1.1","dash-ast":"^2.0.1","es6-map":"^0.1.5","es6-set":"^0.1.5","es6-symbol":"^3.1.1","estree-is-function":"^1.0.0","get-assigned-identifiers":"^1.1.0"},"devDependencies":{"acorn":"^8.0.1","babel-core":"^6.26.3","babel-plugin-transform-es2015-template-literals":"^6.22.0","d3":"^4.13.0","has-template-literals":"^1.0.0","nanobench":"^2.1.1","recast":"^0.20.5","standard":"^14.3.1","tape":"^5.0.1","three":"^0.89.0"},"homepage":"https://github.com/goto-bus-stop/scope-analyzer","keywords":["analysis","ast","javascript","nodes","refactor","rename","scope"],"license":"Apache-2.0","main":"index.js","repository":{"type":"git","url":"git+https://github.com/goto-bus-stop/scope-analyzer.git"},"scripts":{"bench":"nanobench bench/*.js","lint":"standard","tests-only":"node -r ./test/_init.js test/index.js","test":"npm run lint && npm run tests-only"},"gitHead":"45cd4bfeff8ab85d664de5b3353d5c32be458cd0","_id":"scope-analyzer@2.1.2","_nodeVersion":"16.10.0","_npmVersion":"7.24.2","dist":{"shasum":"b958162feb59823c2835c7b0229187a97c77e9cd","size":8815,"noattachment":false,"key":"/scope-analyzer/-/scope-analyzer-2.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/scope-analyzer/download/scope-analyzer-2.1.2.tgz"},"_npmUser":{"name":"goto-bus-stop","email":"renee@kooi.me"},"directories":{},"maintainers":[{"name":"goto-bus-stop","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/scope-analyzer_2.1.2_1633433321045_0.07070325762207053"},"_hasShrinkwrap":false,"publish_time":1633433321238,"_cnpm_publish_time":1633433321238},"2.1.1":{"name":"scope-analyzer","description":"simple scope analysis for javascript ASTs","version":"2.1.1","author":{"name":"Renée Kooi","email":"renee@kooi.me"},"bugs":{"url":"https://github.com/goto-bus-stop/scope-analyzer/issues"},"dependencies":{"array-from":"^2.1.1","dash-ast":"^1.0.0","es6-map":"^0.1.5","es6-set":"^0.1.5","es6-symbol":"^3.1.1","estree-is-function":"^1.0.0","get-assigned-identifiers":"^1.1.0"},"devDependencies":{"acorn":"^6.2.0","babel-core":"^6.26.3","babel-plugin-transform-es2015-template-literals":"^6.22.0","d3":"^4.13.0","has-template-literals":"^1.0.0","nanobench":"^2.1.1","standard":"^14.3.1","tape":"^4.11.0","three":"^0.89.0"},"homepage":"https://github.com/goto-bus-stop/scope-analyzer","keywords":["analysis","ast","javascript","nodes","refactor","rename","scope"],"license":"Apache-2.0","main":"index.js","repository":{"type":"git","url":"git+https://github.com/goto-bus-stop/scope-analyzer.git"},"scripts":{"bench":"nanobench bench/*.js","test":"standard && tape -r ./test/_init.js test/index.js"},"gitHead":"aca7433a629c8be1c46dfc7962cdb16fd8d62ab9","_id":"scope-analyzer@2.1.1","_nodeVersion":"13.9.0","_npmVersion":"6.14.2","dist":{"shasum":"5156c27de084d74bf75af9e9506aaf95c6e73dd6","size":8224,"noattachment":false,"key":"/scope-analyzer/-/scope-analyzer-2.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/scope-analyzer/download/scope-analyzer-2.1.1.tgz"},"maintainers":[{"name":"goto-bus-stop","email":""}],"_npmUser":{"name":"goto-bus-stop","email":"renee@kooi.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/scope-analyzer_2.1.1_1583489496882_0.473819497090739"},"_hasShrinkwrap":false,"publish_time":1583489497034,"_cnpm_publish_time":1583489497034},"2.1.0":{"name":"scope-analyzer","description":"simple scope analysis for javascript ASTs","version":"2.1.0","author":{"name":"Renée Kooi","email":"renee@kooi.me"},"bugs":{"url":"https://github.com/goto-bus-stop/scope-analyzer/issues"},"dependencies":{"array-from":"^2.1.1","es6-map":"^0.1.5","es6-set":"^0.1.5","es6-symbol":"^3.1.1","estree-is-function":"^1.0.0","get-assigned-identifiers":"^1.1.0"},"devDependencies":{"acorn":"^6.2.0","babel-core":"^6.26.3","babel-plugin-transform-es2015-template-literals":"^6.22.0","d3":"^4.13.0","has-template-literals":"^1.0.0","nanobench":"^2.1.1","standard":"^14.3.1","tape":"^4.11.0","three":"^0.89.0"},"homepage":"https://github.com/goto-bus-stop/scope-analyzer","keywords":["analysis","ast","javascript","nodes","refactor","rename","scope"],"license":"Apache-2.0","main":"index.js","repository":{"type":"git","url":"git+https://github.com/goto-bus-stop/scope-analyzer.git"},"scripts":{"bench":"nanobench bench/*.js","test":"standard && tape -r ./test/_init.js test/index.js"},"gitHead":"d6fdc4e5c67aaf56666f23f3cb2bfb5cb9dad738","_id":"scope-analyzer@2.1.0","_nodeVersion":"13.9.0","_npmVersion":"6.14.2","dist":{"shasum":"4fb281ec3f3f349fa6cb42cbcbb7e57bd0a0ee5a","size":8293,"noattachment":false,"key":"/scope-analyzer/-/scope-analyzer-2.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/scope-analyzer/download/scope-analyzer-2.1.0.tgz"},"maintainers":[{"name":"goto-bus-stop","email":""}],"_npmUser":{"name":"goto-bus-stop","email":"renee@kooi.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/scope-analyzer_2.1.0_1583488968392_0.600560347311492"},"_hasShrinkwrap":false,"publish_time":1583488968562,"_cnpm_publish_time":1583488968562},"2.0.6":{"name":"scope-analyzer","description":"simple scope analysis for javascript ASTs","version":"2.0.6","author":{"name":"Renée Kooi","email":"renee@kooi.me"},"bugs":{"url":"https://github.com/goto-bus-stop/scope-analyzer/issues"},"dependencies":{"array-from":"^2.1.1","es6-map":"^0.1.5","es6-set":"^0.1.5","es6-symbol":"^3.1.1","estree-is-function":"^1.0.0","get-assigned-identifiers":"^1.1.0"},"devDependencies":{"acorn":"^6.2.0","babel-core":"^6.26.3","babel-plugin-transform-es2015-template-literals":"^6.22.0","d3":"^4.13.0","has-template-literals":"^1.0.0","nanobench":"^2.1.1","standard":"^13.0.0","tape":"^4.11.0","three":"^0.89.0"},"homepage":"https://github.com/goto-bus-stop/scope-analyzer","keywords":["analysis","ast","javascript","nodes","refactor","rename","scope"],"license":"Apache-2.0","main":"index.js","repository":{"type":"git","url":"git+https://github.com/goto-bus-stop/scope-analyzer.git"},"scripts":{"bench":"nanobench bench/*.js","test":"standard && tape -r ./test/_init.js test/index.js"},"gitHead":"6c45061205894461fd1e15d77ee6dc9d91522df6","_id":"scope-analyzer@2.0.6","_nodeVersion":"13.9.0","_npmVersion":"6.14.2","dist":{"shasum":"c4c966833668353dde0bf6f27654b6b9097a12ff","size":8070,"noattachment":false,"key":"/scope-analyzer/-/scope-analyzer-2.0.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/scope-analyzer/download/scope-analyzer-2.0.6.tgz"},"maintainers":[{"name":"goto-bus-stop","email":""}],"_npmUser":{"name":"goto-bus-stop","email":"renee@kooi.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/scope-analyzer_2.0.6_1583400406796_0.6703941436889751"},"_hasShrinkwrap":false,"publish_time":1583400406913,"_cnpm_publish_time":1583400406913},"2.0.5":{"name":"scope-analyzer","description":"simple scope analysis for javascript ASTs","version":"2.0.5","author":{"name":"Renée Kooi","email":"renee@kooi.me"},"bugs":{"url":"https://github.com/goto-bus-stop/scope-analyzer/issues"},"dependencies":{"array-from":"^2.1.1","es6-map":"^0.1.5","es6-set":"^0.1.5","es6-symbol":"^3.1.1","estree-is-function":"^1.0.0","get-assigned-identifiers":"^1.1.0"},"devDependencies":{"acorn":"^5.5.3","babel-core":"^6.26.0","babel-plugin-transform-es2015-template-literals":"^6.22.0","d3":"^4.13.0","has-template-literals":"^1.0.0","nanobench":"^2.1.0","standard":"^10.0.3","tape":"^4.8.0","three":"^0.89.0"},"homepage":"https://github.com/goto-bus-stop/scope-analyzer","keywords":["analysis","ast","javascript","nodes","refactor","rename","scope"],"license":"Apache-2.0","main":"index.js","repository":{"type":"git","url":"git+https://github.com/goto-bus-stop/scope-analyzer.git"},"scripts":{"bench":"nanobench bench/*.js","test":"standard && tape -r ./test/_init.js test/index.js"},"gitHead":"5d60da8c3ce7ab62216daf723865ccf5401bccab","_id":"scope-analyzer@2.0.5","_npmVersion":"6.1.0","_nodeVersion":"10.5.0","_npmUser":{"name":"goto-bus-stop","email":"renee@kooi.me"},"dist":{"shasum":"72c9c6770c3e66984f84c7d3c7045998a1a7db8a","size":7669,"noattachment":false,"key":"/scope-analyzer/-/scope-analyzer-2.0.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/scope-analyzer/download/scope-analyzer-2.0.5.tgz"},"maintainers":[{"name":"goto-bus-stop","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/scope-analyzer_2.0.5_1529913372271_0.35046045738685105"},"_hasShrinkwrap":false,"publish_time":1529913372386,"_cnpm_publish_time":1529913372386},"2.0.4":{"name":"scope-analyzer","description":"simple scope analysis for javascript ASTs","version":"2.0.4","author":{"name":"Renée Kooi","email":"renee@kooi.me"},"bugs":{"url":"https://github.com/goto-bus-stop/scope-analyzer/issues"},"dependencies":{"array-from":"^2.1.1","es6-map":"^0.1.5","es6-set":"^0.1.5","es6-symbol":"^3.1.1","estree-is-function":"^1.0.0","get-assigned-identifiers":"^1.1.0"},"devDependencies":{"acorn":"^5.5.3","babel-core":"^6.26.0","babel-plugin-transform-es2015-template-literals":"^6.22.0","d3":"^4.13.0","has-template-literals":"^1.0.0","nanobench":"^2.1.0","standard":"^10.0.3","tape":"^4.8.0","three":"^0.89.0"},"homepage":"https://github.com/goto-bus-stop/scope-analyzer","keywords":["analysis","ast","javascript","nodes","refactor","rename","scope"],"license":"Apache-2.0","main":"index.js","repository":{"type":"git","url":"git+https://github.com/goto-bus-stop/scope-analyzer.git"},"scripts":{"bench":"nanobench bench/*.js","test":"standard && tape -r ./test/_init.js test/index.js"},"gitHead":"dd1615eb31154d06adb72933427423494e871f5f","_id":"scope-analyzer@2.0.4","_npmVersion":"6.0.1","_nodeVersion":"10.1.0","_npmUser":{"name":"goto-bus-stop","email":"rene@kooi.me"},"dist":{"shasum":"0d2a93961a751260514c6554f9a0e62ce4375703","size":7475,"noattachment":false,"key":"/scope-analyzer/-/scope-analyzer-2.0.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/scope-analyzer/download/scope-analyzer-2.0.4.tgz"},"maintainers":[{"name":"goto-bus-stop","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/scope-analyzer_2.0.4_1526983898602_0.25357425567263325"},"_hasShrinkwrap":false,"publish_time":1526983898722,"_cnpm_publish_time":1526983898722},"2.0.3":{"name":"scope-analyzer","description":"simple scope analysis for javascript ASTs","version":"2.0.3","author":{"name":"Renée Kooi","email":"renee@kooi.me"},"bugs":{"url":"https://github.com/goto-bus-stop/scope-analyzer/issues"},"dependencies":{"array-from":"^2.1.1","es6-map":"^0.1.5","es6-set":"^0.1.5","es6-symbol":"^3.1.1","estree-is-function":"^1.0.0","get-assigned-identifiers":"^1.1.0"},"devDependencies":{"acorn":"^5.5.3","babel-core":"^6.26.0","babel-plugin-transform-es2015-template-literals":"^6.22.0","d3":"^4.13.0","has-template-literals":"^1.0.0","nanobench":"^2.1.0","standard":"^10.0.3","tape":"^4.8.0","three":"^0.89.0"},"homepage":"https://github.com/goto-bus-stop/scope-analyzer","keywords":["analysis","ast","javascript","nodes","refactor","rename","scope"],"license":"Apache-2.0","main":"index.js","repository":{"type":"git","url":"git+https://github.com/goto-bus-stop/scope-analyzer.git"},"scripts":{"bench":"nanobench bench/*.js","test":"standard && tape -r ./test/_init.js test/index.js"},"gitHead":"2bd078dd99a24f3810bdfcc543309ebc0e9ad13f","_id":"scope-analyzer@2.0.3","_npmVersion":"5.8.0","_nodeVersion":"9.11.1","_npmUser":{"name":"goto-bus-stop","email":"rene@kooi.me"},"dist":{"shasum":"00b8492c65c843f06ca2f09be04a065c2184820b","size":7488,"noattachment":false,"key":"/scope-analyzer/-/scope-analyzer-2.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/scope-analyzer/download/scope-analyzer-2.0.3.tgz"},"maintainers":[{"name":"goto-bus-stop","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/scope-analyzer_2.0.3_1524225759936_0.46905181677202634"},"_hasShrinkwrap":false,"publish_time":1524225760131,"_cnpm_publish_time":1524225760131},"2.0.2":{"name":"scope-analyzer","description":"simple scope analysis for javascript ASTs","version":"2.0.2","author":{"name":"Renée Kooi","email":"renee@kooi.me"},"bugs":{"url":"https://github.com/goto-bus-stop/scope-analyzer/issues"},"dependencies":{"acorn":"^5.5.3","array-from":"^2.1.1","es6-map":"^0.1.5","es6-set":"^0.1.5","es6-symbol":"^3.1.1","estree-is-function":"^1.0.0","get-assigned-identifiers":"^1.1.0"},"devDependencies":{"babel-core":"^6.26.0","babel-plugin-transform-es2015-template-literals":"^6.22.0","d3":"^4.13.0","has-template-literals":"^1.0.0","nanobench":"^2.1.0","standard":"^10.0.3","tape":"^4.8.0","three":"^0.89.0"},"homepage":"https://github.com/goto-bus-stop/scope-analyzer","keywords":["analysis","ast","javascript","nodes","refactor","rename","scope"],"license":"Apache-2.0","main":"index.js","repository":{"type":"git","url":"git+https://github.com/goto-bus-stop/scope-analyzer.git"},"scripts":{"bench":"nanobench bench/*.js","test":"standard && tape -r ./test/_init.js test/index.js"},"gitHead":"c7313ab006189fcc21c75ee96dfa5dfdd4a1ebb9","_id":"scope-analyzer@2.0.2","_npmVersion":"5.8.0","_nodeVersion":"9.11.1","_npmUser":{"name":"goto-bus-stop","email":"rene@kooi.me"},"dist":{"shasum":"8b7b2c05a792193742262fa261da8d393b09af8f","size":7289,"noattachment":false,"key":"/scope-analyzer/-/scope-analyzer-2.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/scope-analyzer/download/scope-analyzer-2.0.2.tgz"},"maintainers":[{"name":"goto-bus-stop","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/scope-analyzer_2.0.2_1524225196874_0.1396570550144247"},"_hasShrinkwrap":false,"publish_time":1524225196962,"_cnpm_publish_time":1524225196962},"2.0.1":{"name":"scope-analyzer","description":"simple scope analysis for javascript ASTs","version":"2.0.1","author":{"name":"Renée Kooi","email":"renee@kooi.me"},"bugs":{"url":"https://github.com/goto-bus-stop/scope-analyzer/issues"},"dependencies":{"array-from":"^2.1.1","es6-map":"^0.1.5","es6-set":"^0.1.5","es6-symbol":"^3.1.1","estree-is-function":"^1.0.0","get-assigned-identifiers":"^1.1.0"},"devDependencies":{"acorn":"^5.2.1","babel-core":"^6.26.0","babel-plugin-transform-es2015-template-literals":"^6.22.0","d3":"^4.13.0","has-template-literals":"^1.0.0","nanobench":"^2.1.0","standard":"^10.0.3","tape":"^4.8.0","three":"^0.89.0"},"homepage":"https://github.com/goto-bus-stop/scope-analyzer","keywords":["analysis","ast","javascript","nodes","refactor","rename","scope"],"license":"Apache-2.0","main":"index.js","repository":{"type":"git","url":"git+https://github.com/goto-bus-stop/scope-analyzer.git"},"scripts":{"bench":"nanobench bench/*.js","test":"standard && tape -r ./test/_init.js test/index.js"},"gitHead":"0da180a706c4a8ae4d9a3b923e14a81d2f3f9838","_id":"scope-analyzer@2.0.1","_npmVersion":"5.8.0","_nodeVersion":"9.9.0","_npmUser":{"name":"goto-bus-stop","email":"rene@kooi.me"},"dist":{"shasum":"cdec01fc608b9c95a4b066616dcf058e6a893500","size":7167,"noattachment":false,"key":"/scope-analyzer/-/scope-analyzer-2.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/scope-analyzer/download/scope-analyzer-2.0.1.tgz"},"maintainers":[{"name":"goto-bus-stop","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/scope-analyzer_2.0.1_1522411615274_0.7949770210338276"},"_hasShrinkwrap":false,"publish_time":1522411615344,"_cnpm_publish_time":1522411615344},"2.0.0":{"name":"scope-analyzer","description":"simple scope analysis for javascript ASTs","version":"2.0.0","author":{"name":"Renée Kooi","email":"renee@kooi.me"},"bugs":{"url":"https://github.com/goto-bus-stop/scope-analyzer/issues"},"dependencies":{"array-from":"^2.1.1","es6-map":"^0.1.5","es6-set":"^0.1.5","es6-symbol":"^3.1.1","estree-is-function":"^1.0.0","get-assigned-identifiers":"^1.1.0"},"devDependencies":{"acorn":"^5.2.1","babel-core":"^6.26.0","babel-plugin-transform-es2015-template-literals":"^6.22.0","d3":"^4.13.0","has-template-literals":"^1.0.0","nanobench":"^2.1.0","standard":"^10.0.3","tape":"^4.8.0","three":"^0.89.0"},"homepage":"https://github.com/goto-bus-stop/scope-analyzer","keywords":["analysis","ast","javascript","nodes","refactor","rename","scope"],"license":"Apache-2.0","main":"index.js","repository":{"type":"git","url":"git+https://github.com/goto-bus-stop/scope-analyzer.git"},"scripts":{"bench":"nanobench bench/*.js","test":"standard && tape -r ./test/_init.js test/index.js"},"gitHead":"66ee59d3f53765c6342b7d469b26c67bce5699e7","_id":"scope-analyzer@2.0.0","_npmVersion":"5.7.1","_nodeVersion":"9.7.1","_npmUser":{"name":"goto-bus-stop","email":"rene@kooi.me"},"dist":{"shasum":"7185cfd1fdc4ab1613f44cb46cacec1d943441af","size":7071,"noattachment":false,"key":"/scope-analyzer/-/scope-analyzer-2.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/scope-analyzer/download/scope-analyzer-2.0.0.tgz"},"maintainers":[{"name":"goto-bus-stop","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/scope-analyzer_2.0.0_1520517379008_0.6021999879322895"},"_hasShrinkwrap":false,"publish_time":1520517379335,"_cnpm_publish_time":1520517379335},"1.3.0":{"name":"scope-analyzer","description":"simple scope analysis for javascript ASTs","version":"1.3.0","author":{"name":"Renée Kooi","email":"renee@kooi.me"},"bugs":{"url":"https://github.com/goto-bus-stop/scope-analyzer/issues"},"dependencies":{"estree-is-function":"^1.0.0","get-assigned-identifiers":"^1.1.0"},"devDependencies":{"acorn":"^5.2.1","standard":"^10.0.3","tape":"^4.8.0"},"homepage":"https://github.com/goto-bus-stop/scope-analyzer","keywords":["analysis","ast","javascript","nodes","refactor","rename","scope"],"license":"Apache-2.0","main":"index.js","repository":{"type":"git","url":"git+https://github.com/goto-bus-stop/scope-analyzer.git"},"scripts":{"test":"standard && tape test/*.js"},"gitHead":"63182fccb769290214e5e2623b8a507fd66ec917","_id":"scope-analyzer@1.3.0","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"goto-bus-stop","email":"rene@kooi.me"},"dist":{"shasum":"e5041805b50d13d8d5a4a746045099595062706d","size":6352,"noattachment":false,"key":"/scope-analyzer/-/scope-analyzer-1.3.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/scope-analyzer/download/scope-analyzer-1.3.0.tgz"},"maintainers":[{"name":"goto-bus-stop","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/scope-analyzer-1.3.0.tgz_1515878681671_0.6055983044207096"},"directories":{},"publish_time":1515878682670,"_hasShrinkwrap":false,"_cnpm_publish_time":1515878682670},"1.2.0":{"name":"scope-analyzer","description":"simple scope analysis for javascript ASTs","version":"1.2.0","author":{"name":"Renée Kooi","email":"renee@kooi.me"},"bugs":{"url":"https://github.com/goto-bus-stop/scope-analyzer/issues"},"dependencies":{"estree-is-function":"^1.0.0","estree-walk":"^2.2.0","get-assigned-identifiers":"^1.1.0"},"devDependencies":{"acorn":"^5.2.1","estree-assign-parent":"^1.0.0","standard":"^10.0.3","tape":"^4.8.0"},"homepage":"https://github.com/goto-bus-stop/scope-analyzer","keywords":["analysis","ast","javascript","nodes","refactor","rename","scope"],"license":"Apache-2.0","main":"index.js","repository":{"type":"git","url":"git+https://github.com/goto-bus-stop/scope-analyzer.git"},"scripts":{"test":"standard && tape test/*.js"},"gitHead":"6453162442771e27bf0d79866d318e0e8ce643b1","_id":"scope-analyzer@1.2.0","_npmVersion":"5.6.0","_nodeVersion":"9.3.0","_npmUser":{"name":"goto-bus-stop","email":"rene@kooi.me"},"dist":{"shasum":"c6a0ebc1df8b95627ad96b99cd6946adbde62711","size":5775,"noattachment":false,"key":"/scope-analyzer/-/scope-analyzer-1.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/scope-analyzer/download/scope-analyzer-1.2.0.tgz"},"maintainers":[{"name":"goto-bus-stop","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/scope-analyzer-1.2.0.tgz_1514912258785_0.20509349298663437"},"directories":{},"publish_time":1514912259741,"_hasShrinkwrap":false,"_cnpm_publish_time":1514912259741},"1.1.1":{"name":"scope-analyzer","description":"simple scope analysis for javascript ASTs","version":"1.1.1","author":{"name":"Renée Kooi","email":"renee@kooi.me"},"bugs":{"url":"https://github.com/goto-bus-stop/scope-analyzer/issues"},"dependencies":{"estree-is-function":"^1.0.0","estree-walk":"^2.2.0","get-assigned-identifiers":"^1.1.0"},"devDependencies":{"acorn":"^5.2.1","estree-assign-parent":"^1.0.0","standard":"^10.0.3","tape":"^4.8.0"},"homepage":"https://github.com/goto-bus-stop/scope-analyzer","keywords":["analysis","ast","javascript","nodes","refactor","rename","scope"],"license":"Apache-2.0","main":"index.js","repository":{"type":"git","url":"git+https://github.com/goto-bus-stop/scope-analyzer.git"},"scripts":{"test":"standard && tape test/*.js"},"gitHead":"d3b77729a797198a78c26b17ba1785bf70d7882b","_id":"scope-analyzer@1.1.1","_npmVersion":"5.6.0","_nodeVersion":"9.3.0","_npmUser":{"name":"goto-bus-stop","email":"rene@kooi.me"},"dist":{"shasum":"2701987611e1655c6fa5c128fbaeb3a8d9baf2b2","size":5562,"noattachment":false,"key":"/scope-analyzer/-/scope-analyzer-1.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/scope-analyzer/download/scope-analyzer-1.1.1.tgz"},"maintainers":[{"name":"goto-bus-stop","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/scope-analyzer-1.1.1.tgz_1514292385026_0.9535640263929963"},"directories":{},"publish_time":1514292385887,"_hasShrinkwrap":false,"_cnpm_publish_time":1514292385887},"1.1.0":{"name":"scope-analyzer","description":"simple scope analysis for javascript ASTs","version":"1.1.0","author":{"name":"Renée Kooi","email":"renee@kooi.me"},"bugs":{"url":"https://github.com/goto-bus-stop/scope-analyzer/issues"},"dependencies":{"estree-is-function":"^1.0.0","estree-walk":"^2.2.0","get-assigned-identifiers":"^1.1.0"},"devDependencies":{"acorn":"^5.2.1","estree-assign-parent":"^1.0.0","standard":"^10.0.3","tape":"^4.8.0"},"homepage":"https://github.com/goto-bus-stop/scope-analyzer","keywords":["analysis","ast","javascript","nodes","refactor","rename","scope"],"license":"Apache-2.0","main":"index.js","repository":{"type":"git","url":"git+https://github.com/goto-bus-stop/scope-analyzer.git"},"scripts":{"test":"standard && tape test/*.js"},"gitHead":"ba288723edb39e4835d1ca3a151f98fde7efeb73","_id":"scope-analyzer@1.1.0","_npmVersion":"5.6.0","_nodeVersion":"9.3.0","_npmUser":{"name":"goto-bus-stop","email":"rene@kooi.me"},"dist":{"shasum":"2c75c5ec3e2107129c107bed7add09e231ca8725","size":5414,"noattachment":false,"key":"/scope-analyzer/-/scope-analyzer-1.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/scope-analyzer/download/scope-analyzer-1.1.0.tgz"},"maintainers":[{"name":"goto-bus-stop","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/scope-analyzer-1.1.0.tgz_1514290287815_0.437706594588235"},"directories":{},"publish_time":1514290288713,"_hasShrinkwrap":false,"_cnpm_publish_time":1514290288713},"1.0.0":{"name":"scope-analyzer","description":"simple scope analysis for javascript ASTs","version":"1.0.0","author":{"name":"Renée Kooi","email":"renee@kooi.me"},"bugs":{"url":"https://github.com/goto-bus-stop/scope-analyzer/issues"},"dependencies":{"estree-walk":"^2.2.0","get-assigned-identifiers":"^1.0.0"},"devDependencies":{"standard":"^10.0.3","tape":"^4.8.0"},"homepage":"https://github.com/goto-bus-stop/scope-analyzer","keywords":["analysis","ast","javascript","nodes","refactor","rename","scope"],"license":"Apache-2.0","main":"index.js","repository":{"type":"git","url":"git+https://github.com/goto-bus-stop/scope-analyzer.git"},"scripts":{"test":"standard && tape test/*.js"},"gitHead":"df64981b00bc8dbdf07e3f4b42e51fa1eff75b3c","_id":"scope-analyzer@1.0.0","_npmVersion":"5.5.1","_nodeVersion":"8.8.1","_npmUser":{"name":"goto-bus-stop","email":"rene@kooi.me"},"dist":{"shasum":"d1019ac524c8118fc6b907bd7a8097eb1ecbf809","size":4586,"noattachment":false,"key":"/scope-analyzer/-/scope-analyzer-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/scope-analyzer/download/scope-analyzer-1.0.0.tgz"},"maintainers":[{"name":"goto-bus-stop","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/scope-analyzer-1.0.0.tgz_1510766193946_0.8638015354517847"},"directories":{},"publish_time":1510766194911,"_hasShrinkwrap":false,"_cnpm_publish_time":1510766194911}},"readme":"# scope-analyzer\n\nsimple scope analysis for javascript ASTs. tracks scopes and collects references to variables.\n\nCaveats and/or todos:\n\n - May be missing edge cases.\n - Things like `label:`s are not considered at all, but ideally in the future they will!\n\n[![stability][stability-image]][stability-url]\n[![npm][npm-image]][npm-url]\n[![travis][travis-image]][travis-url]\n[![standard][standard-image]][standard-url]\n\n[stability-image]: https://img.shields.io/badge/stability-experimental-orange.svg?style=flat-square\n[stability-url]: https://nodejs.org/api/documentation.html#documentation_stability_index\n[npm-image]: https://img.shields.io/npm/v/scope-analyzer.svg?style=flat-square\n[npm-url]: https://www.npmjs.com/package/scope-analyzer\n[travis-image]: https://img.shields.io/travis/goto-bus-stop/scope-analyzer.svg?style=flat-square\n[travis-url]: https://travis-ci.org/goto-bus-stop/scope-analyzer\n[standard-image]: https://img.shields.io/badge/code%20style-standard-brightgreen.svg?style=flat-square\n[standard-url]: http://npm.im/standard\n\n## Install\n\n```\nnpm install scope-analyzer\n```\n\n## Usage\n\nNote: AST nodes passed to `scope-analyzer` functions are expected to reference the parent node on a `node.parent` property.\nNodes from [falafel](https://github.com/substack/node-falafel) or [transform-ast](https://github.com/goto-bus-stop/transform-ast) have a `.parent` property, but others may not. You can use [estree-assign-parent](https://github.com/goto-bus-stop/estree-assign-parent) to quickly assign a parent property to all nodes in an AST.\n\n```js\nvar scan = require('scope-analyzer')\n\nvar ast = parse('...')\n// Initialize node module variables\nscan.createScope(ast, ['module', 'exports', '__dirname', '__filename'])\nscan.crawl(ast)\n\nvar binding = scan.getBinding(ast, 'exports')\nbinding.getReferences().forEach(function (reference) {\n  // Assume for the sake of the example that all references to `exports` are assignments like\n  // `exports.xyz = abc`\n  console.log('found export:', reference.parent.property.name)\n})\n```\n\n## API\n\n### `crawl(ast)`\n\nWalk the ast and analyze all scopes. This will immediately allow you to use the `get*` methods on any node in the tree.\n\n### `clear(ast)`\n\nClear scope information in all nodes of the AST.\n\n### `visitScope(node)`\n\nVisit a node to check if it initialises any scopes.\nFor example, a function declaration will initialise a new scope to hold bindings for its parameters.\nUse this if you are already walking the AST manually, and if you don't need the scope information during this walk.\n\n### `visitBinding(node)`\n\nVisit a node to check if it is a reference to an existing binding.\nIf it is, the reference is added to the parent scope.\nUse this if you are already walking the AST manually.\n\n### `createScope(node, bindings)`\n\nInitialise a new scope at the given node. `bindings` is an array of variable names.\nThis can be useful to make the scope analyzer aware of preexisting global variables.\nIn that case, call `createScope` on the root node with the names of globals:\n\n```js\nvar ast = parse('xyz')\nscopeAnalyzer.createScope(ast, ['HTMLElement', 'Notification', ...])\n```\n\n### `deleteScope(node)`\n\nDelete the scope initialised by node.\n\n### `scope(node)`\n\nGet the [Scope](#scope) initialised by the given node.\n\n### `getBinding(node)`\n\nGet the [Binding](#binding) referenced by the `Identifier` `node`.\n\n### Scope\n\n#### `scope.has(name)`\n\nCheck if this scope defines `name`.\n\n#### `scope.getBinding(name)`\n\nGet the [Binding](#binding) named `name` that is declared by this scope.\n\n#### `scope.getReferences(name)`\n\nGet a list of all nodes referencing the `name` binding that is declared by this scope.\n\n#### `scope.getUndeclaredNames()`\n\nGet a list of all names that were used in this scope, but not defined anywhere in the AST.\n\n#### `scope.forEach(cb(binding, name))`\n\nLoop over all bindings declared by this scope.\n\n#### `scope.forEachAvailable(cb(binding, name))`\n\nLoop over all bindings available to this scope, declared in this scope or any parent scope.\n\n### Binding\n\n#### `binding.definition`\n\nThe node that defined this binding. If this binding was not declared in the AST, `binding.definition` will be undefined.\n\n#### `binding.getReferences()`\n\nReturn an array of nodes that reference this binding.\n\n#### `binding.isReferenced()`\n\nCheck if the binding is referenced, i.e., if there are any identifier Nodes (other than `binding.definition`) referencing this binding.\n\n#### `binding.remove(node)`\n\nRemove a reference to this binding. Use this when you are replacing the node referencing the binding with something else.\n\n## License\n\n[Apache-2.0](LICENSE.md)\n","_attachments":{},"homepage":"https://github.com/goto-bus-stop/scope-analyzer","bugs":{"url":"https://github.com/goto-bus-stop/scope-analyzer/issues"},"license":"Apache-2.0"}