[swift-evolution] Passing an optional first argument to sequence(first:next:)
Maximilian Hünenberger
m.huenenberger at me.com
Mon Aug 15 15:26:46 CDT 2016
Probably I didn't understand your proposal. What do you want to change exactly?
I thought:
public func sequence<T>(first: T, next: @escaping (T) -> T?) -> UnfoldFirstSequence<T> { ... }
To:
public func sequence<T>(first: T?, next: @escaping (T) -> T?) -> UnfoldFirstSequence<T> { ... }
> Am 15.08.2016 um 22:17 schrieb Tim Vermeulen <tvermeulen at me.com>:
>
> You can’t; the `first` parameter has type `T`, not `T?`.
>
>> On 15 Aug 2016, at 22:10, Maximilian Hünenberger <m.huenenberger at me.com> wrote:
>>
>> Hi Tim,
>>
>> If you pass "nil" to "first" isn't this an empty sequence? So it would be redundant.
>>
>> Best regards
>> Maximilian
>>
>>> Am 15.08.2016 um 01:27 schrieb Tim Vermeulen via swift-evolution <swift-evolution at swift.org>:
>>>
>>> sequence(first:next:) takes a non-optional first argument. Is there a reason for that? sequence(state:next:) allows empty sequences, and I don’t see why sequence(first:next:) shouldn’t. The fix would be to simply add the `?` in the function signature; no other changes are required to make it work.
>>>
>>> I considered just filing a bug report, but since this is a change of the public API...
>>> _______________________________________________
>>> swift-evolution mailing list
>>> swift-evolution at swift.org
>>> https://lists.swift.org/mailman/listinfo/swift-evolution
>
More information about the swift-evolution
mailing list