xref: /src/contrib/llvm-project/lldb/source/Core/AddressResolver.cpp (revision fe6060f10f634930ff71b7c50291ddc610da2475)
1cfca06d7SDimitry Andric //===-- AddressResolver.cpp -----------------------------------------------===//
2f034231aSEd Maste //
35f29bb8aSDimitry Andric // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
45f29bb8aSDimitry Andric // See https://llvm.org/LICENSE.txt for license information.
55f29bb8aSDimitry Andric // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6f034231aSEd Maste //
7f034231aSEd Maste //===----------------------------------------------------------------------===//
8f034231aSEd Maste 
9f034231aSEd Maste #include "lldb/Core/AddressResolver.h"
10f034231aSEd Maste 
11f034231aSEd Maste #include "lldb/Core/SearchFilter.h"
1274a628f7SDimitry Andric 
1374a628f7SDimitry Andric namespace lldb_private {
1474a628f7SDimitry Andric class ModuleList;
1574a628f7SDimitry Andric }
16f034231aSEd Maste 
17f034231aSEd Maste using namespace lldb_private;
18f034231aSEd Maste 
19f034231aSEd Maste // AddressResolver:
20344a3780SDimitry Andric AddressResolver::AddressResolver() = default;
21f034231aSEd Maste 
22344a3780SDimitry Andric AddressResolver::~AddressResolver() = default;
23f034231aSEd Maste 
ResolveAddressInModules(SearchFilter & filter,ModuleList & modules)2414f1b3e8SDimitry Andric void AddressResolver::ResolveAddressInModules(SearchFilter &filter,
2514f1b3e8SDimitry Andric                                               ModuleList &modules) {
26f034231aSEd Maste   filter.SearchInModuleList(*this, modules);
27f034231aSEd Maste }
28f034231aSEd Maste 
ResolveAddress(SearchFilter & filter)2914f1b3e8SDimitry Andric void AddressResolver::ResolveAddress(SearchFilter &filter) {
30f034231aSEd Maste   filter.Search(*this);
31f034231aSEd Maste }
32f034231aSEd Maste 
GetAddressRanges()3314f1b3e8SDimitry Andric std::vector<AddressRange> &AddressResolver::GetAddressRanges() {
34f034231aSEd Maste   return m_address_ranges;
35f034231aSEd Maste }
36f034231aSEd Maste 
GetNumberOfAddresses()3714f1b3e8SDimitry Andric size_t AddressResolver::GetNumberOfAddresses() {
38f034231aSEd Maste   return m_address_ranges.size();
39f034231aSEd Maste }
40f034231aSEd Maste 
GetAddressRangeAtIndex(size_t idx)4114f1b3e8SDimitry Andric AddressRange &AddressResolver::GetAddressRangeAtIndex(size_t idx) {
42f034231aSEd Maste   return m_address_ranges[idx];
43f034231aSEd Maste }
44