From dffc7a650d06e3f6cdce019ca79098cfd1e2ed15 Mon Sep 17 00:00:00 2001 From: Jordan Woyak Date: Thu, 8 Jan 2026 15:56:01 -0600 Subject: Common: Replace Result with C++23's std::expected. --- Source/Core/Common/CMakeLists.txt | 1 - Source/Core/Common/Result.h | 36 ------------------------------------ 2 files changed, 37 deletions(-) delete mode 100644 Source/Core/Common/Result.h (limited to 'Source/Core/Common') diff --git a/Source/Core/Common/CMakeLists.txt b/Source/Core/Common/CMakeLists.txt index a1d6d4a80e..6dd7f1fb56 100644 --- a/Source/Core/Common/CMakeLists.txt +++ b/Source/Core/Common/CMakeLists.txt @@ -127,7 +127,6 @@ add_library(common QoSSession.h Random.cpp Random.h - Result.h ScopeGuard.h SDCardUtil.cpp SDCardUtil.h diff --git a/Source/Core/Common/Result.h b/Source/Core/Common/Result.h deleted file mode 100644 index db80362da1..0000000000 --- a/Source/Core/Common/Result.h +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2018 Dolphin Emulator Project -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -#include - -namespace Common -{ -template -class Result final -{ -public: - constexpr Result(const Expected& value) : m_variant{value} {} - constexpr Result(Expected&& value) : m_variant{std::move(value)} {} - - constexpr Result(const Unexpected& value) : m_variant{value} {} - constexpr Result(Unexpected&& value) : m_variant{std::move(value)} {} - - constexpr explicit operator bool() const { return Succeeded(); } - constexpr bool Succeeded() const { return std::holds_alternative(m_variant); } - - // Must only be called when Succeeded() returns true. - constexpr const Expected& operator*() const { return std::get(m_variant); } - constexpr const Expected* operator->() const { return &std::get(m_variant); } - constexpr Expected& operator*() { return std::get(m_variant); } - constexpr Expected* operator->() { return &std::get(m_variant); } - - // Must only be called when Succeeded() returns false. - constexpr Unexpected& Error() { return std::get(m_variant); } - constexpr const Unexpected& Error() const { return std::get(m_variant); } - -private: - std::variant m_variant; -}; -} // namespace Common -- cgit v1.2.3