public void VisitCatchClause(JCatchClause node) { Write("catch"); Write("("); Visit(node.Type); Write(" "); Write(node.IdentifierName); Write(")"); if (OpenBraceInNewLine) { WriteLine(); } Visit(node.Block); }
public JNode VisitCatchClause(CatchClause node) { var node2 = new JCatchClause(); if (node.VariableName.IsNullOrEmpty()) { node.VariableName = "$$e" + (VariableExceptionCounter++); //Generate a psuedo-unique variable name } node2.IdentifierName = node.VariableName; node2.Type = node.Type.Resolve().Type.JAccess(); node2.Block = (JBlock)Visit(node.Body); if (node2.Block != null) { node2.Descendants <JThrowStatement>().Where(t => t.Expression == null).ForEach(t => t.Expression = J.Member(node2.IdentifierName)); } return(node2); }