1 //===-- CompilerDecl.cpp ----------------------------------------*- C++ -*-===// 2 // 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 // See https://llvm.org/LICENSE.txt for license information. 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 // 7 //===----------------------------------------------------------------------===// 8 9 #include "lldb/Symbol/CompilerDecl.h" 10 #include "lldb/Symbol/ClangASTContext.h" 11 #include "lldb/Symbol/CompilerDeclContext.h" 12 #include "lldb/Symbol/TypeSystem.h" 13 14 using namespace lldb_private; 15 16 ConstString CompilerDecl::GetName() const { 17 return m_type_system->DeclGetName(m_opaque_decl); 18 } 19 20 ConstString CompilerDecl::GetMangledName() const { 21 return m_type_system->DeclGetMangledName(m_opaque_decl); 22 } 23 24 CompilerDeclContext CompilerDecl::GetDeclContext() const { 25 return m_type_system->DeclGetDeclContext(m_opaque_decl); 26 } 27 28 CompilerType CompilerDecl::GetFunctionReturnType() const { 29 return m_type_system->DeclGetFunctionReturnType(m_opaque_decl); 30 } 31 32 size_t CompilerDecl::GetNumFunctionArguments() const { 33 return m_type_system->DeclGetFunctionNumArguments(m_opaque_decl); 34 } 35 36 CompilerType CompilerDecl::GetFunctionArgumentType(size_t arg_idx) const { 37 return m_type_system->DeclGetFunctionArgumentType(m_opaque_decl, arg_idx); 38 } 39 40 bool lldb_private::operator==(const lldb_private::CompilerDecl &lhs, 41 const lldb_private::CompilerDecl &rhs) { 42 return lhs.GetTypeSystem() == rhs.GetTypeSystem() && 43 lhs.GetOpaqueDecl() == rhs.GetOpaqueDecl(); 44 } 45 46 bool lldb_private::operator!=(const lldb_private::CompilerDecl &lhs, 47 const lldb_private::CompilerDecl &rhs) { 48 return lhs.GetTypeSystem() != rhs.GetTypeSystem() || 49 lhs.GetOpaqueDecl() != rhs.GetOpaqueDecl(); 50 } 51