[swift-evolution] [Pitch] Make `return` optional in computed properties for a single case

Rod Brown rodney.brown6 at icloud.com
Fri May 27 18:55:54 CDT 2016


+1. Completely agree with Brent's views here.

On 28 May 2016, at 9:15 AM, Brent Royal-Gordon via swift-evolution <swift-evolution at swift.org> wrote:

>> The idea is simple:
>> 
>>    • Can we make return keyword optional in cases like this?
>>    • Shouldn’t this behave like @autoclosure or @noescape?
> 
> This actually doesn't have anything to do with @autoclosure or @noescape. Any one-expression closure can omit the `return` statement and have an inferred return type.
> 
>> type A {
>>    var characters: [Character] = …
>>    var string: String { String(self.characters) }
>>    var count: Int { 42 }
>> }
> 
> Despite those inaccuracies, I do think that it's a good idea to permit single-expression accessors to omit the `return` statement; it will make them much less clunky. I would even extend this to cases where you use the `get` keyword:
> 
>    var string: String {
>        get { String(self.characters) }
>        set { characters = Array(newValue.characters) }
>    }
> 
> -- 
> Brent Royal-Gordon
> Architechies
> 
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution


More information about the swift-evolution mailing list