var foo = ImmutableFoo() foo = foo.update(...)
var foo = ImmutableFoo() foo.update(...)
でできて代入が不要になります。 immutable なのに mutating なのは名前がややこしいですが、 immutability は失われてないです。mutating func
を使えても、 self
自体の置き換えはできてもインスタンスの状態は変更できないのでインスタンスの immutability は保たれます。 (edited)