boost::urls::params_encoded_ref::replace

Replace params

Synopsis

Declared in <boost/url/params_encoded_ref.hpp>

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

Description

This function replaces a range of params with a range of params.

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

NOTE

The strings referenced by the inputs must not come from the underlying url, or else the behavior is undefined.

Mandates


std::is_convertible< std::iterator_traits< FwdIt >::reference_type, param_pct_view >::value == true

Complexity

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

Exception Safety

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

Exceptions

NameThrown on
system_errorThe range contains an invalid percent-encoding.

Return Value

  • An iterator to the first element inserted, or one past to if first == last.
  • An iterator to the first element inserted, or one past to if first == last.

Parameters

NameDescription
fromThe first element to replace.
toOne past the last element to replace.
firstThe first element to insert.
lastOne past the last element to insert.