1 //===-- CallFrameInfo.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_SYMBOL_CALLFRAMEINFO_H
10 #define LLDB_SYMBOL_CALLFRAMEINFO_H
11 
12 #include "lldb/Core/Address.h"
13 
14 namespace lldb_private {
15 
16 class CallFrameInfo {
17 public:
18   virtual ~CallFrameInfo() = default;
19 
20   virtual bool GetAddressRange(Address addr, AddressRange &range) = 0;
21 
22   virtual bool GetUnwindPlan(const Address &addr, UnwindPlan &unwind_plan) = 0;
23   virtual bool GetUnwindPlan(const AddressRange &range, UnwindPlan &unwind_plan) = 0;
24 };
25 
26 } // namespace lldb_private
27 
28 #endif // LLDB_SYMBOL_CALLFRAMEINFO_H
29