summaryrefslogtreecommitdiff
path: root/deimos/core/base.h
diff options
context:
space:
mode:
Diffstat (limited to 'deimos/core/base.h')
-rw-r--r--deimos/core/base.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/deimos/core/base.h b/deimos/core/base.h
index 0530db7..ea14610 100644
--- a/deimos/core/base.h
+++ b/deimos/core/base.h
@@ -48,6 +48,19 @@ struct uint128
uint64 low;
};
+struct SourceLocation
+{
+ const char* file;
+ int32 line;
+
+ constexpr SourceLocation( // NOLINT
+ const char* file_ = __builtin_FILE(),
+ int32 line_ = __builtin_LINE()) :
+ file{file_},
+ line{line_}
+ {}
+};
+
template<typename T> struct RemoveReferenceT { using Type = T; };
template<typename T> struct RemoveReferenceT<T&> { using Type = T; };
template<typename T> struct RemoveReferenceT<T&&> { using Type = T; };