Perhaps something along the lines of:

> This is primarily used for transferring and swapping ownership of a value in a mutable slot. For example, this function allows consumption of one field of a struct by replacing it with another value. The normal approach doesn't always work:

I wouldn't always classify these as a borrow checker limitation (although some definitely may be). Your example below is not sound if you can consume ownership of one field and then call a method on the structure in general (which may attempt to read the field).