I\'ve an iterator that is used in a tight loop, and each iteration it returns a collection of items. Allocating a new collection up and returning it kills performance, so I\