<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 Dec 5, 2015, at 4:00 PM, Nathan de Vries via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org" class="">swift-evolution@swift.org</a>&gt; wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="Content-Type" content="text/html charset=utf-8" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">It's currently possible to define either or both of the following observers on a property:<div class=""><ul class=""><li class=""><i class="">willSet</i>, called just before the value is stored</li><li class=""><i class="">didSet</i>, called immediately after the new value is stored</li></ul></div></div></div></blockquote><div>...</div><br class=""><blockquote type="cite" class=""><div class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div class="">This would mean the following observers could be defined on a property:</div><div class=""><div class=""><ul class=""><li class=""><i class="">willSet</i>, called just before the value is stored</li><li class=""><i class="">willChange</i>, called just before the value is stored if the value is different to the previous value</li><li class=""><i class="">didSet</i>, called immediately after the new value is stored</li><li class=""><i class="">didChange</i>,&nbsp;called immediately after the new value is stored&nbsp;if the new value is different to the previous value</li></ul></div></div></div></div></blockquote></div><div>I’m open to consider a change along these lines, but the proposal would have to be fleshed out more. &nbsp;Presumably it would only work for equatable types, right? &nbsp;Also, can a property have these observers as well as the existing ones? &nbsp;Would it be possible to add *one of* didChange or willChange - since less is better?</div><br class=""><div class="">-Chris</div></body></html>