]> CyberLeo.Net >> Repos - FreeBSD/releng/10.0.git/blob - contrib/llvm/tools/lldb/source/Core/AddressResolver.cpp
- Copy stable/10 (r259064) to releng/10.0 as part of the
[FreeBSD/releng/10.0.git] / contrib / llvm / tools / lldb / source / Core / AddressResolver.cpp
1 //===-- AddressResolver.cpp -------------------------------------*- C++ -*-===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9
10 #include "lldb/Core/AddressResolver.h"
11
12
13 // Project includes
14
15 #include "lldb/Core/Address.h"
16 #include "lldb/Core/Log.h"
17 #include "lldb/Core/ModuleList.h"
18 #include "lldb/Core/SearchFilter.h"
19 #include "lldb/Core/Stream.h"
20 #include "lldb/Core/StreamString.h"
21 #include "lldb/Symbol/SymbolContext.h"
22 #include "lldb/Target/Target.h"
23 #include "lldb/lldb-private-log.h"
24
25 using namespace lldb_private;
26
27 //----------------------------------------------------------------------
28 // AddressResolver:
29 //----------------------------------------------------------------------
30 AddressResolver::AddressResolver ()
31 {
32 }
33
34 AddressResolver::~AddressResolver ()
35 {
36
37 }
38
39 void
40 AddressResolver::ResolveAddressInModules (SearchFilter &filter, ModuleList &modules)
41 {
42     filter.SearchInModuleList(*this, modules);
43 }
44
45 void
46 AddressResolver::ResolveAddress (SearchFilter &filter)
47 {
48     filter.Search (*this);
49 }
50
51 std::vector<AddressRange> &
52 AddressResolver::GetAddressRanges ()
53 {
54     return m_address_ranges;
55 }
56
57 size_t
58 AddressResolver::GetNumberOfAddresses ()
59 {
60     return m_address_ranges.size();
61 }
62
63 AddressRange &
64 AddressResolver::GetAddressRangeAtIndex (size_t idx)
65 {
66   return m_address_ranges[idx];
67 }