Come faccio a sovrascrivere il setter della proprietà memorizzata in Swift?
In Obj-C, posso sovrascrivere il suo setter, ma Swift non sembra essere contento che getter / setter vengano usati per la proprietà memorizzata.
Supponiamo che io abbia una Card
classe con una proprietà chiamata rank
. Non voglio che il client gli dia alcun valore non valido, quindi, in Object-C, posso sovrascriverlo in setRank
modo che esegua un controllo aggiuntivo. Ma willSet
in Swift non sembra aiutare perché newValue
è costante e non ha senso assegnare rank
perché il setter verrà chiamato in un ciclo.