forked from eranif/codelite
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathexpression_result.cpp
45 lines (39 loc) · 894 Bytes
/
expression_result.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include "expression_result.h"
#define BOOL_TO_STR(b) b ? "true" : "false"
ExpressionResult::ExpressionResult()
{
Reset();
}
ExpressionResult::~ExpressionResult()
{
}
void ExpressionResult::Print()
{
printf("%s\n", ToString().c_str());
}
std::string ExpressionResult::ToString() const
{
char tmp[256];
sprintf(tmp, "{m_name:%s, m_isFunc:%s, m_isTemplate:%s, m_isThis:%s, m_isaType:%s, m_isPtr:%s, m_scope:%s, m_templateInitList:%s}",
m_name.c_str(),
BOOL_TO_STR(m_isFunc),
BOOL_TO_STR(m_isTemplate),
BOOL_TO_STR(m_isThis),
BOOL_TO_STR(m_isaType),
BOOL_TO_STR(m_isPtr),
m_scope.c_str(),
m_templateInitList.c_str());
return tmp;
}
void ExpressionResult::Reset()
{
m_isFunc = false;
m_name = "";
m_isThis = false;
m_isaType = false;
m_isPtr = false;
m_scope = "";
m_isTemplate = false;
m_isGlobalScope = false;
m_templateInitList = "";
}