Avoids string copy by working with pointers while resolving variables

This commit is contained in:
Felipe Zimmerle
2016-12-27 15:25:11 -03:00
parent 7834cf857b
commit a7f465cf3a
38 changed files with 179 additions and 94 deletions

View File

@@ -29,13 +29,12 @@ namespace Variables {
void Duration::evaluateInternal(Transaction *transaction,
std::vector<const collection::Variable *> *l) {
std::string res;
double e = utils::cpu_seconds() - transaction->m_creationTimeStamp;
res = std::to_string(e);
transaction->m_variableDuration.assign(std::to_string(e));
l->push_back(new collection::Variable("DURATION", std::string(res)));
l->push_back(new collection::Variable(&m_retName,
&transaction->m_variableDuration));
}