[swift-users] Defer Question

Slava Pestov spestov at apple.com
Mon Dec 7 13:48:02 CST 2015


> On Dec 7, 2015, at 10:38 AM, Joe Groff via swift-users <swift-users at swift.org> wrote:
> 
> 
>> On Dec 7, 2015, at 10:29 AM, Ezekiel Elin via swift-users <swift-users at swift.org <mailto:swift-users at swift.org>> wrote:
>> 
>> Is there any way for me to identify what value is/will be returned by the function in a defer block
>> 
>> here’s some example code
>> 
>> func someFunction() -> Int {
>>     defer {
>>         //Can I get the "5" that I'm returning here?
>>     }
>>     return 5
>> }
> 
> Not implicitly. You could do something like this:
> 
> var returnValue: Int?
> defer { use(returnValue!) }
> 
> ...
> returnValue = 5
> return returnValue!
> 
> though that's obviously not ideal.
> 

And of course if you entered the defer because you're throwing an error, 'returnValue' might not be set.

Slava

> -Joe
> 
> 
> _______________________________________________
> swift-users mailing list
> swift-users at swift.org
> https://lists.swift.org/mailman/listinfo/swift-users

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-users/attachments/20151207/7edc2a6b/attachment.html>


More information about the swift-users mailing list