{"_id":"regexp-tree","_rev":"2971617","name":"regexp-tree","description":"Regular Expressions parser in JavaScript","dist-tags":{"latest":"0.1.27"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"time":{"modified":"2023-05-22T08:58:23.000Z","created":"2017-03-19T21:16:04.925Z","0.1.27":"2023-04-30T02:19:09.884Z","0.1.26":"2023-04-30T01:58:03.458Z","0.1.25":"2023-04-16T18:30:41.027Z","0.1.24":"2021-09-20T21:02:38.847Z","0.1.23":"2021-01-21T05:31:04.383Z","0.1.22":"2021-01-18T09:34:01.432Z","0.1.21":"2020-03-14T02:41:35.268Z","0.1.20":"2020-02-20T05:06:53.093Z","0.1.19":"2020-02-12T21:49:25.176Z","0.1.18":"2020-01-31T18:48:44.554Z","0.1.17":"2019-12-03T21:11:19.154Z","0.1.16":"2019-11-15T01:47:12.120Z","0.1.15":"2019-11-14T04:58:29.648Z","0.1.14":"2019-09-24T03:23:51.087Z","0.1.13":"2019-08-30T17:41:32.772Z","0.1.12":"2019-08-26T03:44:07.362Z","0.1.11":"2019-07-05T23:19:24.655Z","0.1.10":"2019-05-21T05:36:57.200Z","0.1.9":"2019-05-21T05:33:37.145Z","0.1.8":"2019-05-17T22:32:51.276Z","0.1.7":"2019-05-17T22:25:09.868Z","0.1.6":"2019-04-28T05:47:57.143Z","0.1.5":"2019-02-18T19:02:37.500Z","0.1.4":"2019-02-18T04:02:23.871Z","0.1.3":"2019-02-18T03:50:00.853Z","0.1.2":"2019-02-18T03:46:30.395Z","0.1.1":"2019-01-29T18:41:51.611Z","0.1.0":"2019-01-15T01:32:21.950Z","0.0.86":"2019-01-10T22:51:41.171Z","0.0.85":"2018-06-12T03:03:09.253Z","0.0.84":"2018-06-12T02:59:58.860Z","0.0.83":"2018-03-12T17:38:15.109Z","0.0.82":"2018-03-09T20:45:23.520Z","0.0.81":"2018-02-12T07:48:04.990Z","0.0.80":"2018-02-12T07:46:01.242Z","0.0.79":"2018-02-06T20:39:49.556Z","0.0.78":"2018-01-03T05:33:52.487Z","0.0.77":"2018-01-01T20:19:18.744Z","0.0.76":"2017-12-30T07:34:33.737Z","0.0.75":"2017-12-26T20:29:26.033Z","0.0.74":"2017-12-11T18:54:45.266Z","0.0.73":"2017-12-08T08:32:39.800Z","0.0.72":"2017-11-30T19:20:25.601Z","0.0.71":"2017-11-28T22:51:57.032Z","0.0.70":"2017-11-24T04:58:47.019Z","0.0.69":"2017-11-21T18:47:09.749Z","0.0.68":"2017-11-20T18:52:26.514Z","0.0.67":"2017-11-18T20:16:42.744Z","0.0.66":"2017-11-17T22:28:44.618Z","0.0.65":"2017-11-15T04:26:58.874Z","0.0.64":"2017-11-12T21:54:40.974Z","0.0.63":"2017-11-12T19:46:01.464Z","0.0.62":"2017-11-12T19:37:02.812Z","0.0.61":"2017-11-07T10:57:11.279Z","0.0.60":"2017-11-07T05:49:28.538Z","0.0.59":"2017-11-05T23:52:47.093Z","0.0.58":"2017-10-23T23:04:42.119Z","0.0.57":"2017-10-23T21:03:15.121Z","0.0.56":"2017-10-20T01:36:02.845Z","0.0.55":"2017-10-19T22:59:05.658Z","0.0.54":"2017-08-11T04:55:53.739Z","0.0.53":"2017-08-08T17:22:19.453Z","0.0.52":"2017-07-31T18:12:47.716Z","0.0.51":"2017-07-11T09:16:52.445Z","0.0.50":"2017-06-30T09:15:25.208Z","0.0.49":"2017-06-28T18:22:12.306Z","0.0.48":"2017-05-05T21:10:41.502Z","0.0.47":"2017-04-30T05:56:04.129Z","0.0.46":"2017-04-26T21:00:56.146Z","0.0.45":"2017-04-17T19:52:18.297Z","0.0.44":"2017-04-17T08:10:58.274Z","0.0.43":"2017-04-17T04:27:30.247Z","0.0.42":"2017-04-17T03:55:28.644Z","0.0.41":"2017-04-16T04:42:20.347Z","0.0.40":"2017-04-15T19:28:25.661Z","0.0.39":"2017-04-15T02:14:19.305Z","0.0.38":"2017-04-14T00:52:44.320Z","0.0.37":"2017-04-13T06:03:58.836Z","0.0.36":"2017-04-13T05:54:59.838Z","0.0.35":"2017-04-13T05:32:57.028Z","0.0.34":"2017-04-12T04:43:03.923Z","0.0.33":"2017-04-11T04:37:26.573Z","0.0.32":"2017-04-10T19:15:45.233Z","0.0.31":"2017-04-07T04:09:40.953Z","0.0.30":"2017-04-07T01:16:41.690Z","0.0.29":"2017-04-06T05:22:41.423Z","0.0.28":"2017-04-06T05:13:19.510Z","0.0.27":"2017-04-04T18:42:27.344Z","0.0.26":"2017-04-04T17:10:06.350Z","0.0.25":"2017-04-04T06:17:16.359Z","0.0.24":"2017-04-04T05:59:37.007Z","0.0.23":"2017-04-03T20:14:50.589Z","0.0.22":"2017-04-03T19:42:09.030Z","0.0.21":"2017-04-02T07:10:56.549Z","0.0.20":"2017-04-01T19:20:58.077Z","0.0.19":"2017-03-30T05:41:39.365Z","0.0.18":"2017-03-29T18:54:00.740Z","0.0.17":"2017-03-29T01:57:48.465Z","0.0.16":"2017-03-29T01:24:08.750Z","0.0.15":"2017-03-29T01:14:15.904Z","0.0.14":"2017-03-28T17:41:17.329Z","0.0.13":"2017-03-28T17:13:06.101Z","0.0.12":"2017-03-28T08:44:46.040Z","0.0.11":"2017-03-28T07:52:54.950Z","0.0.10":"2017-03-25T05:38:17.145Z","0.0.9":"2017-03-24T21:33:30.060Z","0.0.8":"2017-03-24T20:29:54.131Z","0.0.7":"2017-03-23T20:30:09.728Z","0.0.6":"2017-03-21T00:22:00.694Z","0.0.5":"2017-03-20T23:36:54.463Z","0.0.4":"2017-03-20T18:02:04.810Z","0.0.3":"2017-03-20T05:11:40.385Z","0.0.2":"2017-03-20T04:21:40.492Z","0.0.1":"2017-03-19T21:16:04.925Z"},"users":{"masonwan":true,"ferrari":true,"cef62":true,"ahmedelgabri":true},"author":{"name":"Dmitry Soshnikov"},"repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"versions":{"0.1.27":{"name":"regexp-tree","version":"0.1.27","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node ./scripts/build.js","watch":"node ./scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint ./src/ && eslint ./bin/regexp-tree"},"bin":{"regexp-tree":"bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^29.0.2","prettier":"^1.17.1","shelljs":"^0.8.5","syntax-cli":"^0.1.11"},"types":"./index.d.ts","gitHead":"bbcfcab0e27dad8306de46dc865d4ba5cd509d32","_id":"regexp-tree@0.1.27","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"shasum":"2198f0ef54518ffa743fe74d983b56ffd631b6cd","size":68410,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.27.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.27.tgz"},"_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"directories":{},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.27_1682821149708_0.8906858979257875"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-04-30T02:19:09.884Z","publish_time":1682821149884,"_source_registry_name":"default","_cnpm_publish_time":1682821149884},"0.1.26":{"name":"regexp-tree","version":"0.1.26","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^29.0.2","prettier":"^1.17.1","shelljs":"^0.8.5","syntax-cli":"^0.1.11"},"types":"./index.d.ts","gitHead":"2082f7082446089f0549e0a76cf073581b25f55b","_id":"regexp-tree@0.1.26","_nodeVersion":"17.8.0","_npmVersion":"8.19.2","dist":{"shasum":"0dc1fbe44e1d53c7f289454fbcd61a39a76d2bcf","size":68363,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.26.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.26.tgz"},"_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"directories":{},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.26_1682819883267_0.9881337144315852"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-04-30T01:58:03.458Z","publish_time":1682819883458,"_source_registry_name":"default","_cnpm_publish_time":1682819883458},"0.1.25":{"name":"regexp-tree","version":"0.1.25","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^29.0.2","prettier":"^1.17.1","shelljs":"^0.8.5","syntax-cli":"^0.1.11"},"types":"./index.d.ts","gitHead":"ef85ac29c4638c2db5833f57c050bfeb8bc346be","_id":"regexp-tree@0.1.25","_nodeVersion":"17.8.0","_npmVersion":"8.19.2","dist":{"shasum":"1c864b07c06a198fc8153ddbe047897a5547305e","size":68364,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.25.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.25.tgz"},"_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"directories":{},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.25_1681669840807_0.026557082248099384"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-04-16T18:30:41.027Z","publish_time":1681669841027,"_cnpm_publish_time":1681669841027},"0.1.24":{"name":"regexp-tree","version":"0.1.24","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.17.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"c70338d61c6d32b472245f4d441e3e7fa05bd1ae","_id":"regexp-tree@0.1.24","_nodeVersion":"12.20.1","_npmVersion":"6.14.10","dist":{"shasum":"3d6fa238450a4d66e5bc9c4c14bb720e2196829d","size":69044,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.24.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.24.tgz"},"_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"directories":{},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.24_1632171758648_0.3282547806644114"},"_hasShrinkwrap":false,"publish_time":1632171758847,"_cnpm_publish_time":1632171758847},"0.1.23":{"name":"regexp-tree","version":"0.1.23","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.17.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"d8b41782be91a657164c04e2d0681d14a47b02a4","_id":"regexp-tree@0.1.23","_nodeVersion":"13.3.0","_npmVersion":"6.14.10","dist":{"shasum":"8a8ce1cc5e971acef62213a7ecdb1f6e18a1f1b2","size":69022,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.23.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.23.tgz"},"_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"directories":{},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.23_1611207064098_0.9170542699451274"},"_hasShrinkwrap":false,"publish_time":1611207064383,"_cnpm_publish_time":1611207064383},"0.1.22":{"name":"regexp-tree","version":"0.1.22","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.17.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"42a8be1cb9f6cc74874fa4f4cfdb53c68705855d","_id":"regexp-tree@0.1.22","_nodeVersion":"13.3.0","_npmVersion":"6.14.10","dist":{"shasum":"495bb485bc25422f1967b85d71fac0e9d731aa1b","size":68816,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.22.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.22.tgz"},"_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"directories":{},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.22_1610962441287_0.39281771313014757"},"_hasShrinkwrap":false,"publish_time":1610962441432,"_cnpm_publish_time":1610962441432},"0.1.21":{"name":"regexp-tree","version":"0.1.21","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.17.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"e204c7cf60e28631a95fa2bc5e437e09d8c87b53","_id":"regexp-tree@0.1.21","_nodeVersion":"10.17.0","_npmVersion":"6.13.3","dist":{"shasum":"55e2246b7f7d36f1b461490942fa780299c400d7","size":68803,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.21.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.21.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.21_1584153695048_0.8811501597492992"},"_hasShrinkwrap":false,"publish_time":1584153695268,"_cnpm_publish_time":1584153695268},"0.1.20":{"name":"regexp-tree","version":"0.1.20","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.17.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"014ec558d3f44beeb2a18923ad8c6082c91e35c5","_id":"regexp-tree@0.1.20","_nodeVersion":"10.17.0","_npmVersion":"6.13.3","dist":{"shasum":"d4ca65e4ab9ab05262acfce674dadd02d0fb9808","size":68629,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.20.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.20.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.20_1582175212903_0.11690815049343817"},"_hasShrinkwrap":false,"publish_time":1582175213093,"_cnpm_publish_time":1582175213093},"0.1.19":{"name":"regexp-tree","version":"0.1.19","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.17.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"1ed2bc3597c0cb4e2e891f445d037cb487aa38cc","_id":"regexp-tree@0.1.19","_nodeVersion":"10.17.0","_npmVersion":"6.13.3","dist":{"shasum":"9326e91d8d1d23298dd33a78cf5e788f57cdc359","size":68613,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.19.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.19.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.19_1581544165062_0.15167339787355805"},"_hasShrinkwrap":false,"publish_time":1581544165176,"_cnpm_publish_time":1581544165176},"0.1.18":{"name":"regexp-tree","version":"0.1.18","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.17.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"ff52eb25258b49781305e0845365546bd8ef2fc0","_id":"regexp-tree@0.1.18","_nodeVersion":"10.17.0","_npmVersion":"6.13.3","dist":{"shasum":"ed4819a9f03ec2de9613421d6eaf47512e7fdaf1","size":68622,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.18.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.18.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.18_1580496524363_0.5754831694502651"},"_hasShrinkwrap":false,"publish_time":1580496524554,"_cnpm_publish_time":1580496524554},"0.1.17":{"name":"regexp-tree","version":"0.1.17","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.17.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"bd23927f2932ba006f60a8c58d10418e2c701201","_id":"regexp-tree@0.1.17","_nodeVersion":"10.17.0","_npmVersion":"6.11.3","dist":{"shasum":"66d914a6ca21f95dd7660ed70a7dad47aeb2246a","size":68598,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.17.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.17.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.17_1575407478995_0.970383641912973"},"_hasShrinkwrap":false,"publish_time":1575407479154,"_cnpm_publish_time":1575407479154},"0.1.16":{"name":"regexp-tree","version":"0.1.16","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.17.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"1fa6ea9f893659153b0117507c2d55b1a971cb0c","_id":"regexp-tree@0.1.16","_nodeVersion":"10.17.0","_npmVersion":"6.11.3","dist":{"shasum":"0715feadb6f766aad7eac5ef4287d2c39acf2fc5","size":68467,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.16.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.16.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.16_1573782431917_0.43033175093719267"},"_hasShrinkwrap":false,"publish_time":1573782432120,"_cnpm_publish_time":1573782432120},"0.1.15":{"name":"regexp-tree","version":"0.1.15","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.17.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"074838141d652de9dbe6c63b4f7f335ea1045d6b","_id":"regexp-tree@0.1.15","_nodeVersion":"10.17.0","_npmVersion":"6.11.3","dist":{"shasum":"be34245f2bf0694ce39bdb90988f126187a336d3","size":68214,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.15.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.15.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.15_1573707509443_0.5936093314057507"},"_hasShrinkwrap":false,"publish_time":1573707509648,"_cnpm_publish_time":1573707509648},"0.1.14":{"name":"regexp-tree","version":"0.1.14","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.17.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"f4b107c20ac5a303d903f0b42e4d713c85751aa5","_id":"regexp-tree@0.1.14","_nodeVersion":"11.1.0","_npmVersion":"6.11.2","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"1abca3675f6cc4b0dee5c959c6c4554ed172dfae","size":68630,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.14.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.14.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.14_1569295430976_0.26444138003031736"},"_hasShrinkwrap":false,"publish_time":1569295431087,"_cnpm_publish_time":1569295431087},"0.1.13":{"name":"regexp-tree","version":"0.1.13","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.17.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"08a8d7a90b3b3e9f551fdda692463ddf2463f1a5","_id":"regexp-tree@0.1.13","_nodeVersion":"11.1.0","_npmVersion":"6.11.2","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"5b19ab9377edc68bc3679256840bb29afc158d7f","size":68611,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.13.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.13.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.13_1567186892612_0.3179566563715448"},"_hasShrinkwrap":false,"publish_time":1567186892772,"_cnpm_publish_time":1567186892772},"0.1.12":{"name":"regexp-tree","version":"0.1.12","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.17.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"eaf949cae817b6b264b0d2583e80ff12d0559fb0","_id":"regexp-tree@0.1.12","_nodeVersion":"11.1.0","_npmVersion":"6.11.2","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"28eaaa6e66eeb3527c15108a3ff740d9e574e420","size":68594,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.12.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.12.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.12_1566791047126_0.2464447276211028"},"_hasShrinkwrap":false,"publish_time":1566791047362,"_cnpm_publish_time":1566791047362},"0.1.11":{"name":"regexp-tree","version":"0.1.11","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.17.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"5e745ede677e8a249fd9f4c84c948fb81ec8f6ff","_id":"regexp-tree@0.1.11","_npmVersion":"6.4.1","_nodeVersion":"11.1.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"c9c7f00fcf722e0a56c7390983a7a63dd6c272f3","size":60558,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.11.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.11.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.11_1562368764522_0.10993191277375325"},"_hasShrinkwrap":false,"publish_time":1562368764655,"_cnpm_publish_time":1562368764655},"0.1.10":{"name":"regexp-tree","version":"0.1.10","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.17.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"23dec342d2d466b50e3c3cdbdc6a01118b9065a0","_id":"regexp-tree@0.1.10","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"shasum":"d837816a039c7af8a8d64d7a7c3cf6a1d93450bc","size":60121,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.10.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.10.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.10_1558417017065_0.6875157512783883"},"_hasShrinkwrap":false,"publish_time":1558417017200,"_cnpm_publish_time":1558417017200},"0.1.9":{"name":"regexp-tree","version":"0.1.9","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.17.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"650f221514ecb8dc7525ae30bf92bc9b0bfc720b","_id":"regexp-tree@0.1.9","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"shasum":"a5ea9afda0485bcf49b439efc6e3ae76532d1182","size":60123,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.9.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.9.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.9_1558416817037_0.3392926805878198"},"_hasShrinkwrap":false,"publish_time":1558416817145,"_cnpm_publish_time":1558416817145},"0.1.8":{"name":"regexp-tree","version":"0.1.8","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.17.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"e7284fc9e1eb10e510ce90e974639e7083652a76","_id":"regexp-tree@0.1.8","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"shasum":"277e9fb98596af7fa22d8cb38627bfcf4ae2fed2","size":60045,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.8.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.8.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.8_1558132371103_0.6288925353100188"},"_hasShrinkwrap":false,"publish_time":1558132371276,"_cnpm_publish_time":1558132371276},"0.1.7":{"name":"regexp-tree","version":"0.1.7","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.17.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"4ded6c5e32638353af3bb90794d1ccbb5de8a639","_id":"regexp-tree@0.1.7","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"shasum":"757d5cf2b9a12baf8fa82237e40fecb10b45bba5","size":60034,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.7.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.7.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.7_1558131909748_0.8487326085393501"},"_hasShrinkwrap":false,"publish_time":1558131909868,"_cnpm_publish_time":1558131909868},"0.1.6":{"name":"regexp-tree","version":"0.1.6","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.11.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"5a011eb1db8c1deecbb6593c166e2fad6b189041","_id":"regexp-tree@0.1.6","_npmVersion":"6.4.1","_nodeVersion":"11.1.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"84900fa12fdf428a2ac25f04300382a7c0148479","size":56166,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.6.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.6_1556430477020_0.6800596096376337"},"_hasShrinkwrap":false,"publish_time":1556430477143,"_cnpm_publish_time":1556430477143},"0.1.5":{"name":"regexp-tree","version":"0.1.5","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.11.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"52035624c4152dc7ad8d2e26ce0b86afabaf5e38","_id":"regexp-tree@0.1.5","_npmVersion":"6.4.1","_nodeVersion":"11.1.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"7cd71fca17198d04b4176efd79713f2998009397","size":56366,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.5.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.5_1550516557282_0.42768049109329986"},"_hasShrinkwrap":false,"publish_time":1550516557500,"_cnpm_publish_time":1550516557500},"0.1.4":{"name":"regexp-tree","version":"0.1.4","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.11.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"898818aa2a4cd32a8d0b2807313a0e6365c8dd23","_id":"regexp-tree@0.1.4","_npmVersion":"6.4.1","_nodeVersion":"11.1.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"b8b231ba3dc5680f8540c2b9526d3dc46f0278e1","size":56959,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.4.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.4_1550462543760_0.9272459748172259"},"_hasShrinkwrap":false,"publish_time":1550462543871,"_cnpm_publish_time":1550462543871},"0.1.3":{"name":"regexp-tree","version":"0.1.3","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.11.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"64a8f7da46722d1e5e93dd9e031a8fbfb57e6eba","_id":"regexp-tree@0.1.3","_npmVersion":"6.4.1","_nodeVersion":"11.1.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"fca8a36a00cd4c3f3ddc1d4817da25fdf4765a28","size":56957,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.3.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.3_1550461800653_0.16923493133238376"},"_hasShrinkwrap":false,"publish_time":1550461800853,"_cnpm_publish_time":1550461800853},"0.1.2":{"name":"regexp-tree","version":"0.1.2","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.11.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"9845c81bff8a7a5866ae4fd780a020058c440a2d","_id":"regexp-tree@0.1.2","_npmVersion":"6.4.1","_nodeVersion":"11.1.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"3066e53c194f7901f4af36125472ecdbcddb207d","size":56933,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.2.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.2_1550461590170_0.41349638858696025"},"_hasShrinkwrap":false,"publish_time":1550461590395,"_cnpm_publish_time":1550461590395},"0.1.1":{"name":"regexp-tree","version":"0.1.1","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"cli-table3":"^0.5.0","colors":"^1.1.2","yargs":"^12.0.5"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.11.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"e4d8510f5b581ab63384ddbeafedca1b3224c9a2","_id":"regexp-tree@0.1.1","_npmVersion":"6.4.1","_nodeVersion":"11.1.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"27b455f9b138ca2e84c090e9aff1ffe2a04d97fa","size":57642,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.1.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.1_1548787311452_0.03890317680811051"},"_hasShrinkwrap":false,"publish_time":1548787311611,"_cnpm_publish_time":1548787311611},"0.1.0":{"name":"regexp-tree","version":"0.1.0","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"cli-table3":"^0.5.0","colors":"^1.1.2","yargs":"^10.0.3"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.11.1","shelljs":"^0.7.8","syntax-cli":"^0.1.11"},"gitHead":"6709afd1192012e6caac60b4d4d8d38c646bb87a","_id":"regexp-tree@0.1.0","_npmVersion":"6.4.1","_nodeVersion":"11.1.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"a56ad7746097888ea16457479029ec9345b96ab0","size":57644,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.1.0.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.1.0_1547515941750_0.09465254040242899"},"_hasShrinkwrap":false,"publish_time":1547515941950,"_cnpm_publish_time":1547515941950},"0.0.86":{"name":"regexp-tree","version":"0.0.86","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"cli-table3":"^0.5.0","colors":"^1.1.2","yargs":"^10.0.3"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.11.1","shelljs":"^0.7.8","syntax-cli":"^0.1.1"},"gitHead":"cc11d4a075e7ecf41efb34b2373989d9c23a513b","_id":"regexp-tree@0.0.86","_npmVersion":"6.4.1","_nodeVersion":"11.1.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"ea4e26220eebad25313d6f4f19c23535cec86745","size":57301,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.86.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.86.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.0.86_1547160701009_0.2025888889393448"},"_hasShrinkwrap":false,"publish_time":1547160701171,"_cnpm_publish_time":1547160701171},"0.0.85":{"name":"regexp-tree","version":"0.0.85","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"cli-table3":"^0.5.0","colors":"^1.1.2","yargs":"^10.0.3"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.11.1","shelljs":"^0.7.8","syntax-cli":"^0.1.1"},"gitHead":"de38f4d377822aa650fc058877fe74749e7ef616","_id":"regexp-tree@0.0.85","_npmVersion":"6.1.0","_nodeVersion":"9.11.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"278ef1946084e9ddd84b26e69828aab69e3c3186","size":57070,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.85.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.85.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.0.85_1528772589165_0.48649803203445696"},"_hasShrinkwrap":false,"publish_time":1528772589253,"_cnpm_publish_time":1528772589253},"0.0.84":{"name":"regexp-tree","version":"0.0.84","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"cli-table3":"^0.5.0","colors":"^1.1.2","yargs":"^10.0.3"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","prettier":"^1.11.1","shelljs":"^0.7.8","syntax-cli":"^0.1.1"},"gitHead":"110a2a9c8c57adcff970b7bb324809ae360c0f5d","_id":"regexp-tree@0.0.84","_npmVersion":"6.1.0","_nodeVersion":"9.11.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"1917948951479e004c74c4956b68cc7c3cedd9e2","size":57605,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.84.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.84.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.0.84_1528772398706_0.6614152340131796"},"_hasShrinkwrap":false,"publish_time":1528772398860,"_cnpm_publish_time":1528772398860},"0.0.83":{"name":"regexp-tree","version":"0.0.83","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","yargs":"^10.0.3"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","shelljs":"^0.7.8","syntax-cli":"^0.0.99"},"gitHead":"335d9c21df52e6e6911d8c55dff749043e76831e","_id":"regexp-tree@0.0.83","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"ae07ded1b57c72d9bc92afc2f64e04d729a76687","size":58243,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.83.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.83.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.0.83_1520876295058_0.8482615264076852"},"_hasShrinkwrap":false,"publish_time":1520876295109,"_cnpm_publish_time":1520876295109},"0.0.82":{"name":"regexp-tree","version":"0.0.82","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","yargs":"^10.0.3"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","shelljs":"^0.7.8","syntax-cli":"^0.0.99"},"gitHead":"1f15e1e9167dbb7f602e807a59cc13cacebefba5","_id":"regexp-tree@0.0.82","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"ba2b72485d7cad2d0abdae4ebf34f4a75ffc4fa9","size":58193,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.82.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.82.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.0.82_1520628323433_0.5771296644953279"},"_hasShrinkwrap":false,"publish_time":1520628323520,"_cnpm_publish_time":1520628323520},"0.0.81":{"name":"regexp-tree","version":"0.0.81","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","yargs":"^10.0.3"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","shelljs":"^0.7.8","syntax-cli":"^0.0.99"},"gitHead":"1df805a08175b0c556fe64535366fe7b69b6be5f","_id":"regexp-tree@0.0.81","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"322f4a24a49791ff697c3716810fb6d96c43aa22","size":57556,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.81.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.81.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.0.81_1518421684903_0.5513060052588654"},"_hasShrinkwrap":false,"publish_time":1518421684990,"_cnpm_publish_time":1518421684990},"0.0.80":{"name":"regexp-tree","version":"0.0.80","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","yargs":"^10.0.3"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","shelljs":"^0.7.8","syntax-cli":"^0.0.99"},"gitHead":"a117b3e9b2a7b19177c6ce9bffc2ad0200aa77a0","_id":"regexp-tree@0.0.80","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"48351a5c4687a682718de2145c0366cee5cc6ba6","size":57568,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.80.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.80.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree_0.0.80_1518421561118_0.17548729387049167"},"_hasShrinkwrap":false,"publish_time":1518421561242,"_cnpm_publish_time":1518421561242},"0.0.79":{"name":"regexp-tree","version":"0.0.79","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","watch":"node scripts/build.js --watch","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","yargs":"^10.0.3"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","shelljs":"^0.7.8","syntax-cli":"^0.0.99"},"gitHead":"5a98229acb433dab7375304f5d06cb151134a462","_id":"regexp-tree@0.0.79","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"895ca2d41c562774e725ced9e9bd999d473dc7d9","size":56996,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.79.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.79.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.79.tgz_1517949589168_0.08349755220115185"},"directories":{},"publish_time":1517949589556,"_hasShrinkwrap":false,"_cnpm_publish_time":1517949589556},"0.0.78":{"name":"regexp-tree","version":"0.0.78","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","test":"jest","prepublish":"npm run build && npm test","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","yargs":"^10.0.3"},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-env":"1.6.1","babel-preset-flow":"6.23.0","eslint":"^4.11.0","jest-cli":"^19.0.2","shelljs":"^0.7.8","syntax-cli":"^0.0.99"},"gitHead":"84e1b00e9c36ee32881a26943a76f4c2e93c4552","_id":"regexp-tree@0.0.78","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"0d6c6c5f6aae7a7e2e433f61d1eb63b9f3f75d12","size":55998,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.78.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.78.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.78.tgz_1514957632321_0.676339620957151"},"directories":{},"publish_time":1514957632487,"_hasShrinkwrap":false,"_cnpm_publish_time":1514957632487},"0.0.77":{"name":"regexp-tree","version":"0.0.77","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","test":"jest","prepublish":"npm test && npm run build","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","yargs":"^10.0.3"},"devDependencies":{"eslint":"^4.11.0","jest-cli":"^19.0.2","shelljs":"^0.7.8","syntax-cli":"^0.0.98"},"gitHead":"6a3ce68aa48837b757d99037277bc5814baa3b1c","_id":"regexp-tree@0.0.77","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"933da12bf7890209bf8f1e7a93620a759b4c2040","size":76381,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.77.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.77.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.77.tgz_1514837958600_0.5190239364746958"},"directories":{},"publish_time":1514837958744,"_hasShrinkwrap":false,"_cnpm_publish_time":1514837958744},"0.0.76":{"name":"regexp-tree","version":"0.0.76","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","test":"jest","prepublish":"npm test && npm run build","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","yargs":"^10.0.3"},"devDependencies":{"eslint":"^4.11.0","jest-cli":"^19.0.2","shelljs":"^0.7.8","syntax-cli":"^0.0.98"},"gitHead":"e91b19954cbaba4351fa107098c78af5cfa8bb60","_id":"regexp-tree@0.0.76","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"26a174f258f7df288532bdfb59cf90405ba38704","size":76265,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.76.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.76.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.76.tgz_1514619273513_0.36743712751194835"},"directories":{},"publish_time":1514619273737,"_hasShrinkwrap":false,"_cnpm_publish_time":1514619273737},"0.0.75":{"name":"regexp-tree","version":"0.0.75","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","test":"jest","prepublish":"npm test && npm run build","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","yargs":"^10.0.3"},"devDependencies":{"eslint":"^4.11.0","jest-cli":"^19.0.2","shelljs":"^0.7.8","syntax-cli":"^0.0.98"},"gitHead":"56f355e5939617d45f521175e90dd8911d2b4c76","_id":"regexp-tree@0.0.75","_npmVersion":"5.5.1","_nodeVersion":"9.3.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"05c4a3695eb3e9dd33d7f68d5ac670449b5b648c","size":76012,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.75.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.75.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.75.tgz_1514320165584_0.574997745687142"},"directories":{},"publish_time":1514320166033,"_hasShrinkwrap":false,"_cnpm_publish_time":1514320166033},"0.0.74":{"name":"regexp-tree","version":"0.0.74","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","test":"jest","prepublish":"npm test && npm run build","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","yargs":"^10.0.3"},"devDependencies":{"eslint":"^4.11.0","jest-cli":"^19.0.2","shelljs":"^0.7.8","syntax-cli":"^0.0.98"},"gitHead":"17c09188812e362bd01914264d33bb5d2aac26a4","_id":"regexp-tree@0.0.74","_npmVersion":"5.5.1","_nodeVersion":"9.2.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"7dd36f51c8f47ccfaa6ec40b49d7d21c0c53c93f","size":75854,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.74.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.74.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.74.tgz_1513018485118_0.572218406945467"},"directories":{},"publish_time":1513018485266,"_hasShrinkwrap":false,"_cnpm_publish_time":1513018485266},"0.0.73":{"name":"regexp-tree","version":"0.0.73","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"node scripts/build.js","test":"jest","prepublish":"npm test && npm run build","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","yargs":"^10.0.3"},"devDependencies":{"eslint":"^4.11.0","jest-cli":"^19.0.2","shelljs":"^0.7.8","syntax-cli":"^0.0.98"},"gitHead":"7bec017affbc57cb7282cc193579ca6268819a35","_id":"regexp-tree@0.0.73","_npmVersion":"5.5.1","_nodeVersion":"9.2.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"e322b354a4cd1c5b3bbc6f8a92932692364e7fe2","size":75629,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.73.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.73.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.73.tgz_1512721959460_0.36795583507046103"},"directories":{},"publish_time":1512721959800,"_hasShrinkwrap":false,"_cnpm_publish_time":1512721959800},"0.0.72":{"name":"regexp-tree","version":"0.0.72","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","yargs":"^10.0.3"},"devDependencies":{"eslint":"^4.11.0","jest-cli":"^19.0.2","syntax-cli":"^0.0.91"},"gitHead":"72559151c35469095dad307f50a0cdefa063be89","_id":"regexp-tree@0.0.72","_npmVersion":"5.5.1","_nodeVersion":"9.2.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"b63c340e1224e62aa4242a79922cbbf254bc6bd6","size":75800,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.72.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.72.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.72.tgz_1512069625497_0.5140026037115604"},"directories":{},"publish_time":1512069625601,"_cnpm_publish_time":1512069625601,"_hasShrinkwrap":false},"0.0.71":{"name":"regexp-tree","version":"0.0.71","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","yargs":"^10.0.3"},"devDependencies":{"eslint":"^4.11.0","jest-cli":"^19.0.2","syntax-cli":"^0.0.91"},"gitHead":"8046a12606f899cd9c6d72a73c816d7c52b3337d","_id":"regexp-tree@0.0.71","_npmVersion":"5.5.1","_nodeVersion":"9.2.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"b7ff0b623fb8b2c02ba05eb01a255b86a7034748","size":74612,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.71.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.71.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.71.tgz_1511909516568_0.6528506805188954"},"directories":{},"publish_time":1511909517032,"_hasShrinkwrap":false,"_cnpm_publish_time":1511909517032},"0.0.70":{"name":"regexp-tree","version":"0.0.70","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build","eslint":"eslint src/ && eslint bin/regexp-tree"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","yargs":"^10.0.3"},"devDependencies":{"eslint":"^4.11.0","jest-cli":"^19.0.2","syntax-cli":"^0.0.91"},"gitHead":"e2f8ab4e4f8070cde91ebc585d2bc97d24a63839","_id":"regexp-tree@0.0.70","_npmVersion":"5.5.1","_nodeVersion":"8.6.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"37e423dde2bc015aeee98aa660741c7bd417a857","size":72696,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.70.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.70.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.70.tgz_1511499525679_0.35988989006727934"},"directories":{},"publish_time":1511499527019,"_cnpm_publish_time":1511499527019,"_hasShrinkwrap":false},"0.0.69":{"name":"regexp-tree","version":"0.0.69","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build","eslint":"eslint src/"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","nomnom":"^1.8.1"},"devDependencies":{"eslint":"^4.11.0","jest-cli":"^19.0.2","syntax-cli":"^0.0.91"},"gitHead":"77b6f335c653b55c42f9ef90a4dbc0145945ae98","_id":"regexp-tree@0.0.69","_npmVersion":"5.5.1","_nodeVersion":"8.6.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"86e69c63939f464f76428dbf0c4528a7a78791f2","size":71998,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.69.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.69.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.69.tgz_1511290029457_0.2765343044884503"},"directories":{},"publish_time":1511290029749,"_cnpm_publish_time":1511290029749,"_hasShrinkwrap":false},"0.0.68":{"name":"regexp-tree","version":"0.0.68","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build","eslint":"eslint src/"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","nomnom":"^1.8.1"},"devDependencies":{"eslint":"^4.11.0","jest-cli":"^19.0.2","syntax-cli":"^0.0.91"},"gitHead":"dd8c3060efeedeecf1299413d01da26a23c9c8a0","_id":"regexp-tree@0.0.68","_npmVersion":"5.5.1","_nodeVersion":"8.6.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"8537f1dc0116dfd9c6b34bc7250f6e5767656b61","size":69748,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.68.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.68.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.68.tgz_1511203946387_0.03085115598514676"},"directories":{},"publish_time":1511203946514,"_cnpm_publish_time":1511203946514,"_hasShrinkwrap":false},"0.0.67":{"name":"regexp-tree","version":"0.0.67","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build","eslint":"eslint src/"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","nomnom":"^1.8.1"},"devDependencies":{"eslint":"^4.11.0","jest-cli":"^19.0.2","syntax-cli":"^0.0.91"},"gitHead":"4cd836acfff9225be3e99f801ec298c75a2ae5a2","_id":"regexp-tree@0.0.67","_npmVersion":"5.5.1","_nodeVersion":"8.6.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"5d9b2e9e3149b3e7a39c8382efe724779bfd0a1c","size":66465,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.67.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.67.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.67.tgz_1511036202525_0.07043973170220852"},"directories":{},"publish_time":1511036202744,"_hasShrinkwrap":false,"_cnpm_publish_time":1511036202744},"0.0.66":{"name":"regexp-tree","version":"0.0.66","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build","eslint":"eslint src/"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","nomnom":"^1.8.1"},"devDependencies":{"eslint":"^4.11.0","jest-cli":"^19.0.2","syntax-cli":"^0.0.91"},"gitHead":"f108923532961df2f7bf2e7a6e108dccd0423ed3","_id":"regexp-tree@0.0.66","_npmVersion":"5.5.1","_nodeVersion":"8.6.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"a20d51671e2eab16f1b8c574f07913f747ca57a6","size":65857,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.66.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.66.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.66.tgz_1510957724498_0.03067149524576962"},"directories":{},"publish_time":1510957724618,"_hasShrinkwrap":false,"_cnpm_publish_time":1510957724618},"0.0.65":{"name":"regexp-tree","version":"0.0.65","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build","eslint":"eslint src/"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","nomnom":"^1.8.1"},"devDependencies":{"eslint":"^4.11.0","jest-cli":"^19.0.2","syntax-cli":"^0.0.91"},"gitHead":"990018bc8b675bb0cceb0c9ab7676e3f0f66ab39","_id":"regexp-tree@0.0.65","_npmVersion":"5.5.1","_nodeVersion":"8.6.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"b502ca7a5c1d276f73caa554bea901a96c1ccb2d","size":64612,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.65.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.65.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.65.tgz_1510720018737_0.8567759857978672"},"directories":{},"publish_time":1510720018874,"_cnpm_publish_time":1510720018874,"_hasShrinkwrap":false},"0.0.64":{"name":"regexp-tree","version":"0.0.64","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build","eslint":"eslint src/"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","nomnom":"^1.8.1"},"devDependencies":{"eslint":"^4.11.0","jest-cli":"^19.0.2","syntax-cli":"^0.0.91"},"gitHead":"c95c9656210807fd3edf5078689d852e3d1baf94","_id":"regexp-tree@0.0.64","_npmVersion":"5.5.1","_nodeVersion":"8.6.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"ec30346b75dd98ec7ca637810226ea15d0f346e0","size":64296,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.64.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.64.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.64.tgz_1510523680845_0.11390362703241408"},"directories":{},"publish_time":1510523680974,"_cnpm_publish_time":1510523680974,"_hasShrinkwrap":false},"0.0.63":{"name":"regexp-tree","version":"0.0.63","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build","eslint":"eslint src/"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","nomnom":"^1.8.1"},"devDependencies":{"eslint":"^4.11.0","jest-cli":"^19.0.2","syntax-cli":"^0.0.91"},"gitHead":"6a41117cb4adf3485d629c92357ec5cc49981e34","_id":"regexp-tree@0.0.63","_npmVersion":"5.5.1","_nodeVersion":"8.6.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"9d6c18465eadec2eb43619130f5a4a0ae1fa9a10","size":61955,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.63.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.63.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.63.tgz_1510515961286_0.3523478584829718"},"directories":{},"publish_time":1510515961464,"_cnpm_publish_time":1510515961464,"_hasShrinkwrap":false},"0.0.62":{"name":"regexp-tree","version":"0.0.62","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build","eslint":"eslint src/"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","nomnom":"^1.8.1"},"devDependencies":{"eslint":"^4.11.0","jest-cli":"^19.0.2","syntax-cli":"^0.0.91"},"gitHead":"4b534ad221cbd5ff37cbea497ca78915e8dd3f43","_id":"regexp-tree@0.0.62","_npmVersion":"5.5.1","_nodeVersion":"8.6.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"3bad90db6175aa2e0874cd0ddbca00d35129593a","size":61592,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.62.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.62.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.62.tgz_1510515422704_0.014963062247261405"},"directories":{},"publish_time":1510515422812,"_cnpm_publish_time":1510515422812,"_hasShrinkwrap":false},"0.0.61":{"name":"regexp-tree","version":"0.0.61","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.91","jest-cli":"^19.0.2"},"gitHead":"085db45c5251ec861246e627e3bf10f31761cd73","_id":"regexp-tree@0.0.61","_npmVersion":"5.5.1","_nodeVersion":"8.6.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"909ddb8d1d4684f0499fdecee9f094228dc0601a","size":60146,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.61.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.61.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.61.tgz_1510052231155_0.12408999307081103"},"directories":{},"publish_time":1510052231279,"_cnpm_publish_time":1510052231279,"_hasShrinkwrap":false},"0.0.60":{"name":"regexp-tree","version":"0.0.60","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.91","jest-cli":"^19.0.2"},"gitHead":"90f77587363dcf0a81f811ddad178c047a372d9e","_id":"regexp-tree@0.0.60","_npmVersion":"5.5.1","_nodeVersion":"8.6.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"4ea5ed41b3b79e6bc57adffcc0ec485f6d90aae3","size":59132,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.60.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.60.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.60.tgz_1510033768303_0.600887913024053"},"directories":{},"publish_time":1510033768538,"_cnpm_publish_time":1510033768538,"_hasShrinkwrap":false},"0.0.59":{"name":"regexp-tree","version":"0.0.59","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.91","jest-cli":"^19.0.2"},"gitHead":"cc58e6b8f8973f3ff4c46951f1265558f699cd17","_id":"regexp-tree@0.0.59","_npmVersion":"5.5.1","_nodeVersion":"8.6.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"1efe2bd3afda931afe99002b2c6ddf6553102a28","size":59125,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.59.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.59.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.59.tgz_1509925966824_0.026374962413683534"},"directories":{},"publish_time":1509925967093,"_cnpm_publish_time":1509925967093,"_hasShrinkwrap":false},"0.0.58":{"name":"regexp-tree","version":"0.0.58","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.91","jest-cli":"^19.0.2"},"gitHead":"e11db714821700d0b03e9236eea6086c4e4713db","_id":"regexp-tree@0.0.58","_npmVersion":"5.5.1","_nodeVersion":"8.6.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"92c8dcb594b7839f007090719bd8ab80706cc3c2","size":59011,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.58.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.58.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.58.tgz_1508799882008_0.5971207951661199"},"directories":{},"publish_time":1508799882119,"_cnpm_publish_time":1508799882119,"_hasShrinkwrap":false},"0.0.57":{"name":"regexp-tree","version":"0.0.57","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.91","jest-cli":"^19.0.2"},"gitHead":"62da61c58a299e4196259afdc08f179de72e1c6f","_id":"regexp-tree@0.0.57","_npmVersion":"5.5.1","_nodeVersion":"8.6.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"df1d2d85acb54867a051ee94e16b9871cfa48547","size":58998,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.57.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.57.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.57.tgz_1508792595054_0.11410333355888724"},"directories":{},"publish_time":1508792595121,"_hasShrinkwrap":false,"_cnpm_publish_time":1508792595121},"0.0.56":{"name":"regexp-tree","version":"0.0.56","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"cli-table2":"^0.2.0","colors":"^1.1.2","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.91","jest-cli":"^19.0.2"},"gitHead":"ff41d2234e4f8ca136d0df349ea5d21798d25532","_id":"regexp-tree@0.0.56","_npmVersion":"5.5.1","_nodeVersion":"8.6.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"3eb7b10181594c9f3c1c9bf0e0293bbd823bfbcb","size":58031,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.56.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.56.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.56.tgz_1508463362652_0.7210735024418682"},"directories":{},"publish_time":1508463362845,"_cnpm_publish_time":1508463362845,"_hasShrinkwrap":false},"0.0.55":{"name":"regexp-tree","version":"0.0.55","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.91","jest-cli":"^19.0.2"},"gitHead":"4e197eb4e09ccc27812ca25cecaa97851fe9c461","_id":"regexp-tree@0.0.55","_npmVersion":"5.5.1","_nodeVersion":"8.6.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"c29432514b8fe9340566d116de4a349d6396a896","size":57074,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.55.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.55.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.55.tgz_1508453945579_0.8311798740178347"},"directories":{},"publish_time":1508453945658,"_hasShrinkwrap":false,"_cnpm_publish_time":1508453945658},"0.0.54":{"name":"regexp-tree","version":"0.0.54","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.91","jest-cli":"^19.0.2"},"gitHead":"3ff3c9c0d06c60d9d727f425f244bdd3fe0afb92","_id":"regexp-tree@0.0.54","_npmVersion":"5.3.0","_nodeVersion":"8.2.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"2d9c68c7891cf31fea854da1f62d89c86401c917","size":57888,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.54.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.54.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.54.tgz_1502427353621_0.38103131437674165"},"directories":{},"publish_time":1502427353739,"_cnpm_publish_time":1502427353739,"_hasShrinkwrap":false},"0.0.53":{"name":"regexp-tree","version":"0.0.53","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.91","jest-cli":"^19.0.2"},"gitHead":"9732869cfe6d04a530e0156e150832853d22ef75","_id":"regexp-tree@0.0.53","_npmVersion":"5.3.0","_nodeVersion":"8.2.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"028974e2adced0eaf61881109bc87f9a70672bba","size":57875,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.53.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.53.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.53.tgz_1502212939107_0.4926909147761762"},"directories":{},"publish_time":1502212939453,"_cnpm_publish_time":1502212939453,"_hasShrinkwrap":false},"0.0.52":{"name":"regexp-tree","version":"0.0.52","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.91","jest-cli":"^19.0.2"},"gitHead":"6dd2b5ba054fc49ee1cd949c65abee1a25a286e3","_id":"regexp-tree@0.0.52","_npmVersion":"5.3.0","_nodeVersion":"8.1.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"b2d318f13c872aa9dc115ea2a00c61644751f4e8","size":57704,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.52.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.52.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.52.tgz_1501524767523_0.4711211957037449"},"directories":{},"publish_time":1501524767716,"_cnpm_publish_time":1501524767716,"_hasShrinkwrap":false},"0.0.51":{"name":"regexp-tree","version":"0.0.51","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.91","jest-cli":"^19.0.2"},"gitHead":"1684ff63b3ccdf692707d2262854bdac2b45b6e6","_id":"regexp-tree@0.0.51","_npmVersion":"5.0.4","_nodeVersion":"8.1.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"e30840787139fc50c7db6e169d6a8626d5e4c455","size":56720,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.51.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.51.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.51.tgz_1499764611735_0.8268214131239802"},"directories":{},"publish_time":1499764612445,"_hasShrinkwrap":false,"_cnpm_publish_time":1499764612445},"0.0.50":{"name":"regexp-tree","version":"0.0.50","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.91","jest-cli":"^19.0.2"},"gitHead":"df1c18727bcab2ca4f639a4c42357c1deeafdc58","_id":"regexp-tree@0.0.50","_npmVersion":"5.0.4","_nodeVersion":"8.1.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"cf5e8832c6d97e71406854e2c4e08f85c9b9433d","size":56661,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.50.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.50.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.50.tgz_1498814125002_0.11489541735500097"},"directories":{},"publish_time":1498814125208,"_hasShrinkwrap":false,"_cnpm_publish_time":1498814125208},"0.0.49":{"name":"regexp-tree","version":"0.0.49","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.91","jest-cli":"^19.0.2"},"gitHead":"9a99558d8a412bf6e6d6973938e922c1ab715ee3","_id":"regexp-tree@0.0.49","_npmVersion":"5.0.4","_nodeVersion":"8.1.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"42759f8f9fed13823d0804694208c3746f2b2d2b","size":56347,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.49.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.49.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/regexp-tree-0.0.49.tgz_1498674132207_0.6016658355947584"},"directories":{},"publish_time":1498674132306,"_cnpm_publish_time":1498674132306,"_hasShrinkwrap":false},"0.0.48":{"name":"regexp-tree","version":"0.0.48","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.91","jest-cli":"^19.0.2"},"gitHead":"a84af48a4e16aece4a898248fd97d0a06f633825","_id":"regexp-tree@0.0.48","_shasum":"f96099ce2b2c6de6457e7f6f7856909921b9e416","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"f96099ce2b2c6de6457e7f6f7856909921b9e416","size":54763,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.48.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.48.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.48.tgz_1494018639448_0.5847721709869802"},"directories":{},"publish_time":1494018641502,"_cnpm_publish_time":1494018641502,"_hasShrinkwrap":false},"0.0.47":{"name":"regexp-tree","version":"0.0.47","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.91","jest-cli":"^19.0.2"},"gitHead":"a747db477fb1f74c3d996b82570f5e6acc62db91","_id":"regexp-tree@0.0.47","_shasum":"20ea3bbc4e902f98542bfbc03f40806d0414b6d3","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"20ea3bbc4e902f98542bfbc03f40806d0414b6d3","size":53829,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.47.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.47.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.47.tgz_1493531762297_0.5828983751125634"},"directories":{},"publish_time":1493531764129,"_cnpm_publish_time":1493531764129,"_hasShrinkwrap":false},"0.0.46":{"name":"regexp-tree","version":"0.0.46","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.90","jest-cli":"^19.0.2"},"gitHead":"6e941b36fc48c9ff130f160b928209d23c865efb","_id":"regexp-tree@0.0.46","_shasum":"130f9fbafcea424afff55d1d9fd5f0f5a9cddd0a","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"130f9fbafcea424afff55d1d9fd5f0f5a9cddd0a","size":53848,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.46.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.46.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.46.tgz_1493240455862_0.7658491365145892"},"directories":{},"publish_time":1493240456146,"_hasShrinkwrap":false,"_cnpm_publish_time":1493240456146},"0.0.45":{"name":"regexp-tree","version":"0.0.45","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.90","jest-cli":"^19.0.2"},"gitHead":"805c21321e578d1c056e9a861fced380089d801c","_id":"regexp-tree@0.0.45","_shasum":"a21a36ab1fcc5a4e9b2c90c297c1cce9ece7faca","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"a21a36ab1fcc5a4e9b2c90c297c1cce9ece7faca","size":52892,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.45.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.45.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.45.tgz_1492458738048_0.1392645607702434"},"directories":{},"publish_time":1492458738297,"_cnpm_publish_time":1492458738297,"_hasShrinkwrap":false},"0.0.44":{"name":"regexp-tree","version":"0.0.44","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.90","jest-cli":"^19.0.2"},"gitHead":"6bae830bb159b7f42441226b4be300fe6e995f6d","_id":"regexp-tree@0.0.44","_shasum":"23bd662be353ddad5704e7d3fc8d71e377229c3a","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"23bd662be353ddad5704e7d3fc8d71e377229c3a","size":52876,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.44.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.44.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.44.tgz_1492416656267_0.8554563240613788"},"directories":{},"publish_time":1492416658274,"_cnpm_publish_time":1492416658274,"_hasShrinkwrap":false},"0.0.43":{"name":"regexp-tree","version":"0.0.43","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.90","jest-cli":"^19.0.2"},"gitHead":"0fa590beee4d4e5e44749fbcfc9ea5ef8ce10f10","_id":"regexp-tree@0.0.43","_shasum":"da89f4eb5d3f0c33473f2fce38622ad88090af90","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"da89f4eb5d3f0c33473f2fce38622ad88090af90","size":52459,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.43.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.43.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.43.tgz_1492403248323_0.5033056628890336"},"directories":{},"publish_time":1492403250247,"_cnpm_publish_time":1492403250247,"_hasShrinkwrap":false},"0.0.42":{"name":"regexp-tree","version":"0.0.42","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.90","jest-cli":"^19.0.2"},"gitHead":"f7704e18a4e7dddec0e5216322a5cd90bf0299b0","_id":"regexp-tree@0.0.42","_shasum":"97fa266935f9179b387515cd94f7e4b03e5b041c","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"97fa266935f9179b387515cd94f7e4b03e5b041c","size":52384,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.42.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.42.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.42.tgz_1492401328390_0.2597644899506122"},"directories":{},"publish_time":1492401328644,"_cnpm_publish_time":1492401328644,"_hasShrinkwrap":false},"0.0.41":{"name":"regexp-tree","version":"0.0.41","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.87","jest-cli":"^19.0.2"},"gitHead":"e6b599f8f6689c67400a77fbea0e2424955fa991","_id":"regexp-tree@0.0.41","_shasum":"0869d8542a55e28bcf5e500d5b04b04e267d9bd5","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"0869d8542a55e28bcf5e500d5b04b04e267d9bd5","size":51160,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.41.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.41.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.41.tgz_1492317738244_0.6324364272877574"},"directories":{},"publish_time":1492317740347,"_hasShrinkwrap":false,"_cnpm_publish_time":1492317740347},"0.0.40":{"name":"regexp-tree","version":"0.0.40","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.87","jest-cli":"^19.0.2"},"gitHead":"46450a5f4b61490d8fc51844d2fb8c5787690e1d","_id":"regexp-tree@0.0.40","_shasum":"5ba15048f4ea46c317b839821e23dbdcc5096356","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"5ba15048f4ea46c317b839821e23dbdcc5096356","size":50696,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.40.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.40.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.40.tgz_1492284501024_0.35645796405151486"},"directories":{},"publish_time":1492284505661,"_cnpm_publish_time":1492284505661,"_hasShrinkwrap":false},"0.0.39":{"name":"regexp-tree","version":"0.0.39","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.87","jest-cli":"^19.0.2"},"gitHead":"9857864e8bc08faeecc5ac3d730dd84bbc5351fa","_id":"regexp-tree@0.0.39","_shasum":"26a9ea0ad5dfd041e9d8b63a460a7366378e2bd3","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"26a9ea0ad5dfd041e9d8b63a460a7366378e2bd3","size":50170,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.39.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.39.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.39.tgz_1492222458995_0.2859880425967276"},"directories":{},"publish_time":1492222459305,"_hasShrinkwrap":false,"_cnpm_publish_time":1492222459305},"0.0.38":{"name":"regexp-tree","version":"0.0.38","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.87","jest-cli":"^19.0.2"},"gitHead":"1ba207eb1346dc09428962cdb4125c60551ad3ea","_id":"regexp-tree@0.0.38","_shasum":"d45f0a7a6dce88b2329957bd5915533d6fb4dd26","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"d45f0a7a6dce88b2329957bd5915533d6fb4dd26","size":48144,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.38.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.38.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.38.tgz_1492131162095_0.9629909521900117"},"directories":{},"publish_time":1492131164320,"_hasShrinkwrap":false,"_cnpm_publish_time":1492131164320},"0.0.37":{"name":"regexp-tree","version":"0.0.37","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.87","jest-cli":"^19.0.2"},"gitHead":"1a273ad8fb4c6b307bc24077a86298c32a4526ea","_id":"regexp-tree@0.0.37","_shasum":"08e08e68c410cd8503c71815ec4a397adb7bdad0","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"08e08e68c410cd8503c71815ec4a397adb7bdad0","size":45000,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.37.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.37.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.37.tgz_1492063436838_0.9828031975775957"},"directories":{},"publish_time":1492063438836,"_hasShrinkwrap":false,"_cnpm_publish_time":1492063438836},"0.0.36":{"name":"regexp-tree","version":"0.0.36","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.87","jest-cli":"^19.0.2"},"gitHead":"ad05fab75595d33108b529055ec7395206852a97","_id":"regexp-tree@0.0.36","_shasum":"de2684d31979df4e93c5a31f1e5b9b26bd8e3cf5","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"de2684d31979df4e93c5a31f1e5b9b26bd8e3cf5","size":44876,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.36.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.36.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.36.tgz_1492062897869_0.0689009539783001"},"directories":{},"publish_time":1492062899838,"_cnpm_publish_time":1492062899838,"_hasShrinkwrap":false},"0.0.35":{"name":"regexp-tree","version":"0.0.35","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.87","jest-cli":"^19.0.2"},"gitHead":"d2a341dbfe4456c20487cb7802e0625808fe0635","_id":"regexp-tree@0.0.35","_shasum":"fb9fd1f3a6f19ea3a181dfab370817bffa8a51cd","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"fb9fd1f3a6f19ea3a181dfab370817bffa8a51cd","size":44789,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.35.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.35.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.35.tgz_1492061576745_0.17335456842556596"},"directories":{},"publish_time":1492061577028,"_hasShrinkwrap":false,"_cnpm_publish_time":1492061577028},"0.0.34":{"name":"regexp-tree","version":"0.0.34","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.87","jest-cli":"^19.0.2"},"gitHead":"442ee2e5a5ab106ff9b4a589942e914072b205d7","_id":"regexp-tree@0.0.34","_shasum":"eaed3dee72dcc62997791fa1d15eb830b16bf330","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"eaed3dee72dcc62997791fa1d15eb830b16bf330","size":44042,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.34.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.34.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.34.tgz_1491972183657_0.02025643875822425"},"directories":{},"publish_time":1491972183923,"_cnpm_publish_time":1491972183923,"_hasShrinkwrap":false},"0.0.33":{"name":"regexp-tree","version":"0.0.33","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.87","jest-cli":"^19.0.2"},"gitHead":"548f6f9869546c5b8c51e4b4f1b110f65e6fb04e","_id":"regexp-tree@0.0.33","_shasum":"37dfffc99241f507b6035f2f3984daa109a555f1","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"37dfffc99241f507b6035f2f3984daa109a555f1","size":38385,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.33.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.33.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.33.tgz_1491885444348_0.3099813328590244"},"directories":{},"publish_time":1491885446573,"_hasShrinkwrap":false,"_cnpm_publish_time":1491885446573},"0.0.32":{"name":"regexp-tree","version":"0.0.32","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.87","jest-cli":"^19.0.2"},"gitHead":"7ad2a8123e3e7bed8f695520d3085894805f9d90","_id":"regexp-tree@0.0.32","_shasum":"9ee5971e8eea330c648b20d41139740152ecf55c","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"9ee5971e8eea330c648b20d41139740152ecf55c","size":37878,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.32.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.32.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.32.tgz_1491851744965_0.15465336572378874"},"directories":{},"publish_time":1491851745233,"_hasShrinkwrap":false,"_cnpm_publish_time":1491851745233},"0.0.31":{"name":"regexp-tree","version":"0.0.31","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"9ddc8e7428e39d3ed3726773aededec77adde088","_id":"regexp-tree@0.0.31","_shasum":"8147fcaef97f7615ed561ea055ac8ece6d15db87","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"8147fcaef97f7615ed561ea055ac8ece6d15db87","size":37534,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.31.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.31.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.31.tgz_1491538180675_0.8145565285813063"},"directories":{},"publish_time":1491538180953,"_hasShrinkwrap":false,"_cnpm_publish_time":1491538180953},"0.0.30":{"name":"regexp-tree","version":"0.0.30","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"engines":{"node":">=6"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"751cca193932f44b09a995207cafac206725e08b","_id":"regexp-tree@0.0.30","_shasum":"ef22faefa02ec58e8549b5b9656e137677b6a58e","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"ef22faefa02ec58e8549b5b9656e137677b6a58e","size":37380,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.30.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.30.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.30.tgz_1491527799942_0.2885609338991344"},"directories":{},"publish_time":1491527801690,"_cnpm_publish_time":1491527801690,"_hasShrinkwrap":false},"0.0.29":{"name":"regexp-tree","version":"0.0.29","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"ce61605aee96d8cdfe5b641a6989ae6499bb6a84","_id":"regexp-tree@0.0.29","_shasum":"02252643a5d0d811321ec5bdb1366854364e3161","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"02252643a5d0d811321ec5bdb1366854364e3161","size":36112,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.29.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.29.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.29.tgz_1491456155053_0.24854060728102922"},"directories":{},"publish_time":1491456161423,"_hasShrinkwrap":false,"_cnpm_publish_time":1491456161423},"0.0.28":{"name":"regexp-tree","version":"0.0.28","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"ca8be9c7950a3eff81c9bf3794699aa8bf34eba8","_id":"regexp-tree@0.0.28","_shasum":"a15dee68b7380719c31ff96468ddc533b96a4254","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"a15dee68b7380719c31ff96468ddc533b96a4254","size":36101,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.28.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.28.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.28.tgz_1491455597430_0.6073318656999618"},"directories":{},"publish_time":1491455599510,"_cnpm_publish_time":1491455599510,"_hasShrinkwrap":false},"0.0.27":{"name":"regexp-tree","version":"0.0.27","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"8c50389e5f162ea426c14f4ee007bf101ee77d50","_id":"regexp-tree@0.0.27","_shasum":"6f50ce61005955d79981fc192bc11b65aac1da79","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"6f50ce61005955d79981fc192bc11b65aac1da79","size":34053,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.27.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.27.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.27.tgz_1491331345481_0.4824996998067945"},"directories":{},"publish_time":1491331347344,"_hasShrinkwrap":false,"_cnpm_publish_time":1491331347344},"0.0.26":{"name":"regexp-tree","version":"0.0.26","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"0bb30f05ab9288d9376c88b47fb60420f231ddda","_id":"regexp-tree@0.0.26","_shasum":"8d0c307c19b37730f1a488161ba36a6978561fa0","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"8d0c307c19b37730f1a488161ba36a6978561fa0","size":33064,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.26.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.26.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.26.tgz_1491325804311_0.9410646790638566"},"directories":{},"publish_time":1491325806350,"_hasShrinkwrap":false,"_cnpm_publish_time":1491325806350},"0.0.25":{"name":"regexp-tree","version":"0.0.25","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"ea5258102994a441934eef43d0dde7b880079f38","_id":"regexp-tree@0.0.25","_shasum":"b2e1f6f5c589661b5ef7e7ba68bee7613eef94ac","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"b2e1f6f5c589661b5ef7e7ba68bee7613eef94ac","size":33054,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.25.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.25.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.25.tgz_1491286636051_0.9560145928990096"},"directories":{},"publish_time":1491286636359,"_hasShrinkwrap":false,"_cnpm_publish_time":1491286636359},"0.0.24":{"name":"regexp-tree","version":"0.0.24","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"36ae4da0d77804b1fb6d34f09bf85e296e3c5ceb","_id":"regexp-tree@0.0.24","_shasum":"bd2dabdab0c9f247f91dd55eee04cae78a23457c","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"bd2dabdab0c9f247f91dd55eee04cae78a23457c","size":32747,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.24.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.24.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.24.tgz_1491285575248_0.5546709643676877"},"directories":{},"publish_time":1491285577007,"_hasShrinkwrap":false,"_cnpm_publish_time":1491285577007},"0.0.23":{"name":"regexp-tree","version":"0.0.23","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"fcb5d132f596d71f85fe0842a954a692dafb2078","_id":"regexp-tree@0.0.23","_shasum":"ec95ca8d209d71d619f6bf687ce9fbff75323a0b","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"ec95ca8d209d71d619f6bf687ce9fbff75323a0b","size":31045,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.23.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.23.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.23.tgz_1491250490305_0.9783623754046857"},"directories":{},"publish_time":1491250490589,"_hasShrinkwrap":false,"_cnpm_publish_time":1491250490589},"0.0.22":{"name":"regexp-tree","version":"0.0.22","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"fb7d83da98af9f545730711eeedbc4cea84fd01d","_id":"regexp-tree@0.0.22","_shasum":"d3cd33ff7e9c1d51e91d46888da7f2ec1b604d94","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"d3cd33ff7e9c1d51e91d46888da7f2ec1b604d94","size":30328,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.22.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.22.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.22.tgz_1491248528730_0.9348558695055544"},"directories":{},"publish_time":1491248529030,"_hasShrinkwrap":false,"_cnpm_publish_time":1491248529030},"0.0.21":{"name":"regexp-tree","version":"0.0.21","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"744e6ee3bde77406b60eb195331e93df6d69416a","_id":"regexp-tree@0.0.21","_shasum":"67a1e16473b7d8ccf3ee85b3cc118039748cf62f","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"67a1e16473b7d8ccf3ee85b3cc118039748cf62f","size":27397,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.21.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.21.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.21.tgz_1491117048196_0.1836961479857564"},"directories":{},"publish_time":1491117056549,"_hasShrinkwrap":false,"_cnpm_publish_time":1491117056549},"0.0.20":{"name":"regexp-tree","version":"0.0.20","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/dmitrysoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"scripts":{"build":"./scripts/build","test":"jest","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"4f90dfa55fd423c222147db1e160d29e23d996e1","_id":"regexp-tree@0.0.20","_shasum":"6ad10f5f89242f6030eb42262622dbb04ea25638","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"6ad10f5f89242f6030eb42262622dbb04ea25638","size":27114,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.20.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.20.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.20.tgz_1491074457765_0.9425376157741994"},"directories":{},"publish_time":1491074458077,"_cnpm_publish_time":1491074458077,"_hasShrinkwrap":false},"0.0.19":{"name":"regexp-tree","version":"0.0.19","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"main":"index.js","scripts":{"build":"./scripts/build","test":"./scripts/test","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"b0899b713a62dbecd9cfecea7da1eed54d5aee34","_id":"regexp-tree@0.0.19","_shasum":"74810f390f107276c67042f3ba4a2321697b8654","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"74810f390f107276c67042f3ba4a2321697b8654","size":26015,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.19.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.19.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.19.tgz_1490852499048_0.7885471505578607"},"directories":{},"publish_time":1490852499365,"_hasShrinkwrap":false,"_cnpm_publish_time":1490852499365},"0.0.18":{"name":"regexp-tree","version":"0.0.18","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"main":"index.js","scripts":{"build":"./scripts/build","test":"./scripts/test","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"aa0459c292f4147f6c4b984af6a53ec3827dad1b","_id":"regexp-tree@0.0.18","_shasum":"fcdae64ad3d4bcdf80c238eb05d9667b6e7b6146","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"fcdae64ad3d4bcdf80c238eb05d9667b6e7b6146","size":25971,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.18.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.18.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.18.tgz_1490813640439_0.6948882029391825"},"directories":{},"publish_time":1490813640740,"_cnpm_publish_time":1490813640740,"_hasShrinkwrap":false},"0.0.17":{"name":"regexp-tree","version":"0.0.17","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"main":"index.js","scripts":{"build":"./scripts/build","test":"./scripts/test","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"1d8f657ca5b5885deb3abc53ecffcf7b6e909b4e","_id":"regexp-tree@0.0.17","_shasum":"8ab46d24b1615fbf19e9b39099e252f7cc1b3842","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"8ab46d24b1615fbf19e9b39099e252f7cc1b3842","size":25945,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.17.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.17.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.17.tgz_1490752666553_0.7628284574020654"},"directories":{},"publish_time":1490752668465,"_cnpm_publish_time":1490752668465,"_hasShrinkwrap":false},"0.0.16":{"name":"regexp-tree","version":"0.0.16","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"main":"index.js","scripts":{"build":"./scripts/build","test":"./scripts/test","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"91915d82973cf40706da501c070df100ee592509","_id":"regexp-tree@0.0.16","_shasum":"66aa91212a149555feb1284a532ce6f9fc31775e","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"66aa91212a149555feb1284a532ce6f9fc31775e","size":25938,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.16.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.16.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.16.tgz_1490750648480_0.337036682292819"},"directories":{},"publish_time":1490750648750,"_cnpm_publish_time":1490750648750,"_hasShrinkwrap":false},"0.0.15":{"name":"regexp-tree","version":"0.0.15","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"main":"index.js","scripts":{"build":"./scripts/build","test":"./scripts/test","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"8bdd976a7debe8ac90cbc407fd28682499a02f0a","_id":"regexp-tree@0.0.15","_shasum":"c55585028652038889eb4b4225a6b00573dd62cf","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"c55585028652038889eb4b4225a6b00573dd62cf","size":25930,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.15.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.15.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.15.tgz_1490750055669_0.9689936484210193"},"directories":{},"publish_time":1490750055904,"_cnpm_publish_time":1490750055904,"_hasShrinkwrap":false},"0.0.14":{"name":"regexp-tree","version":"0.0.14","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"main":"index.js","scripts":{"build":"./scripts/build","test":"./scripts/test","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"89daaa0d120974fa58806326a43d5ca6ae3cb484","_id":"regexp-tree@0.0.14","_shasum":"bbe151ebf0877593b2944a7f0c7fe646b3ac43b4","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"bbe151ebf0877593b2944a7f0c7fe646b3ac43b4","size":25694,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.14.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.14.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.14.tgz_1490722874895_0.5206520536448807"},"directories":{},"publish_time":1490722877329,"_hasShrinkwrap":false,"_cnpm_publish_time":1490722877329},"0.0.13":{"name":"regexp-tree","version":"0.0.13","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"main":"index.js","scripts":{"build":"./scripts/build","test":"./scripts/test","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"d9a81e531eb11b16dd771c8463934073003ce4f5","_id":"regexp-tree@0.0.13","_shasum":"47a5a5183a7bf0a40eba4927571fc63c92994dec","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"47a5a5183a7bf0a40eba4927571fc63c92994dec","size":25393,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.13.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.13.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.13.tgz_1490721184433_0.27200254844501615"},"directories":{},"publish_time":1490721186101,"_hasShrinkwrap":false,"_cnpm_publish_time":1490721186101},"0.0.12":{"name":"regexp-tree","version":"0.0.12","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"main":"index.js","scripts":{"build":"./scripts/build","test":"./scripts/test","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"f4c21f12888efff7088fc7734db3273920150bcd","_id":"regexp-tree@0.0.12","_shasum":"79449150083a074a04eaa0c1df284c63dd885cca","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"79449150083a074a04eaa0c1df284c63dd885cca","size":25186,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.12.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.12.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.12.tgz_1490690684104_0.3342986046336591"},"directories":{},"publish_time":1490690686040,"_cnpm_publish_time":1490690686040,"_hasShrinkwrap":false},"0.0.11":{"name":"regexp-tree","version":"0.0.11","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"main":"index.js","scripts":{"build":"./scripts/build","test":"./scripts/test","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"4fce76bc0894062026d47a0521bf97617950ce0d","_id":"regexp-tree@0.0.11","_shasum":"d602edb6c19011b60aea009fe7a1b849b8562c47","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"d602edb6c19011b60aea009fe7a1b849b8562c47","size":25180,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.11.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.11.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.11.tgz_1490687574650_0.8928139172494411"},"directories":{},"publish_time":1490687574950,"_hasShrinkwrap":false,"_cnpm_publish_time":1490687574950},"0.0.10":{"name":"regexp-tree","version":"0.0.10","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"main":"index.js","scripts":{"build":"./scripts/build","test":"./scripts/test","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"799f200efe6e76c7cc6ae02a5f9a828f21d876cd","_id":"regexp-tree@0.0.10","_shasum":"54167131b8d7fab245349be52b5aaa49355b05ba","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"54167131b8d7fab245349be52b5aaa49355b05ba","size":22987,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.10.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.10.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.10.tgz_1490420296910_0.18890209612436593"},"directories":{},"publish_time":1490420297145,"_hasShrinkwrap":false,"_cnpm_publish_time":1490420297145},"0.0.9":{"name":"regexp-tree","version":"0.0.9","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"main":"index.js","scripts":{"build":"./scripts/build","test":"./scripts/test","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"bc8deaba0d77b1aad63815d49f6882c392872f25","_id":"regexp-tree@0.0.9","_shasum":"8a80d33eba707c57c04cc527e6bdf6e516eee43b","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"8a80d33eba707c57c04cc527e6bdf6e516eee43b","size":22716,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.9.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.9.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.9.tgz_1490391209772_0.10315725905820727"},"directories":{},"publish_time":1490391210060,"_cnpm_publish_time":1490391210060,"_hasShrinkwrap":false},"0.0.8":{"name":"regexp-tree","version":"0.0.8","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"main":"index.js","scripts":{"build":"./scripts/build","test":"./scripts/test","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"ast-traverse":"^0.1.1","nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"76421db389fddc272c82c3e5ec63e1ec4f60a013","homepage":"https://github.com/DmitrySoshnikov/regexp-tree#readme","_id":"regexp-tree@0.0.8","_shasum":"21cbf0aad7f022b12730242b3d01ac9cd4905151","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"21cbf0aad7f022b12730242b3d01ac9cd4905151","size":22641,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.8.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.8.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.8.tgz_1490387385402_0.51664043427445"},"directories":{},"publish_time":1490387394131,"_hasShrinkwrap":false,"_cnpm_publish_time":1490387394131},"0.0.7":{"name":"regexp-tree","version":"0.0.7","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"main":"index.js","scripts":{"build":"./scripts/build","test":"./scripts/test","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"c44f1e99768cc4ab03e9ba4c825dc19046f3c942","homepage":"https://github.com/DmitrySoshnikov/regexp-tree#readme","_id":"regexp-tree@0.0.7","_shasum":"96578a0f6b6348c6d8cc2af94bf02022e050c5c9","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.1","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"96578a0f6b6348c6d8cc2af94bf02022e050c5c9","size":21415,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.7.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.7.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.7.tgz_1490301007765_0.13814726890996099"},"directories":{},"publish_time":1490301009728,"_cnpm_publish_time":1490301009728,"_hasShrinkwrap":false},"0.0.6":{"name":"regexp-tree","version":"0.0.6","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"main":"index.js","scripts":{"build":"./scripts/build","test":"./scripts/test","prepublish":"npm test && npm run build"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"32913c3cb3c7f1194e51845a2fe9ebe87529ecb4","homepage":"https://github.com/DmitrySoshnikov/regexp-tree#readme","_id":"regexp-tree@0.0.6","_shasum":"b55cc44b74a6485d5f4ef5f45e3ba2c4e8e32174","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"b55cc44b74a6485d5f4ef5f45e3ba2c4e8e32174","size":20028,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.6.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.6.tgz_1490055720462_0.7657745759934187"},"directories":{},"publish_time":1490055720694,"_cnpm_publish_time":1490055720694,"_hasShrinkwrap":false},"0.0.5":{"name":"regexp-tree","version":"0.0.5","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"main":"index.js","scripts":{"build":"./scripts/build","test":"./scripts/test"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"1dc90df0ff241a1197c5011be749dc5d7eb4403a","homepage":"https://github.com/DmitrySoshnikov/regexp-tree#readme","_id":"regexp-tree@0.0.5","_shasum":"a062a8682389ad48c86d4a26d7fca1b81d22302f","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"a062a8682389ad48c86d4a26d7fca1b81d22302f","size":19889,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.5.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.5.tgz_1490053014179_0.8563234240282327"},"directories":{},"publish_time":1490053014463,"_cnpm_publish_time":1490053014463,"_hasShrinkwrap":false},"0.0.4":{"name":"regexp-tree","version":"0.0.4","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"main":"index.js","scripts":{"build":"./scripts/build","test":"./scripts/test"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"dcb936ad80db95eeb54d67e9e25cbebbac5d7c01","homepage":"https://github.com/DmitrySoshnikov/regexp-tree#readme","_id":"regexp-tree@0.0.4","_shasum":"59db349f88d07652e5a77915a67da88341cc3ede","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"59db349f88d07652e5a77915a67da88341cc3ede","size":17606,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.4.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.4.tgz_1490032924508_0.7786968140862882"},"directories":{},"publish_time":1490032924810,"_cnpm_publish_time":1490032924810,"_hasShrinkwrap":false},"0.0.3":{"name":"regexp-tree","version":"0.0.3","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"main":"index.js","scripts":{"build":"./scripts/build","test":"./scripts/test"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"abb208dce842e0160b32b5063cc050b8f9267e4b","homepage":"https://github.com/DmitrySoshnikov/regexp-tree#readme","_id":"regexp-tree@0.0.3","_shasum":"c7cfdb29b8c986dbdfbf37785e61ef80e8a55c56","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"c7cfdb29b8c986dbdfbf37785e61ef80e8a55c56","size":17158,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.3.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.3.tgz_1489986698394_0.352465792093426"},"directories":{},"publish_time":1489986700385,"_cnpm_publish_time":1489986700385,"_hasShrinkwrap":false},"0.0.2":{"name":"regexp-tree","version":"0.0.2","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"main":"index.js","scripts":{"build":"./scripts/build","test":"./scripts/test"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"8ca8021113eabfbf3fe403d7f8c98c80bf301d70","homepage":"https://github.com/DmitrySoshnikov/regexp-tree#readme","_id":"regexp-tree@0.0.2","_shasum":"4bd77d69a0619316a21a22e26cb98c6d8187b83c","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"4bd77d69a0619316a21a22e26cb98c6d8187b83c","size":16453,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.2.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.2.tgz_1489983700228_0.1824738346040249"},"directories":{},"publish_time":1489983700492,"_cnpm_publish_time":1489983700492,"_hasShrinkwrap":false},"0.0.1":{"name":"regexp-tree","version":"0.0.1","license":"MIT","description":"Regular Expressions parser in JavaScript","repository":{"type":"git","url":"git+https://github.com/DmitrySoshnikov/regexp-tree.git"},"bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"main":"index.js","scripts":{"build":"./scripts/build","test":"./scripts/test"},"bin":{"regexp-tree":"./bin/regexp-tree"},"keywords":["regexp","parser","AST","tree","JavaScript","ECMAScript"],"author":{"name":"Dmitry Soshnikov"},"dependencies":{"nomnom":"^1.8.1"},"devDependencies":{"syntax-cli":"^0.0.85","jest-cli":"^19.0.2"},"gitHead":"cf7ea7251a6f42a921592a0130c02381f2c53bb5","homepage":"https://github.com/DmitrySoshnikov/regexp-tree#readme","_id":"regexp-tree@0.0.1","_shasum":"cc21302ca628f45eba629c58a0db948da6e3f3e6","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"},"dist":{"shasum":"cc21302ca628f45eba629c58a0db948da6e3f3e6","size":15579,"noattachment":false,"key":"/regexp-tree/-/regexp-tree-0.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/regexp-tree/download/regexp-tree-0.0.1.tgz"},"maintainers":[{"name":"dmitrysoshnikov","email":"dmitry.soshnikov@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/regexp-tree-0.0.1.tgz_1489958164657_0.2829259824939072"},"directories":{},"publish_time":1489958164925,"_cnpm_publish_time":1489958164925,"_hasShrinkwrap":false}},"readme":"# regexp-tree\n\n[![Build Status](https://travis-ci.org/DmitrySoshnikov/regexp-tree.svg?branch=master)](https://travis-ci.org/DmitrySoshnikov/regexp-tree) [![npm version](https://badge.fury.io/js/regexp-tree.svg)](https://badge.fury.io/js/regexp-tree) [![npm downloads](https://img.shields.io/npm/dt/regexp-tree.svg)](https://www.npmjs.com/package/regexp-tree)\n\nRegular expressions processor in JavaScript\n\nTL;DR: **RegExp Tree** is a _regular expressions processor_, which includes _parser_, _traversal_, _transformer_, _optimizer_, and _interpreter_ APIs.\n\nYou can get an overview of the tool in [this article](https://medium.com/@DmitrySoshnikov/regexp-tree-a-regular-expressions-parser-with-a-simple-ast-format-bcd4d5580df6).\n\n### Table of Contents\n\n- [Installation](#installation)\n- [Development](#development)\n- [Usage as a CLI](#usage-as-a-cli)\n- [Usage from Node](#usage-from-node)\n- [Capturing locations](#capturing-locations)\n- [Parsing options](#parsing-options)\n- [Using traversal API](#using-traversal-api)\n- [Using transform API](#using-transform-api)\n  - [Transform plugins](#transform-plugins)\n- [Using generator API](#using-generator-api)\n- [Using optimizer API](#using-optimizer-api)\n  - [Optimizer ESLint plugin](#optimizer-eslint-plugin)\n- [Using compat-transpiler API](#using-compat-transpiler-api)\n  - [Compat-transpiler Babel plugin](#compat-transpiler-babel-plugin)\n- [RegExp extensions](#regexp-extensions)\n  - [RegExp extensions Babel plugin](#regexp-extensions-babel-plugin)\n- [Creating RegExp objects](#creating-regexp-objects)\n- [Executing regexes](#executing-regexes)\n- [Using interpreter API](#using-interpreter-api)\n  - [Printing NFA/DFA tables](#printing-nfadfa-tables)\n- [AST nodes specification](#ast-nodes-specification)\n\n### Installation\n\nThe parser can be installed as an [npm module](https://www.npmjs.com/package/regexp-tree):\n\n```\nnpm install -g regexp-tree\n```\n\nYou can also [try it online](https://astexplorer.net/#/gist/4ea2b52f0e546af6fb14f9b2f5671c1c/39b55944da3e5782396ffa1fea3ba68d126cd394) using _AST Explorer_.\n\n### Development\n\n1. Fork https://github.com/DmitrySoshnikov/regexp-tree repo\n2. If there is an actual issue from the [issues](https://github.com/DmitrySoshnikov/regexp-tree/issues) list you'd like to work on, feel free to assign it yourself, or comment on it to avoid collisions (open a new issue if needed)\n3. Make your changes\n4. Make sure `npm test` still passes (add new tests if needed)\n5. Submit a PR\n\nThe _regexp-tree_ parser is implemented as an automatic LR parser using [Syntax](https://www.npmjs.com/package/syntax-cli) tool. The parser module is generated from the [regexp grammar](https://github.com/DmitrySoshnikov/regexp-tree/blob/master/src/parser/regexp.bnf), which is based on the regular expressions grammar used in ECMAScript.\n\nFor development from the github repository, run `build` command to generate the parser module, and transpile JS code:\n\n```\ngit clone https://github.com/<your-github-account>/regexp-tree.git\ncd regexp-tree\nnpm install\nnpm run build\n```\n\n> NOTE: JS code transpilation is used to support older versions of Node. For faster development cycle you can use `npm run watch` command, which continuously transpiles JS code.\n\n### Usage as a CLI\n\n**Note:** the CLI is exposed as its own [regexp-tree-cli](https://www.npmjs.com/package/regexp-tree-cli) module.\n\nCheck the options available from CLI:\n\n```\nregexp-tree-cli --help\n```\n\n```\nUsage: regexp-tree-cli [options]\n\nOptions:\n   -e, --expression   A regular expression to be parsed\n   -l, --loc          Whether to capture AST node locations\n   -o, --optimize     Applies optimizer on the passed expression\n   -c, --compat       Applies compat-transpiler on the passed expression\n   -t, --table        Print NFA/DFA transition tables (nfa/dfa/all)\n```\n\nTo parse a regular expression, pass `-e` option:\n\n```\nregexp-tree-cli -e '/a|b/i'\n```\n\nWhich produces an AST node corresponding to this regular expression:\n\n```js\n{\n  type: 'RegExp',\n  body: {\n    type: 'Disjunction',\n    left: {\n      type: 'Char',\n      value: 'a',\n      symbol: 'a',\n      kind: 'simple',\n      codePoint: 97\n    },\n    right: {\n      type: 'Char',\n      value: 'b',\n      symbol: 'b',\n      kind: 'simple',\n      codePoint: 98\n    }\n  },\n  flags: 'i',\n}\n```\n\n> NOTE: the format of a regexp is `/ Body / OptionalFlags`.\n\n### Usage from Node\n\nThe parser can also be used as a Node module:\n\n```js\nconst regexpTree = require('regexp-tree');\n\nconsole.log(regexpTree.parse(/a|b/i)); // RegExp AST\n```\n\nNote, _regexp-tree_ supports parsing regexes from strings, and also from actual `RegExp` objects (in general -- from any object which can be coerced to a string). If some feature is not implemented yet in an actual JavaScript RegExp, it should be passed as a string:\n\n```js\n// Pass an actual JS RegExp object.\nregexpTree.parse(/a|b/i);\n\n// Pass a string, since `s` flag may not be supported in older versions.\nregexpTree.parse('/./s');\n```\n\nAlso note, that in string-mode, escaping is done using two slashes `\\\\` per JavaScript:\n\n```js\n// As an actual regexp.\nregexpTree.parse(/\\n/);\n\n// As a string.\nregexpTree.parse('/\\\\n/');\n```\n\n### Capturing locations\n\nFor source code transformation tools it might be useful also to capture _locations_ of the AST nodes. From the command line it's controlled via the `-l` option:\n\n```\nregexp-tree-cli -e '/ab/' -l\n```\n\nThis attaches `loc` object to each AST node:\n\n```js\n{\n  type: 'RegExp',\n  body: {\n    type: 'Alternative',\n    expressions: [\n      {\n        type: 'Char',\n        value: 'a',\n        symbol: 'a',\n        kind: 'simple',\n        codePoint: 97,\n        loc: {\n          start: {\n            line: 1,\n            column: 1,\n            offset: 1,\n          },\n          end: {\n            line: 1,\n            column: 2,\n            offset: 2,\n          },\n        }\n      },\n      {\n        type: 'Char',\n        value: 'b',\n        symbol: 'b',\n        kind: 'simple',\n        codePoint: 98,\n        loc: {\n          start: {\n            line: 1,\n            column: 2,\n            offset: 2,\n          },\n          end: {\n            line: 1,\n            column: 3,\n            offset: 3,\n          },\n        }\n      }\n    ],\n    loc: {\n      start: {\n        line: 1,\n        column: 1,\n        offset: 1,\n      },\n      end: {\n        line: 1,\n        column: 3,\n        offset: 3,\n      },\n    }\n  },\n  flags: '',\n  loc: {\n    start: {\n      line: 1,\n      column: 0,\n      offset: 0,\n    },\n    end: {\n      line: 1,\n      column: 4,\n      offset: 4,\n    },\n  }\n}\n```\n\nFrom Node it's controlled via `setOptions` method exposed on the parser:\n\n```js\nconst regexpTree = require('regexp-tree');\n\nconst parsed = regexpTree\n  .parser\n  .setOptions({captureLocations: true})\n  .parse(/a|b/);\n```\n\nThe `setOptions` method sets global options, which are preserved between calls. It is also possible to provide options per a single `parse` call, which might be more preferred:\n\n```js\nconst regexpTree = require('regexp-tree');\n\nconst parsed = regexpTree.parse(/a|b/, {\n  captureLocations: true,\n});\n```\n\n### Parsing options\n\nThe parser supports several options which can be set globally via the `setOptions` method on the parser, or by passing them with each `parse` method invocation.\n\nExample:\n\n```js\nconst regexpTree = require('regexp-tree');\n\nconst parsed = regexpTree.parse(/a|b/, {\n  allowGroupNameDuplicates: true,\n});\n```\n\nThe following options are supported:\n\n- `captureLocations: boolean` -- whether to capture AST node [locations](#capturing-locations) (`false` by default)\n- `allowGroupNameDuplicates: boolean` -- whether to skip duplicates check of the [named capturing groups](#named-capturing-group)\n\nSet `allowGroupNameDuplicates` would make the following expression possible:\n\n```regexp\n/\n  # YYY-MM-DD date format:\n\n  (?<year>  \\d{4}) -\n  (?<month> \\d{2}) -\n  (?<day>   \\d{2})\n\n  |\n\n  # DD.MM.YYY date format\n\n  (?<day>   \\d{2}) .\n  (?<month> \\d{2}) .\n  (?<year>  \\d{4})\n\n/x\n```\n\n### Using traversal API\n\nThe [traverse](https://github.com/DmitrySoshnikov/regexp-tree/tree/master/src/traverse) module allows handling needed AST nodes using the _visitor_ pattern. In Node the module is exposed as the `regexpTree.traverse` method. Handlers receive an instance of the [NodePath](https://github.com/DmitrySoshnikov/regexp-tree/blob/master/src/traverse/README.md#nodepath-class) class, which encapsulates `node` itself, its `parent` node, `property`, and `index` (in case the node is part of a collection).\n\nVisiting a node follows this algorithm:\n- call `pre` handler.\n- recurse into node's children.\n- call `post` handler.\n\nFor each node type of interest, you can provide either:\n- a function (`pre`).\n- an object with members `pre` and `post`.\n\nYou can also provide a `*` handler which will be executed on every node.\n\nExample:\n\n```js\nconst regexpTree = require('regexp-tree');\n\n// Get AST.\nconst ast = regexpTree.parse('/[a-z]{1,}/');\n\n// Traverse AST nodes.\nregexpTree.traverse(ast, {\n\n  // Visit every node before any type-specific handlers.\n  '*': function({node}) {\n    ...\n  },\n\n  // Handle \"Quantifier\" node type.\n  Quantifier({node}) {\n    ...\n  },\n\n  // Handle \"Char\" node type, before and after.\n  Char: {\n    pre({node}) {\n      ...\n    },\n    post({node}) {\n      ...\n    }\n  }\n\n});\n\n// Generate the regexp.\nconst re = regexpTree.generate(ast);\n\nconsole.log(re); // '/[a-z]+/'\n```\n\n### Using transform API\n\n> NOTE: you can play with transformation APIs, and write actual transforms for quick tests in AST Explorer. See [this example](http://astexplorer.net/#/gist/d293d22742b42cd1f7ee7b7e5dc6f697/39b0aabc42fb6fb106b9e368341d3300098f08c0).\n\nWhile traverse module provides basic traversal API, which can be used for any purposes of AST handling, _transform_ module focuses mainly on _transformation_ of regular expressions.\n\nIt accepts a regular expressions in different formats (string, an actual `RegExp` object, or an AST), applies a set of transformations, and retuns an instance of [TransformResult](https://github.com/DmitrySoshnikov/regexp-tree/blob/master/src/transform/README.md#transformresult). Handles receive as a parameter the same [NodePath](https://github.com/DmitrySoshnikov/regexp-tree/blob/master/src/traverse/README.md#nodepath-class) object used in traverse.\n\nExample:\n\n```js\nconst regexpTree = require('regexp-tree');\n\n// Handle nodes.\nconst re = regexpTree.transform('/[a-z]{1,}/i', {\n\n  /**\n   * Handle \"Quantifier\" node type,\n   * transforming `{1,}` quantifier to `+`.\n   */\n  Quantifier(path) {\n    const {node} = path;\n\n    // {1,} -> +\n    if (\n      node.kind === 'Range' &&\n      node.from === 1 &&\n      !node.to\n    ) {\n      path.replace({\n        type: 'Quantifier',\n        kind: '+',\n        greedy: node.greedy,\n      });\n    }\n  },\n});\n\nconsole.log(re.toString()); // '/[a-z]+/i'\nconsole.log(re.toRegExp()); // /[a-z]+/i\nconsole.log(re.getAST()); // AST for /[a-z]+/i\n```\n\n#### Transform plugins\n\nA _transformation plugin_ is a module which exports a _transformation handler_. We have seen [above](#using-transform-api) how we can pass a handler object directly to the `regexpTree.transform` method, here we extract it into a separate module, so it can be implemented and shared independently:\n\nExample of a plugin:\n\n```js\n// file: ./regexp-tree-a-to-b-transform.js\n\n\n/**\n * This plugin replaces chars 'a' with chars 'b'.\n */\nmodule.exports = {\n  Char({node}) {\n    if (node.kind === 'simple' && node.value === 'a') {\n      node.value = 'b';\n      node.symbol = 'b';\n      node.codePoint = 98;\n    }\n  },\n};\n```\n\nOnce we have this plugin ready, we can require it, and pass to the `transform` function:\n\n```js\nconst regexpTree = require('regexp-tree');\nconst plugin = require('./regexp-tree-a-to-b-transform');\n\nconst re = regexpTree.transform(/(a|c)a+[a-z]/, plugin);\n\nconsole.log(re.toRegExp()); // /(b|c)b+[b-z]/\n```\n\n> NOTE: we can also pass a _list of plugins_ to the `regexpTree.transform`. In this case the plugins are applied in one pass in order. Another approach is to run several sequential calls to `transform`, setting up a pipeline, when a transformed AST is passed further to another plugin, etc.\n\nYou can see other examples of transform plugins in the [optimizer/transforms](https://github.com/DmitrySoshnikov/regexp-tree/tree/master/src/optimizer/transforms) or in the [compat-transpiler/transforms](https://github.com/DmitrySoshnikov/regexp-tree/tree/master/src/compat-transpiler/transforms) directories.\n\n### Using generator API\n\nThe [generator](https://github.com/DmitrySoshnikov/regexp-tree/tree/master/src/generator) module generates regular expressions from corresponding AST nodes. In Node the module is exposed as `regexpTree.generate` method.\n\nExample:\n\n```js\nconst regexpTree = require('regexp-tree');\n\nconst re = regexpTree.generate({\n  type: 'RegExp',\n  body: {\n    type: 'Char',\n    value: 'a',\n    symbol: 'a',\n    kind: 'simple',\n    codePoint: 97\n  },\n  flags: 'i',\n});\n\nconsole.log(re); // '/a/i'\n```\n\n### Using optimizer API\n\n[Optimizer](https://github.com/DmitrySoshnikov/regexp-tree/tree/master/src/optimizer) transforms your regexp into an _optimized_ version, replacing some sub-expressions with their idiomatic patterns. This might be good for different kinds of minifiers, as well as for regexp machines.\n\n> NOTE: the Optimizer is implemented as a set of _regexp-tree_ [plugins](#transform-plugins).\n\nExample:\n\n```js\nconst regexpTree = require('regexp-tree');\n\nconst originalRe = /[a-zA-Z_0-9][A-Z_\\da-z]*\\e{1,}/;\n\nconst optimizedRe = regexpTree\n  .optimize(originalRe)\n  .toRegExp();\n\nconsole.log(optimizedRe); // /\\w+e+/\n```\n\nFrom CLI the optimizer is available via `--optimize` (`-o`) option:\n\n```\nregexp-tree-cli -e '/[a-zA-Z_0-9][A-Z_\\da-z]*\\e{1,}/' -o\n```\n\nResult:\n\n```\nOptimized: /\\w+e+/\n```\n\nSee the [optimizer README](https://github.com/DmitrySoshnikov/regexp-tree/tree/master/src/optimizer) for more details.\n\n#### Optimizer ESLint plugin\n\nThe [optimizer](https://github.com/DmitrySoshnikov/regexp-tree/tree/master/src/optimizer) module is also available as an _ESLint plugin_, which can be installed at: [eslint-plugin-optimize-regex](https://www.npmjs.com/package/eslint-plugin-optimize-regex).\n\n### Using compat-transpiler API\n\nThe [compat-transpiler](https://github.com/DmitrySoshnikov/regexp-tree/tree/master/src/compat-transpiler) module translates your regexp in new format or in new syntax, into an equivalent regexp in a legacy representation, so it can be used in engines which don't yet implement the new syntax.\n\n> NOTE: the compat-transpiler is implemented as a set of _regexp-tree_ [plugins](#transform-plugins).\n\nExample, \"dotAll\" `s` flag:\n\n\n```js\n/./s\n```\n\nIs translated into:\n\n```js\n/[\\0-\\uFFFF]/\n```\n\nOr [named capturing groups](#named-capturing-group):\n\n```js\n/(?<value>a)\\k<value>\\1/\n```\n\nBecomes:\n\n```js\n/(a)\\1\\1/\n```\n\nTo use the API from Node:\n\n```js\nconst regexpTree = require('regexp-tree');\n\n// Using new syntax.\nconst originalRe = '/(?<all>.)\\\\k<all>/s';\n\n// For legacy engines.\nconst compatTranspiledRe = regexpTree\n  .compatTranspile(originalRe)\n  .toRegExp();\n\nconsole.log(compatTranspiledRe); // /([\\0-\\uFFFF])\\1/\n```\n\nFrom CLI the compat-transpiler is available via `--compat` (`-c`) option:\n\n```\nregexp-tree-cli -e '/(?<all>.)\\k<all>/s' -c\n```\n\nResult:\n\n```\nCompat: /([\\0-\\uFFFF])\\1/\n```\n\n#### Compat-transpiler Babel plugin\n\nThe [compat-transpiler](https://github.com/DmitrySoshnikov/regexp-tree/tree/master/src/compat-transpiler) module is also available as a _Babel plugin_, which can be installed at: [babel-plugin-transform-modern-regexp](https://www.npmjs.com/package/babel-plugin-transform-modern-regexp).\n\nNote, the plugin also includes [extended regexp](#regexp-extensions) features.\n\n### RegExp extensions\n\nSome of the _non-standard_ feature are also supported by _regexp-tree_.\n\n> NOTE: _\"non-standard\"_ means specifically ECMAScript standard, since in other regexp egnines, e.g. PCRE, Python, etc. these features are standard.\n\nOne of such features is the `x` flag, which enables _extended_ mode of regular expressions. In this mode most of whitespaces are ignored, and expressions can use #-comments.\n\nExample:\n\n```regex\n/\n  # A regular expression for date.\n\n  (?<year>\\d{4})-    # year part of a date\n  (?<month>\\d{2})-   # month part of a date\n  (?<day>\\d{2})      # day part of a date\n\n/x\n```\n\nThis is normally parsed by the _regexp-tree_ parser, and [compat-transpiler](#using-compat-transpiler-api) has full support for it; it's translated into:\n\n```regex\n/(\\d{4})-(\\d{2})-(\\d{2})/\n```\n\n#### RegExp extensions Babel plugin\n\nThe regexp extensions are also available as a _Babel plugin_, which can be installed at: [babel-plugin-transform-modern-regexp](https://www.npmjs.com/package/babel-plugin-transform-modern-regexp).\n\nNote, the plugin also includes [compat-transpiler](#using-compat-transpiler-api) features.\n\n### Creating RegExp objects\n\nTo create an actual `RegExp` JavaScript object, we can use `regexpTree.toRegExp` method:\n\n```js\nconst regexpTree = require('regexp-tree');\n\nconst re = regexpTree.toRegExp('/[a-z]/i');\n\nconsole.log(\n  re.test('a'), // true\n  re.test('Z'), // true\n);\n```\n\n### Executing regexes\n\nIt is also possible to execute regular expressions using `exec` API method, which has support for new syntax, and features, such as [named capturing group](#named-capturing-group), etc:\n\n```js\nconst regexpTree = require('regexp-tree');\n\nconst re = `/\n\n  # A regular expression for date.\n\n  (?<year>\\\\d{4})-    # year part of a date\n  (?<month>\\\\d{2})-   # month part of a date\n  (?<day>\\\\d{2})      # day part of a date\n\n/x`;\n\nconst string = '2017-04-14';\n\nconst result = regexpTree.exec(re, string);\n\nconsole.log(result.groups); // {year: '2017', month: '04', day: '14'}\n```\n\n### Using interpreter API\n\n> NOTE: you can read more about implementation details of the interpreter in [this series of articles](https://medium.com/@DmitrySoshnikov/building-a-regexp-machine-part-1-regular-grammars-d4986b585d7e).\n\nIn addition to executing regular expressions using JavaScript built-in RegExp engine, RegExp Tree also implements own [interpreter](https://github.com/DmitrySoshnikov/regexp-tree/tree/master/src/interpreter/finite-automaton) based on classic NFA/DFA finite automaton engine.\n\nCurrently it aims educational purposes -- to trace the regexp matching process, transitioning in NFA/DFA states. It also allows building state transitioning table, which can be used for custom implementation. In API the module is exposed as `fa` (finite-automaton) object.\n\nExample:\n\n```js\nconst {fa} = require('regexp-tree');\n\nconst re = /ab|c*/;\n\nconsole.log(fa.test(re, 'ab')); // true\nconsole.log(fa.test(re, '')); // true\nconsole.log(fa.test(re, 'c')); // true\n\n// NFA, and its transition table.\nconst nfa = fa.toNFA(re);\nconsole.log(nfa.getTransitionTable());\n\n// DFA, and its transition table.\nconst dfa = fa.toDFA(re);\nconsole.log(dfa.getTransitionTable());\n```\n\nFor more granular work with NFA and DFA, `fa` module also exposes convenient builders, so you can build NFA fragments directly:\n\n```js\nconst {fa} = require('regexp-tree');\n\nconst {\n  alt,\n  char,\n  or,\n  rep,\n} = fa.builders;\n\n// ab|c*\nconst re = or(\n  alt(char('a'), char('b')),\n  rep(char('c'))\n);\n\nconsole.log(re.matches('ab')); // true\nconsole.log(re.matches('')); // true\nconsole.log(re.matches('c')); // true\n\n// Build DFA from NFA\nconst {DFA} = fa;\n\nconst reDFA = new DFA(re);\n\nconsole.log(reDFA.matches('ab')); // true\nconsole.log(reDFA.matches('')); // true\nconsole.log(reDFA.matches('c')); // true\n```\n\n#### Printing NFA/DFA tables\n\nThe `--table` option allows displaying NFA/DFA transition tables. RegExp Tree also applies _DFA minimization_ (using _N-equivalence_ algorithm), and produces the minimal transition table as its final result.\n\nIn the example below for the `/a|b|c/` regexp, we first obtain the NFA transition table, which is further converted to the original DFA transition table (down from the 10 non-deterministic states to 4 deterministic states), and eventually minimized to the final DFA table (from 4 to only 2 states).\n\n```\n./bin/regexp-tree-cli -e '/a|b|c/' --table all\n```\n\nResult:\n\n```\n> - starting\n✓ - accepting\n\nNFA transition table:\n\n┌─────┬───┬───┬────┬─────────────┐\n│     │ a │ b │ c  │ ε*          │\n├─────┼───┼───┼────┼─────────────┤\n│ 1 > │   │   │    │ {1,2,3,7,9} │\n├─────┼───┼───┼────┼─────────────┤\n│ 2   │   │   │    │ {2,3,7}     │\n├─────┼───┼───┼────┼─────────────┤\n│ 3   │ 4 │   │    │ 3           │\n├─────┼───┼───┼────┼─────────────┤\n│ 4   │   │   │    │ {4,5,6}     │\n├─────┼───┼───┼────┼─────────────┤\n│ 5   │   │   │    │ {5,6}       │\n├─────┼───┼───┼────┼─────────────┤\n│ 6 ✓ │   │   │    │ 6           │\n├─────┼───┼───┼────┼─────────────┤\n│ 7   │   │ 8 │    │ 7           │\n├─────┼───┼───┼────┼─────────────┤\n│ 8   │   │   │    │ {8,5,6}     │\n├─────┼───┼───┼────┼─────────────┤\n│ 9   │   │   │ 10 │ 9           │\n├─────┼───┼───┼────┼─────────────┤\n│ 10  │   │   │    │ {10,6}      │\n└─────┴───┴───┴────┴─────────────┘\n\n\nDFA: Original transition table:\n\n┌─────┬───┬───┬───┐\n│     │ a │ b │ c │\n├─────┼───┼───┼───┤\n│ 1 > │ 4 │ 3 │ 2 │\n├─────┼───┼───┼───┤\n│ 2 ✓ │   │   │   │\n├─────┼───┼───┼───┤\n│ 3 ✓ │   │   │   │\n├─────┼───┼───┼───┤\n│ 4 ✓ │   │   │   │\n└─────┴───┴───┴───┘\n\n\nDFA: Minimized transition table:\n\n┌─────┬───┬───┬───┐\n│     │ a │ b │ c │\n├─────┼───┼───┼───┤\n│ 1 > │ 2 │ 2 │ 2 │\n├─────┼───┼───┼───┤\n│ 2 ✓ │   │   │   │\n└─────┴───┴───┴───┘\n```\n\n### AST nodes specification\n\nBelow are the AST node types for different regular expressions patterns:\n\n- [Char](#char)\n  - [Simple char](#simple-char)\n  - [Escaped char](#escaped-char)\n  - [Meta char](#meta-char)\n  - [Control char](#control-char)\n  - [Hex char-code](#hex-char-code)\n  - [Decimal char-code](#decimal-char-code)\n  - [Octal char-code](#octal-char-code)\n  - [Unicode](#unicode)\n- [Character class](#character-class)\n  - [Positive character class](#positive-character-class)\n  - [Negative character class](#negative-character-class)\n  - [Character class ranges](#character-class-ranges)\n- [Unicode properties](#unicode-properties)\n- [Alternative](#alternative)\n- [Disjunction](#disjunction)\n- [Groups](#groups)\n  - [Capturing group](#capturing-group)\n  - [Named capturing group](#named-capturing-group)\n  - [Non-capturing group](#non-capturing-group)\n  - [Backreferences](#backreferences)\n- [Quantifiers](#quantifiers)\n  - [? zero-or-one](#-zero-or-one)\n  - [* zero-or-more](#-zero-or-more)\n  - [+ one-or-more](#-one-or-more)\n  - [Range-based quantifiers](#range-based-quantifiers)\n    - [Exact number of matches](#exact-number-of-matches)\n    - [Open range](#open-range)\n    - [Closed range](#closed-range)\n  - [Non-greedy](#non-greedy)\n- [Assertions](#assertions)\n  - [^ begin marker](#-begin-marker)\n  - [$ end marker](#-end-marker)\n  - [Boundary assertions](#boundary-assertions)\n  - [Lookahead assertions](#lookahead-assertions)\n    - [Positive lookahead assertion](#positive-lookahead-assertion)\n    - [Negative lookahead assertion](#negative-lookahead-assertion)\n  - [Lookbehind assertions](#lookbehind-assertions)\n    - [Positive lookbehind assertion](#positive-lookbehind-assertion)\n    - [Negative lookbehind assertion](#negative-lookbehind-assertion)\n\n#### Char\n\nA basic building block, single character. Can be _escaped_, and be of different _kinds_.\n\n##### Simple char\n\nBasic _non-escaped_ char in a regexp:\n\n```\nz\n```\n\nNode:\n\n```js\n{\n  type: 'Char',\n  value: 'z',\n  symbol: 'z',\n  kind: 'simple',\n  codePoint: 122\n}\n```\n\n> NOTE: to test this from CLI, the char should be in an actual regexp -- `/z/`.\n\n##### Escaped char\n\n```\n\\z\n```\n\nThe same value, `escaped` flag is added:\n\n```js\n{\n  type: 'Char',\n  value: 'z',\n  symbol: 'z',\n  kind: 'simple',\n  codePoint: 122,\n  escaped: true\n}\n```\n\nEscaping is mostly used with meta symbols:\n\n```\n// Syntax error\n*\n```\n\n```\n\\*\n```\n\nOK, node:\n\n```js\n{\n  type: 'Char',\n  value: '*',\n  symbol: '*',\n  kind: 'simple',\n  codePoint: 42,\n  escaped: true\n}\n```\n\n##### Meta char\n\nA _meta character_ should not be confused with an [escaped char](#escaped-char).\n\nExample:\n\n```\n\\n\n```\n\nNode:\n\n```js\n{\n  type: 'Char',\n  value: '\\\\n',\n  symbol: '\\n',\n  kind: 'meta',\n  codePoint: 10\n}\n```\n\nAmong other meta character are: `.`, `\\f`, `\\r`, `\\n`, `\\t`, `\\v`, `\\0`, `[\\b]` (backspace char), `\\s`, `\\S`, `\\w`, `\\W`, `\\d`, `\\D`.\n\n> NOTE: Meta characters representing ranges (like `.`, `\\s`, etc.) have `undefined` value for `symbol` and `NaN` for `codePoint`.\n\n> NOTE: `\\b` and `\\B` are parsed as `Assertion` node type, not `Char`.\n\n##### Control char\n\nA char preceded with `\\c`, e.g. `\\cx`, which stands for `CTRL+x`:\n\n```\n\\cx\n```\n\nNode:\n\n```js\n{\n  type: 'Char',\n  value: '\\\\cx',\n  symbol: undefined,\n  kind: 'control',\n  codePoint: NaN\n}\n```\n\n##### HEX char-code\n\nA char preceded with `\\x`, followed by a HEX-code, e.g. `\\x3B` (symbol `;`):\n\n```\n\\x3B\n```\n\nNode:\n\n```js\n{\n  type: 'Char',\n  value: '\\\\x3B',\n  symbol: ';',\n  kind: 'hex',\n  codePoint: 59\n}\n```\n\n##### Decimal char-code\n\nChar-code:\n\n```\n\\42\n```\n\nNode:\n\n```js\n{\n  type: 'Char',\n  value: '\\\\42',\n  symbol: '*',\n  kind: 'decimal',\n  codePoint: 42\n}\n```\n\n##### Octal char-code\n\nChar-code started with `\\0`, followed by an octal number:\n\n```\n\\073\n```\n\nNode:\n\n```js\n{\n  type: 'Char',\n  value: '\\\\073',\n  symbol: ';',\n  kind: 'oct',\n  codePoint: 59\n}\n```\n\n##### Unicode\n\nUnicode char started with `\\u`, followed by a hex number:\n\n```\n\\u003B\n```\n\nNode:\n\n```js\n{\n  type: 'Char',\n  value: '\\\\u003B',\n  symbol: ';',\n  kind: 'unicode',\n  codePoint: 59\n}\n```\n\nWhen using the `u` flag, unicode chars can also be represented using `\\u` followed by a hex number between curly braces:\n\n```\n\\u{1F680}\n```\n\nNode:\n\n```js\n{\n  type: 'Char',\n  value: '\\\\u{1F680}',\n  symbol: '????',\n  kind: 'unicode',\n  codePoint: 128640\n}\n```\n\nWhen using the `u` flag, unicode chars can also be represented using a surrogate pair:\n\n```\n\\ud83d\\ude80\n```\n\nNode:\n\n```js\n{\n  type: 'Char',\n  value: '\\\\ud83d\\\\ude80',\n  symbol: '????',\n  kind: 'unicode',\n  codePoint: 128640,\n  isSurrogatePair: true\n}\n```\n\n#### Character class\n\nCharacter classes define a _set_ of characters. A set may include as simple characters, as well as _character ranges_. A class can be _positive_ (any from the characters in the class match), or _negative_ (any _but_ the characters from the class match).\n\n##### Positive character class\n\nA positive character class is defined between `[` and `]` brackets:\n\n```\n[a*]\n```\n\nA node:\n\n```js\n{\n  type: 'CharacterClass',\n  expressions: [\n    {\n      type: 'Char',\n      value: 'a',\n      symbol: 'a',\n      kind: 'simple',\n      codePoint: 97\n    },\n    {\n      type: 'Char',\n      value: '*',\n      symbol: '*',\n      kind: 'simple',\n      codePoint: 42\n    }\n  ]\n}\n```\n\n> NOTE: some meta symbols are treated as normal characters in a character class. E.g. `*` is not a repetition quantifier, but a simple char.\n\n##### Negative character class\n\nA negative character class is defined between `[^` and `]` brackets:\n\n```\n[^ab]\n```\n\nAn AST node is the same, just `negative` property is added:\n\n```js\n{\n  type: 'CharacterClass',\n  negative: true,\n  expressions: [\n    {\n      type: 'Char',\n      value: 'a',\n      symbol: 'a',\n      kind: 'simple',\n      codePoint: 97\n    },\n    {\n      type: 'Char',\n      value: 'b',\n      symbol: 'b',\n      kind: 'simple',\n      codePoint: 98\n    }\n  ]\n}\n```\n\n##### Character class ranges\n\nAs mentioned, a character class may also contain _ranges_ of symbols:\n\n```\n[a-z]\n```\n\nA node:\n\n```js\n{\n  type: 'CharacterClass',\n  expressions: [\n    {\n      type: 'ClassRange',\n      from: {\n        type: 'Char',\n        value: 'a',\n        symbol: 'a',\n        kind: 'simple',\n        codePoint: 97\n      },\n      to: {\n        type: 'Char',\n        value: 'z',\n        symbol: 'z',\n        kind: 'simple',\n        codePoint: 122\n      }\n    }\n  ]\n}\n```\n\n> NOTE: it is a _syntax error_ if `to` value is less than `from` value: `/[z-a]/`.\n\nThe range value can be the same for `from` and `to`, and the special range `-` character is treated as a simple character when it stands in a char position:\n\n```\n// from: 'a', to: 'a'\n[a-a]\n\n// from: '-', to: '-'\n[---]\n\n// simple '-' char:\n[-]\n\n// 3 ranges:\n[a-zA-Z0-9]+\n```\n\n#### Unicode properties\n\nUnicode property escapes are a new type of escape sequence available in regular expressions that have the `u` flag set. With this feature it is possible to write Unicode expressions as:\n\n```js\nconst greekSymbolRe = /\\p{Script=Greek}/u;\n\ngreekSymbolRe.test('π'); // true\n```\n\nThe AST node for this expression is:\n\n```js\n{\n  type: 'UnicodeProperty',\n  name: 'Script',\n  value: 'Greek',\n  negative: false,\n  shorthand: false,\n  binary: false,\n  canonicalName: 'Script',\n  canonicalValue: 'Greek'\n}\n```\n\nAll possible property names, values, and their aliases can be found at the [specification](https://tc39.github.io/ecma262/#sec-runtime-semantics-unicodematchproperty-p).\n\nFor `General_Category` it is possible to use a shorthand:\n\n```js\n/\\p{Letter}/u;   // Shorthand\n\n/\\p{General_Category=Letter}/u; // Full notation\n```\n\nBinary names use the single value as well:\n\n```js\n/\\p{ASCII_Hex_Digit}/u; // Same as: /[0-9A-Fa-f]/\n```\n\nThe capitalized `P` defines the negation of the expression:\n\n```js\n/\\P{ASCII_Hex_Digit}/u; // NOT a ASCII Hex digit\n```\n\n#### Alternative\n\nAn _alternative_ (or _concatenation_) defines a chain of patterns followed one after another:\n\n```\nabc\n```\n\nA node:\n\n```js\n{\n  type: 'Alternative',\n  expressions: [\n    {\n      type: 'Char',\n      value: 'a',\n      symbol: 'a',\n      kind: 'simple',\n      codePoint: 97\n    },\n    {\n      type: 'Char',\n      value: 'b',\n      symbol: 'b',\n      kind: 'simple',\n      codePoint: 98\n    },\n    {\n      type: 'Char',\n      value: 'c',\n      symbol: 'c',\n      kind: 'simple',\n      codePoint: 99\n    }\n  ]\n}\n```\n\nAnother examples:\n\n```\n// 'a' with a quantifier, followed by 'b'\na?b\n\n// A group followed by a class:\n(ab)[a-z]\n```\n\n#### Disjunction\n\nThe _disjunction_ defines \"OR\" operation for regexp patterns. It's a _binary_ operation, having `left`, and `right` nodes.\n\nMatches `a` or `b`:\n\n```\na|b\n```\n\nA node:\n\n```js\n{\n  type: 'Disjunction',\n  left: {\n    type: 'Char',\n    value: 'a',\n    symbol: 'a',\n    kind: 'simple',\n    codePoint: 97\n  },\n  right: {\n    type: 'Char',\n    value: 'b',\n    symbol: 'b',\n    kind: 'simple',\n    codePoint: 98\n  }\n}\n```\n\n#### Groups\n\nThe groups play two roles: they define _grouping precedence_, and allow to _capture_ needed sub-expressions in case of a capturing group.\n\n##### Capturing group\n\n_\"Capturing\"_ means the matched string can be referred later by a user, including in the pattern itself -- by using [backreferences](#backreferences).\n\nChar `a`, and `b` are grouped, followed by the `c` char:\n\n```\n(ab)c\n```\n\nA node:\n\n```js\n{\n  type: 'Alternative',\n  expressions: [\n    {\n      type: 'Group',\n      capturing: true,\n      number: 1,\n      expression: {\n        type: 'Alternative',\n        expressions: [\n          {\n            type: 'Char',\n            value: 'a',\n            symbol: 'a',\n            kind: 'simple',\n            codePoint: 97\n          },\n          {\n            type: 'Char',\n            value: 'b',\n            symbol: 'b',\n            kind: 'simple',\n            codePoint: 98\n          }\n        ]\n      }\n    },\n    {\n      type: 'Char',\n      value: 'c',\n      symbol: 'c',\n      kind: 'simple',\n      codePoint: 99\n    }\n  ]\n}\n```\n\nAs we can see, it also tracks the number of the group.\n\nAnother example:\n\n```\n// A grouped disjunction of a symbol, and a character class:\n(5|[a-z])\n```\n\n##### Named capturing group\n\nA capturing group can be given a name using the `(?<name>...)` syntax, for any identifier `name`.\n\nFor example, a regular expressions for a date:\n\n```js\n/(?<year>\\d{4})-(?<month>\\d{2})-(?<day>\\d{2})/u\n```\n\nFor the group:\n\n```js\n(?<foo>x)\n```\n\nWe have the following node (the `name` property with value `foo` is added):\n\n```js\n{\n  type: 'Group',\n  capturing: true,\n  name: 'foo',\n  nameRaw: 'foo',\n  number: 1,\n  expression: {\n    type: 'Char',\n    value: 'x',\n    symbol: 'x',\n    kind: 'simple',\n    codePoint: 120\n  }\n}\n```\n\nNote: The `nameRaw` property represents the name *as parsed from the original source*, including escape sequences. The `name` property represents the canonical decoded form of the name.\n\nFor example, given the `/u` flag and the following group:\n\n```regexp\n(?<\\u{03C0}>x)\n```\n\nWe would have the following node:\n\n```js\n{\n  type: 'Group',\n  capturing: true,\n  name: 'π',\n  nameRaw: '\\\\u{03C0}',\n  number: 1,\n  expression: {\n    type: 'Char',\n    value: 'x',\n    symbol: 'x',\n    kind: 'simple',\n    codePoint: 120\n  }\n}\n```\n\n##### Non-capturing group\n\nSometimes we don't need to actually capture the matched string from a group. In this case we can use a _non-capturing_ group:\n\nChar `a`, and `b` are grouped, _but not captured_, followed by the `c` char:\n\n```\n(?:ab)c\n```\n\nThe same node, the `capturing` flag is `false`:\n\n```js\n{\n  type: 'Alternative',\n  expressions: [\n    {\n      type: 'Group',\n      capturing: false,\n      expression: {\n        type: 'Alternative',\n        expressions: [\n          {\n            type: 'Char',\n            value: 'a',\n            symbol: 'a',\n            kind: 'simple',\n            codePoint: 97\n          },\n          {\n            type: 'Char',\n            value: 'b',\n            symbol: 'b',\n            kind: 'simple',\n            codePoint: 98\n          }\n        ]\n      }\n    },\n    {\n      type: 'Char',\n      value: 'c',\n      symbol: 'c',\n      kind: 'simple',\n      codePoint: 99\n    }\n  ]\n}\n```\n\n##### Backreferences\n\nA [capturing group](#capturing-group) can be referenced in the pattern using notation of an escaped group number.\n\nMatches `abab` string:\n\n```\n(ab)\\1\n```\n\nA node:\n\n```js\n{\n  type: 'Alternative',\n  expressions: [\n    {\n      type: 'Group',\n      capturing: true,\n      number: 1,\n      expression: {\n        type: 'Alternative',\n        expressions: [\n          {\n            type: 'Char',\n            value: 'a',\n            symbol: 'a',\n            kind: 'simple',\n            codePoint: 97\n          },\n          {\n            type: 'Char',\n            value: 'b',\n            symbol: 'b',\n            kind: 'simple',\n            codePoint: 98\n          }\n        ]\n      }\n    },\n    {\n      type: 'Backreference',\n      kind: 'number',\n      number: 1,\n      reference: 1,\n    }\n  ]\n}\n```\n\nA [named capturing group](#named-capturing-group) can be accessed using `\\k<name>` pattern, and also using a numbered reference.\n\nMatches `www`:\n\n```js\n(?<foo>w)\\k<foo>\\1\n```\n\nA node:\n\n```js\n{\n  type: 'Alternative',\n  expressions: [\n    {\n      type: 'Group',\n      capturing: true,\n      name: 'foo',\n      nameRaw: 'foo',\n      number: 1,\n      expression: {\n        type: 'Char',\n        value: 'w',\n        symbol: 'w',\n        kind: 'simple',\n        codePoint: 119\n      }\n    },\n    {\n      type: 'Backreference',\n      kind: 'name',\n      number: 1,\n      reference: 'foo',\n      referenceRaw: 'foo'\n    },\n    {\n      type: 'Backreference',\n      kind: 'number',\n      number: 1,\n      reference: 1\n    }\n  ]\n}\n```\n\nNote: The `referenceRaw` property represents the reference *as parsed from the original source*, including escape sequences. The `reference` property represents the canonical decoded form of the reference.\n\nFor example, given the `/u` flag and the following pattern (matches `www`):\n\n```regexp\n(?<π>w)\\k<\\u{03C0}>\\1\n```\n\nWe would have the following node:\n\n```js\n{\n  type: 'Alternative',\n  expressions: [\n    {\n      type: 'Group',\n      capturing: true,\n      name: 'π',\n      nameRaw: 'π',\n      number: 1,\n      expression: {\n        type: 'Char',\n        value: 'w',\n        symbol: 'w',\n        kind: 'simple',\n        codePoint: 119\n      }\n    },\n    {\n      type: 'Backreference',\n      kind: 'name',\n      number: 1,\n      reference: 'π',\n      referenceRaw: '\\\\u{03C0}'\n    },\n    {\n      type: 'Backreference',\n      kind: 'number',\n      number: 1,\n      reference: 1\n    }\n  ]\n}\n```\n\n\n#### Quantifiers\n\nQuantifiers specify _repetition_ of a regular expression (or of its part). Below are the quantifiers which _wrap_ a parsed expression into a `Repetition` node. The quantifier itself can be of different _kinds_, and has `Quantifier` node type.\n\n##### ? zero-or-one\n\nThe `?` quantifier is short for `{0,1}`.\n\n```\na?\n```\n\nNode:\n\n```js\n{\n  type: 'Repetition',\n  expression: {\n    type: 'Char',\n    value: 'a',\n    symbol: 'a',\n    kind: 'simple',\n    codePoint: 97\n  },\n  quantifier: {\n    type: 'Quantifier',\n    kind: '?',\n    greedy: true\n  }\n}\n```\n\n##### * zero-or-more\n\nThe `*` quantifier is short for `{0,}`.\n\n```\na*\n```\n\nNode:\n\n```js\n{\n  type: 'Repetition',\n  expression: {\n    type: 'Char',\n    value: 'a',\n    symbol: 'a',\n    kind: 'simple',\n    codePoint: 97\n  },\n  quantifier: {\n    type: 'Quantifier',\n    kind: '*',\n    greedy: true\n  }\n}\n```\n\n##### + one-or-more\n\nThe `+` quantifier is short for `{1,}`.\n\n```\n// Same as `aa*`, or `a{1,}`\na+\n```\n\nNode:\n\n```js\n{\n  type: 'Repetition',\n  expression: {\n    type: 'Char',\n    value: 'a',\n    symbol: 'a',\n    kind: 'simple',\n    codePoint: 97\n  },\n  quantifier: {\n    type: 'Quantifier',\n    kind: '+',\n    greedy: true\n  }\n}\n```\n\n##### Range-based quantifiers\n\nExplicit _range-based_ quantifiers are parsed as follows:\n\n###### Exact number of matches\n\n```\na{3}\n```\n\nThe type of the quantifier is `Range`, and `from`, and `to` properties have the same value:\n\n```js\n{\n  type: 'Repetition',\n  expression: {\n    type: 'Char',\n    value: 'a',\n    symbol: 'a',\n    kind: 'simple',\n    codePoint: 97\n  },\n  quantifier: {\n    type: 'Quantifier',\n    kind: 'Range',\n    from: 3,\n    to: 3,\n    greedy: true\n  }\n}\n```\n\n###### Open range\n\nAn open range doesn't have max value (assuming semantic \"more\", or Infinity value):\n\n```\na{3,}\n```\n\nAn AST node for such range doesn't contain `to` property:\n\n```js\n{\n  type: 'Repetition',\n  expression: {\n    type: 'Char',\n    value: 'a',\n    symbol: 'a',\n    kind: 'simple',\n    codePoint: 97\n  },\n  quantifier: {\n    type: 'Quantifier',\n    kind: 'Range',\n    from: 3,\n    greedy: true\n  }\n}\n```\n\n###### Closed range\n\nA closed range has explicit max value: (which syntactically can be the same as min value):\n\n```\na{3,5}\n\n// Same as a{3}\na{3,3}\n```\n\nAn AST node for a closed range:\n\n```js\n{\n  type: 'Repetition',\n  expression: {\n    type: 'Char',\n    value: 'a',\n    symbol: 'a',\n    kind: 'simple',\n    codePoint: 97\n  },\n  quantifier: {\n    type: 'Quantifier',\n    kind: 'Range',\n    from: 3,\n    to: 5,\n    greedy: true\n  }\n}\n```\n\n> NOTE: it is a _syntax error_ if the max value is less than min value: `/a{3,2}/`\n\n##### Non-greedy\n\nIf any quantifier is followed by the `?`, the quantifier becomes _non-greedy_.\n\nExample:\n\n```\na+?\n```\n\nNode:\n\n```js\n{\n  type: 'Repetition',\n  expression: {\n    type: 'Char',\n    value: 'a',\n    symbol: 'a',\n    kind: 'simple',\n    codePoint: 97\n  },\n  quantifier: {\n    type: 'Quantifier',\n    kind: '+',\n    greedy: false\n  }\n}\n```\n\nOther examples:\n\n```\na??\na*?\na{1}?\na{1,}?\na{1,3}?\n```\n\n#### Assertions\n\nAssertions appear as separate AST nodes, however instread of manipulating on the characters themselves, they _assert_ certain conditions of a matching string. Examples: `^` -- beginning of a string (or a line in multiline mode), `$` -- end of a string, etc.\n\n##### ^ begin marker\n\nThe `^` assertion checks whether a scanner is at the beginning of a string (or a line in multiline mode).\n\nIn the example below `^` is not a property of the `a` symbol, but a separate AST node for the assertion. The parsed node is actually an `Alternative` with two nodes:\n\n```\n^a\n```\n\nThe node:\n\n```js\n{\n  type: 'Alternative',\n  expressions: [\n    {\n      type: 'Assertion',\n      kind: '^'\n    },\n    {\n      type: 'Char',\n      value: 'a',\n      symbol: 'a',\n      kind: 'simple',\n      codePoint: 97\n    }\n  ]\n}\n```\n\nSince assertion is a separate node, it may appear anywhere in the matching string. The following regexp is completely valid, and asserts beginning of the string; it'll match an empty string:\n\n```\n^^^^^\n```\n\n##### $ end marker\n\nThe `$` assertion is similar to `^`, but asserts the end of a string (or a line in a multiline mode):\n\n```\na$\n```\n\nA node:\n\n```js\n{\n  type: 'Alternative',\n  expressions: [\n    {\n      type: 'Char',\n      value: 'a',\n      symbol: 'a',\n      kind: 'simple',\n      codePoint: 97\n    },\n    {\n      type: 'Assertion',\n      kind: '$'\n    }\n  ]\n}\n```\n\nAnd again, this is a completely valid regexp, and matches an empty string:\n\n```\n^^^^$$$$$\n\n// valid too:\n$^\n```\n\n##### Boundary assertions\n\nThe `\\b` assertion check for _word boundary_, i.e. the position between a word and a space.\n\nMatches `x` in `x y`, but not in `xy`:\n\n```\nx\\b\n```\n\nA node:\n\n```js\n{\n  type: 'Alternative',\n  expressions: [\n    {\n      type: 'Char',\n      value: 'x',\n      symbol: 'x',\n      kind: 'simple',\n      codePoint: 120\n    },\n    {\n      type: 'Assertion',\n      kind: '\\\\b'\n    }\n  ]\n}\n```\n\nThe `\\B` is vice-versa checks for _non-word_ boundary. The following example matches `x` in `xy`, but not in `x y`:\n\n```\nx\\B\n```\n\nA node is the same:\n\n```js\n{\n  type: 'Alternative',\n  expressions: [\n    {\n      type: 'Char',\n      value: 'x',\n      symbol: 'x',\n      kind: 'simple',\n      codePoint: 120\n    },\n    {\n      type: 'Assertion',\n      kind: '\\\\B'\n    }\n  ]\n}\n```\n\n##### Lookahead assertions\n\nThese assertions check whether a pattern is _followed_ (or not followed for the negative assertion) by another pattern.\n\n###### Positive lookahead assertion\n\nMatches `a` only if it's followed by `b`:\n\n```\na(?=b)\n```\n\nA node:\n\n```js\n{\n  type: 'Alternative',\n  expressions: [\n    {\n      type: 'Char',\n      value: 'a',\n      symbol: 'a',\n      kind: 'simple',\n      codePoint: 97\n    },\n    {\n      type: 'Assertion',\n      kind: 'Lookahead',\n      assertion: {\n        type: 'Char',\n        value: 'b',\n        symbol: 'b',\n        kind: 'simple',\n        codePoint: 98\n      }\n    }\n  ]\n}\n```\n\n###### Negative lookahead assertion\n\nMatches `a` only if it's _not_ followed by `b`:\n\n```\na(?!b)\n```\n\nA node is similar, just `negative` flag is added:\n\n```js\n{\n  type: 'Alternative',\n  expressions: [\n    {\n      type: 'Char',\n      value: 'a',\n      symbol: 'a',\n      kind: 'simple',\n      codePoint: 97\n    },\n    {\n      type: 'Assertion',\n      kind: 'Lookahead',\n      negative: true,\n      assertion: {\n        type: 'Char',\n        value: 'b',\n        symbol: 'b',\n        kind: 'simple',\n        codePoint: 98\n      }\n    }\n  ]\n}\n```\n\n##### Lookbehind assertions\n\n> NOTE: _Lookbehind assertions_ are not yet supported by JavaScript RegExp. It is an ECMAScript [proposal](https://tc39.github.io/proposal-regexp-lookbehind/) which is at stage 3 at the moment.\n\nThese assertions check whether a pattern is _preceded_ (or not preceded for the negative assertion) by another pattern.\n\n###### Positive lookbehind assertion\n\nMatches `b` only if it's preceded by `a`:\n\n```\n(?<=a)b\n```\n\nA node:\n\n```js\n{\n  type: 'Alternative',\n  expressions: [\n    {\n      type: 'Assertion',\n      kind: 'Lookbehind',\n      assertion: {\n        type: 'Char',\n        value: 'a',\n        symbol: 'a',\n        kind: 'simple',\n        codePoint: 97\n      }\n    },\n    {\n      type: 'Char',\n      value: 'b',\n      symbol: 'b',\n      kind: 'simple',\n      codePoint: 98\n    },\n  ]\n}\n```\n\n###### Negative lookbehind assertion\n\nMatches `b` only if it's _not_ preceded by `a`:\n\n```\n(?<!a)b\n```\n\nA node:\n\n```js\n{\n  type: 'Alternative',\n  expressions: [\n    {\n      type: 'Assertion',\n      kind: 'Lookbehind',\n      negative: true,\n      assertion: {\n        type: 'Char',\n        value: 'a',\n        symbol: 'a',\n        kind: 'simple',\n        codePoint: 97\n      }\n    },\n    {\n      type: 'Char',\n      value: 'b',\n      symbol: 'b',\n      kind: 'simple',\n      codePoint: 98\n    },\n  ]\n}\n```\n","_attachments":{},"homepage":"https://github.com/DmitrySoshnikov/regexp-tree","bugs":{"url":"https://github.com/DmitrySoshnikov/regexp-tree/issues"},"license":"MIT"}