LLDB mainline
SBAddressRange.h
Go to the documentation of this file.
1//===-- SBAddressRange.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_SBADDRESSRANGE_H
10#define LLDB_API_SBADDRESSRANGE_H
11
12#include "lldb/API/SBDefines.h"
13
14namespace lldb {
15
17public:
19
21
23
25
26 const lldb::SBAddressRange &operator=(const lldb::SBAddressRange &rhs);
27
28 void Clear();
29
30 /// Check the address range refers to a valid base address and has a byte
31 /// size greater than zero.
32 ///
33 /// \return
34 /// True if the address range is valid, false otherwise.
35 bool IsValid() const;
36
37 /// Get the base address of the range.
38 ///
39 /// \return
40 /// Base address object.
41 lldb::SBAddress GetBaseAddress() const;
42
43 /// Get the byte size of this range.
44 ///
45 /// \return
46 /// The size in bytes of this address range.
47 lldb::addr_t GetByteSize() const;
48
49 bool operator==(const SBAddressRange &rhs);
50
51 bool operator!=(const SBAddressRange &rhs);
52
53 bool GetDescription(lldb::SBStream &description, const SBTarget target);
54
55private:
56 friend class SBAddressRangeList;
57 friend class SBBlock;
58 friend class SBFunction;
59 friend class SBProcess;
60
62};
63
64} // namespace lldb
65
66#endif // LLDB_API_SBADDRESSRANGE_H
#define LLDB_API
Definition: SBDefines.h:28
AddressRangeUP m_opaque_up
Definition: SBAddress.h:15
std::unique_ptr< lldb_private::AddressRange > AddressRangeUP
Definition: lldb-forward.h:313
uint64_t addr_t
Definition: lldb-types.h:80
bool LLDB_API operator==(const SBAddress &lhs, const SBAddress &rhs)
Definition: SBAddress.cpp:60