On board, however personally I'll be avoiding the syntax:
let x = y ?? fatalError("y shouldn't be nil because ...")
or, if its also allowed:
let x = y ?? throw SomeError()
It makes sense to me that this operator is always value ?? value
. By permitting these Never
expressions – statements really – with semantics that more aligns with a force unwrap, I think it would chip away at my mental models.
So I for one will be defining my own !!
operator as in SE-0217 so that I can use it in place of ??
in those instances:
let x = y !! fatalError("y shouldn't be nil because ...")
Or when I'm feeling cheeky:
let x = y !! "y shouldn't be nil because ..."