boost::urls::params_encoded_ref::replace

Replace params

Synopsis

Declared in <include/boost/url/params_encoded_ref.hpp>

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

» more...

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

» more...

template<class FwdIt>
iterator
replace(
    iterator from,
    iterator to,
    FwdIt first,
    FwdIt last);

» more...

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.

NOTE

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

url u( "?first=John&last=Doe" ); u.encoded_params().replace( u.encoded_params().begin(), { "title", "Mr" }); assert( u.encoded_query() == "title=Mr&last=Doe" );

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

Strong guarantee.

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

Exceptions

Name Thrown on
[object Object]

contains an invalid percent-encoding.

[object Object]

contains an invalid percent-encoding.

[object Object]

range 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.

from,to

The range of params to replace.

init

The list of params to assign.

first,

last The range of params to assign.

Created with MrDocs