UNPKG

layaair2-cmd

Version:

layaair version 2 toolkit

99 lines (98 loc) 8.21 kB
{ "_args": [ [ { "raw": "acorn-walk@^6.1.0", "scope": null, "escapedName": "acorn-walk", "name": "acorn-walk", "rawSpec": "^6.1.0", "spec": ">=6.1.0 <7.0.0", "type": "range" }, "E:\\Mine\\Project\\git\\laya\\dawawa\\layaairdoc_cmd\\node_modules\\acorn-node" ] ], "_from": "acorn-walk@^6.1.0", "_hasShrinkwrap": false, "_id": "acorn-walk@6.1.1", "_location": "/acorn-walk", "_nodeVersion": "10.11.0", "_npmOperationalInternal": { "host": "s3://npm-registry-packages", "tmp": "tmp/acorn-walk_6.1.1_1542099228973_0.491250253564689" }, "_npmUser": { "name": "marijn", "email": "marijnh@gmail.com" }, "_npmVersion": "6.4.1", "_phantomChildren": {}, "_requested": { "raw": "acorn-walk@^6.1.0", "scope": null, "escapedName": "acorn-walk", "name": "acorn-walk", "rawSpec": "^6.1.0", "spec": ">=6.1.0 <7.0.0", "type": "range" }, "_requiredBy": [ "/acorn-node" ], "_resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.1.1.tgz", "_shasum": "d363b66f5fac5f018ff9c3a1e7b6f8e310cc3913", "_shrinkwrap": null, "_spec": "acorn-walk@^6.1.0", "_where": "E:\\Mine\\Project\\git\\laya\\dawawa\\layaairdoc_cmd\\node_modules\\acorn-node", "bugs": { "url": "https://github.com/acornjs/acorn/issues" }, "dependencies": {}, "description": "ECMAScript (ESTree) AST walker", "devDependencies": {}, "directories": {}, "dist": { "integrity": "sha512-OtUw6JUTgxA2QoqqmrmQ7F2NYqiBPi/L2jqHyFtllhOUvXYQXf0Z1CYUinIfyT4bTCGmrA7gX9FvHA81uzCoVw==", "shasum": "d363b66f5fac5f018ff9c3a1e7b6f8e310cc3913", "tarball": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.1.1.tgz", "fileCount": 8, "unpackedSize": 95740, "npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb6pEdCRA9TVsSAnZWagAA3v0QAIl5YksIo1U0+joKuD/2\n2W8TTBIwK2prDL+PpnP9bp7eCMFkh3oMip82ENzApni/Cjq/QejQZaOXW1Xv\n/opEPCvGYH4YCB4ykqWccfQBMu/ihZyG4DJHzsDyJ552isWkRbHgI8vZnb6V\ndEdzcyuZ1b0X/+40Blo1LQCPlE1cmUS0aMjAESeCS7VmjkzSbo1n9/20LgIf\nUNAvBcYtC/NGQ31z5ZSzhBLjr9E42bpJfKRKxUT1iNl3TUdzh+a/f5yyrof3\njE2F38/isziXHJu2QsVSmhBVqIxHqM0mz/RI1q6Yh/3yIIQU/0DvX9Eu5qc3\nZ87P674eGw1/pzkV2a5pm405tw9W6YIV0UNj//SLxWoeveLVl5X7WmLB2MTt\na69E3dUAk2HdlH+tc4M0Cqw2Ku6yu7vmrrs5OwZHJIt407iKX9anDHWWa2P/\n69Whc2idmizspsqJadciqXjXATNzMT1PBMj81cp03tWdBh78Yoq2EVts4hS6\nGg6uwMDwIw/9XD4DB/tLUTrBWEuN0Xk4R61J43Uh71Gr5SCXy/3FhKz21Aax\nSBNAWca4Hy8eO6g2awY7nKhvFkNXtciLJOhorrDVf1DQhiAocPIAXGVviwVx\nLw/2nxF2ClMXSNwgZIhYoiXRAJswxxwhsLIOuvMNudpWweCuPP3cbOBHAVkV\n/KrY\r\n=7LVC\r\n-----END PGP SIGNATURE-----\r\n" }, "engines": { "node": ">=0.4.0" }, "homepage": "https://github.com/acornjs/acorn", "license": "MIT", "main": "dist/walk.js", "maintainers": [ { "name": "Marijn Haverbeke", "email": "marijnh@gmail.com", "url": "https://marijnhaverbeke.nl" }, { "name": "Ingvar Stepanyan", "email": "me@rreverser.com", "url": "https://rreverser.com/" }, { "name": "Adrian Heine", "url": "http://adrianheine.de" } ], "module": "dist/walk.mjs", "name": "acorn-walk", "optionalDependencies": {}, "readme": "# Acorn AST walker\n\nAn abstract syntax tree walker for the\n[ESTree](https://github.com/estree/estree) format.\n\n## Community\n\nAcorn is open source software released under an\n[MIT license](https://github.com/acornjs/acorn/blob/master/LICENSE).\n\nYou are welcome to\n[report bugs](https://github.com/acornjs/acorn/issues) or create pull\nrequests on [github](https://github.com/acornjs/acorn). For questions\nand discussion, please use the\n[Tern discussion forum](https://discuss.ternjs.net).\n\n## Installation\n\nThe easiest way to install acorn is from [`npm`](https://www.npmjs.com/):\n\n```sh\nnpm install acorn-walk\n```\n\nAlternately, you can download the source and build acorn yourself:\n\n```sh\ngit clone https://github.com/acornjs/acorn.git\ncd acorn\nnpm install\n```\n\n## Interface\n\nAn algorithm for recursing through a syntax tree is stored as an\nobject, with a property for each tree node type holding a function\nthat will recurse through such a node. There are several ways to run\nsuch a walker.\n\n**simple**`(node, visitors, base, state)` does a 'simple' walk over a\ntree. `node` should be the AST node to walk, and `visitors` an object\nwith properties whose names correspond to node types in the [ESTree\nspec](https://github.com/estree/estree). The properties should contain\nfunctions that will be called with the node object and, if applicable\nthe state at that point. The last two arguments are optional. `base`\nis a walker algorithm, and `state` is a start state. The default\nwalker will simply visit all statements and expressions and not\nproduce a meaningful state. (An example of a use of state is to track\nscope at each point in the tree.)\n\n```js\nconst acorn = require(\"acorn\")\nconst walk = require(\"acorn-walk\")\n\nwalk.simple(acorn.parse(\"let x = 10\"), {\n Literal(node) {\n console.log(`Found a literal: ${node.value}`)\n }\n})\n```\n\n**ancestor**`(node, visitors, base, state)` does a 'simple' walk over\na tree, building up an array of ancestor nodes (including the current node)\nand passing the array to the callbacks as a third parameter.\n\n```js\nconst acorn = require(\"acorn\")\nconst walk = require(\"acorn-walk\")\n\nwalk.ancestor(acorn.parse(\"foo('hi')\"), {\n Literal(_, ancestors) {\n console.log(\"This literal's ancestors are:\", ancestors.map(n => n.type))\n }\n})\n```\n\n**recursive**`(node, state, functions, base)` does a 'recursive'\nwalk, where the walker functions are responsible for continuing the\nwalk on the child nodes of their target node. `state` is the start\nstate, and `functions` should contain an object that maps node types\nto walker functions. Such functions are called with `(node, state, c)`\narguments, and can cause the walk to continue on a sub-node by calling\nthe `c` argument on it with `(node, state)` arguments. The optional\n`base` argument provides the fallback walker functions for node types\nthat aren't handled in the `functions` object. If not given, the\ndefault walkers will be used.\n\n**make**`(functions, base)` builds a new walker object by using the\nwalker functions in `functions` and filling in the missing ones by\ntaking defaults from `base`.\n\n**full**`(node, callback, base, state)` does a 'full' walk over a\ntree, calling the callback with the arguments (node, state, type) for\neach node\n\n**fullAncestor**`(node, callback, base, state)` does a 'full' walk\nover a tree, building up an array of ancestor nodes (including the\ncurrent node) and passing the array to the callbacks as a third\nparameter.\n\n```js\nconst acorn = require(\"acorn\")\nconst walk = require(\"acorn-walk\")\n\nwalk.full(acorn.parse(\"1 + 1\"), node => {\n console.log(`There's a ${node.type} node at ${node.ch}`)\n})\n```\n\n**findNodeAt**`(node, start, end, test, base, state)` tries to locate\na node in a tree at the given start and/or end offsets, which\nsatisfies the predicate `test`. `start` and `end` can be either `null`\n(as wildcard) or a number. `test` may be a string (indicating a node\ntype) or a function that takes `(nodeType, node)` arguments and\nreturns a boolean indicating whether this node is interesting. `base`\nand `state` are optional, and can be used to specify a custom walker.\nNodes are tested from inner to outer, so if two nodes match the\nboundaries, the inner one will be preferred.\n\n**findNodeAround**`(node, pos, test, base, state)` is a lot like\n`findNodeAt`, but will match any node that exists 'around' (spanning)\nthe given position.\n\n**findNodeAfter**`(node, pos, test, base, state)` is similar to\n`findNodeAround`, but will match all nodes *after* the given position\n(testing outer nodes before inner nodes).\n", "readmeFilename": "README.md", "repository": { "type": "git", "url": "git+https://github.com/acornjs/acorn.git" }, "scripts": { "prepare": "cd ..; npm run build:walk" }, "version": "6.1.1" }