protected override bool DoProcessEvent()
{
TargetAddress current_frame = inferior.CurrentFrame;
Report.Debug (DebugFlags.SSE, "{0} iterator stopped at {1} ({2}:{3})",
sse, current_frame, method.StartAddress, method.EndAddress);
if ((current_frame < method.StartAddress) || (current_frame > method.EndAddress))
return true;
Block block = method.LookupBlock (inferior, current_frame);
Report.Debug (DebugFlags.SSE, "{0} iterator block: {1}", sse, block);
if ((block != null) && block.IsIteratorBody)
return true;
sse.do_next ();
return false;
}