This simply constrained (value-semantic) attribute class describes a call frame created on the execution stack when a parent function calls a child function.
Declared in <balst_stacktraceframe.h>
class StackTraceFrame;
Supplementary predicate methods indicate whether a given attribute value is considered "unknown". See the section for infromation on the class attributes. Note that the class invariants are identically the constraints on the individual attributes.
| Name | Description |
|---|---|
StackTraceFrame [constructor] | Constructors |
~StackTraceFrame [destructor] | Destroy this object. |
operator= | Assign to this object the value of the specified rhs object, and return a reference providing modifiable access to this object. |
address | Return the value of address attribute of this object. Note that (void *)0 indicates that the address is "unknown". |
allocator | Return the allocator used by this object to supply memory. |
isAddressKnown | Return true if the setAddress attribute of this object is not the "unknown" value for that attribute, and false otherwise. |
isLibraryFileNameKnown | Return true if the libraryFileName attribute of this object is not the "unknown" value for that attribute, and false otherwise. |
isLineNumberKnown | Return true if the lineNumber attribute of this object is not the "unknown" value for that attribute, and false otherwise. |
isMangledSymbolNameKnown | Return whether the mangled symbol name attribute is known. |
isOffsetFromSymbolKnown | Return true if the offsetFromSymbol attribute of this object is not the "unknown" value for that attribute, and false otherwise. |
isSourceFileNameKnown | Return true if the sourceFileName attribute of this object is not the "unknown" value for that attribute, and false otherwise. |
isSymbolNameKnown | Return true if the symbolName attribute of this object is not the "unknown" value for that attribute, and false otherwise. |
libraryFileName | Return a reference providing non-modifiable access to the libraryFileName attribute of this object. |
lineNumber | Return the value of the lineNumber attribute of this object. Note that -1 indicates that lineNumber is "unknown". |
mangledSymbolName | Return a reference providing non-modifiable access to the mangledSymbolName attribute of this object. |
offsetFromSymbol | Return the value of the offsetFromSymbol attribute of this object. Note that (bsl::size_t)-1 indicates that lineNumber is not known. |
print | Format this object to the specified output stream. |
setAddress | Set the address attribute of this object to the specified value. Note that the value (void *)0) indicates that address is "unknown". |
setLibraryFileName | Set the libraryFileName attribute of this object to the specified value. Note that the empty string indicates the libraryFileName is "unknown". |
setLineNumber | Set the lineNumber attribute of this object to the specified value. |
setMangledSymbolName | Set the mangledSymbolName attribute of this object to the specified value. Note that the empty string indicates that the mangledSymbolName is "unknown". |
setOffsetFromSymbol | Set the offsetFromSymbol attribute of this object to the specified value. Note that the value (bsl::size_t)-1 indicates that offsetFromSymbol is "unknown". |
setSourceFileName | Set the sourceFileName attribute of this object to the specified value. |
setSymbolName | Set the symbolName attribute of this object to the specified value. Note that the empty string indicates that symbolName is "unknown". |
sourceFileName | Return a reference providing non-modifiable access to the sourceFileName attribute of this object. |
swap | Efficiently exchange the value of this object with the value of the specified other object. |
symbolName | Return a reference providing non-modifiable access to the symbolName attribute of this object. |
operator BloombergLP::bslmf::NestedTraitDeclaration<StackTraceFrame, UsesBslmaAllocator> | StackTraceFrame uses a bslma allocator for its string members. |
| Name | Description |
|---|---|
operator!= | Return true if the specified lhs and rhs objects do not have the same value, and false otherwise. |
operator== | Return true if the specified lhs and rhs objects have the same value, and false otherwise. |
swap | Exchange the values of the specified a and b objects. |