# How is mutating func in a protocol helpful?

**URL:** <https://forums.swift.org/t/how-is-mutating-func-in-a-protocol-helpful/79053>\
**Category:** Using Swift\
**Tags:** protocols\
**Created:** [April 3, 2025, 5:47am UTC](https://forums.swift.org/t/how-is-mutating-func-in-a-protocol-helpful/79053 "2025-04-03T05:47:00Z")\
**Posts on this page:** 1\
**Showing post:** 5

<div class="post-metadata">

**Author:** ![Diggory](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/diggory/32/4320_2.png) [@Diggory](https://forums.swift.org/u/Diggory)\
**Post date:** [April 3, 2025, 9:44am UTC](https://forums.swift.org/t/how-is-mutating-func-in-a-protocol-helpful/79053/5 "2025-04-03T09:44:18Z")

</div>

If you mutate a struct, you get a new copy of the struct, with the change - the original one goes away. [edit - that's not strictly true: [Why are structs in Swift said to be immutable?](https://forums.swift.org/t/why-are-structs-in-swift-said-to-be-immutable/55319/)]

---

_[View the full topic](https://forums.swift.org/t/how-is-mutating-func-in-a-protocol-helpful/79053)._
