insert

Insert segments

Synopsis

template<class FwdIt>
segments_encoded_base::iterator
insert(
    segments_encoded_base::iterator before,
    FwdIt first,
    FwdIt last);

Declared in file <include/boost/url/segments_encoded_ref.hpp> on line 505

Defined in file <include/boost/url/impl/segments_encoded_ref.hpp> on line 62

Description

This function inserts the segments in a range before the specified position. Reserved characters in the range are automatically escaped. Escapes in the range are preserved. All iterators that are equal to before or come after are invalidated.

None of the character buffers referenced by the range may overlap the character buffer of the underlying url, or else the behavior is undefined.

Mandates

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

Complexity

Linear in std::distance( first, last ) + this->url().encoded_resource().size().

Exception Safety

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