boost::urls::segments_encoded_ref::replace
Replace segments
Synopsis
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.
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.
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 |
The first element in the range of segments to replace. |
to |
One past the last element in the range of segments to replace. |
init |
The list of segments to assign. |
Created with MrDocs