<div dir="ltr">On 25 November 2017 at 16:04, Xiaodi Wu <span dir="ltr">&lt;<a href="mailto:xiaodi.wu@gmail.com" target="_blank">xiaodi.wu@gmail.com</a>&gt;</span> wrote:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div><div class="gmail_quote"><span class="gmail-"><div dir="auto"><br></div></span><div dir="auto">The workaround substantially bloats the standard library, and the result is nothing close to the same because your type is still not Equatable. This means that it cannot benefit from any generic algorithms. For example, an array of such tuples cannot be Equatable in turn.</div><span class="gmail-"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div><div class="gmail_extra"><div class="gmail_quote"><div></div><div></div></div></div></div></blockquote><div dir="auto"><br></div></span></div></div></blockquote><div><br></div><div>i see. then the current workaround is not deep enough.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div><div class="gmail_quote"><span class="gmail-"><div dir="auto"></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div><div class="gmail_extra"><div class="gmail_quote"><div>speaking of ugliness, the ellipsis on the left of names is quite ugly:<br></div></div></div></div><div><div class="gmail_extra"><div class="gmail_quote"><div><br></div><div>     extension&lt;...Elements : Equatable&gt; (Elements...) : Equatable</div></div></div></div></blockquote><div dir="auto"><br></div></span><div dir="auto">Seems perfectly fine to me.</div></div></div></blockquote><div><br></div><div>i haven&#39;t encounter this notation before so it looks strange and requires some effort to decipher. if it was e.g. in this form:</div><div><br></div><div>extension (Equatable...) : Equatable</div><div><br></div><div>then it would be immediately obvious what it means, IMHO</div><div><br></div><div>Mike</div><div><br></div></div></div></div>