LLDB mainline
|
A class that describes information for an inlined function. More...
#include "lldb/Symbol/Function.h"
Public Member Functions | |
InlineFunctionInfo (const char *name, llvm::StringRef mangled, const Declaration *decl_ptr, const Declaration *call_decl_ptr) | |
Construct with the function method name, mangled name, and optional declaration information. | |
InlineFunctionInfo (ConstString name, const Mangled &mangled, const Declaration *decl_ptr, const Declaration *call_decl_ptr) | |
Construct with the function method name, mangled name, and optional declaration information. | |
~InlineFunctionInfo () override | |
Destructor. | |
int | Compare (const InlineFunctionInfo &lhs, const InlineFunctionInfo &rhs) |
Compare two inlined function information objects. | |
void | Dump (Stream *s, bool show_fullpaths) const |
Dump a description of this object to a Stream. | |
void | DumpStopContext (Stream *s) const |
ConstString | GetName () const |
ConstString | GetDisplayName () const |
Declaration & | GetCallSite () |
Get accessor for the call site declaration information. | |
const Declaration & | GetCallSite () const |
Get const accessor for the call site declaration information. | |
Mangled & | GetMangled () |
Get accessor for the mangled name object. | |
const Mangled & | GetMangled () const |
Get const accessor for the mangled name object. | |
size_t | MemorySize () const override |
Get the memory cost of this object. | |
Public Member Functions inherited from lldb_private::FunctionInfo | |
FunctionInfo (const char *name, const Declaration *decl_ptr) | |
Construct with the function method name and optional declaration information. | |
FunctionInfo (ConstString name, const Declaration *decl_ptr) | |
Construct with the function method name and optional declaration information. | |
virtual | ~FunctionInfo () |
Destructor. | |
void | Dump (Stream *s, bool show_fullpaths) const |
Dump a description of this object to a Stream. | |
Declaration & | GetDeclaration () |
Get accessor for the declaration information. | |
const Declaration & | GetDeclaration () const |
Get const accessor for the declaration information. | |
ConstString | GetName () const |
Get accessor for the method name. |
Private Attributes | |
Mangled | m_mangled |
Mangled inlined function name (can be empty if there is no mangled information). | |
Declaration | m_call_decl |
Additional Inherited Members | |
Static Public Member Functions inherited from lldb_private::FunctionInfo | |
static int | Compare (const FunctionInfo &lhs, const FunctionInfo &rhs) |
Compare two function information objects. | |
Protected Attributes inherited from lldb_private::FunctionInfo | |
ConstString | m_name |
Function method name (not a mangled name). | |
Declaration | m_declaration |
Information describing where this function information was defined. |
A class that describes information for an inlined function.
Definition at line 126 of file Function.h.
InlineFunctionInfo::InlineFunctionInfo | ( | const char * | name, |
llvm::StringRef | mangled, | ||
const Declaration * | decl_ptr, | ||
const Declaration * | call_decl_ptr ) |
Construct with the function method name, mangled name, and optional declaration information.
[in] | name | A C string name for the method name for this function. This value should not be the mangled named, but the simple method name. |
[in] | mangled | A C string name for the mangled name for this function. This value can be NULL if there is no mangled information. |
[in] | decl_ptr | Optional declaration information that describes where the function was declared. This can be NULL. |
[in] | call_decl_ptr | Optional calling location declaration information that describes from where this inlined function was called. |
Definition at line 65 of file Function.cpp.
References lldb_private::FunctionInfo::FunctionInfo(), m_call_decl, and m_mangled.
Referenced by Compare().
InlineFunctionInfo::InlineFunctionInfo | ( | ConstString | name, |
const Mangled & | mangled, | ||
const Declaration * | decl_ptr, | ||
const Declaration * | call_decl_ptr ) |
Construct with the function method name, mangled name, and optional declaration information.
[in] | name | A name for the method name for this function. This value should not be the mangled named, but the simple method name. |
[in] | mangled | A name for the mangled name for this function. This value can be empty if there is no mangled information. |
[in] | decl_ptr | Optional declaration information that describes where the function was declared. This can be NULL. |
[in] | call_decl_ptr | Optional calling location declaration information that describes from where this inlined function was called. |
Definition at line 72 of file Function.cpp.
References lldb_private::FunctionInfo::FunctionInfo(), m_call_decl, and m_mangled.
|
overridedefault |
Destructor.
int lldb_private::InlineFunctionInfo::Compare | ( | const InlineFunctionInfo & | lhs, |
const InlineFunctionInfo & | rhs ) |
Compare two inlined function information objects.
First compares the FunctionInfo objects, and if equal, compares the mangled names.
[in] | lhs | The Left Hand Side const InlineFunctionInfo object reference. |
[in] | rhs | The Right Hand Side const InlineFunctionInfo object reference. |
References InlineFunctionInfo().
Dump a description of this object to a Stream.
Dump a description of the contents of this object to the supplied stream s.
[in] | s | The stream to which to dump the object description. |
Definition at line 81 of file Function.cpp.
References lldb_private::FunctionInfo::Dump(), and m_mangled.
void InlineFunctionInfo::DumpStopContext | ( | Stream * | s | ) | const |
Definition at line 87 of file Function.cpp.
References lldb_private::Stream::Indent(), m_mangled, lldb_private::FunctionInfo::m_name, and lldb_private::Stream::PutCString().
Declaration & InlineFunctionInfo::GetCallSite | ( | ) |
Get accessor for the call site declaration information.
Definition at line 108 of file Function.cpp.
References m_call_decl.
Referenced by lldb::SBBlock::GetInlinedCallSiteColumn(), lldb::SBBlock::GetInlinedCallSiteFile(), lldb::SBBlock::GetInlinedCallSiteLine(), lldb_private::SymbolContext::GetParentOfInlinedScope(), lldb_private::BreakpointLocation::GetSuggestedStackFrameIndex(), lldb_private::CompileUnit::ResolveSymbolContext(), and lldb_private::ThreadPlanStepRange::SetNextBranchBreakpoint().
const Declaration & InlineFunctionInfo::GetCallSite | ( | ) | const |
Get const accessor for the call site declaration information.
Definition at line 110 of file Function.cpp.
References m_call_decl.
ConstString InlineFunctionInfo::GetDisplayName | ( | ) | const |
Definition at line 102 of file Function.cpp.
References m_mangled, and lldb_private::FunctionInfo::m_name.
Referenced by lldb_private::StackFrame::GetDisplayFunctionName().
Mangled & InlineFunctionInfo::GetMangled | ( | ) |
Get accessor for the mangled name object.
Definition at line 114 of file Function.cpp.
References m_mangled.
Referenced by lldb_private::SymbolContext::GetPossiblyInlinedFunctionName(), and lldb_private::SymbolContextSpecifier::SymbolContextMatches().
const Mangled & InlineFunctionInfo::GetMangled | ( | ) | const |
Get const accessor for the mangled name object.
Definition at line 116 of file Function.cpp.
References m_mangled.
ConstString InlineFunctionInfo::GetName | ( | ) | const |
Definition at line 96 of file Function.cpp.
References m_mangled, and lldb_private::FunctionInfo::m_name.
Referenced by lldb_private::ThreadPlanStepOverRange::DoWillResume(), lldb_private::SymbolContext::DumpStopContext(), lldb_private::StackFrame::GetFunctionName(), lldb_private::SymbolContext::GetFunctionName(), lldb::SBBlock::GetInlinedName(), lldb_private::SymbolContext::GetPossiblyInlinedFunctionName(), and lldb_private::VerboseTrapFrameRecognizer::RecognizeFrame().
|
overridevirtual |
Get the memory cost of this object.
Reimplemented from lldb_private::FunctionInfo.
Definition at line 118 of file Function.cpp.
References m_mangled, and lldb_private::FunctionInfo::MemorySize().
|
private |
Definition at line 247 of file Function.h.
Referenced by GetCallSite(), GetCallSite(), InlineFunctionInfo(), and InlineFunctionInfo().
|
private |
Mangled inlined function name (can be empty if there is no mangled information).
Definition at line 245 of file Function.h.
Referenced by Dump(), DumpStopContext(), GetDisplayName(), GetMangled(), GetMangled(), GetName(), InlineFunctionInfo(), InlineFunctionInfo(), and MemorySize().