Predator
[unstable] git snapshot
|
#include <symheap.hh>
Public Member Functions | |
FldHandle () | |
FldHandle (SymHeapCore &sh, TObjId obj, TObjType clt, TOffset off=0) | |
FldHandle (const TFldId special) | |
FldHandle (const FldHandle &tpl) | |
FldHandle (SymHeapCore &sh, const FldHandle &tpl) | |
~FldHandle () | |
FldHandle & | operator= (const FldHandle &tpl) |
SymHeapCore * | sh () const |
return the SymHeapCore instance associated with this handle | |
TFldId | fieldId () const |
return raw field ID inside this handle (used mainly internally) | |
bool | isValidHandle () const |
true if the given handle is valid (does not imply field validity) | |
TObjId | obj () const |
return the object that the field is part of | |
TOffset | offset () const |
return the offset at which the field is placed within the object | |
TValId | value () const |
return the value inside the field (may trigger its initialization) | |
TValId | placedAt () const |
return the address of the field (may trigger address instantiation) | |
TObjType | type () const |
static type-info of the given object (return 0 if not available) | |
void | setValue (const TValId val, TValSet *killedPtrs=0) const |
assign the given value, caller is responsible for garbage collecting |
Protected Member Functions | |
FldHandle (SymHeapCore &sh, TFldId id) |
Protected Attributes | |
SymHeapCore * | sh_ |
TFldId | id_ |
Friends | |
class | SymHeapCore |
class | SymProc |
const char * | valNullLabel (const SymHeapCore &, TFldId) |
Definition at line 606 of file symheap.hh.
|
inline |
Definition at line 608 of file symheap.hh.
|
inline |
Definition at line 614 of file symheap.hh.
References SymHeapCore::fldEnter(), id_, and sh_.
Definition at line 622 of file symheap.hh.
References CL_BREAK_IF.
Definition at line 629 of file symheap.hh.
References SymHeapCore::fldEnter(), id_, and sh_.
|
inline |
Definition at line 637 of file symheap.hh.
References SymHeapCore::fldEnter(), id_, and sh_.
|
inline |
Definition at line 645 of file symheap.hh.
References SymHeapCore::fldLeave(), id_, and sh_.
|
inlineprotected |
Definition at line 697 of file symheap.hh.
References SymHeapCore::fldEnter(), id_, and sh_.
|
inline |
return raw field ID inside this handle (used mainly internally)
Definition at line 667 of file symheap.hh.
References id_.
Referenced by operator<(), and operator==().
|
inline |
true if the given handle is valid (does not imply field validity)
Definition at line 670 of file symheap.hh.
References id_.
Referenced by buildIgnoreList(), and type().
|
inline |
return the object that the field is part of
Definition at line 673 of file symheap.hh.
References id_, SymHeapCore::objByField(), and sh_.
|
inline |
return the offset at which the field is placed within the object
Definition at line 676 of file symheap.hh.
References SymHeapCore::fieldOffset(), id_, and sh_.
Referenced by translateFldHandle(), and traverseLiveFieldsGeneric().
Definition at line 650 of file symheap.hh.
References SymHeapCore::fldEnter(), SymHeapCore::fldLeave(), id_, and sh_.
|
inline |
return the address of the field (may trigger address instantiation)
Definition at line 682 of file symheap.hh.
References id_, SymHeapCore::placedAt(), and sh_.
assign the given value, caller is responsible for garbage collecting
Definition at line 692 of file symheap.hh.
References id_, SymHeapCore::setValOfField(), and sh_.
|
inline |
return the SymHeapCore instance associated with this handle
Definition at line 664 of file symheap.hh.
References sh_.
Referenced by operator==().
|
inline |
static type-info of the given object (return 0 if not available)
Definition at line 685 of file symheap.hh.
References SymHeapCore::fieldType(), id_, isValidHandle(), and sh_.
Referenced by translateFldHandle(), and traverseLiveFieldsGeneric().
|
inline |
return the value inside the field (may trigger its initialization)
Definition at line 679 of file symheap.hh.
References id_, sh_, and SymHeapCore::valueOf().
Referenced by nextValFromSeg(), and valOfPtr().
|
friend |
Definition at line 705 of file symheap.hh.
|
friend |
Definition at line 708 of file symheap.hh.
|
friend |
|
protected |
Definition at line 715 of file symheap.hh.
Referenced by fieldId(), FldHandle(), isValidHandle(), obj(), offset(), operator=(), placedAt(), PtrHandle::PtrHandle(), setValue(), type(), value(), and ~FldHandle().
|
protected |
Definition at line 714 of file symheap.hh.
Referenced by FldHandle(), obj(), offset(), operator=(), placedAt(), PtrHandle::PtrHandle(), setValue(), sh(), type(), value(), and ~FldHandle().