Commits on Jul 3, 2019
The third path deals with generator (or other king of iterator that are not an IteratorAggregate). It means, very few cases in practice The previous code saved one object on the first call of `self::dispatch()` by replacing it at runtime. More over, this object (anon. class) is very light in memory. The performance optimization (even if fun) is not useful here. Let's make the code readable to everyone.