"""TODO
EmptyNode
- Exec
- Invert
- LeftShift
- Power
- RightShift
Sliceobj
Tryexcept
Tryfinally
self.emit('SET_LINENO', node.lineno)
self.emit('IMPORT_NAME', node.modname)
for name in node.names:
+ if name == '*':
+ self.namespace = 0
self.emit('IMPORT_FROM', name)
self.emit('POP_TOP')
return 1
def visitAssign(self, node):
- print "ASSIGN", node.expr
self.emit('SET_LINENO', node.lineno)
self.visit(node.expr)
dups = len(node.nodes) - 1
def visitMod(self, node):
return self.binaryOp(node, 'BINARY_MODULO')
+ def visitPower(self, node):
+ return self.binaryOp(node, 'BINARY_POWER')
+
+ def visitLeftShift(self, node):
+ return self.binaryOp(node, 'BINARY_LSHIFT')
+
+ def visitRightShift(self, node):
+ return self.binaryOp(node, 'BINARY_RSHIFT')
+
+ def visitInvert(self, node):
+ return self.unaryOp(node, 'UNARY_INVERT')
+
def visitUnarySub(self, node):
return self.unaryOp(node, 'UNARY_NEGATIVE')
"""TODO
EmptyNode
- Exec
- Invert
- LeftShift
- Power
- RightShift
Sliceobj
Tryexcept
Tryfinally
self.emit('SET_LINENO', node.lineno)
self.emit('IMPORT_NAME', node.modname)
for name in node.names:
+ if name == '*':
+ self.namespace = 0
self.emit('IMPORT_FROM', name)
self.emit('POP_TOP')
return 1
def visitAssign(self, node):
- print "ASSIGN", node.expr
self.emit('SET_LINENO', node.lineno)
self.visit(node.expr)
dups = len(node.nodes) - 1
def visitMod(self, node):
return self.binaryOp(node, 'BINARY_MODULO')
+ def visitPower(self, node):
+ return self.binaryOp(node, 'BINARY_POWER')
+
+ def visitLeftShift(self, node):
+ return self.binaryOp(node, 'BINARY_LSHIFT')
+
+ def visitRightShift(self, node):
+ return self.binaryOp(node, 'BINARY_RSHIFT')
+
+ def visitInvert(self, node):
+ return self.unaryOp(node, 'UNARY_INVERT')
+
def visitUnarySub(self, node):
return self.unaryOp(node, 'UNARY_NEGATIVE')