My only use of Sourcery is to auto-generate a subtype on my associated value enums so I can do simple ==
and !=
checks for their case names. I would love to see this feature exist in Swift.
It should be easy to do things like the following without resorting to weird quirks or a bunch of extra code
enum State {
case ready
case loading(reasons: [String])
}
let stateA = State.ready
let stateB = State.loading(reasons: ["ReasonA", "ReasonB"])
print(stateA.case == stateB.case) //false
if stateA.case != .loading {
// do something
}
There are a bunch of hiccups when writing if case let something = .enumCase
(including the inability to use !=
with case let
).
I too would love to see it simplified!