[#8BCB285F470D8A32F52715F0E4F2DE0C4630F59E]

Function segments_encoded_ref:: replace

Replace segments

Synopsis

            iterator
replace(
    iterator from,
    iterator to,
    std::initializer_list init);
        

Description

This function replaces a range of segments with a list of segments in an initializer list. Reserved characters in the list are automatically escaped. Escapes in the list are preserved.

All iterators that are equal to `from` or come after are invalidated.

Preconditions

None of the character buffers referenced by the list may overlap the character buffer of the underlying url, or else the behavior is undefined.

Complexity

Linear in `init.size() + this->url().encoded_resouce().size()`.

Exception Safety

Strong guarantee. Calls to allocate may throw. Exceptions thrown on invalid input.