In the example above, the memory owned by str can be reused to store other results. This is also useful when manipulating URLs:
u1.set_host(u2.host());
u1 is declared as a url_view and is therefore immutable, so you can't call set_host on it.
url_view u1 = parse_uri( "http://www.example.com" ).value();
u1 is declared as a
url_viewand is therefore immutable, so you can't callset_hoston it.