1//===-- DWARFDebugRanges.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_SOURCE_PLUGINS_SYMBOLFILE_DWARF_DWARFDEBUGRANGES_H
10#define LLDB_SOURCE_PLUGINS_SYMBOLFILE_DWARF_DWARFDEBUGRANGES_H
11
12#include "lldb/Core/dwarf.h"
13#include <map>
14
15namespace lldb_private::plugin {
16namespace dwarf {
17class DWARFUnit;
18class DWARFContext;
19
20class DWARFDebugRanges {
21public:
22 DWARFDebugRanges();
23
24 void Extract(DWARFContext &context);
25 DWARFRangeList FindRanges(const DWARFUnit *cu,
26 dw_offset_t debug_ranges_offset) const;
27
28protected:
29 std::map<dw_offset_t, DWARFRangeList> m_range_map;
30};
31} // namespace dwarf
32} // namespace lldb_private::plugin
33
34#endif // LLDB_SOURCE_PLUGINS_SYMBOLFILE_DWARF_DWARFDEBUGRANGES_H
35

source code of lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugRanges.h