Would be good to have this, and it would be more performant. Needs to work with break, continue, exit, etc.