summaryrefslogtreecommitdiffstats
path: root/lldb/source/Symbol/ClangExternalASTSourceCommon.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Symbol/ClangExternalASTSourceCommon.cpp')
-rw-r--r--lldb/source/Symbol/ClangExternalASTSourceCommon.cpp40
1 files changed, 40 insertions, 0 deletions
diff --git a/lldb/source/Symbol/ClangExternalASTSourceCommon.cpp b/lldb/source/Symbol/ClangExternalASTSourceCommon.cpp
new file mode 100644
index 00000000000..d5b7d57ae1c
--- /dev/null
+++ b/lldb/source/Symbol/ClangExternalASTSourceCommon.cpp
@@ -0,0 +1,40 @@
+//===-- ClangExternalASTSourceCommon.cpp ------------------------*- C++ -*-===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#include "lldb/Symbol/ClangExternalASTSourceCommon.h"
+
+using namespace lldb_private;
+
+#define ClangExternalASTSourceCommon_MAGIC (0x00112233aabbccddull)
+
+ClangExternalASTSourceCommon::ClangExternalASTSourceCommon() : clang::ExternalASTSource()
+{
+ m_magic = ClangExternalASTSourceCommon_MAGIC;
+}
+
+uint64_t ClangExternalASTSourceCommon::GetMetadata (uintptr_t object)
+{
+ assert (m_magic == ClangExternalASTSourceCommon_MAGIC);
+
+ return m_metadata[object];
+}
+
+void ClangExternalASTSourceCommon::SetMetadata (uintptr_t object, uint64_t metadata)
+{
+ assert (m_magic == ClangExternalASTSourceCommon_MAGIC);
+
+ m_metadata[object] = metadata;
+}
+
+bool ClangExternalASTSourceCommon::HasMetadata (uintptr_t object)
+{
+ assert (m_magic == ClangExternalASTSourceCommon_MAGIC);
+
+ return m_metadata.find(object) != m_metadata.end();
+} \ No newline at end of file
OpenPOWER on IntegriCloud