Use std::string for ConstantExpression::*value() methods.
Bug: 31633795 memory leaks are partly fixed
Test: `mma`
Change-Id: Ia9275b86ca6d7445f4832994b5a70a2e93993eb1
diff --git a/ConstantExpression.h b/ConstantExpression.h
index fe2d572..fc36bb7 100644
--- a/ConstantExpression.h
+++ b/ConstantExpression.h
@@ -50,15 +50,15 @@
const ConstantExpression *falseVal);
/* Original expression. */
- const char *expr() const;
+ std::string expr() const;
/* Evaluated result in a string form. */
- const char *value() const;
+ std::string value() const;
/* Evaluated result in a string form, with given contextual kind. */
- const char *cppValue(ScalarType::Kind castKind) const;
+ std::string cppValue(ScalarType::Kind castKind) const;
/* Evaluated result in a string form, with given contextual kind. */
- const char *javaValue(ScalarType::Kind castKind) const;
+ std::string javaValue(ScalarType::Kind castKind) const;
/* Original expression with type. */
- const char *description() const;
+ std::string description() const;
private:
/* The formatted expression. */
@@ -76,7 +76,7 @@
* Assumes mType != kConstExprUnknown */
template <typename T> T cast() const;
/* Helper function for value(ScalarType::Kind) */
- const char *value0(ScalarType::Kind castKind) const;
+ std::string value0(ScalarType::Kind castKind) const;
DISALLOW_COPY_AND_ASSIGN(ConstantExpression);
};