Consumes the sequence into a new list, preserving order and nullable elements. An unbounded source does not finish and remains subject to execution and heap quotas.