public virtual object VisitOnErrorStatement(OnErrorStatement onErrorStatement, object data) { Debug.Assert((onErrorStatement != null)); Debug.Assert((onErrorStatement.EmbeddedStatement != null)); return onErrorStatement.EmbeddedStatement.AcceptVisitor(this, data); }
public virtual object VisitOnErrorStatement(OnErrorStatement onErrorStatement, object data) { throw new global::System.NotImplementedException("OnErrorStatement"); }
public virtual object VisitOnErrorStatement(OnErrorStatement onErrorStatement, object data) { Debug.Assert((onErrorStatement != null)); Debug.Assert((onErrorStatement.EmbeddedStatement != null)); nodeStack.Push(onErrorStatement.EmbeddedStatement); onErrorStatement.EmbeddedStatement.AcceptVisitor(this, data); onErrorStatement.EmbeddedStatement = ((Statement)(nodeStack.Pop())); return null; }
void OnErrorStatement(out OnErrorStatement stmt) { stmt = null; Location startLocation = la.Location; GotoStatement goToStatement = null; Expect(171); Expect(118); if (IsNegativeLabelName()) { Expect(132); Expect(30); Expect(5); long intLabel = Int64.Parse(t.val); if(intLabel != 1) { Error("invalid label in on error statement."); } stmt = new OnErrorStatement(new GotoStatement((intLabel * -1).ToString())); } else if (la.kind == 132) { GotoStatement(out goToStatement); string val = goToStatement.Label; // if value is numeric, make sure that is 0 try { long intLabel = Int64.Parse(val); if(intLabel != 0) { Error("invalid label in on error statement."); } } catch { } stmt = new OnErrorStatement(goToStatement); } else if (la.kind == 194) { Get(); Expect(163); stmt = new OnErrorStatement(new ResumeStatement(true)); } else SynErr(311); if (stmt != null) { stmt.StartLocation = startLocation; stmt.EndLocation = t.EndLocation; } }
public sealed override object VisitOnErrorStatement(OnErrorStatement onErrorStatement, object data) { this.BeginVisit(onErrorStatement); object result = this.TrackedVisitOnErrorStatement(onErrorStatement, data); this.EndVisit(onErrorStatement); return result; }
public virtual object TrackedVisitOnErrorStatement(OnErrorStatement onErrorStatement, object data) { return base.VisitOnErrorStatement(onErrorStatement, data); }