```
basic_stringbuf& operator=(basic_stringbuf&& rhs);
```

*Effects:* After the move assignment *this has the observable state it would
have had if it had been move constructed from rhs (see [stringbuf.cons]).

*Returns:* *this.

```
void swap(basic_stringbuf& rhs);
```

*Effects:* Exchanges the state of *this
and rhs.

```
template <class charT, class traits, class Allocator>
void swap(basic_stringbuf<charT, traits, Allocator>& x,
basic_stringbuf<charT, traits, Allocator>& y);
```

*Effects:* x.swap(y).