boost::urls::segments_encoded_ref::replace

Replace segments

Synopsis

Declared in header <boost/url/segments_encoded_ref.hpp>

iterator
replace(
    iterator from,
    iterator to,
    std::initializer_list<pct_string_view> 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.

None of the character buffers referenced

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

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

Strong guarantee.

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

Exceptions

Name Thrown on

The

list contains an invalid percent-encoding.

Return Value

An iterator to the first segment inserted, or one past to if init.size() == 0.

Parameters

Name Description

from,

to The range of segments to replace.

init

The list of segments to assign.