83 return "stack is empty";
101 if ( !
id.GetName().
empty() ) {
126 size_t newSize = oldSize * 2;
131 for (
size_t i = 0;
i < oldSize; ++
i )
136 for (
size_t i = oldSize;
i < newSize; ++
i )
230 const string& member = mem_id.
GetName();
231 if (!member.empty()) {
282 const string& member = mem_id.
GetName();
283 if (!member.empty()) {
311 for (s=1; s <
depth; ++s) {
371 default: s =
"UNKNOWN";
break;
384 #if defined(NCBI_SERIAL_IO_TRACE)
386 void CObjectStack::TracePushFrame(
bool push)
const
401 string info(
" Frame type= ");
423 if ( !
id.GetName().
empty() ) {
424 info +=
id.GetName();
CTempString implements a light-weight string on top of a storage buffer whose lifetime management is ...
CTypeInfo class contains all information about C++ types (both basic and classes): members and layout...
Include a standard set of the NCBI C++ Toolkit most basic headers.
static unsigned char depth[2 *(256+1+29)+1]
ENsQualifiedMode IsNsQualified(void) const
bool IsAttlist(void) const
const string & GetName(void) const
bool IsCompressed(void) const
bool HasNotag(void) const
ENsQualifiedMode
Defines namespace qualification of XML tags.
size_t TMemberIndex
Type used for indexing class members and choice variants.
const TMemberIndex kInvalidMember
Special value returned from FindMember.
static ETypeFamily GetRealTypeFamily(TTypeInfo typeInfo)
virtual ~CObjectStack(void)
const char * GetFrameTypeName(void) const
ENsQualifiedMode IsNsQualified(void) const
string GetFrameInfo(void) const
bool GetNotag(void) const
static TTypeInfo GetRealTypeInfo(TTypeInfo typeInfo)
bool HasTypeInfo(void) const
void ResetPathHooks(void)
bool IsCompressed(void) const
const string & GetStackPath(void) const
virtual void x_SetPathHooks(bool set)=0
TFrame & FetchFrameFromTop(size_t index)
void SetNsQualified(ENsQualifiedMode mode)
string GetStackTraceASN(void) const
set< CPathHook * > m_PathHooks
void x_PushStackPath(void)
const CMemberId * m_MemberId
static TTypeInfo GetContainerElementTypeInfo(TTypeInfo typeInfo)
size_t GetStackDepth(void) const
static ETypeFamily GetContainerElementTypeFamily(TTypeInfo typeInfo)
bool IsKnownElement(const CTempString &name) const
const TFrame & TopFrame(void) const
TTypeInfo GetTypeInfo(void) const
string GetFrameName(void) const
bool StackIsEmpty(void) const
const CMemberId & GetMemberId(void) const
TFrame & PushFrameLong(void)
virtual void ResetState(void)
bool HasMemberId(void) const
EFrameType GetFrameType(void) const
void x_PopStackPath(void)
const TFrame & FetchFrameFromBottom(size_t index) const
virtual void UnendedFrame(void)
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
static string IntToString(int value, TNumToStringFlags flags=0, int base=10)
Convert int to string.
const string & GetName(void) const
Get name of this type.
ETypeFamily GetTypeFamily(void) const
TTypeInfo GetPointedType(void) const
ENsQualifiedMode IsNsQualified(void) const
Get namespace 'qualified' property.
TTypeInfo GetElementType(void) const
unsigned int
A callback function used to compare two keys in a database.
constexpr bool empty(list< Ts... >) noexcept
static const size_t KInitialStackSize
static const string & GetModuleName(const char *moduleName)