boost::urls::params_ref::set

Set a value

Synopsis

iterator
set(
    iterator pos,
    core::string_view value);
iterator
set(
    core::string_view key,
    core::string_view value,
    ignore_case_param ic = = {});

Description

This function replaces the value of an element at the specified position.

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

url u( "?id=42&id=69" );

u.params().set( u.params().begin(), "none" );

assert( u.encoded_query() == "id=none&id=69" );

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

Strong guarantee.

Calls to allocate may throw.

Return Value

An iterator to the element.

Parameters

Name Description

pos

An iterator to the element.

value

The value to assign. The empty string still counts as a value. That is, has_value for the element is true.

key

The key to match. By default, a case-sensitive comparison is used.

ic

An optional parameter. If the value ignore_case is passed here, the comparison is case-insensitive.