// TryFinallyStmt public override bool Walk(TryFinallyStmt node) { BitArray save = bits; bits = new BitArray(bits); // Flow the body node.body.Walk(this); bits = save; // Flow finally - this executes no matter what node.finallyStmt.Walk(this); return(false); }
public override bool Walk(TryFinallyStmt node) { TryFinallyBlock tfb = new TryFinallyBlock(node); tryBlocks.Push(tfb); node.body.Walk(this); tfb.state = ExceptionBlock.State.Finally; node.finallyStmt.Walk(this); ExceptionBlock eb = tryBlocks.Pop(); Debug.Assert((object)eb == (object)tfb); return(false); }
public virtual void PostWalk(TryFinallyStmt node) { }
// TryFinallyStmt public virtual bool Walk(TryFinallyStmt node) { return(true); }
public TryFinallyBlock(TryFinallyStmt stmt, State state) : base(state) { this.stmt = stmt; }
public TryFinallyBlock(TryFinallyStmt stmt) : this(stmt, State.Try) { }