1 //===-- ExceptionBreakpoint.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_TOOLS_LLDB_VSCODE_EXCEPTIONBREAKPOINT_H 10 #define LLDB_TOOLS_LLDB_VSCODE_EXCEPTIONBREAKPOINT_H 11 12 #include <string> 13 14 #include "lldb/API/SBBreakpoint.h" 15 16 namespace lldb_vscode { 17 18 struct ExceptionBreakpoint { 19 std::string filter; 20 std::string label; 21 lldb::LanguageType language; 22 bool default_value; 23 lldb::SBBreakpoint bp; ExceptionBreakpointExceptionBreakpoint24 ExceptionBreakpoint(std::string f, std::string l, lldb::LanguageType lang) 25 : filter(std::move(f)), label(std::move(l)), language(lang), 26 default_value(false), bp() {} 27 28 void SetBreakpoint(); 29 void ClearBreakpoint(); 30 }; 31 32 } // namespace lldb_vscode 33 34 #endif 35