File indexing completed on 2026-05-10 08:42:42
0001
0002
0003
0004
0005
0006
0007
0008
0009 #ifndef LLDB_API_SBLINEENTRY_H
0010 #define LLDB_API_SBLINEENTRY_H
0011
0012 #include "lldb/API/SBAddress.h"
0013 #include "lldb/API/SBDefines.h"
0014 #include "lldb/API/SBFileSpec.h"
0015
0016 namespace lldb {
0017
0018 class LLDB_API SBLineEntry {
0019 public:
0020 SBLineEntry();
0021
0022 SBLineEntry(const lldb::SBLineEntry &rhs);
0023
0024 ~SBLineEntry();
0025
0026 const lldb::SBLineEntry &operator=(const lldb::SBLineEntry &rhs);
0027
0028 lldb::SBAddress GetStartAddress() const;
0029
0030 lldb::SBAddress GetEndAddress() const;
0031
0032 lldb::SBAddress
0033 GetSameLineContiguousAddressRangeEnd(bool include_inlined_functions) const;
0034
0035 explicit operator bool() const;
0036
0037 bool IsValid() const;
0038
0039 lldb::SBFileSpec GetFileSpec() const;
0040
0041 uint32_t GetLine() const;
0042
0043 uint32_t GetColumn() const;
0044
0045 void SetFileSpec(lldb::SBFileSpec filespec);
0046
0047 void SetLine(uint32_t line);
0048
0049 void SetColumn(uint32_t column);
0050
0051 bool operator==(const lldb::SBLineEntry &rhs) const;
0052
0053 bool operator!=(const lldb::SBLineEntry &rhs) const;
0054
0055 bool GetDescription(lldb::SBStream &description);
0056
0057 protected:
0058 lldb_private::LineEntry *get();
0059
0060 private:
0061 friend class SBAddress;
0062 friend class SBCompileUnit;
0063 friend class SBFrame;
0064 friend class SBSymbolContext;
0065
0066 const lldb_private::LineEntry *operator->() const;
0067
0068 lldb_private::LineEntry &ref();
0069
0070 const lldb_private::LineEntry &ref() const;
0071
0072 SBLineEntry(const lldb_private::LineEntry *lldb_object_ptr);
0073
0074 void SetLineEntry(const lldb_private::LineEntry &lldb_object_ref);
0075
0076 std::unique_ptr<lldb_private::LineEntry> m_opaque_up;
0077 };
0078
0079 }
0080
0081 #endif