summaryrefslogtreecommitdiff
path: root/src/mongo/db/matcher/expression_text.cpp
diff options
context:
space:
mode:
authorQingyang Chen <qingyang.chen@10gen.com>2015-06-24 15:44:52 -0400
committerQingyang Chen <qingyang.chen@10gen.com>2015-06-26 16:50:26 -0400
commitbadc2ac4496c47ae2bbdebf47888a1a5449a22a1 (patch)
tree5b4f1fbc76af3301048ecc14233c1e1143d11b0e /src/mongo/db/matcher/expression_text.cpp
parent9ad1597c2d2ead08a74bd8f53a8458d0f7cb3987 (diff)
downloadmongo-badc2ac4496c47ae2bbdebf47888a1a5449a22a1.tar.gz
SERVER-16889 MatchExpression::shallowClone() return unique_ptr<ME>
Diffstat (limited to 'src/mongo/db/matcher/expression_text.cpp')
-rw-r--r--src/mongo/db/matcher/expression_text.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/mongo/db/matcher/expression_text.cpp b/src/mongo/db/matcher/expression_text.cpp
index e1f1ccd065f..34ea527e6ca 100644
--- a/src/mongo/db/matcher/expression_text.cpp
+++ b/src/mongo/db/matcher/expression_text.cpp
@@ -30,10 +30,13 @@
#include "mongo/platform/basic.h"
#include "mongo/db/matcher/expression_text.h"
+#include "mongo/stdx/memory.h"
namespace mongo {
using std::string;
+using std::unique_ptr;
+using stdx::make_unique;
Status TextMatchExpression::init(const string& query, const string& language, bool caseSensitive) {
_query = query;
@@ -88,12 +91,12 @@ bool TextMatchExpression::equivalent(const MatchExpression* other) const {
return true;
}
-LeafMatchExpression* TextMatchExpression::shallowClone() const {
- TextMatchExpression* next = new TextMatchExpression();
+unique_ptr<MatchExpression> TextMatchExpression::shallowClone() const {
+ unique_ptr<TextMatchExpression> next = make_unique<TextMatchExpression>();
next->init(_query, _language, _caseSensitive);
if (getTag()) {
next->setTag(getTag()->clone());
}
- return next;
+ return std::move(next);
}
}