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
15namespace lldb_private {
16
17// CommandObjectMultiwordBreakpoint
18
19class CommandObjectMultiwordBreakpoint : public CommandObjectMultiword {
20public:
21 CommandObjectMultiwordBreakpoint(CommandInterpreter &interpreter);
22
23 ~CommandObjectMultiwordBreakpoint() override;
24
25 static void VerifyBreakpointOrLocationIDs(
26 Args &args, Target *target, CommandReturnObject &result,
27 BreakpointIDList *valid_ids,
28 BreakpointName::Permissions ::PermissionKinds purpose) {
29 VerifyIDs(args, target, allow_locations: true, result, valid_ids, purpose);
30 }
31
32 static void
33 VerifyBreakpointIDs(Args &args, Target *target, CommandReturnObject &result,
34 BreakpointIDList *valid_ids,
35 BreakpointName::Permissions::PermissionKinds purpose) {
36 VerifyIDs(args, target, allow_locations: false, result, valid_ids, purpose);
37 }
38
39private:
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

source code of lldb/source/Commands/CommandObjectBreakpoint.h