summaryrefslogtreecommitdiff
path: root/lib/src/turnsmm/enums.cpp
diff options
context:
space:
mode:
authorFelix Morgner <felix.morgner@gmail.com>2025-05-19 16:28:02 +0200
committerFelix Morgner <felix.morgner@gmail.com>2025-05-19 16:28:02 +0200
commitf61df0b33ea2a2de064f1fa2a9cde191b790a5ba (patch)
tree45c5cda251be02edefde3c975b555e7c504726a6 /lib/src/turnsmm/enums.cpp
parent0a5f3b25214c11556f62ce04601c06812a3464d8 (diff)
downloadturns-f61df0b33ea2a2de064f1fa2a9cde191b790a5ba.tar.xz
turns-f61df0b33ea2a2de064f1fa2a9cde191b790a5ba.zip
lib: rescope enums
Diffstat (limited to 'lib/src/turnsmm/enums.cpp')
-rw-r--r--lib/src/turnsmm/enums.cpp43
1 files changed, 0 insertions, 43 deletions
diff --git a/lib/src/turnsmm/enums.cpp b/lib/src/turnsmm/enums.cpp
deleted file mode 100644
index 475d6f8..0000000
--- a/lib/src/turnsmm/enums.cpp
+++ /dev/null
@@ -1,43 +0,0 @@
-#include "turnsmm/enums.hpp"
-
-#include "turns-disposition.h"
-#include "turns-enums.h" // IWYU pragma: keep
-
-#include <glib-object.h>
-#include <turns-turn-order.h>
-
-#include <type_traits>
-
-namespace
-{
- template<auto Wrapped, auto Unwrapped>
- auto constexpr matches =
- static_cast<std::underlying_type_t<decltype(Wrapped)>>(Wrapped) == static_cast<std::underlying_type_t<decltype(Unwrapped)>>(Unwrapped);
-} // namespace
-
-namespace Turns
-{
-
- static_assert(matches<Disposition::Neutral, TURNS_DISPOSITION_NEUTRAL>);
- static_assert(matches<Disposition::Friendly, TURNS_DISPOSITION_FRIENDLY>);
- static_assert(matches<Disposition::Hostile, TURNS_DISPOSITION_HOSTILE>);
- static_assert(matches<Disposition::Secret, TURNS_DISPOSITION_SECRET>);
-
- static_assert(matches<SortMode::Descending, TURNS_TURN_ORDER_SORT_MODE_DESCENDING>);
- static_assert(matches<SortMode::Ascending, TURNS_TURN_ORDER_SORT_MODE_ASCENDING>);
-
-} // namespace Turns
-
-namespace Glib
-{
-#define VALUE_SPECIALIZATION(Enum, TurnsEnumName) \
- auto Value<Turns::Enum>::value_type() -> GType \
- { \
- return turns_##TurnsEnumName##_get_type(); \
- }
-
- VALUE_SPECIALIZATION(Disposition, disposition)
- VALUE_SPECIALIZATION(SortMode, turn_order_sort_mode)
-
-#undef VALUE_SPECIALIZATION
-} // namespace Glib \ No newline at end of file