I feel exactly like Brent. Félix
> Le 23 déc. 2015 à 04:15:24, Brent Royal-Gordon via swift-evolution > <swift-evolution@swift.org> a écrit : > >> guard case let .Succeed(m) = returnsResult() else { >> return it >> } >> // Can safely use m, otherwise Result is passed back the call stack. > > I didn't understand what you wanted to begin with, so to summarize: you want > to be able to bind the return value of `returnsResult()` to a constant on the > `else` branch if the pattern doesn't match. > > I definitely see the use case here, but I can't say I like the implicit use > of `it`. If we did something like this, I would prefer it be done by > decorating the `else`: > > guard case let .Succeed(m) = returnsResult() else let r { > return r > } > > However, I'm honestly not sure that's much less burdensome than this: > > let r = returnsResult() > guard case let .Succeed(m) = r else { > return r > } > > It *is* a line less, and a constant less, but it also means adding a new and > slightly funky syntax to the language. I'm just not sure it's worth it. > > -- > Brent Royal-Gordon > Architechies > > _______________________________________________ > swift-evolution mailing list > swift-evolution@swift.org > https://lists.swift.org/mailman/listinfo/swift-evolution _______________________________________________ swift-evolution mailing list swift-evolution@swift.org https://lists.swift.org/mailman/listinfo/swift-evolution