<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div>What if...&nbsp;</div><div id="AppleMailSignature"><br></div><div id="AppleMailSignature"><b>FooBar.framework defines :</b></div><div id="AppleMailSignature"><div class=""><span style="background-color: rgba(255, 255, 255, 0);">public protocol A {</span></div><div class=""><span style="background-color: rgba(255, 255, 255, 0);">&nbsp; &nbsp; func foo()</span></div><div class=""><span style="background-color: rgba(255, 255, 255, 0);">}</span></div><div class=""><span style="background-color: rgba(255, 255, 255, 0);">public type B: A {</span></div><div class=""><span style="background-color: rgba(255, 255, 255, 0);">&nbsp; &nbsp; public func foo () {&nbsp;</span></div><div class=""><span style="background-color: rgba(255, 255, 255, 0);">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; … implementation …&nbsp;</span></div><div class=""><span style="background-color: rgba(255, 255, 255, 0);">&nbsp; &nbsp; }</span></div><div class=""><span style="background-color: rgba(255, 255, 255, 0);">}</span></div><div><br></div><div><b>Other module defines :</b></div><div>import FooBar</div><div><div class=""><span style="background-color: rgba(255, 255, 255, 0);">extension A {</span></div><div class=""><span style="background-color: rgba(255, 255, 255, 0);">&nbsp; &nbsp; func foo() { .. default implementation … }</span></div><div class=""><span style="background-color: rgba(255, 255, 255, 0);">}</span></div></div><div><span style="background-color: rgba(255, 255, 255, 0);"><br></span></div><br>Jérôme&nbsp;</div><div><br>Le 27 avr. 2016 à 19:10, Erica Sadun via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org">swift-evolution@swift.org</a>&gt; a écrit&nbsp;:<br><br></div><blockquote type="cite"><div class="">protocol A {</div><div class="">&nbsp; &nbsp; func foo()</div><div class="">}</div><div class=""><br class=""></div><div class="">extension A {</div><div class="">&nbsp; &nbsp; func foo() { .. default implementation … }</div><div class="">}</div><div class=""><br class=""></div><div class="">type B: A {</div><div class=""><br class=""></div><div class="">&nbsp; &nbsp; override required func foo () { … overrides implementation … }</div><div class="">}</div><div class=""></div></blockquote></body></html>