How to define an operator that consumes the LHS?

i thought the new lifetime rules mean that x would live for the entire duration of the /(_:_:) call, regardless of whether it’s passed +1 or +0. doesn’t that mean that if i do something like:

        var path:Self = self
        path.suffix.append(component)

in the operator implementation, this will always suffer from copy-on-write, since the original instance of self is still alive?