Hi Jay, I'm wrong and please ignore the "Input parameter" because I can already get them within the defer statement body. Since we have a `newValue` keyword in `didSet` statement, I think a `returnValue` keyword will be fine.
On Mon, Oct 9, 2017 at 4:49 PM, Geordie Jay <geo...@gmail.com> wrote: > This feature request is probably one for swift evolution. > > I like the idea in theory, but I’d prefer to see the return value > identifier being spelled out, i.e. “returnValue” instead of the symbols. > > Jun Zhang via swift-users <swift-users@swift.org> schrieb am Mo. 9. Okt. > 2017 um 05:37: > >> Yes that's true, but this requires me to set a return value in every >> `early return` statement. I think this should be done by the compiler >> instead of me, to make code cleaner and also less error-prone. >> >> On Mon, Oct 9, 2017 at 11:24 AM, Slava Pestov <spes...@apple.com> wrote: >> >>> I think you can achieve what you want by having the ‘defer’ block >>> capture a mutable local variable. Eg, >>> >>> func doStuff() { >>> var success = false >>> >>> defer { >>> if !success { >>> // do some additional cleanup >>> } >>> } >>> >>> … >>> success = true >>> … >>> >>> return result >>> } >>> >>> On Oct 8, 2017, at 7:34 PM, Jun Zhang via swift-users < >>> swift-users@swift.org> wrote: >>> >>> Hi dear swift developers, >>> I am kind of new to swift and I don't know if this feature already >>> exists. And if it exists already please tell me how. Thank you very much! >>> The feature is to capturing the return value (maybe input value also) >>> of the function. Here is the demo code: >>> >>> func tableView(_ tableView: UITableView, numberOfRowsInSection >>> section: Int) -> Int { >>> defer { >>> if $> >= 0 { >>> // table is not empty >>> } >>> else { >>> // table is empty >>> } >>> } >>> return dataSource.cout >>> } >>> >>> I suggest using `$>` as the return value symbol and `$<` as the input >>> parameter symbol. >>> >>> > Also, I’m not sure what “input parameter” means here. > > Geordie > > > Thank you all and best regards to you! >>> _______________________________________________ >>> swift-users mailing list >>> swift-users@swift.org >>> https://lists.swift.org/mailman/listinfo/swift-users >>> >>> >>> >> _______________________________________________ >> swift-users mailing list >> swift-users@swift.org >> https://lists.swift.org/mailman/listinfo/swift-users >> >
_______________________________________________ swift-users mailing list swift-users@swift.org https://lists.swift.org/mailman/listinfo/swift-users