aboutsummaryrefslogtreecommitdiff
path: root/Gem/develop/include/Gem/Utils/is_pointer.h
diff options
context:
space:
mode:
Diffstat (limited to 'Gem/develop/include/Gem/Utils/is_pointer.h')
-rw-r--r--Gem/develop/include/Gem/Utils/is_pointer.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/Gem/develop/include/Gem/Utils/is_pointer.h b/Gem/develop/include/Gem/Utils/is_pointer.h
new file mode 100644
index 0000000..6c5cb16
--- /dev/null
+++ b/Gem/develop/include/Gem/Utils/is_pointer.h
@@ -0,0 +1,34 @@
+/*
+ * Copyright © 2010 fredoverflow https://stackoverflow.com/a/3177723/1169096
+ * Copyright © 2019 IOhannes m zmölnig. forum::für::umläute. IEM. zmoelnig@iem.at
+ */
+
+#ifndef GEM_IS_POINTER_H_
+#define GEM_IS_POINTER_H_
+
+namespace gem
+{
+ template <typename T>
+ struct is_pointer_type
+ {
+ enum { value = false };
+ };
+
+ template <typename T>
+ struct is_pointer_type<T*>
+ {
+ enum { value = true };
+ };
+
+ template <typename T>
+ bool is_pointer(void)
+ {
+ return is_pointer_type<T>::value;
+ }
+ template <typename T>
+ bool is_pointer(const T&)
+ {
+ return is_pointer_type<T>::value;
+ }
+};
+#endif // GEM_IS_POITNER_H_