We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
id_t.hpp
1 parent dda62b1 commit 48ad09dCopy full SHA for 48ad09d
1 file changed
include/CXXGraph/Utility/id_t.hpp
@@ -1,17 +1,19 @@
1
#pragma once
2
3
+#ifdef CXXGRAPH_ID_TYPE
4
#include <type_traits>
-
5
-#define IS_UNSIGNED(T) !(((T) - 1) < 0)
+#else
6
+#include <cstddef>
7
+#endif
8
9
namespace CXXGraph {
10
#ifdef CXXGRAPH_ID_TYPE
11
// Throw compiler error if the type is signed
-static_assert(IS_UNSIGNED(CXXGRAPH_ID_TYPE),
12
+static_assert(std::is_unsigned_v<CXXGRAPH_ID_TYPE>,
13
"CXXGRAPH_ID_TYPE must be unsigned");
14
-typedef CXXGRAPH_ID_TYPE id_t;
15
+using id_t = CXXGRAPH_ID_TYPE;
16
#else
-typedef std::size_t id_t;
17
+using id_t = std::size_t;
18
#endif
19
} // namespace CXXGraph
0 commit comments