# HG changeset patch # User paulb@jeremy # Date 1161723867 -7200 # Node ID 81a732b70193de84d238bd5ef2845d1d0b9a0cda # Parent 353f320afab7eecff0a970042dccf78c8ee6146e Added support for exception constructs. diff -r 353f320afab7 -r 81a732b70193 viewer.py --- a/viewer.py Tue Oct 24 23:03:15 2006 +0200 +++ b/viewer.py Tue Oct 24 23:04:27 2006 +0200 @@ -364,6 +364,56 @@ self.default(node) self.stream.write("\n") + def visitTryExcept(self, node): + self.stream.write("
\n") + self.stream.write("
\n") + self._keyword("try") + self.stream.write(":\n") + self.stream.write("
\n") + self.stream.write("
\n") + self.dispatch(node.body) + self.stream.write("
\n") + for spec, assign, statement in node.handlers: + self.stream.write("
\n") + self._keyword("except") + if spec is not None: + self.dispatch(spec) + if assign is not None: + self.stream.write(",\n") + self.dispatch(assign) + self.stream.write(":\n") + self.stream.write("
\n") + self.stream.write("
\n") + self.dispatch(statement) + self.stream.write("
\n") + if node.else_ is not None: + self.stream.write("
\n") + self._keyword("else") + self.stream.write(":\n") + self.stream.write("
\n") + self.stream.write("
\n") + self.dispatch(node.else_) + self.stream.write("
\n") + self.stream.write("
\n") + + def visitTryFinally(self, node): + self.stream.write("
\n") + self.stream.write("
\n") + self._keyword("try") + self.stream.write(":\n") + self.stream.write("
\n") + self.stream.write("
\n") + self.dispatch(node.body) + self.stream.write("
\n") + self.stream.write("
\n") + self._keyword("finally") + self.stream.write(":\n") + self.stream.write("
\n") + self.stream.write("
\n") + self.dispatch(node.final) + self.stream.write("
\n") + self.stream.write("
\n") + def visitWhile(self, node): self.stream.write("
\n") self.stream.write("
\n")