# takeWhile method

Iterable<String> takeWhile (bool test(String value))
inherited

Returns a lazy iterable of the leading elements satisfying `test`.

The filtering happens lazily. Every new iterator of the returned iterable starts iterating over the elements of `this`.

The elements can be computed by stepping through iterator until an element is found where `test(element)` is false. At that point, the returned iterable stops (its `moveNext()` returns false).

## Implementation

    Iterable<String> takeWhile(bool test(String value)) =>
        readClasses().takeWhile(test);