This used to work in a previous beta of Xcode  8 (beta 4, I think…I haven&#39;t checked in the meantime due to issues with Swift 3 migration). I&#39;m guessing it got changed with the Any/AnyObject work going on in between. I&#39;ll go with using a 2-element array in the meantime. <br><div class="gmail_quote"><div dir="ltr">On Thu, Sep 22, 2016 at 14:27 Philippe Hausler &lt;<a href="mailto:phausler@apple.com">phausler@apple.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div>err sorry mistype it should have read tuples or structs</div></div><div style="word-wrap:break-word"><br><div><blockquote type="cite"><div>On Sep 22, 2016, at 2:27 PM, Philippe Hausler via swift-users &lt;<a href="mailto:swift-users@swift.org" target="_blank">swift-users@swift.org</a>&gt; wrote:</div><br><div><div style="word-wrap:break-word"><div>NSCoding has never worked with either tuples or classes correctly (primarily because it is not really designed to do so). I would suggest to encode and decode either as an array of array of strings and convert or perhaps encode/decode as an array of classes representing the meaning of the tuple.</div><br><div><blockquote type="cite"><div>On Sep 22, 2016, at 2:07 PM, Saagar Jha via swift-users &lt;<a href="mailto:swift-users@swift.org" target="_blank">swift-users@swift.org</a>&gt; wrote:</div><br><div><div style="word-wrap:break-word">Hello,<div><br></div><div>I’ve been working on migrating some old code over to Swift 3, and I’m having some trouble archiving an array of tuples:</div><div><br></div><div>class Foo: NSObject, NSCoding {</div><div><span style="white-space:pre-wrap">        </span>var bar: [(string1: String, string2: String)]</div><div><br></div><div><span style="white-space:pre-wrap">        </span>required init?(coder aDecoder: NSCoder) {</div><div><span style="white-space:pre-wrap">                </span>bar = aDecoder.decodeObject(forKey: “bar”) as? [(string1: String, string2: String)] ?? []</div><div><span style="white-space:pre-wrap">        </span>}</div><div><br></div><div><span style="white-space:pre-wrap">        </span>func encode(with aCoder: NSCoder) {</div><div><span style="white-space:pre-wrap">                </span>aCoder.encode(bar, forKey: “bar”) // crash</div><div><span style="white-space:pre-wrap">        </span>}</div><div>}</div><div><br></div><div>Unfortunately, this code doesn’t seem to work anymore. Is there any way to get a array of tuple encoded without resorting to creating a struct or class in its place?<br><div><br></div><div>
Thanks,<br><span style="font-family:&#39;SF UI Text&#39;;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">Saagar Jha</span><br style="font-family:&#39;SF UI Text&#39;;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><br style="font-family:&#39;SF UI Text&#39;;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><br style="font-family:&#39;SF UI Text&#39;;font-size:12px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">
</div>
<br></div></div>_______________________________________________<br>swift-users mailing list<br><a href="mailto:swift-users@swift.org" target="_blank">swift-users@swift.org</a><br><a href="https://lists.swift.org/mailman/listinfo/swift-users" target="_blank">https://lists.swift.org/mailman/listinfo/swift-users</a><br></div></blockquote></div><br></div>_______________________________________________<br>swift-users mailing list<br><a href="mailto:swift-users@swift.org" target="_blank">swift-users@swift.org</a><br><a href="https://lists.swift.org/mailman/listinfo/swift-users" target="_blank">https://lists.swift.org/mailman/listinfo/swift-users</a><br></div></blockquote></div><br></div></blockquote></div>