takeWhileInclusive method
Emits events only while predicate holds; closes the stream on first failure.
Implementation
Stream<T> takeWhileInclusive(bool Function(T) predicate) async* {
await for (final value in this) {
yield value;
if (!predicate(value)) break;
}
}