added explicit initialization in the copy constructor due to occurring warning. reversed autoformatting

This commit is contained in:
s.kolesnik
2021-03-29 15:51:01 +05:00
parent 1ea3ee1bfb
commit b71e8fd5cd

View File

@ -448,30 +448,22 @@ struct optional_copy_base : optional_operations_base<T> {
// This specialization is for when T is not trivially copy constructible // This specialization is for when T is not trivially copy constructible
template <class T> template <class T>
struct optional_copy_base<T, false> : optional_operations_base<T> struct optional_copy_base<T, false> : optional_operations_base<T> {
{ using optional_operations_base<T>::optional_operations_base;
using optional_operations_base<T>::optional_operations_base;
optional_copy_base() = default; optional_copy_base() = default;
optional_copy_base(const optional_copy_base &rhs)
optional_copy_base(const optional_copy_base &rhs) : optional_copy_base() {
: optional_copy_base() if (rhs.has_value()) {
{ this->construct(rhs.get());
if (rhs.has_value()) } else {
{ this->m_has_value = false;
this->construct(rhs.get());
}
else
{
this->m_has_value = false;
}
} }
}
optional_copy_base(optional_copy_base &&rhs) = default; optional_copy_base(optional_copy_base &&rhs) = default;
optional_copy_base &operator=(const optional_copy_base &rhs) = default;
optional_copy_base &operator=(const optional_copy_base &rhs) = default; optional_copy_base &operator=(optional_copy_base &&rhs) = default;
optional_copy_base &operator=(optional_copy_base &&rhs) = default;
}; };
// This class manages conditionally having a trivial move constructor // This class manages conditionally having a trivial move constructor