LLDB
mainline
llvm-project
lldb
include
lldb
API
SBFunction.h
Go to the documentation of this file.
1
//===-- SBFunction.h --------------------------------------------*- 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
#ifndef LLDB_API_SBFUNCTION_H
10
#define LLDB_API_SBFUNCTION_H
11
12
#include "
lldb/API/SBAddress.h
"
13
#include "
lldb/API/SBAddressRangeList.h
"
14
#include "
lldb/API/SBDefines.h
"
15
#include "
lldb/API/SBInstructionList.h
"
16
17
namespace
lldb
{
18
19
class
LLDB_API
SBFunction
{
20
public
:
21
SBFunction
();
22
23
SBFunction
(
const
lldb::SBFunction
&rhs);
24
25
const
lldb::SBFunction
&
operator=
(
const
lldb::SBFunction
&rhs);
26
27
~SBFunction
();
28
29
explicit
operator
bool
()
const
;
30
31
bool
IsValid
()
const
;
32
33
const
char
*
GetName
()
const
;
34
35
const
char
*
GetDisplayName
()
const
;
36
37
const
char
*
GetMangledName
()
const
;
38
39
const
char
*
GetBaseName
()
const
;
40
41
lldb::SBInstructionList
GetInstructions
(
lldb::SBTarget
target);
42
43
lldb::SBInstructionList
GetInstructions
(
lldb::SBTarget
target,
44
const
char
*flavor);
45
46
lldb::SBAddress
GetStartAddress
();
47
48
LLDB_DEPRECATED_FIXME
(
"Not compatible with discontinuous functions."
,
49
"GetRanges()"
)
50
lldb::SBAddress
GetEndAddress();
51
52
lldb::SBAddressRangeList
GetRanges
();
53
54
const
char
*
GetArgumentName
(uint32_t arg_idx);
55
56
uint32_t
GetPrologueByteSize
();
57
58
lldb::SBType
GetType
();
59
60
lldb::SBBlock
GetBlock
();
61
62
lldb::LanguageType
GetLanguage
();
63
64
bool
GetIsOptimized
();
65
66
bool
operator==
(
const
lldb::SBFunction
&rhs)
const
;
67
68
bool
operator!=
(
const
lldb::SBFunction
&rhs)
const
;
69
70
bool
GetDescription
(
lldb::SBStream
&description);
71
72
protected
:
73
lldb_private::Function
*
get
();
74
75
void
reset
(
lldb_private::Function
*lldb_object_ptr);
76
77
private
:
78
friend
class
SBAddress
;
79
friend
class
SBFrame
;
80
friend
class
SBSymbolContext
;
81
82
SBFunction
(
lldb_private::Function
*lldb_object_ptr);
83
84
lldb_private::Function
*
m_opaque_ptr
=
nullptr
;
85
};
86
87
}
// namespace lldb
88
89
#endif
// LLDB_API_SBFUNCTION_H
GetRanges
static llvm::Expected< llvm::DWARFAddressRangesVector > GetRanges(DWARFUnit &unit, const DWARFFormValue &value)
Definition
DWARFDebugInfoEntry.cpp:86
SBAddressRangeList.h
SBAddress.h
SBDefines.h
LLDB_API
#define LLDB_API
Definition
SBDefines.h:28
LLDB_DEPRECATED_FIXME
#define LLDB_DEPRECATED_FIXME(MSG, FIX)
Definition
SBDefines.h:39
SBInstructionList.h
GetName
static llvm::StringRef GetName(XcodeSDK::Type type)
Definition
XcodeSDK.cpp:21
bool
lldb::SBAddressRangeList
Definition
SBAddressRangeList.h:22
lldb::SBAddress
Definition
SBAddress.h:17
lldb::SBBlock
Definition
SBBlock.h:21
lldb::SBFunction
Definition
SBFunction.h:19
lldb::SBFunction::GetPrologueByteSize
uint32_t GetPrologueByteSize()
Definition
SBFunction.cpp:206
lldb::SBFunction::GetBaseName
const char * GetBaseName() const
Definition
SBFunction.cpp:82
lldb::SBFunction::GetArgumentName
const char * GetArgumentName(uint32_t arg_idx)
Definition
SBFunction.cpp:185
lldb::SBFunction::GetMangledName
const char * GetMangledName() const
Definition
SBFunction.cpp:74
lldb::SBFunction::m_opaque_ptr
lldb_private::Function * m_opaque_ptr
Definition
SBFunction.h:84
lldb::SBFunction::GetDescription
bool GetDescription(lldb::SBStream &description)
Definition
SBFunction.cpp:103
lldb::SBFunction::GetStartAddress
lldb::SBAddress GetStartAddress()
Definition
SBFunction.cpp:151
lldb::SBFunction::SBFunction
SBFunction()
Definition
SBFunction.cpp:27
lldb::SBFunction::operator=
const lldb::SBFunction & operator=(const lldb::SBFunction &rhs)
Definition
SBFunction.cpp:37
lldb::SBFunction::SBSymbolContext
friend class SBSymbolContext
Definition
SBFunction.h:80
lldb::SBFunction::SBAddress
friend class SBAddress
Definition
SBFunction.h:78
lldb::SBFunction::IsValid
bool IsValid() const
Definition
SBFunction.cpp:46
lldb::SBFunction::GetDisplayName
const char * GetDisplayName() const
Definition
SBFunction.cpp:65
lldb::SBFunction::GetBlock
lldb::SBBlock GetBlock()
Definition
SBFunction.cpp:226
lldb::SBFunction::get
lldb_private::Function * get()
Definition
SBFunction.cpp:145
lldb::SBFunction::SBFrame
friend class SBFrame
Definition
SBFunction.h:79
lldb::SBFunction::GetInstructions
lldb::SBInstructionList GetInstructions(lldb::SBTarget target)
Definition
SBFunction.cpp:118
lldb::SBFunction::operator!=
bool operator!=(const lldb::SBFunction &rhs) const
Definition
SBFunction.cpp:97
lldb::SBFunction::GetIsOptimized
bool GetIsOptimized()
Definition
SBFunction.cpp:245
lldb::SBFunction::reset
void reset(lldb_private::Function *lldb_object_ptr)
Definition
SBFunction.cpp:147
lldb::SBFunction::operator==
bool operator==(const lldb::SBFunction &rhs) const
Definition
SBFunction.cpp:91
lldb::SBFunction::GetLanguage
lldb::LanguageType GetLanguage()
Definition
SBFunction.cpp:235
lldb::SBFunction::GetType
lldb::SBType GetType()
Definition
SBFunction.cpp:214
lldb::SBInstructionList
Definition
SBInstructionList.h:18
lldb::SBStream
Definition
SBStream.h:22
lldb::SBTarget
Definition
SBTarget.h:37
lldb::SBType
Definition
SBType.h:139
lldb_private::Function
A class that describes a function.
Definition
Function.h:400
lldb
Definition
SBAddress.h:15
lldb::LanguageType
LanguageType
Programming language type.
Definition
lldb-enumerations.h:471
Generated on
for LLDB by
1.14.0