view applications/ide/compiler/display.py @ 51:b3a65e154ab2

Added fancy arrow head
author windel
date Thu, 05 Apr 2012 08:01:41 +0200
parents 600f48b74799
children
line wrap: on
line source

from .nodes import *

def printNode(node, indent=0):
     """
      Print visitor
        all printing goes in here
     """
     print(' '*indent+str(node))
     if type(node) is Procedure:
       print(' '*indent+'  PARAMETERS:')
       for p in node.parameters:
         printNode(p, indent+4)
       if node.block:
         print(' '*indent+'  CODE:')
         printNode(node.block, indent+4)
     elif type(node) is Module:
       print(node.symtable)
       printNode(node.initcode, indent+2)
     else:
       for c in node.getChildren():
         printNode(c, indent+2)