1 | //===-- ReportRetriever.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 | #include "lldb/Target/Process.h" |
10 | |
11 | #ifndef LLDB_SOURCE_PLUGINS_INSTRUMENTATIONRUNTIME_UTILITY_REPORTRETRIEVER_H |
12 | #define LLDB_SOURCE_PLUGINS_INSTRUMENTATIONRUNTIME_UTILITY_REPORTRETRIEVER_H |
13 | |
14 | namespace lldb_private { |
15 | |
16 | class ReportRetriever { |
17 | private: |
18 | static StructuredData::ObjectSP |
19 | RetrieveReportData(const lldb::ProcessSP process_sp); |
20 | |
21 | static std::string FormatDescription(StructuredData::ObjectSP report); |
22 | |
23 | public: |
24 | static bool NotifyBreakpointHit(lldb::ProcessSP process_sp, |
25 | StoppointCallbackContext *context, |
26 | lldb::user_id_t break_id, |
27 | lldb::user_id_t break_loc_id); |
28 | |
29 | static Breakpoint *SetupBreakpoint(lldb::ModuleSP, lldb::ProcessSP, |
30 | ConstString); |
31 | }; |
32 | } // namespace lldb_private |
33 | |
34 | #endif // LLDB_SOURCE_PLUGINS_INSTRUMENTATIONRUNTIME_UTILITY_REPORTRETRIEVER_H |
35 | |