summaryrefslogtreecommitdiff
path: root/src/mbgl/util
diff options
context:
space:
mode:
Diffstat (limited to 'src/mbgl/util')
-rw-r--r--src/mbgl/util/id.cpp14
-rw-r--r--src/mbgl/util/id.hpp11
-rw-r--r--src/mbgl/util/string.cpp6
3 files changed, 30 insertions, 1 deletions
diff --git a/src/mbgl/util/id.cpp b/src/mbgl/util/id.cpp
new file mode 100644
index 0000000000..4486194de4
--- /dev/null
+++ b/src/mbgl/util/id.cpp
@@ -0,0 +1,14 @@
+#include <mbgl/util/id.hpp>
+
+#include <atomic>
+
+namespace mbgl {
+namespace util {
+
+uint64_t nextID() {
+ static std::atomic<uint64_t> GUID { 0 };
+ return GUID++;
+}
+
+} // namespace util
+} // namespace mbgl
diff --git a/src/mbgl/util/id.hpp b/src/mbgl/util/id.hpp
new file mode 100644
index 0000000000..12e23dfc2d
--- /dev/null
+++ b/src/mbgl/util/id.hpp
@@ -0,0 +1,11 @@
+#pragma once
+
+#include <cstdint>
+
+namespace mbgl {
+namespace util {
+
+uint64_t nextID();
+
+} // namespace util
+} // namespace mbgl
diff --git a/src/mbgl/util/string.cpp b/src/mbgl/util/string.cpp
index 5d3e44bff6..6f7e02e5e2 100644
--- a/src/mbgl/util/string.cpp
+++ b/src/mbgl/util/string.cpp
@@ -80,7 +80,11 @@ std::string toPaddedHex(T x) {
} // namespace
-std::string toHex(size_t value) {
+std::string toHex(uint32_t value) {
+ return toPaddedHex(value);
+}
+
+std::string toHex(uint64_t value) {
return toPaddedHex(value);
}