view python/c3/astprinter.py @ 169:ee0d30533dae

Added more tests and improved the diagnostic update
author Windel Bouwman
date Sat, 23 Mar 2013 18:34:41 +0100
parents 8104fc8b5e90
children c1ccb1cb4cef
line wrap: on
line source

from .astnodes import *
from .scope import *
from .visitor import Visitor

class AstPrinter:
   def __init__(self):
      self.visitor = Visitor(self.print1, self.print2)
   def printAst(self, pkg):
      self.indent = 0
      self.visitor.visit(pkg)
   def print1(self, node):
      print(' ' * self.indent + str(node))
      self.indent += 2
   def print2(self, node):
      self.indent -= 2