Right. The question is whether we *need* to add stored properties 
out-of-module, and what the use case for that is. To me it seems that adding 
them in-module is by far the more common use case, for the purposes of 
implementing protocols.

At any rate, the rewrite option would be a great addition to Swift regardless 
of what our answer to the first question is.

Charles

> On Oct 9, 2016, at 4:32 PM, Jay Abbott <[email protected]> wrote:
> 
> Charles,
> 
> That would be good. It is a nicer way to write what is already possible to 
> achieve, but it's not a way to 'implement' stored properties in extensions.
> 
> On Sun, 9 Oct 2016 at 21:45 Charles Srstka <[email protected] 
> <mailto:[email protected]>> wrote:
> *Replace both instances of “class C: P” with just “class C” since the 
> conformance comes in the extension. That’s what I get for writing this 
> quickly.
> 
> Charles
> 
>> On Oct 9, 2016, at 3:43 PM, Charles Srstka <[email protected] 
>> <mailto:[email protected]>> wrote:
>> 
>> protocol P {
>>      var foo: String { get }
>>      func bar()
>> }
>> 
>> protocol Q {
>>      var baz: Int { get }
>>      func qux()
>> }
>> 
>> class C: P {
>>      var foo: String // <- what is this doing here?
>>      var baz: Int // <- ditto
>> }
>> 
>> extension C: P {
>>      func bar() {}
>> }
>> 
>> extension C: Q {
>>      func qux() {}
>> }
>> 
>> we could simply:
>> 
>> protocol P {
>>      var foo: String { get }
>>      func bar()
>> }
>> 
>> class C: P {}
>> 
>> extension C: P {
>>      var foo: String
>>      func bar() {}
>> }
>> 
>> extension C: Q {
>>      var baz: Int
>>      func qux() {}
>> }
> 

_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to