> On Aug 15, 2016, at 3:08 PM, Xiaodi Wu <xiaodi...@gmail.com> wrote: > > On Mon, Aug 15, 2016 at 3:05 PM, Charles Srstka <cocoa...@charlessoft.com > <mailto:cocoa...@charlessoft.com>> wrote: >> On Aug 15, 2016, at 2:27 PM, Xiaodi Wu via swift-evolution >> <swift-evolution@swift.org <mailto:swift-evolution@swift.org>> wrote: >> >> `let value = (x == nil) ? nil : foo.bar(x: x)` isn't so bad, is it? You >> could even write a custom operator to sugar it. > > It’s distasteful, due to the need to use the force-unwrap operator. In cases > like this, I usually end up writing: > > let value: Foo? = nil > > if let x = x { > value = foo.bar(x: x) > } else { > value = nil > } > > or: > > let value: Foo? = { > if let x = x { > return foo.bar(x: x) > } else { > return nil > } > }() > > Both of which are unwieldy, but necessary to avoid the use of !. > > You are arguing that the force unwrap operator ! is, per se, distasteful?
If there are two ways to do something, and one uses the force-unwrap operator while the other does not, I’ll usually opt for the latter. Charles
_______________________________________________ swift-evolution mailing list swift-evolution@swift.org https://lists.swift.org/mailman/listinfo/swift-evolution