Whenever I see such examples I feel like map is being abused because of some of 
its properties rather than this. Ring the best way to deal with optionals.

Sent from my iPhone

> On 29 Aug 2016, at 11:26, Patrick Smith via swift-evolution 
> <[email protected]> wrote:
> 
> A little nicer I think is:
> 
> if request?.httpVersion.map({ $0 < HTTPVersion(1.0) }) ?? true {
> 
> It’s very explicit what the fallback is too, the original’s ambiguity makes 
> me uncomfortable.
> 
> BTW, did you want to be checking for <= 1.0? With HTTP 1.0, it’s opt in. 
> https://en.wikipedia.org/wiki/HTTP_persistent_connection
> 
> Patrick
> 
>> On 28 Aug 2016, at 1:20 PM, Kevin Ballard via swift-evolution 
>> <[email protected]> wrote:
>> 
>> As for optional comparisons making the code cleaner, I end up using them all 
>> over the place. The case that motivated my email looked something along the 
>> lines of
>> 
>> if request?.httpVersion < HTTPVersion(1.0) {
>>   // no keepalive
>>   disconnect()
>> }
>> 
>> This particular case could be trivially replaced with
>> 
>> if request.map({ $0.httpVersion < HTTPVersion(1.0) }) ?? true {
>> 
>> but it’s uglier and harder to read.
> 
> _______________________________________________
> swift-evolution mailing list
> [email protected]
> https://lists.swift.org/mailman/listinfo/swift-evolution
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to