Assign segments

Synopsis

Declared in header </boost/url/segments_encoded_ref.hpp#L362[boost/url/segments_encoded_ref.hpp,window=blank_]>

template<class FwdIt>
void
assign(
    FwdIt first,
    FwdIt last);

Description

The existing contents are replaced by a copy of the contents of the range. Reserved characters in the range are automatically escaped. Escapes in the range are preserved. All iterators are invalidated.

Note
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_query().size() + this->url().encoded_fragment().size().

Exception Safety

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

Return Value

  • void

Parameters

Name Type

first

FwdIt

last

FwdIt