#include "CommandObjectBreakpoint.h"
#include "CommandObjectBreakpointCommand.h"
#include "lldb/Breakpoint/Breakpoint.h"
#include "lldb/Breakpoint/BreakpointIDList.h"
#include "lldb/Breakpoint/BreakpointLocation.h"
#include "lldb/Host/OptionParser.h"
#include "lldb/Interpreter/CommandInterpreter.h"
#include "lldb/Interpreter/CommandOptionArgumentTable.h"
#include "lldb/Interpreter/CommandReturnObject.h"
#include "lldb/Interpreter/OptionArgParser.h"
#include "lldb/Interpreter/OptionGroupPythonClassWithDict.h"
#include "lldb/Interpreter/OptionValueBoolean.h"
#include "lldb/Interpreter/OptionValueFileColonLine.h"
#include "lldb/Interpreter/OptionValueString.h"
#include "lldb/Interpreter/OptionValueUInt64.h"
#include "lldb/Interpreter/Options.h"
#include "lldb/Target/Language.h"
#include "lldb/Target/StackFrame.h"
#include "lldb/Target/Target.h"
#include "lldb/Target/ThreadSpec.h"
#include "lldb/Utility/RegularExpression.h"
#include "lldb/Utility/StreamString.h"
#include <memory>
#include <optional>
#include <vector>
usingnamespacelldb;
usingnamespacelldb_private;
static void AddBreakpointDescription(Stream *s, Breakpoint *bp,
lldb::DescriptionLevel level) { … }
#pragma mark Modify::CommandOptions
#define LLDB_OPTIONS_breakpoint_modify
#include "CommandOptions.inc"
class lldb_private::BreakpointOptionGroup : public OptionGroup { … };
#define LLDB_OPTIONS_breakpoint_dummy
#include "CommandOptions.inc"
class BreakpointDummyOptionGroup : public OptionGroup { … };
#define LLDB_OPTIONS_breakpoint_set
#include "CommandOptions.inc"
class CommandObjectBreakpointSet : public CommandObjectParsed { … };
#pragma mark Modify
class CommandObjectBreakpointModify : public CommandObjectParsed { … };
#pragma mark Enable
class CommandObjectBreakpointEnable : public CommandObjectParsed { … };
#pragma mark Disable
class CommandObjectBreakpointDisable : public CommandObjectParsed { … };
#pragma mark List::CommandOptions
#define LLDB_OPTIONS_breakpoint_list
#include "CommandOptions.inc"
#pragma mark List
class CommandObjectBreakpointList : public CommandObjectParsed { … };
#pragma mark Clear::CommandOptions
#define LLDB_OPTIONS_breakpoint_clear
#include "CommandOptions.inc"
#pragma mark Clear
class CommandObjectBreakpointClear : public CommandObjectParsed { … };
#define LLDB_OPTIONS_breakpoint_delete
#include "CommandOptions.inc"
#pragma mark Delete
class CommandObjectBreakpointDelete : public CommandObjectParsed { … };
#define LLDB_OPTIONS_breakpoint_name
#include "CommandOptions.inc"
class BreakpointNameOptionGroup : public OptionGroup { … };
#define LLDB_OPTIONS_breakpoint_access
#include "CommandOptions.inc"
class BreakpointAccessOptionGroup : public OptionGroup { … };
class CommandObjectBreakpointNameConfigure : public CommandObjectParsed { … };
class CommandObjectBreakpointNameAdd : public CommandObjectParsed { … };
class CommandObjectBreakpointNameDelete : public CommandObjectParsed { … };
class CommandObjectBreakpointNameList : public CommandObjectParsed { … };
class CommandObjectBreakpointName : public CommandObjectMultiword { … };
#pragma mark Read::CommandOptions
#define LLDB_OPTIONS_breakpoint_read
#include "CommandOptions.inc"
#pragma mark Read
class CommandObjectBreakpointRead : public CommandObjectParsed { … };
#pragma mark Write::CommandOptions
#define LLDB_OPTIONS_breakpoint_write
#include "CommandOptions.inc"
#pragma mark Write
class CommandObjectBreakpointWrite : public CommandObjectParsed { … };
#pragma mark MultiwordBreakpoint
CommandObjectMultiwordBreakpoint::CommandObjectMultiwordBreakpoint(
CommandInterpreter &interpreter)
: … { … }
CommandObjectMultiwordBreakpoint::~CommandObjectMultiwordBreakpoint() = default;
void CommandObjectMultiwordBreakpoint::VerifyIDs(
Args &args, Target &target, bool allow_locations,
CommandReturnObject &result, BreakpointIDList *valid_ids,
BreakpointName::Permissions ::PermissionKinds purpose) { … }