> These are potentially destructive operations in that case

What do you mean by this?  I think this implementation is transparent to the user as far as functionality goes.  It's just an efficiency question.  But it's basically the same way we do all the other "set"-like methods for GSObject, like `setFlux`, `applyShear`, etc.  And we haven't felt the need to add some special caveat for those.