forked from qt-creator/qt-creator
Debugger[CDB]: Refactor breakpoint handling.
Add a command to list breakpoints enabling id access. Implemented breakpoint handling similar to gdb using breakpoint ids (no longer delete and re-set all breakpoints on a change). Save the module that is reported back in the session so that it can be re-used for the next start. Keep a per-debugger-session cache of fileName->Module for adding breakpoints to accelerate setting breakpoints in the same file. Polish the breakpoint tooltip.
This commit is contained in:
@@ -34,6 +34,8 @@
|
||||
#ifndef CDBPARSEHELPERS_H
|
||||
#define CDBPARSEHELPERS_H
|
||||
|
||||
#include "breakpoint.h"
|
||||
|
||||
#include <QtCore/QtGlobal>
|
||||
#include <QtCore/QList>
|
||||
#include <QtCore/QVector>
|
||||
@@ -53,7 +55,11 @@ class Register;
|
||||
class GdbMi;
|
||||
|
||||
// Convert breakpoint in CDB syntax.
|
||||
QByteArray cdbAddBreakpointCommand(const BreakpointParameters &d, bool oneshot = false, int id = -1);
|
||||
QByteArray cdbAddBreakpointCommand(const BreakpointParameters &d, BreakpointId id = BreakpointId(-1), bool oneshot = false);
|
||||
// Parse extension command listing breakpoints.
|
||||
// Note that not all fields are returned, since file, line, function are encoded
|
||||
// in the expression (that is in addition deleted on resolving for a bp-type breakpoint).
|
||||
BreakpointId parseBreakPoint(const GdbMi &gdbmi, BreakpointResponse *r, QString *expression = 0);
|
||||
|
||||
// Convert a CDB integer value: '00000000`0012a290' -> '12a290', '0n10' ->'10'
|
||||
QByteArray fixCdbIntegerValue(QByteArray t, bool stripLeadingZeros = false, int *basePtr = 0);
|
||||
|
||||
Reference in New Issue
Block a user