{"maintainers":[{"name":"anonymous","email":"takuto.wada@gmail.com"}],"keywords":["power-assert"],"dist-tags":{"latest":"1.2.0"},"author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"https://github.com/twada"},"description":"traverse power-assert context","readme":"[![power-assert][power-assert-banner]][power-assert-url]\n\n[![Build Status][travis-image]][travis-url]\n[![NPM version][npm-image]][npm-url]\n[![License][license-image]][license-url]\n\n\nEventEmitter of `powerAssertContext` object provided by power-assert at runtime.\n\n\nAPI\n---------------------------------------\n\n### var traversal = new ContextTraversal(powerAssertContext);\n\nCreate `EventEmitter` of `powerAssertContext` object, having structure below.\n\n```javascript\n{\n    source: {\n        content: 'assert(foo === bar)',\n        filepath: 'test/some_test.js',\n        line: 1,\n        ast: '### JSON representation of AST nodes ###',\n        tokens: '### JSON representation of AST tokens ###',\n        visitorKeys: '### JSON representation of AST visitor keys ###'\n    },\n    args: [\n        {\n            value: false,\n            events: [\n                {\n                    value: \"FOO\",\n                    espath: \"arguments/0/left\"\n                },\n                {\n                    value: \"BAR\",\n                    espath: \"arguments/0/right\"\n                },\n                {\n                    value: false,\n                    espath: \"arguments/0\"\n                }\n            ]\n        }\n    ]\n}\n```\n\n### traversal.traverse()\n\nFire events while traversing AST tree in `powerAssertContext`.\n\n\n### events\n\n\n#### traversal.on('start', function (powerAssertContext) {})\n\nCalled once when traversal starts. Argument is the `powerAssertContext` object under traversal.\n\n#### traversal.on('data', function (esNode) {})\n\nCalled for each Node of AST in `powerAssertContext`. Argument is a `EsNode` object, having structure below.\n\n```javascript\n{\n    espath: 'arguments/0',\n    parent: '### parent esNode reference unless root ###',\n    key: 0,\n    node: {\n        type: 'BinaryExpression',\n        operator: '===',\n        left: { type: 'Identifier', name: 'foo', range: [ 7, 10 ] },\n        right: { type: 'Identifier', name: 'bar', range: [ 15, 18 ] },\n        range: [ 7, 18 ]\n    },\n    code: 'foo === bar',\n    value: false,\n    isCaptured: true,\n    range: [ 11, 14 ]  // range of operator\n};\n```\n\n```javascript\n{\n    espath: 'arguments/0/right',\n    parent: '### parent esNode reference unless root ###',\n    key: 'right',\n    node: { type: 'Identifier', name: 'bar', range: [ 15, 18 ] },\n    code: 'bar',\n    value: 'BAR',\n    isCaptured: true,\n    range: [ 15, 18 ]\n};\n```\n\n#### traversal.on('end', function () {})\n\nCalled once when traversal ends.\n\n\n\nINSTALL\n---------------------------------------\n\n```sh\n$ npm install --save-dev power-assert-context-traversal\n```\n\n\nAUTHOR\n---------------------------------------\n* [Takuto Wada](https://github.com/twada)\n\n\nLICENSE\n---------------------------------------\nLicensed under the [MIT](https://github.com/twada/power-assert-runtime/blob/master/LICENSE) license.\n\n\n[power-assert-url]: https://github.com/power-assert-js/power-assert\n[power-assert-banner]: https://raw.githubusercontent.com/power-assert-js/power-assert-js-logo/master/banner/banner-official-fullcolor.png\n\n[travis-url]: https://travis-ci.org/twada/power-assert-runtime\n[travis-image]: https://secure.travis-ci.org/twada/power-assert-runtime.svg?branch=master\n\n[npm-url]: https://npmjs.org/package/power-assert-context-traversal\n[npm-image]: https://badge.fury.io/js/power-assert-context-traversal.svg\n\n[license-url]: https://github.com/twada/power-assert-runtime/blob/master/LICENSE\n[license-image]: https://img.shields.io/badge/license-MIT-brightgreen.svg\n","repository":{"type":"git","url":"git+https://github.com/twada/power-assert-runtime.git"},"bugs":{"url":"https://github.com/twada/power-assert-runtime/issues"},"license":"MIT","versions":{"0.1.0":{"name":"power-assert-context-traversal","description":"traverse power-assert context","version":"0.1.0","author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"https://github.com/twada"},"bugs":{"url":"https://github.com/twada/power-assert-runtime/issues"},"dependencies":{"array-foreach":"^1.0.1","array-reduce":"0.0.0","estraverse":"^4.1.0"},"devDependencies":{"babel-types":"^6.1.0","mocha":"^2.4.5"},"files":["README.md","index.js","lib"],"homepage":"https://github.com/twada/power-assert-runtime","keywords":["power-assert"],"license":"MIT","main":"index.js","repository":{"type":"git","url":"git+https://github.com/twada/power-assert-runtime.git"},"scripts":{"test":"mocha"},"_id":"power-assert-context-traversal@0.1.0","_shasum":"c0ae53a90839b9f2a76fc62c4d02c773d73f19a6","_from":".","_npmVersion":"3.6.0","_nodeVersion":"5.7.1","_npmUser":{"name":"anonymous","email":"takuto.wada@gmail.com"},"maintainers":[{"name":"anonymous","email":"takuto.wada@gmail.com"}],"dist":{"shasum":"c0ae53a90839b9f2a76fc62c4d02c773d73f19a6","tarball":"http://repository.ncinga.com/nexus/content/repositories/npm-js-registry/power-assert-context-traversal/-/power-assert-context-traversal-0.1.0.tgz","integrity":"sha512-XKrvyGE8OOE0zhNVXUp0228GsB/WIBwZ9NVyjIaPCIbco8uYKXQxbh3+gUT2GA8SxImY0itJwpRHPPozoQ/uUQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDUaELPc/2Fy1lw9aWaQUClUXllSw7/SFtqLHI4AVgO/QIhAPZduQ+vvpQuOmCvzac9Fu+WlTOV+Elvvrd/QUaqpqlv"}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/power-assert-context-traversal-0.1.0.tgz_1459956014980_0.24075796571560204"},"directories":{}},"1.0.0":{"name":"power-assert-context-traversal","description":"traverse power-assert context","version":"1.0.0","author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"https://github.com/twada"},"bugs":{"url":"https://github.com/twada/power-assert-runtime/issues"},"dependencies":{"core-js":"^2.0.0","estraverse":"^4.1.0"},"devDependencies":{"babel-types":"^6.1.0","mocha":"^2.4.5"},"files":["README.md","index.js","lib"],"homepage":"https://github.com/twada/power-assert-runtime","keywords":["power-assert"],"license":"MIT","main":"index.js","repository":{"type":"git","url":"git+https://github.com/twada/power-assert-runtime.git"},"scripts":{"test":"mocha"},"_id":"power-assert-context-traversal@1.0.0","_shasum":"0b29be4d673b611b1a446c4819c80227f3543b96","_from":".","_npmVersion":"3.8.6","_nodeVersion":"6.1.0","_npmUser":{"name":"anonymous","email":"takuto.wada@gmail.com"},"maintainers":[{"name":"anonymous","email":"takuto.wada@gmail.com"}],"dist":{"shasum":"0b29be4d673b611b1a446c4819c80227f3543b96","tarball":"http://repository.ncinga.com/nexus/content/repositories/npm-js-registry/power-assert-context-traversal/-/power-assert-context-traversal-1.0.0.tgz","integrity":"sha512-L20IJH4hPuhl276SLfHumo32LTrWVGBYQ+vzj3iG/EdKls1GU6FZCgeYvSf8w2yY0UHcd2ww65XLou5zMGsjuQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCMKXlu7r3e0InmDEaxuZ3pjh236w3ORlZzouwjSGbrjgIhAOX1+fmcfZ2jHTN+bATcR7qdS2LNwBdgeosGjO6U4xlz"}]},"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/power-assert-context-traversal-1.0.0.tgz_1464698042309_0.2560291327536106"},"directories":{}},"1.0.7":{"name":"power-assert-context-traversal","description":"traverse power-assert context","version":"1.0.7","author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"https://github.com/twada"},"bugs":{"url":"https://github.com/twada/power-assert-runtime/issues"},"dependencies":{"core-js":"^2.0.0","estraverse":"^4.1.0"},"devDependencies":{"babel-types":"^6.1.0","mocha":"^2.4.5"},"files":["README.md","index.js","lib"],"homepage":"https://github.com/twada/power-assert-runtime","keywords":["power-assert"],"license":"MIT","main":"index.js","repository":{"type":"git","url":"git+https://github.com/twada/power-assert-runtime.git"},"scripts":{"test":"mocha"},"_id":"power-assert-context-traversal@1.0.7","_shasum":"4becd3b8cf2564c3944939294bdf242771a012ca","_from":".","_npmVersion":"3.9.5","_nodeVersion":"6.2.2","_npmUser":{"name":"anonymous","email":"takuto.wada@gmail.com"},"maintainers":[{"name":"anonymous","email":"takuto.wada@gmail.com"}],"dist":{"shasum":"4becd3b8cf2564c3944939294bdf242771a012ca","tarball":"http://repository.ncinga.com/nexus/content/repositories/npm-js-registry/power-assert-context-traversal/-/power-assert-context-traversal-1.0.7.tgz","integrity":"sha512-+i7kNbUB5mUBK+bvKiWd0p9wY509Fcj8zUmnotdCjAMh4mMCBCSRO30gkDhlWfwWGaCVHV0hmpQyDI085kLZZg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFw9Uq+ytVaixiK25elPwQI8BVzDS5jocpX0bFbwBjk7AiEAy+3XXe4EVDqSrmkfo7sEHsiXCS/DL39DzC2bZy9BhfI="}]},"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/power-assert-context-traversal-1.0.7.tgz_1467333680937_0.7325184459332377"},"directories":{}},"1.1.0":{"name":"power-assert-context-traversal","description":"traverse power-assert context","version":"1.1.0","author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"https://github.com/twada"},"bugs":{"url":"https://github.com/twada/power-assert-runtime/issues"},"dependencies":{"core-js":"^2.0.0","estraverse":"^4.1.0"},"devDependencies":{"babel-types":"^6.1.0","mocha":"^2.4.5"},"files":["README.md","index.js","lib"],"homepage":"https://github.com/twada/power-assert-runtime","keywords":["power-assert"],"license":"MIT","main":"index.js","repository":{"type":"git","url":"git+https://github.com/twada/power-assert-runtime.git"},"scripts":{"test":"mocha"},"_id":"power-assert-context-traversal@1.1.0","_shasum":"d815975745a26d9280ec363625c819642edf0264","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.3.0","_npmUser":{"name":"anonymous","email":"takuto.wada@gmail.com"},"maintainers":[{"name":"anonymous","email":"takuto.wada@gmail.com"}],"dist":{"shasum":"d815975745a26d9280ec363625c819642edf0264","tarball":"http://repository.ncinga.com/nexus/content/repositories/npm-js-registry/power-assert-context-traversal/-/power-assert-context-traversal-1.1.0.tgz","integrity":"sha512-TgzmVZYFFtg3b3IaV50tQ4H+xIqTaAqYtLlAgsmD6yQXJGU0uh8uor7W9+JpQV5m5bsYid0R/PDPsGQz9WInXA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAECAtxEOv+YFgYL9F9se9fl0YQgW+1zwAFlp5clUUwyAiBJTwB6d7KXcMyXDHaslLkLv3uZv2GDEhDN8v0tTcHsxQ=="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/power-assert-context-traversal-1.1.0.tgz_1475846599343_0.0998236343730241"},"directories":{}},"1.1.1":{"name":"power-assert-context-traversal","description":"traverse power-assert context","version":"1.1.1","author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"https://github.com/twada"},"bugs":{"url":"https://github.com/twada/power-assert-runtime/issues"},"dependencies":{"core-js":"^2.0.0","estraverse":"^4.1.0"},"devDependencies":{"babel-types":"^6.1.0","mocha":"^3.0.0"},"files":["README.md","index.js","lib"],"homepage":"https://github.com/twada/power-assert-runtime","keywords":["power-assert"],"license":"MIT","main":"index.js","repository":{"type":"git","url":"git+https://github.com/twada/power-assert-runtime.git"},"scripts":{"test":"mocha"},"_id":"power-assert-context-traversal@1.1.1","_shasum":"88cabca0d13b6359f07d3d3e8afa699264577ed9","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.1.0","_npmUser":{"name":"anonymous","email":"takuto.wada@gmail.com"},"maintainers":[{"name":"anonymous","email":"takuto.wada@gmail.com"}],"dist":{"shasum":"88cabca0d13b6359f07d3d3e8afa699264577ed9","tarball":"http://repository.ncinga.com/nexus/content/repositories/npm-js-registry/power-assert-context-traversal/-/power-assert-context-traversal-1.1.1.tgz","integrity":"sha512-SxDohgQJ/V07sLO5sOOWcqV5vJKCmCzE4gPToHOii/UTkDxCGv4Pb7ZvlEJVW73iQc+WgwN0WgkDLZOoAEMopw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAZGSuywpSFcNPpB3wEb7I4pPJQDZUECIMIVAleZ7Ni5AiAceV3Ptw9UAjtPA5eeSbNN0xyDRi/8lnTyfopzdEq0XQ=="}]},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/power-assert-context-traversal-1.1.1.tgz_1478765796670_0.593908031238243"},"directories":{}},"1.2.0":{"name":"power-assert-context-traversal","description":"traverse power-assert context","version":"1.2.0","author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"https://github.com/twada"},"bugs":{"url":"https://github.com/twada/power-assert-runtime/issues"},"dependencies":{"core-js":"^2.0.0","estraverse":"^4.1.0"},"devDependencies":{"babel-types":"^6.1.0","mocha":"^5.0.0"},"files":["README.md","index.js","lib"],"homepage":"https://github.com/twada/power-assert-runtime","keywords":["power-assert"],"license":"MIT","main":"index.js","repository":{"type":"git","url":"git+https://github.com/twada/power-assert-runtime.git"},"scripts":{"test":"mocha"},"_id":"power-assert-context-traversal@1.2.0","_npmVersion":"6.1.0","_nodeVersion":"10.4.0","_npmUser":{"name":"anonymous","email":"takuto.wada@gmail.com"},"maintainers":[{"name":"anonymous","email":"takuto.wada@gmail.com"}],"dist":{"integrity":"sha512-NFoHU6g2umNajiP2l4qb0BRWD773Aw9uWdWYH9EQsVwIZnog5bd2YYLFCVvaxWpwNzWeEfZIon2xtyc63026pQ==","shasum":"f6e71454baf640de5c1c9c270349f5c9ab0b2e94","tarball":"http://repository.ncinga.com/nexus/content/repositories/npm-js-registry/power-assert-context-traversal/-/power-assert-context-traversal-1.2.0.tgz","fileCount":5,"unpackedSize":9499,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbH3KDCRA9TVsSAnZWagAA4HUP/RqI0PxOO65If1c4dGAp\n8fQpURkJwDZFXwZVBwFHjwCwTV7PIiSDllmHdGPzkqJBtumqPi1/ej29c1j6\nitlvORogVHyeqinZJjAaeF0rKyFeoQxnjq/jrsBlrYbpDs526HIQYxwnDe60\nDa7hbzaUjXoP1QBBb8X8NFLL5u8M644haju2ZRNs12YXkkUNb4dxjYfpQwd1\nogx12ULz8QFvqURoB84U8+JxLC1pYYBnKiyfVI/KCG28E30Qwd6o47Yl4nhh\nsezYea8iaWrNzsl0/3Rm+Vq0abFI8onq1UMbWpPDYjT6j7yee6GoRdzVKOv+\nbq971b8d6XB36Uxy4z+HE453viGWgHPJW/bqhWjudxcJuqus5aDaPRkx+qE7\nEf/qTOvpITlAzNQVxpZiMY7oBimv7YjsFzWjFP7SzpV8+OtimMXF8QUcWAje\n1VYRPUL7FTkn7JSlbnjjLyxdP983GIuEVs2enGXmbwCJj2k/m5NsF2RznPB2\ngapHKd0boX2ahnysdaWpip5pJimgtY7kIHl2LOY2bFR/k5tNDaxwa8mxyj+2\nHltkipLp237HepXTKHWer/SalxbqW1A37Z60fqQm62TqRR9wJCM4wZB8gkau\nsrO8ftk3kVWu93jKoBY1rWQ/wIBcwCxLTwJl/PEXHq8XukA0tI/mU2of4uRc\nDVkh\r\n=pH2a\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDrpEjMAr9TbcLBAiCzFcEHpiAa8PblOdFsc2cy4BvJeAIhAIkdEt4L61ZjIi4dPjQIE+6Grf8clBe88fwGlNvgb7IT"}]},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/power-assert-context-traversal_1.2.0_1528787586898_0.29770589464203323"},"_hasShrinkwrap":false}},"name":"power-assert-context-traversal","time":{"modified":"2022-06-24T12:18:38.657Z","created":"2016-04-06T15:20:15.642Z","0.1.0":"2016-04-06T15:20:15.642Z","1.0.0":"2016-05-31T12:34:03.136Z","1.0.7":"2016-07-01T00:41:25.130Z","1.1.0":"2016-10-07T13:23:19.689Z","1.1.1":"2016-11-10T08:16:38.519Z","1.2.0":"2018-06-12T07:13:06.958Z"},"readmeFilename":"README.md","homepage":"https://github.com/twada/power-assert-runtime"}