We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 6cab2e7 commit b3979f6Copy full SHA for b3979f6
ecsact/runtime/common.h
@@ -54,8 +54,17 @@ ECSACT_TYPED_ID(ecsact_system_like_id);
54
ECSACT_TYPED_ID(ecsact_component_like_id);
55
56
#ifdef __cplusplus
57
+template<typename, typename>
58
+constexpr bool ecsact_id_invalid_cast_v = false;
59
+
60
template<typename To, typename From>
-To ecsact_id_cast(From);
61
+ECSACT_ALWAYS_INLINE To ecsact_id_cast(From) {
62
+ static_assert(
63
+ ecsact_id_invalid_cast_v<From, To>,
64
+ "Invalid ecsact_id_cast - Incompatible ID Types"
65
+ );
66
+}
67
68
# define ECSACT_CAST_ID_FN(From, To) \
69
template<> \
70
ECSACT_ALWAYS_INLINE To ecsact_id_cast<To, From>(From id) { \
0 commit comments