ast-pretty-print

by babel-utils

babel-utils /ast-pretty-print

A pretty printer for AST-like structures

129 Stars 10 Forks Last release: Not found MIT License 24 Commits 12 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

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)
import parser from 'parser';
import printAST from 'ast-pretty-print';

let code = ...; let ast = parser.parse(code); let printed = printAST(ast);

console.log(printed);

Node "FunctionDeclaration"
  __clone: [Function __clone]
  async: false
  body: Node "BlockStatement" (1:29, 1:31)
    body: Array []
    directives: Array []
  expression: false
  generator: false
  id: Node "Identifier" (1:9, 1:10)
    name: "a"
  params: Array [
    Node "Identifier" (1:11, 1:18)
      name: "b"
      typeAnnotation: Node "TypeAnnotation" (1:12, 1:18)
          typeAnnotation: Node "StringLiteralTypeAnnotation" (1:14, 1:18)
              extra: Object {
                  "raw": ""hi"",
                  "rawValue": "hi",
                }
             value: "hi",
    Node "Identifier" (1:20, 1:21)
      name: "c",
    Node "RestElement" (1:23, 1:27)
      argument: Node "Identifier" (1:26, 1:27)
        name: "d",
  ]

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.