SymbolGroupValue Class
The SymbolGroupValue class is a flyweight tied to a SymbolGroupNode providing a convenient operator[] (name, index) and value getters for notation of dumpers. More...
Header: | #include <SymbolGroupValue> |
Public Types
typedef | Symbol |
typedef | SymbolList |
Public Functions
SymbolGroupValue(SymbolGroupNode *node, const SymbolGroupValueContext &c) | |
SymbolGroupValue() | |
SymbolGroupValue | addSymbol(const int address, const std::string &type) const |
SymbolGroupValue | addSymbolForAncestor(const std::string &ancestorName) const |
int | address() const |
int | addressOfAncestor(const std::string &) const |
unsigned int | childCount() const |
SymbolGroupValueContext | context() const |
std::string | error() const |
double | floatValue(double defaultValue = -999) const |
SymbolAncestorInfo | infoOfAncestor(const std::string &name) const |
int | innerTypes() const |
int | intValue(int defaultValue = -1) const |
bool | isValid() const |
std::string | module() const |
std::string | name() const |
SymbolGroupNode * | node() const |
int | offsetOfAncestor(const std::string &) const |
int | offsetOfChild(const SymbolGroupValue &) const |
SymbolGroupValue | parent() const |
unsigned char * | pointerData(unsigned int length) const |
SymbolGroupValue | pointerTypeCast(const char *type) const |
int | pointerValue(int) const |
int | readIntegerFromAncestor(const std::string &name, int defaultValue = -1) const |
int | readPointerValueFromAncestor(const std::string &) const |
unsigned int | size() const |
std::string | type() const |
SymbolGroupValue | typeCast(const char *type) const |
std::string | typeOfAncestor(const std::string &childName) const |
std::wstring | value() const |
std::wstring | wcharPointerData(unsigned int charCount, unsigned int maxCharCount = 512) const |
bool | operator bool() const |
SymbolGroupValue | operator[](const char *name) const |
SymbolGroupValue | operator[](unsigned int) const |
Static Public Members
std::string | addPointerType(const std::string &) |
unsigned int | fieldOffset(const char *type, const char *field) |
SymbolGroupValue | findMember(const SymbolGroupValue &start, const std::string &symbolName) |
int | getAllModuleNames(const SymbolGroupValueContext &, std::string *) |
int | innerTypesOf(const std::string &) |
unsigned int | intSize() |
bool | isArrayType(const std::string &) |
unsigned int | isMovable(const std::string &, const SymbolGroupValue &v) |
unsigned int | isPointerType(const std::string &) |
bool | isVTableType(const std::string &t) |
std::string | moduleOfType(const std::string &type) |
std::string | pointedToSymbolName(int address, const std::string &type) |
unsigned int | pointerDiffSize() |
unsigned int | pointerSize() |
std::string | pointerType(const std::string &type) |
double | readDouble(CIDebugDataSpaces *ds, int address, double defaultValue = 0.0, std::string *errorMessage = 0) |
int | readIntValue(CIDebugDataSpaces *ds, int address, int defaultValue = 0, std::string *errorMessage = 0) |
unsigned char * | readMemory(CIDebugDataSpaces *ds, int address, int length, std::string *errorMessage = 0) |
int | readPointerValue(CIDebugDataSpaces *, int, std::string *) |
int | readSignedValue(CIDebugDataSpaces *, int, int, int, std::string *) |
int | readUnsignedValue(CIDebugDataSpaces *, int, int, int, std::string *) |
SymbolGroupValue::SymbolList | resolveSymbol(const char *pattern, const SymbolGroupValueContext &c, std::string *errorMessage = 0) |
int | resolveSymbolName(const char *, const SymbolGroupValueContext &, std::string *) |
std::string | resolveType(const std::string &type, const SymbolGroupValueContext &ctx, const std::string ¤tModule = std::string()) |
unsigned int | sizeOf(const char *type) |
std::string | stripArrayType(const std::string &) |
std::string | stripClassPrefixes(const std::string &) |
std::string | stripConst(const std::string &type) |
std::string | stripModuleFromType(const std::string &type) |
std::string | stripPointerType(const std::string &) |
bool | writeMemory(CIDebugDataSpaces *ds, int address, const unsigned char *data, int length, std::string *errorMessage = 0) |
Detailed Description
The SymbolGroupValue class is a flyweight tied to a SymbolGroupNode providing a convenient operator[] (name, index) and value getters for notation of dumpers.
Inaccessible members return a SymbolGroupValue in state 'invalid'. Example:
SymbolGroupValue container(symbolGroupNode, symbolGroupValueContext); if (SymbolGroupValue sizeV = container["d"]["size"]) int size = sizeV.intValue()
Member Function Documentation
SymbolGroupValue::SymbolGroupValue(SymbolGroupNode *node, const SymbolGroupValueContext &c)
Default constructs an instance of SymbolGroupValue.
SymbolGroupValue::SymbolGroupValue()
Default constructs an instance of SymbolGroupValue.