summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/OpcodeDecoding.h
diff options
context:
space:
mode:
authorJMC47 <JMC4789@gmail.com>2025-09-16 14:55:16 -0400
committerGitHub <noreply@github.com>2025-09-16 14:55:16 -0400
commitd9404e02748ecacbbcff086bd9cceab4d20126ae (patch)
treecd4b796e3dc3375f095ad18594d9052fb41d499a /Source/Core/VideoCommon/OpcodeDecoding.h
parent76d8451217b684efe3eefa998acab9d562f08b15 (diff)
parent071dedd492dd828727f87aec4be15a851f5282f1 (diff)
Merge pull request #13941 from jordan-woyak/opcode-concepts
VideoCommon/OpcodeDecoding: Replace enable_if with concepts.
Diffstat (limited to 'Source/Core/VideoCommon/OpcodeDecoding.h')
-rw-r--r--Source/Core/VideoCommon/OpcodeDecoding.h14
1 files changed, 7 insertions, 7 deletions
diff --git a/Source/Core/VideoCommon/OpcodeDecoding.h b/Source/Core/VideoCommon/OpcodeDecoding.h
index 36a56a0fe2..bf9b94d218 100644
--- a/Source/Core/VideoCommon/OpcodeDecoding.h
+++ b/Source/Core/VideoCommon/OpcodeDecoding.h
@@ -3,7 +3,7 @@
#pragma once
-#include <type_traits>
+#include <concepts>
#include "Common/Assert.h"
#include "Common/CommonTypes.h"
@@ -122,8 +122,8 @@ public:
namespace detail
{
// Main logic; split so that the main RunCommand can call OnCommand with the returned size.
-template <typename T, typename = std::enable_if_t<std::is_base_of_v<Callback, T>>>
-static DOLPHIN_FORCE_INLINE u32 RunCommand(const u8* data, u32 available, T& callback)
+static DOLPHIN_FORCE_INLINE u32 RunCommand(const u8* data, u32 available,
+ std::derived_from<Callback> auto& callback)
{
if (available < 1)
return 0;
@@ -253,8 +253,8 @@ static DOLPHIN_FORCE_INLINE u32 RunCommand(const u8* data, u32 available, T& cal
}
} // namespace detail
-template <typename T, typename = std::enable_if_t<std::is_base_of_v<Callback, T>>>
-DOLPHIN_FORCE_INLINE u32 RunCommand(const u8* data, u32 available, T& callback)
+DOLPHIN_FORCE_INLINE u32 RunCommand(const u8* data, u32 available,
+ std::derived_from<Callback> auto& callback)
{
const u32 size = detail::RunCommand(data, available, callback);
if (size > 0)
@@ -264,8 +264,8 @@ DOLPHIN_FORCE_INLINE u32 RunCommand(const u8* data, u32 available, T& callback)
return size;
}
-template <typename T, typename = std::enable_if_t<std::is_base_of_v<Callback, T>>>
-DOLPHIN_FORCE_INLINE u32 Run(const u8* data, u32 available, T& callback)
+DOLPHIN_FORCE_INLINE u32 Run(const u8* data, u32 available,
+ std::derived_from<Callback> auto& callback)
{
u32 size = 0;
while (size < available)