Debugger: Generalize Locals&Expression tree item parsing

An intermediate step to move the engines one by one to direct
WatchItem construction.

Change-Id: I563582498c4eeb3d604dfa046722133ab6d24650
Reviewed-by: hjk <hjk@theqtcompany.com>
This commit is contained in:
hjk
2015-01-28 10:20:01 +01:00
parent e9237c20c6
commit d7f364f915
2 changed files with 39 additions and 6 deletions

View File

@@ -34,6 +34,8 @@
#include <QCoreApplication>
#include <QMetaType>
#include <functional>
namespace Debugger {
namespace Internal {
@@ -151,6 +153,16 @@ public:
qint32 source; // Originated from dumper or symbol evaluation? (CDB only)
};
void parseChildrenData(const QSet<QByteArray> &expandedINames,
const WatchData &parent, const GdbMi &child,
std::function<void(const WatchData &)> itemHandler,
std::function<void(const QSet<QByteArray> &,
const WatchData &,
const GdbMi &)> childHandler,
std::function<void(const WatchData &childTemplate,
const QByteArray &encodedData,
int encoding)> arrayDecoder);
void parseWatchData(const QSet<QByteArray> &expandedINames,
const WatchData &parent, const GdbMi &child,
QList<WatchData> *insertions);