aboutsummaryrefslogtreecommitdiff
path: root/src/common/concepts.h
diff options
context:
space:
mode:
authorlizzie <lizzie@eden-emu.dev>2025-11-07 17:03:01 +0100
committercrueter <crueter@eden-emu.dev>2025-11-07 17:03:01 +0100
commit45a2008aa6c7c43da6182cb3d6c96b7ab86902ac (patch)
treeadb2e15dd17fc800d88e8fcc087b2a6a2f760b63 /src/common/concepts.h
parent8f6e0aa2cb9ef2a3e85c5e51a699f98092d30884 (diff)
[common] replace Common::(DerivedFrom, IsArithmetic, Size, ConvertibleTo, IsIntegral) with libstdc++ equivalents (#290)
Signed-off-by: lizzie <lizzie@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/290 Reviewed-by: crueter <crueter@eden-emu.dev> Reviewed-by: Caio Oliveira <caiooliveirafarias0@gmail.com> Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
Diffstat (limited to 'src/common/concepts.h')
-rw-r--r--src/common/concepts.h23
1 files changed, 3 insertions, 20 deletions
diff --git a/src/common/concepts.h b/src/common/concepts.h
index 61df1d32a2..4c07443bac 100644
--- a/src/common/concepts.h
+++ b/src/common/concepts.h
@@ -1,3 +1,6 @@
+// SPDX-FileCopyrightText: Copyright 2025 Eden Emulator Project
+// SPDX-License-Identifier: GPL-3.0-or-later
+
// SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
@@ -12,24 +15,4 @@ namespace Common {
template <typename T>
concept IsContiguousContainer = std::contiguous_iterator<typename T::iterator>;
-// TODO: Replace with std::derived_from when the <concepts> header
-// is available on all supported platforms.
-template <typename Derived, typename Base>
-concept DerivedFrom = requires {
- std::is_base_of_v<Base, Derived>;
- std::is_convertible_v<const volatile Derived*, const volatile Base*>;
- };
-
-// TODO: Replace with std::convertible_to when libc++ implements it.
-template <typename From, typename To>
-concept ConvertibleTo = std::is_convertible_v<From, To>;
-
-// No equivalents in the stdlib
-
-template <typename T>
-concept IsArithmetic = std::is_arithmetic_v<T>;
-
-template <typename T>
-concept IsIntegral = std::is_integral_v<T>;
-
} // namespace Common