SymbolGroup Class
The SymbolGroup class creates a symbol group storing a tree of expanded symbols rooted on a fake "locals" root element. More...
Header: | #include <SymbolGroup> |
Inherited By: |
Public Types
typedef | AbstractSymbolGroupNodePtrVector |
typedef | SymbolParameterVector |
Public Functions
virtual | ~SymbolGroup() |
bool | accept(SymbolGroupNodeVisitor &visitor) const |
SymbolGroupNode * | addSymbol(const std::string &module, const std::string &name, const std::string &displayName, const std::string &iname, std::string *errorMessage) |
SymbolGroupNode * | addSymbol(const std::string &module, const std::string &name, const std::string &iname, std::string *errorMessage) |
bool | assign(const std::string &node, int valueEncoding, const std::string &value, const SymbolGroupValueContext &ctx, std::string *errorMessage) |
bool | collapse(const std::string &node, std::string *errorMessage) |
std::string | debug(const std::string &iname = std::string(), const std::string &filter = std::string(), unsigned int verbosity = 0) const |
CIDebugSymbolGroup * | debugSymbolGroup() const |
std::string | dump(const SymbolGroupValueContext &ctx, const DumpParameters &p = DumpParameters()) const |
std::string | dump(const std::string &iname, const SymbolGroupValueContext &ctx, const DumpParameters &p, std::string *errorMessage) |
bool | expand(const std::string &node, std::string *errorMessage) |
unsigned int | expandList(const int &nodes, std::string *errorMessage) |
unsigned int | expandListRunComplexDumpers(const int &nodes, const SymbolGroupValueContext &ctx, std::string *errorMessage) |
bool | expandRunComplexDumpers(const std::string &node, const SymbolGroupValueContext &ctx, std::string *errorMessage) |
AbstractSymbolGroupNode * | find(const std::string &iname) const |
void | markUninitialized(const int &nodes) |
SymbolGroupNode * | root() |
const SymbolGroupNode * | root() const |
bool | typeCast(const std::string &iname, const std::string &desiredType, std::string *errorMessage) |
Static Public Members
bool | getSymbolParameters(CIDebugSymbolGroup *m_symbolGroup, unsigned long start, unsigned long count, SymbolGroup::SymbolParameterVector *vec, std::string *errorMessage) |
Protected Functions
SymbolGroup(CIDebugSymbolGroup *, const SymbolGroup::SymbolParameterVector &vec, const std::string &rootModule, const char *rootName) | |
bool | removeSymbol(AbstractSymbolGroupNode *n, std::string *errorMessage) |
Static Protected Members
bool | getSymbolParameters(CIDebugSymbolGroup *m_symbolGroup, SymbolGroup::SymbolParameterVector *vec, std::string *errorMessage) |
Detailed Description
The SymbolGroup class creates a symbol group storing a tree of expanded symbols rooted on a fake "locals" root element.
Provides a find() function based on inames ("locals.this.i1.data") and dump() functions used for GDBMI-format dumping and debug helpers. Qt Creator's WatchModel is fed from this class. It basically represents the symbol group tree with some additional node types (Reference and Map Node types.
Member Type Documentation
typedef SymbolGroup::AbstractSymbolGroupNodePtrVector
typedef SymbolGroup::SymbolParameterVector
Member Function Documentation
[protected]
SymbolGroup::SymbolGroup(CIDebugSymbolGroup *, const SymbolGroup::SymbolParameterVector &vec, const std::string &rootModule, const char *rootName)
Default constructs an instance of SymbolGroup.
[virtual]
SymbolGroup::~SymbolGroup()
Destroys the instance of SymbolGroup. The destructor is virtual.