# Extending a class-bound type to conform to a protocol extended with \`mutating\` functions

**URL:** <https://forums.swift.org/t/extending-a-class-bound-type-to-conform-to-a-protocol-extended-with-mutating-functions/33762>\
**Category:** Using Swift\
**Tags:** extensions, protocols, class\
**Created:** [February 13, 2020, 1:59am UTC](https://forums.swift.org/t/extending-a-class-bound-type-to-conform-to-a-protocol-extended-with-mutating-functions/33762 "2020-02-13T01:59:21Z")\
**Posts on this page:** 1\
**Showing post:** 12

<div class="post-metadata">

**Author:** ![Jens](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/jens/32/12903_2.png) [@Jens](https://forums.swift.org/u/Jens)\
**Post date:** [February 14, 2020, 7:21am UTC](https://forums.swift.org/t/extending-a-class-bound-type-to-conform-to-a-protocol-extended-with-mutating-functions/33762/12 "2020-02-14T07:21:13Z")

</div>

> [@AnotherUser](#):
>
> I think it's a little odd that such an assumption would be permitted in Swift, seeing as nowhere anywhere does a `class` -bound type reassign itself... does it? (What would that even mean? Every pointer to it now points somewhere else? How does that work?)

I can kind of agree. I wrote a [separate post](https://forums.swift.org/t/about-reassigning-self-in-classes/33813) asking about this. (It is possible to reassign self in a class, but not straight forwardly.)

---

_[View the full topic](https://forums.swift.org/t/extending-a-class-bound-type-to-conform-to-a-protocol-extended-with-mutating-functions/33762)._
