LLDB mainline
SBLineEntry.h
Go to the documentation of this file.
1//===-- SBLineEntry.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_SBLINEENTRY_H
10#define LLDB_API_SBLINEENTRY_H
11
12#include "lldb/API/SBAddress.h"
13#include "lldb/API/SBDefines.h"
14#include "lldb/API/SBFileSpec.h"
15
16namespace lldb {
17
19public:
21
23
25
26 const lldb::SBLineEntry &operator=(const lldb::SBLineEntry &rhs);
27
28 lldb::SBAddress GetStartAddress() const;
29
30 lldb::SBAddress GetEndAddress() const;
31
32 explicit operator bool() const;
33
34 bool IsValid() const;
35
36 lldb::SBFileSpec GetFileSpec() const;
37
38 uint32_t GetLine() const;
39
40 uint32_t GetColumn() const;
41
42 void SetFileSpec(lldb::SBFileSpec filespec);
43
44 void SetLine(uint32_t line);
45
46 void SetColumn(uint32_t column);
47
48 bool operator==(const lldb::SBLineEntry &rhs) const;
49
50 bool operator!=(const lldb::SBLineEntry &rhs) const;
51
52 bool GetDescription(lldb::SBStream &description);
53
54protected:
56
57private:
58 friend class SBAddress;
59 friend class SBCompileUnit;
60 friend class SBFrame;
61 friend class SBSymbolContext;
62
63 const lldb_private::LineEntry *operator->() const;
64
66
67 const lldb_private::LineEntry &ref() const;
68
69 SBLineEntry(const lldb_private::LineEntry *lldb_object_ptr);
70
71 void SetLineEntry(const lldb_private::LineEntry &lldb_object_ref);
72
73 std::unique_ptr<lldb_private::LineEntry> m_opaque_up;
74};
75
76} // namespace lldb
77
78#endif // LLDB_API_SBLINEENTRY_H
#define LLDB_API
Definition: SBDefines.h:28
std::unique_ptr< lldb_private::LineEntry > m_opaque_up
Definition: SBLineEntry.h:73
Definition: SBAddress.h:15
bool LLDB_API operator==(const SBAddress &lhs, const SBAddress &rhs)
Definition: SBAddress.cpp:60
A line table entry class.
Definition: LineEntry.h:21