项目作者: babel-utils

项目描述 :
A pretty printer for AST-like structures
高级语言: JavaScript
项目地址: git://github.com/babel-utils/ast-pretty-print.git
创建时间: 2017-05-15T05:15:08Z
项目社区:https://github.com/babel-utils/ast-pretty-print

开源协议:MIT License

下载


ast-pretty-print

A pretty printer for AST-like structures

  • Super fast (useful for build tools)
  • Concise output (useful for debugging)
  • Consistent output (useful for snapshot testing)
  1. import parser from 'parser';
  2. import printAST from 'ast-pretty-print';
  3. let code = `...`;
  4. let ast = parser.parse(code);
  5. let printed = printAST(ast);
  6. console.log(printed);
  1. Node "FunctionDeclaration"
  2. __clone: [Function __clone]
  3. async: false
  4. body: Node "BlockStatement" (1:29, 1:31)
  5. body: Array []
  6. directives: Array []
  7. expression: false
  8. generator: false
  9. id: Node "Identifier" (1:9, 1:10)
  10. name: "a"
  11. params: Array [
  12. Node "Identifier" (1:11, 1:18)
  13. name: "b"
  14. typeAnnotation: Node "TypeAnnotation" (1:12, 1:18)
  15. typeAnnotation: Node "StringLiteralTypeAnnotation" (1:14, 1:18)
  16. extra: Object {
  17. "raw": "\"hi\"",
  18. "rawValue": "hi",
  19. }
  20. value: "hi",
  21. Node "Identifier" (1:20, 1:21)
  22. name: "c",
  23. Node "RestElement" (1:23, 1:27)
  24. argument: Node "Identifier" (1:26, 1:27)
  25. name: "d",
  26. ]