<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Mar 18, 2016, at 1:18 PM, Pushkar N Kulkarni via swift-corelibs-dev &lt;<a href="mailto:swift-corelibs-dev@swift.org" class="">swift-corelibs-dev@swift.org</a>&gt; wrote:</div><br class="Apple-interchange-newline"><div class=""><font face="Verdana,Arial,Helvetica,sans-serif" size="2" class=""><div style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: small;" class="">I am trying to implement some of the methods and properties in NSOrderedSet.&nbsp;</div><div style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: small;" class=""><br class=""></div><div style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: small;" class="">The read-only property "reversedOrderedSet" has the @NSCopying attribute according to the NSOrderedSet class reference.&nbsp;</div><div style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: small;" class=""><br class=""></div><div style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: small;" class="">So, I tried to do this:&nbsp;</div><div class=""><p style="font-family: Menlo; font-size: 14px; line-height: normal;" class=""><font color="#bb2ca2" class="">@NSCopying</font> <font color="#bb2ca2" class="">public</font> <font color="#bb2ca2" class="">var</font> reversedOrderedSet: <font color="#4f8187" class="">NSOrderedSet</font> {</p><p style="font-family: Menlo; font-size: 14px; line-height: normal;" class="">&nbsp; &nbsp;&nbsp;<font color="#bb2ca2" class="">return</font><font class=""> </font><font color="#4f8187" class="">NSOrderedSet</font><font class="">.</font><font color="#bb2ca2" class="">init</font><font class="">(array: </font><font color="#4f8187" class="">_orderedStorage</font><font class="">.</font><font color="#3d1d81" class="">reverse</font><font class="">())</font></p><p style="font-family: Menlo; font-size: 14px; line-height: normal;" class="">}</p><p style="font-family: Menlo; font-size: 14px; line-height: normal;" class=""><br class=""></p></div></font></div></blockquote><div><br class=""></div><div>swift-corelibs-foundation can’t really implement that in terms of adopting the decorator of @NSCopying because it does not have objc backing.</div><br class=""><blockquote type="cite" class=""><div class=""><font face="Verdana,Arial,Helvetica,sans-serif" size="2" class=""><div class=""><p style="line-height: normal;" class=""><span style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: small;" class="">The compiler says "@NSCopying requires the property to be mutable"</span><font face="Verdana, Arial, Helvetica, sans-serif" size="2" class="">. When&nbsp;inherited by NSMutableOrderedSet, doesn't this property qualify to be mutable?&nbsp;</font></p><p style="line-height: normal;" class=""><font face="Verdana, Arial, Helvetica, sans-serif" size="2" class=""><br class=""></font></p></div></font></div></blockquote><div>The mutable state here is a setter not a NSMutableOrderedSet</div><div><br class=""></div><br class=""><blockquote type="cite" class=""><div class=""><font face="Verdana,Arial,Helvetica,sans-serif" size="2" class=""><div class=""><p style="line-height: normal;" class=""><font face="Verdana, Arial, Helvetica, sans-serif" size="2" class="">Does @NSCopying not apply here? Is my understanding of "mutable (stored) property" flawed?&nbsp;</font><span style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: small;" class="">Or is there a problem with the implementation?</span></p><p style="line-height: normal;" class=""><font face="Verdana, Arial, Helvetica, sans-serif" size="2" class=""><br class=""></font></p></div></font></div></blockquote><div>just comment it out and you will be good to go likely.</div><br class=""><blockquote type="cite" class=""><div class=""><font face="Verdana,Arial,Helvetica,sans-serif" size="2" class=""><div class=""><p style="line-height: normal;" class=""><font face="Verdana, Arial, Helvetica, sans-serif" size="2" class="">Nowhere in Foundation is @NSCopying being used currently. So don't have a "reference implementation" :)</font></p><p style="line-height: normal;" class=""><font face="Verdana, Arial, Helvetica, sans-serif" size="2" class=""><br class=""></font></p><p style="font-family: Menlo; font-size: 14px; line-height: normal;" class=""><span style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: small;" class=""><br class=""></span></p></div><div style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: small;" class=""><font face="Verdana,Arial,Helvetica,sans-serif" size="2" class=""><font class=""><font class=""><div class="socmaildefaultfont" dir="ltr"><div class="socmaildefaultfont" dir="ltr"><div class="socmaildefaultfont" dir="ltr"><div dir="ltr" style="font-style: normal;" class=""><font face="Sans Serif, Verdana, Arial, Helvetica, sans-serif" class="">Pushkar N Kulkarni,</font></div>
<div dir="ltr" style="font-style: normal;" class=""><font face="Sans Serif, Verdana, Arial, Helvetica, sans-serif" class="">IBM Runtimes</font></div><div dir="ltr" style="font-style: normal;" class=""><font face="Sans Serif, Verdana, Arial, Helvetica, sans-serif" class=""><br class=""></font></div><div dir="ltr" class=""><font face="serif, Times New Roman, Times, serif" class=""><i class="">Simplicity is prerequisite for reliability - Edsger W. Dijkstra</i></font></div>
<div dir="ltr" style="font-style: normal; font-size: 10.5pt; font-family: Arial;" class=""><br class=""></div></div></div></div></font></font></font></div></font><br class="">

_______________________________________________<br class="">swift-corelibs-dev mailing list<br class=""><a href="mailto:swift-corelibs-dev@swift.org" class="">swift-corelibs-dev@swift.org</a><br class="">https://lists.swift.org/mailman/listinfo/swift-corelibs-dev<br class=""></div></blockquote></div><br class=""></body></html>