{
  "_args": [
    [
      "acorn-to-esprima@https://registry.npmjs.org/acorn-to-esprima/-/acorn-to-esprima-2.0.6.tgz",
      "/Users/gajus/Documents/dev/canonical-code-style/canonical"
    ]
  ],
  "_from": "acorn-to-esprima@>=2.0.4 <3.0.0",
  "_id": "acorn-to-esprima@2.0.6",
  "_inCache": true,
  "_location": "/acorn-to-esprima",
  "_phantomChildren": {},
  "_requested": {
    "name": "acorn-to-esprima",
    "raw": "acorn-to-esprima@https://registry.npmjs.org/acorn-to-esprima/-/acorn-to-esprima-2.0.6.tgz",
    "rawSpec": "https://registry.npmjs.org/acorn-to-esprima/-/acorn-to-esprima-2.0.6.tgz",
    "scope": null,
    "spec": "https://registry.npmjs.org/acorn-to-esprima/-/acorn-to-esprima-2.0.6.tgz",
    "type": "remote"
  },
  "_requiredBy": [
    "/babel-eslint"
  ],
  "_resolved": "https://registry.npmjs.org/acorn-to-esprima/-/acorn-to-esprima-2.0.6.tgz",
  "_shasum": "49bf4ef465375a9684d8c5e2c04d6db9d60b89f2",
  "_shrinkwrap": null,
  "_spec": "acorn-to-esprima@https://registry.npmjs.org/acorn-to-esprima/-/acorn-to-esprima-2.0.6.tgz",
  "_where": "/Users/gajus/Documents/dev/canonical-code-style/canonical",
  "author": {
    "email": "sebmck@gmail.com",
    "name": "Sebastian McKenzie"
  },
  "bugs": {
    "url": "https://github.com/babel/acorn-to-esprima/issues"
  },
  "dependencies": {},
  "description": "Convert acorn tokens to esprima",
  "devDependencies": {},
  "homepage": "https://github.com/babel/acorn-to-esprima#readme",
  "keywords": [
    "acorn",
    "babel",
    "babel-eslint",
    "babel-jscs",
    "esprima"
  ],
  "license": "MIT",
  "main": "src/index.js",
  "name": "acorn-to-esprima",
  "optionalDependencies": {},
  "readme": "# acorn-to-esprima\n\nSome functions to help transform an acorn/babel ast to esprima format.\n\nPrimarily for use in [babel-eslint](https://github.com/babel/babel-eslint), [babel-jscs](https://github.com/jscs-dev/babel-jscs), and [ast explorer](https://github.com/fkling/esprima_ast_explorer)\n\n**There are no dependencies** (the methods were changed to pass in dependencies instead)\n\nThe current functions exposed are:\n\n- `function attachComments(ast, comments, tokens)`\n  - This modifies the comments passed in.\n- `function toTokens(tokens, tt)`\n  - `tt` is `require(\"babel-core\").acorn.tokTypes`\n  - Converts template string tokens (`convertTemplateType`)\n  - filters out comment tokens\n  - runs `toToken` over each token\n- `function toToken(token, tt)`\n  - Sets `token.type`, `token.range`, and `token.value`\n- `function toAST(ast, traverse)`\n  - `traverse` is `require(\"babel-core\").traverse;`\n  - traverses over the ast and makes any necessary changes (usually es6+)\n- `function convertComments(comments)`\n  - Modifies `comment.type`\n\nHow to use:\n\nCheck out the parse method of https://github.com/babel/babel-eslint/blob/master/index.js\n```js\n// example\nexports.parse = function (code) {\n  var comments = opts.onComment = [];\n  var tokens = opts.onToken = [];\n\n  var ast;\n  try {\n    ast = parse(code, {\n        locations: true,\n        ranges: true\n    });\n  } catch (err) { throw err; }\n\n  tokens.pop();\n  ast.tokens = acornToEsprima.toTokens(tokens, tt);\n\n  acornToEsprima.convertComments(comments);\n  ast.comments = comments;\n  acornToEsprima.attachComments(ast, comments, ast.tokens);\n\n  acornToEsprima.toAST(ast, traverse);\n\n  return ast;\n}\n```",
  "readmeFilename": "README.md",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/babel/acorn-to-esprima.git"
  },
  "version": "2.0.6"
}
