Copied!
AbstractInterface
Methods
public abstract prettyPrint(array $stmts) : string
 

Pretty prints an array of statements.

  • param \Node[] $stmts Array of statements
  • return string Pretty printed statements
public abstract prettyPrintExpr(PhpParser\Node\Expr $node) : string
 

Pretty prints an expression.

  • param \Expr $node Expression node
  • return string Pretty printed node
public abstract prettyPrintFile(array $stmts) : string
 

Pretty prints a file of statements (includes the opening tag if it is required).

  • param \Node[] $stmts Array of statements
  • return string Pretty printed statements
public abstract printFormatPreserving(array $stmts, array $origStmts, array $origTokens) : string
 

Perform a format-preserving pretty print of an AST.

The format preservation is best effort. For some changes to the AST the formatting will not be preserved (at least not locally).

In order to use this method a number of prerequisites must be satisfied:

  • The startTokenPos and endTokenPos attributes in the lexer must be enabled.
  • The CloningVisitor must be run on the AST prior to modification.
  • The original tokens must be provided, using the getTokens() method on the lexer.
  • param \Node[] $stmts Modified AST with links to original AST
  • param \Node[] $origStmts Original AST with token offset information
  • param \Token[] $origTokens Tokens of the original code
© 2025 Bruce Wells
Search Namespaces \ Classes
Configuration