Right now we always get optional iterator, however, the optional value can be elided if we know the type is non nullable.
Right now we always get optional iterator, however, the optional value can be elided if we know the type is non nullable.