cpp/utility/basic stacktrace/operator=

Replaces the contents of the.

@1@ Copy assignment operator. Replaces the contents with a copy of the contents of. @@ If is, the allocator of  is replaced by a copy of that of. If the allocator of after assignment would compare unequal to its old value, the old allocator is used to deallocate the memory, then the new allocator is used to allocate it before copying the entries. Otherwise, the memory owned by may be reused when possible.

@2@ Move assignment operator. Replaces the contents with those of using move semantics (i.e. the data in  is moved from  into ). is in a valid but unspecified state afterwards. @@ If is, the allocator of  is replaced by a copy of that of. If it is and the allocators of  and  do not compare equal,  cannot take ownership of the memory owned by  and must assign each entries individually, allocating additional memory using its own allocator as needed.

In any case, the stacktrace entries originally belong to may be either destroyed or replaced by element-wise assignment.

may be set to empty on allocation failure if the implementation strengthens the exception specification.

Complexity
@1@ Linear in the size of and. @2@ Linear in the size of unless the allocators do not compare equal and do not propagate, in which case linear in the size of  and.

Exceptions
@1@ @2@