public virtual object VisitCatchClause(CatchClause catchClause, object data) { Debug.Assert((catchClause != null)); Debug.Assert((catchClause.TypeReference != null)); Debug.Assert((catchClause.StatementBlock != null)); Debug.Assert((catchClause.Condition != null)); catchClause.TypeReference.AcceptVisitor(this, data); catchClause.StatementBlock.AcceptVisitor(this, data); return catchClause.Condition.AcceptVisitor(this, data); }
void CatchClause( #line 1742 "Frames/cs.ATG" out CatchClause catchClause) { Expect(56); #line 1744 "Frames/cs.ATG" string identifier; Statement stmt; TypeReference typeRef; Location startPos = t.Location; catchClause = null; if (la.kind == 16) { Block( #line 1752 "Frames/cs.ATG" out stmt); #line 1752 "Frames/cs.ATG" catchClause = new CatchClause(stmt); } else if (la.kind == 20) { lexer.NextToken(); ClassType( #line 1755 "Frames/cs.ATG" out typeRef, false); #line 1755 "Frames/cs.ATG" identifier = null; if (StartOf(19)) { Identifier(); #line 1756 "Frames/cs.ATG" identifier = t.val; } Expect(21); Block( #line 1757 "Frames/cs.ATG" out stmt); #line 1758 "Frames/cs.ATG" catchClause = new CatchClause(typeRef, identifier, stmt); } else SynErr(205); #line 1761 "Frames/cs.ATG" if (catchClause != null) { catchClause.StartLocation = startPos; catchClause.EndLocation = t.Location; } }
public virtual object TrackedVisitCatchClause(CatchClause catchClause, object data) { return base.VisitCatchClause(catchClause, data); }
public sealed override object VisitCatchClause(CatchClause catchClause, object data) { this.BeginVisit(catchClause); object result = this.TrackedVisitCatchClause(catchClause, data); this.EndVisit(catchClause); return result; }
public virtual object VisitCatchClause(CatchClause catchClause, object data) { Debug.Assert((catchClause != null)); Debug.Assert((catchClause.TypeReference != null)); Debug.Assert((catchClause.StatementBlock != null)); Debug.Assert((catchClause.Condition != null)); nodeStack.Push(catchClause.TypeReference); catchClause.TypeReference.AcceptVisitor(this, data); catchClause.TypeReference = ((TypeReference)(nodeStack.Pop())); nodeStack.Push(catchClause.StatementBlock); catchClause.StatementBlock.AcceptVisitor(this, data); catchClause.StatementBlock = ((Statement)(nodeStack.Pop())); nodeStack.Push(catchClause.Condition); catchClause.Condition.AcceptVisitor(this, data); catchClause.Condition = ((Expression)(nodeStack.Pop())); return null; }
public virtual object VisitCatchClause(CatchClause catchClause, object data) { throw new global::System.NotImplementedException("CatchClause"); }