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