I personally would love to have it as optional behaviour. Not sure when you
would ever need it to be non optional ?

On Wed, Jan 6, 2016 at 6:54 PM, Max Moiseev <[email protected]> wrote:

> Ahhh, right.
>
> I believe the thinking here is that since this is an avoidable error, it
> should be handled in the client code with an `if !array.isEmpty { … }`),
> leaving errors to really exceptional and unexpected conditions.
> Using optional here will serve the same purpose, IMHO, but instead of
> preventing the condition, one would have to react to the consequences
> later. Moreover the type will now be Optional<Element> and it would also be
> really tempting to write something like `array.removeFirst()!` and have the
> same trapping behavior.
>
> Dave, Dmitri, please correct me if I’m wrong.
>
> max
>
> On Jan 6, 2016, at 10:34 AM, James Campbell <[email protected]> wrote:
>
> What I mean't is it would be great is if it was a native swift error :) so
> we could use try? syntax.
>
> On Wed, Jan 6, 2016 at 6:32 PM, Max Moiseev <[email protected]> wrote:
>
>> Hi James,
>>
>> I believe this code
>> <https://github.com/apple/swift/blob/master/stdlib/public/core/RangeReplaceableCollectionType.swift#L235>
>>  already
>> handles empty array scenario by failing if the precondition is not met.
>> Or do you have something else in mind?
>>
>> max
>>
>> On Jan 6, 2016, at 9:36 AM, James Campbell via swift-evolution <
>> [email protected]> wrote:
>>
>> If you call removeFirst and the array is empty it would be great if it
>> was optional so it could return nil or at least it threw an error so you
>> could handle that case.
>>
>> --
>>  Wizard
>> [email protected]
>> +44 7523 279 698
>> _______________________________________________
>> swift-evolution mailing list
>> [email protected]
>> https://lists.swift.org/mailman/listinfo/swift-evolution
>>
>>
>>
>
>
> --
>  Wizard
> [email protected]
> +44 7523 279 698
>
>
>


-- 
 Wizard
[email protected]
+44 7523 279 698
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to