public override void VisitLoop(LoopStatement loop) { LoopStatement prevLoop = currentLoop; currentLoop = loop; Label beginLabel = ilGenerator.DefineLabel(); loop.EndLabel = ilGenerator.DefineLabel(); ilGenerator.MarkLabel(beginLabel); loop.StatementList.Accept(this); ilGenerator.Emit(OpCodes.Br, beginLabel); ilGenerator.MarkLabel(loop.EndLabel); currentLoop = prevLoop; }
public override void VisitLoop(LoopStatement loop) { LoopStatement prevLoop = currentLoop; currentLoop = loop; loop.StatementList.Accept(this); currentLoop = prevLoop; }
public virtual void VisitLoop(LoopStatement loop) { }