зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1781222 - Allow moving dom::Optional<>. r=edgar
This will be useful for bug 1775062. Differential Revision: https://phabricator.services.mozilla.com/D152738
This commit is contained in:
Родитель
ec58d0cfd5
Коммит
f0b9ca55d6
|
@ -156,7 +156,11 @@ class Optional_base {
|
|||
public:
|
||||
Optional_base() = default;
|
||||
|
||||
Optional_base(Optional_base&&) = default;
|
||||
Optional_base& operator=(Optional_base&&) = default;
|
||||
|
||||
explicit Optional_base(const T& aValue) { mImpl.emplace(aValue); }
|
||||
explicit Optional_base(T&& aValue) { mImpl.emplace(std::move(aValue)); }
|
||||
|
||||
bool operator==(const Optional_base<T, InternalType>& aOther) const {
|
||||
return mImpl == aOther.mImpl;
|
||||
|
@ -209,6 +213,7 @@ class Optional : public Optional_base<T, T> {
|
|||
MOZ_ALLOW_TEMPORARY Optional() : Optional_base<T, T>() {}
|
||||
|
||||
explicit Optional(const T& aValue) : Optional_base<T, T>(aValue) {}
|
||||
Optional(Optional&&) = default;
|
||||
};
|
||||
|
||||
template <typename T>
|
||||
|
|
Загрузка…
Ссылка в новой задаче