1 //===-- CompilerDecl.cpp --------------------------------------------------===//
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
7 //===----------------------------------------------------------------------===//
9 #include "lldb/Symbol/CompilerDecl.h"
10 #include "lldb/Symbol/CompilerDeclContext.h"
11 #include "lldb/Symbol/TypeSystem.h"
13 using namespace lldb_private
;
15 ConstString
CompilerDecl::GetName() const {
16 return m_type_system
->DeclGetName(m_opaque_decl
);
19 ConstString
CompilerDecl::GetMangledName() const {
20 return m_type_system
->DeclGetMangledName(m_opaque_decl
);
23 CompilerDeclContext
CompilerDecl::GetDeclContext() const {
24 return m_type_system
->DeclGetDeclContext(m_opaque_decl
);
27 CompilerType
CompilerDecl::GetFunctionReturnType() const {
28 return m_type_system
->DeclGetFunctionReturnType(m_opaque_decl
);
31 size_t CompilerDecl::GetNumFunctionArguments() const {
32 return m_type_system
->DeclGetFunctionNumArguments(m_opaque_decl
);
35 CompilerType
CompilerDecl::GetFunctionArgumentType(size_t arg_idx
) const {
36 return m_type_system
->DeclGetFunctionArgumentType(m_opaque_decl
, arg_idx
);
39 bool lldb_private::operator==(const lldb_private::CompilerDecl
&lhs
,
40 const lldb_private::CompilerDecl
&rhs
) {
41 return lhs
.GetTypeSystem() == rhs
.GetTypeSystem() &&
42 lhs
.GetOpaqueDecl() == rhs
.GetOpaqueDecl();
45 bool lldb_private::operator!=(const lldb_private::CompilerDecl
&lhs
,
46 const lldb_private::CompilerDecl
&rhs
) {
47 return lhs
.GetTypeSystem() != rhs
.GetTypeSystem() ||
48 lhs
.GetOpaqueDecl() != rhs
.GetOpaqueDecl();