boost::urls::params_encoded_ref::replace :: Boost Libraries Documentation

# boost::urls::params_encoded_ref::replace

Replace params

## Synopsis

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

    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.

| 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

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

Created with MrDocs