source: trip-planner-front/node_modules/eslint-scope/README.md@ 76712b2

Last change on this file since 76712b2 was 6a3a178, checked in by Ema <ema_spirova@…>, 3 years ago

initial commit

  • Property mode set to 100644
File size: 1.5 KB
RevLine 
[6a3a178]1# ESLint Scope
2
3ESLint Scope is the [ECMAScript](http://www.ecma-international.org/publications/standards/Ecma-262.htm) scope analyzer used in ESLint. It is a fork of [escope](http://github.com/estools/escope).
4
5## Usage
6
7Install:
8
9```
10npm i eslint-scope --save
11```
12
13Example:
14
15```js
16var eslintScope = require('eslint-scope');
17var espree = require('espree');
18var estraverse = require('estraverse');
19
20var ast = espree.parse(code);
21var scopeManager = eslintScope.analyze(ast);
22
23var currentScope = scopeManager.acquire(ast); // global scope
24
25estraverse.traverse(ast, {
26 enter: function(node, parent) {
27 // do stuff
28
29 if (/Function/.test(node.type)) {
30 currentScope = scopeManager.acquire(node); // get current function scope
31 }
32 },
33 leave: function(node, parent) {
34 if (/Function/.test(node.type)) {
35 currentScope = currentScope.upper; // set to parent scope
36 }
37
38 // do stuff
39 }
40});
41```
42
43## Contributing
44
45Issues and pull requests will be triaged and responded to as quickly as possible. We operate under the [ESLint Contributor Guidelines](http://eslint.org/docs/developer-guide/contributing), so please be sure to read them before contributing. If you're not sure where to dig in, check out the [issues](https://github.com/eslint/eslint-scope/issues).
46
47## Build Commands
48
49* `npm test` - run all linting and tests
50* `npm run lint` - run all linting
51
52## License
53
54ESLint Scope is licensed under a permissive BSD 2-clause license.
Note: See TracBrowser for help on using the repository browser.