view python/ir/function.py @ 221:848c4b15fd0b

pointers
author Windel Bouwman
date Mon, 08 Jul 2013 22:21:44 +0200
parents d77cb5962cc5
children 88a1e0baef65
line wrap: on
line source

from .basicblock import BasicBlock

class Function:
   def __init__(self, name):
      self.name = name
      self.bbs = []
      self.entry = None

   def __repr__(self):
      return 'Function {0}'.format(self.name)

   def addBB(self, bb):
      self.bbs.append(bb)
      bb.parent = self
   addBasicBlock = addBB

   def removeBasicBlock(self, bb):
      self.bbs.remove(bb)
      bb.parent = None

   def getBBs(self):
      return self.bbs
   BasicBlocks = property(getBBs)