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
lldb::SBInstructionList
GetInstructions(
lldb::SBTarget
target);
40
41
lldb::SBInstructionList
GetInstructions(
lldb::SBTarget
target,
42
const
char
*flavor);
43
44
lldb::SBAddress
GetStartAddress();
45
46
LLDB_DEPRECATED_FIXME
(
"Not compatible with discontinuous functions."
,
47
"GetRanges()"
)
48
lldb::SBAddress
GetEndAddress();
49
50
lldb::SBAddressRangeList
GetRanges
();
51
52
const
char
*GetArgumentName(uint32_t arg_idx);
53
54
uint32_t GetPrologueByteSize();
55
56
lldb::SBType
GetType();
57
58
lldb::SBBlock
GetBlock();
59
60
lldb::LanguageType
GetLanguage();
61
62
bool
GetIsOptimized();
63
64
bool
operator==
(
const
lldb::SBFunction
&rhs)
const
;
65
66
bool
operator!=(
const
lldb::SBFunction
&rhs)
const
;
67
68
bool
GetDescription(
lldb::SBStream
&description);
69
70
protected
:
71
lldb_private::Function
*get();
72
73
void
reset(
lldb_private::Function
*lldb_object_ptr);
74
75
private
:
76
friend
class
SBAddress
;
77
friend
class
SBFrame
;
78
friend
class
SBSymbolContext
;
79
80
SBFunction
(
lldb_private::Function
*lldb_object_ptr);
81
82
lldb_private::Function
*m_opaque_ptr =
nullptr
;
83
};
84
85
}
// namespace lldb
86
87
#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
lldb::SBAddressRangeList
Definition:
SBAddressRangeList.h:22
lldb::SBAddress
Definition:
SBAddress.h:17
lldb::SBBlock
Definition:
SBBlock.h:21
lldb::SBFrame
Definition:
SBFrame.h:26
lldb::SBFunction
Definition:
SBFunction.h:19
lldb::SBInstructionList
Definition:
SBInstructionList.h:18
lldb::SBStream
Definition:
SBStream.h:22
lldb::SBSymbolContext
Definition:
SBSymbolContext.h:28
lldb::SBTarget
Definition:
SBTarget.h:37
lldb::SBType
Definition:
SBType.h:139
lldb_private::Function
A class that describes a function.
Definition:
Function.h:399
lldb
Definition:
SBAddress.h:15
lldb::LanguageType
LanguageType
Programming language type.
Definition:
lldb-enumerations.h:461
lldb::operator==
bool LLDB_API operator==(const SBAddress &lhs, const SBAddress &rhs)
Definition:
SBAddress.cpp:60
Generated on Thu Jan 9 2025 10:12:19 for LLDB by
1.9.6