There have been a number of discussions on the list in this—Google finds a number of these with a search “swift throwing properties site:<a href="http://lists.swift.org">lists.swift.org</a>”.<br><br>The “tldr” seems to be that it’s not supported because no one has written code to support it yet.<br><div class="gmail_quote"><div dir="ltr">On Tue, Jul 25, 2017 at 15:29 Gor Gyolchanyan via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org">swift-evolution@swift.org</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>I’ll just cut to the chase:</div><div>Why is throwing from <font color="#941751" face="PT Mono">get</font>, <font color="#941751" face="PT Mono">set</font>, <font color="#941751" face="PT Mono">willSet</font> and <font color="#941751" face="PT Mono">didSet</font> disallowed?</div><div><br></div><div><font face="PT Mono"><font color="#941751">var</font> login: <font color="#008f00">String</font> {</font></div><div><font face="PT Mono"><span class="m_3189677645169474559Apple-tab-span" style="white-space:pre-wrap">        </span><font color="#941751">willSet</font> <font color="#941751">throws</font> {</font></div><div><font face="PT Mono"><span class="m_3189677645169474559Apple-tab-span" style="white-space:pre-wrap">                </span><font color="#941751">guard</font> newValue.count &gt; 5 <font color="#941751">else</font> {</font></div><div><font face="PT Mono"><span class="m_3189677645169474559Apple-tab-span" style="white-space:pre-wrap">                        </span><font color="#941751">throw</font> <font color="#008f00">LoginError</font>.loginTooSmall</font></div><div><font face="PT Mono"><span class="m_3189677645169474559Apple-tab-span" style="white-space:pre-wrap">                </span>}</font></div><div><font face="PT Mono"><span class="m_3189677645169474559Apple-tab-span" style="white-space:pre-wrap">        </span>}</font></div><div><font face="PT Mono">}</font></div><div><font face="PT Mono"><br></font></div><div><font face="PT Mono"><font color="#941751">try</font> login = <font color="#0433ff">“JebediahKerman”</font> <font color="#797979">// totally fine</font></font></div><div><font face="PT Mono"><font color="#941751">try</font> login = <font color="#0433ff">“Bob”</font> <font color="#797979">// throws `LoginError.loginTooSmall`</font></font></div><div><br></div></div>_______________________________________________<br>
swift-evolution mailing list<br>
<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a><br>
<a href="https://lists.swift.org/mailman/listinfo/swift-evolution" rel="noreferrer" target="_blank">https://lists.swift.org/mailman/listinfo/swift-evolution</a><br>
</blockquote></div>