Creates an Optional from a given iterable or a function that produces
an iterator. If the iterable (or iterator) is empty, the optional resolves
to empty. Otherwise, the optional resolves to the first item yielded by the
iterator, and all subsequent elements are discarded.
Creates an Optional from a given iterable or a function that produces an iterator. If the iterable (or iterator) is empty, the optional resolves to empty. Otherwise, the optional resolves to the first item yielded by the iterator, and all subsequent elements are discarded.