IteratorWrapper eliminates some boilerplate when defining an Iterator that wraps another iterator.
To use it, include this module in your iterator and make sure that the wrapped iterator is stored in the @iterator instance variable.
Invokes next on the wrapped iterator and returns stop if the given value was a Iterator::Stop.
Invokes next on the wrapped iterator and returns stop if the given value was a Iterator::Stop. Otherwise, returns the value.
© 2012–2020 Manas Technology Solutions.
Licensed under the Apache License, Version 2.0.
https://crystal-lang.org/api/0.35.1/Iterator/IteratorWrapper.html