ClangExternalASTSourceCommon.cpp revision 16d2187c0c3992f22e9cb011f863dc0fe35e3cde
1//===-- ClangExternalASTSourceCommon.cpp ------------------------*- C++ -*-===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9 10#include "lldb/Symbol/ClangExternalASTSourceCommon.h" 11 12using namespace lldb_private; 13 14#define ClangExternalASTSourceCommon_MAGIC (0x00112233aabbccddull) 15 16ClangExternalASTSourceCommon::ClangExternalASTSourceCommon() : clang::ExternalASTSource() 17{ 18 m_magic = ClangExternalASTSourceCommon_MAGIC; 19} 20 21uint64_t ClangExternalASTSourceCommon::GetMetadata (uintptr_t object) 22{ 23 assert (m_magic == ClangExternalASTSourceCommon_MAGIC); 24 25 return m_metadata[object]; 26} 27 28void ClangExternalASTSourceCommon::SetMetadata (uintptr_t object, uint64_t metadata) 29{ 30 assert (m_magic == ClangExternalASTSourceCommon_MAGIC); 31 32 m_metadata[object] = metadata; 33} 34 35bool ClangExternalASTSourceCommon::HasMetadata (uintptr_t object) 36{ 37 assert (m_magic == ClangExternalASTSourceCommon_MAGIC); 38 39 return m_metadata.find(object) != m_metadata.end(); 40} 41