Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for a snapshot of the master branch, built from commit 68cc668162.
PrevUpHomeNext
params_encoded_ref::replace (1 of 3 overloads)

Replace params.

Synopsis
iterator
replace(
    iterator pos,
    param_pct_view const& p);
Description

This function replaces the contents of the element at pos with the specified param.

All iterators that are equal to pos or come after are invalidated.

Remarks

The strings passed in must not come from the element being replaced, or else the behavior is undefined.

Example
url u( "?first=John&last=Doe" );

u.encoded_params().replace( u.encoded_params().begin(), { "title" , "Mr" });

assert( u.encoded_query() == "title=Mr&last=Doe" );
Complexity

Linear in this->url().encoded_query().size().

Exception Safety

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

Exceptions

Type

Thrown On

system_error

p contains an invalid percent-encoding.

Return Value

An iterator to the element.

Parameters

Name

Description

pos

An iterator to the element.

p

The param to assign.


PrevUpHomeNext