summaryrefslogtreecommitdiff
path: root/Source/Core/DiscIO
diff options
context:
space:
mode:
authorJordan Woyak <jordan.woyak@gmail.com>2026-01-08 15:56:01 -0600
committerJordan Woyak <jordan.woyak@gmail.com>2026-01-17 16:58:45 -0600
commitdffc7a650d06e3f6cdce019ca79098cfd1e2ed15 (patch)
treef8bd686e9d312c66a08e39cd9809e9444420c09b /Source/Core/DiscIO
parentb556bd99d72d996364f423b663af5d02a9610c4f (diff)
Common: Replace Result with C++23's std::expected.
Diffstat (limited to 'Source/Core/DiscIO')
-rw-r--r--Source/Core/DiscIO/CompressedBlob.cpp3
-rw-r--r--Source/Core/DiscIO/MultithreadedCompressor.h6
-rw-r--r--Source/Core/DiscIO/WIABlob.cpp11
3 files changed, 11 insertions, 9 deletions
diff --git a/Source/Core/DiscIO/CompressedBlob.cpp b/Source/Core/DiscIO/CompressedBlob.cpp
index 7f86ee2388..9c58b08dc5 100644
--- a/Source/Core/DiscIO/CompressedBlob.cpp
+++ b/Source/Core/DiscIO/CompressedBlob.cpp
@@ -5,6 +5,7 @@
#include <algorithm>
#include <cstring>
+#include <expected>
#include <memory>
#include <string>
#include <utility>
@@ -210,7 +211,7 @@ static ConversionResult<OutputParameters> Compress(CompressThreadState* state,
if (retval != Z_OK)
{
ERROR_LOG_FMT(DISCIO, "Deflate failed");
- return ConversionResultCode::InternalError;
+ return std::unexpected{ConversionResultCode::InternalError};
}
const int status = deflate(&state->z, Z_FINISH);
diff --git a/Source/Core/DiscIO/MultithreadedCompressor.h b/Source/Core/DiscIO/MultithreadedCompressor.h
index 6019d5472b..5afaa1cca5 100644
--- a/Source/Core/DiscIO/MultithreadedCompressor.h
+++ b/Source/Core/DiscIO/MultithreadedCompressor.h
@@ -4,6 +4,7 @@
#pragma once
#include <atomic>
+#include <expected>
#include <functional>
#include <memory>
#include <thread>
@@ -11,7 +12,6 @@
#include "Common/Assert.h"
#include "Common/Event.h"
-#include "Common/Result.h"
namespace DiscIO
{
@@ -25,7 +25,7 @@ enum class ConversionResultCode
};
template <typename T>
-using ConversionResult = Common::Result<T, ConversionResultCode>;
+using ConversionResult = std::expected<T, ConversionResultCode>;
// This class starts a number of compression threads and one output thread.
// The set_up_compress_thread_state function is called at the start of each compression thread.
@@ -165,7 +165,7 @@ private:
}
else
{
- SetError(result.Error());
+ SetError(result.error());
}
state->compress_done_event.Set();
diff --git a/Source/Core/DiscIO/WIABlob.cpp b/Source/Core/DiscIO/WIABlob.cpp
index 743eade500..c8e7f066c0 100644
--- a/Source/Core/DiscIO/WIABlob.cpp
+++ b/Source/Core/DiscIO/WIABlob.cpp
@@ -6,6 +6,7 @@
#include <algorithm>
#include <array>
#include <cstring>
+#include <expected>
#include <limits>
#include <map>
#include <memory>
@@ -1578,7 +1579,7 @@ WIARVZFileReader<RVZ>::ProcessAndCompress(CompressThreadState* state, CompressPa
if (state->compressor)
{
if (!state->compressor->Start(entry.exception_lists.size() + entry.main_data.size()))
- return ConversionResultCode::InternalError;
+ return std::unexpected{ConversionResultCode::InternalError};
}
if (!entry.exception_lists.empty())
@@ -1588,7 +1589,7 @@ WIARVZFileReader<RVZ>::ProcessAndCompress(CompressThreadState* state, CompressPa
if (!state->compressor->Compress(entry.exception_lists.data(),
entry.exception_lists.size()))
{
- return ConversionResultCode::InternalError;
+ return std::unexpected{ConversionResultCode::InternalError};
}
}
else
@@ -1601,7 +1602,7 @@ WIARVZFileReader<RVZ>::ProcessAndCompress(CompressThreadState* state, CompressPa
if (!state->compressor->AddPrecedingDataOnlyForPurgeHashing(entry.exception_lists.data(),
entry.exception_lists.size()))
{
- return ConversionResultCode::InternalError;
+ return std::unexpected{ConversionResultCode::InternalError};
}
}
}
@@ -1610,9 +1611,9 @@ WIARVZFileReader<RVZ>::ProcessAndCompress(CompressThreadState* state, CompressPa
if (state->compressor)
{
if (!state->compressor->Compress(entry.main_data.data(), entry.main_data.size()))
- return ConversionResultCode::InternalError;
+ return std::unexpected{ConversionResultCode::InternalError};
if (!state->compressor->End())
- return ConversionResultCode::InternalError;
+ return std::unexpected{ConversionResultCode::InternalError};
}
bool compressed = !!state->compressor;