:relfileprefix: ../../../
[#boost-urls-segments_ref-operator_assign-0d]

= xref:boost.adoc[pass:[boost]]::xref:boost/urls.adoc[pass:[urls]]::xref:boost/urls/segments_ref.adoc[pass:[segments_ref]]::operator=


Assignment


== Synopsis

Declared in header `<https://www.github.com/boostorg/url/blob/develop/include/boost/url/segments_ref.hpp#L157[boost/url/segments_ref.hpp,window=blank_]>`

[source,cpp,subs="verbatim,macros,-callouts"]
----
xref:boost/urls/segments_ref.adoc[segments_ref]&
operator=(xref:boost/urls/segments_ref.adoc[segments_ref] const& other);
----

== Description


The existing contents are replaced
by a copy of the other segments.



All iterators are invalidated.
[NOTE]

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

=== Effects
[,cpp]
----
this->assign( other.begin(), other.end() );
----

=== Complexity

Linear in `other.buffer().size()`.

=== Exception Safety

Strong guarantee.
Calls to allocate may throw.

@{





== Parameters

|===
| Name | Description 

| *other*
| 
The segments to assign.

|===




