1 //===-- CommandObjectBreakpoint.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_SOURCE_COMMANDS_COMMANDOBJECTBREAKPOINT_H 10 #define LLDB_SOURCE_COMMANDS_COMMANDOBJECTBREAKPOINT_H 11 12 #include "lldb/Breakpoint/BreakpointName.h" 13 #include "lldb/Interpreter/CommandObjectMultiword.h" 14 15 namespace lldb_private { 16 17 // CommandObjectMultiwordBreakpoint 18 19 class CommandObjectMultiwordBreakpoint : public CommandObjectMultiword { 20 public: 21 CommandObjectMultiwordBreakpoint(CommandInterpreter &interpreter); 22 23 ~CommandObjectMultiwordBreakpoint() override; 24 VerifyBreakpointOrLocationIDs(Args & args,Target * target,CommandReturnObject & result,BreakpointIDList * valid_ids,BreakpointName::Permissions::PermissionKinds purpose)25 static void VerifyBreakpointOrLocationIDs( 26 Args &args, Target *target, CommandReturnObject &result, 27 BreakpointIDList *valid_ids, 28 BreakpointName::Permissions ::PermissionKinds purpose) { 29 VerifyIDs(args, target, true, result, valid_ids, purpose); 30 } 31 32 static void VerifyBreakpointIDs(Args & args,Target * target,CommandReturnObject & result,BreakpointIDList * valid_ids,BreakpointName::Permissions::PermissionKinds purpose)33 VerifyBreakpointIDs(Args &args, Target *target, CommandReturnObject &result, 34 BreakpointIDList *valid_ids, 35 BreakpointName::Permissions::PermissionKinds purpose) { 36 VerifyIDs(args, target, false, result, valid_ids, purpose); 37 } 38 39 private: 40 static void VerifyIDs(Args &args, Target *target, bool allow_locations, 41 CommandReturnObject &result, 42 BreakpointIDList *valid_ids, 43 BreakpointName::Permissions::PermissionKinds purpose); 44 }; 45 46 } // namespace lldb_private 47 48 #endif // LLDB_SOURCE_COMMANDS_COMMANDOBJECTBREAKPOINT_H 49