summaryrefslogtreecommitdiff
path: root/src/mongo/db/matcher
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/matcher')
-rw-r--r--src/mongo/db/matcher/expression.h4
-rw-r--r--src/mongo/db/matcher/expression_algo.h4
-rw-r--r--src/mongo/db/matcher/expression_parser.cpp60
-rw-r--r--src/mongo/db/matcher/expression_parser.h3
-rw-r--r--src/mongo/db/matcher/schema/expression_internal_schema_str_length.h5
5 files changed, 39 insertions, 37 deletions
diff --git a/src/mongo/db/matcher/expression.h b/src/mongo/db/matcher/expression.h
index e3e3d652b4a..50a0aac4578 100644
--- a/src/mongo/db/matcher/expression.h
+++ b/src/mongo/db/matcher/expression.h
@@ -29,6 +29,7 @@
#pragma once
+#include <functional>
#include "mongo/base/status.h"
#include "mongo/bson/bsonobj.h"
@@ -36,7 +37,6 @@
#include "mongo/db/matcher/match_details.h"
#include "mongo/db/matcher/matchable.h"
#include "mongo/db/pipeline/dependencies.h"
-#include "mongo/stdx/functional.h"
#include "mongo/stdx/memory.h"
#include "mongo/util/fail_point_service.h"
@@ -332,7 +332,7 @@ protected:
* in the specification of MatchExpression::getOptimizer(std::unique_ptr<MatchExpression>).
*/
using ExpressionOptimizerFunc =
- stdx::function<std::unique_ptr<MatchExpression>(std::unique_ptr<MatchExpression>)>;
+ std::function<std::unique_ptr<MatchExpression>(std::unique_ptr<MatchExpression>)>;
/**
* Subclasses that are collation-aware must implement this method in order to capture changes
diff --git a/src/mongo/db/matcher/expression_algo.h b/src/mongo/db/matcher/expression_algo.h
index 0f97c19a8d6..835500a6948 100644
--- a/src/mongo/db/matcher/expression_algo.h
+++ b/src/mongo/db/matcher/expression_algo.h
@@ -29,11 +29,11 @@
#pragma once
+#include <functional>
#include <memory>
#include <set>
#include "mongo/base/string_data.h"
-#include "mongo/stdx/functional.h"
#include "mongo/util/string_map.h"
namespace mongo {
@@ -43,7 +43,7 @@ struct DepsTracker;
namespace expression {
-using NodeTraversalFunc = stdx::function<void(MatchExpression*, std::string)>;
+using NodeTraversalFunc = std::function<void(MatchExpression*, std::string)>;
/**
* Returns true if the documents matched by 'lhs' are a subset of the documents matched by
diff --git a/src/mongo/db/matcher/expression_parser.cpp b/src/mongo/db/matcher/expression_parser.cpp
index ede09820502..e65d6885227 100644
--- a/src/mongo/db/matcher/expression_parser.cpp
+++ b/src/mongo/db/matcher/expression_parser.cpp
@@ -127,12 +127,12 @@ Status parseSub(StringData name,
MatchExpressionParser::AllowedFeatureSet allowedFeatures,
DocumentParseLevel currentLevel);
-stdx::function<StatusWithMatchExpression(StringData,
- BSONElement,
- const boost::intrusive_ptr<ExpressionContext>&,
- const ExtensionsCallback*,
- MatchExpressionParser::AllowedFeatureSet,
- DocumentParseLevel)>
+std::function<StatusWithMatchExpression(StringData,
+ BSONElement,
+ const boost::intrusive_ptr<ExpressionContext>&,
+ const ExtensionsCallback*,
+ MatchExpressionParser::AllowedFeatureSet,
+ DocumentParseLevel)>
retrievePathlessParser(StringData name);
StatusWithMatchExpression parseRegexElement(StringData name, BSONElement e) {
@@ -1748,29 +1748,29 @@ StatusWithMatchExpression MatchExpressionParser::parse(
namespace {
// Maps from query operator string name to function.
std::unique_ptr<StringMap<
- stdx::function<StatusWithMatchExpression(StringData,
- BSONElement,
- const boost::intrusive_ptr<ExpressionContext>&,
- const ExtensionsCallback*,
- MatchExpressionParser::AllowedFeatureSet,
- DocumentParseLevel)>>>
+ std::function<StatusWithMatchExpression(StringData,
+ BSONElement,
+ const boost::intrusive_ptr<ExpressionContext>&,
+ const ExtensionsCallback*,
+ MatchExpressionParser::AllowedFeatureSet,
+ DocumentParseLevel)>>>
pathlessOperatorMap;
MONGO_INITIALIZER(PathlessOperatorMap)(InitializerContext* context) {
pathlessOperatorMap = stdx::make_unique<StringMap<
- stdx::function<StatusWithMatchExpression(StringData,
- BSONElement,
- const boost::intrusive_ptr<ExpressionContext>&,
- const ExtensionsCallback*,
- MatchExpressionParser::AllowedFeatureSet,
- DocumentParseLevel)>>>(
+ std::function<StatusWithMatchExpression(StringData,
+ BSONElement,
+ const boost::intrusive_ptr<ExpressionContext>&,
+ const ExtensionsCallback*,
+ MatchExpressionParser::AllowedFeatureSet,
+ DocumentParseLevel)>>>(
StringMap<
- stdx::function<StatusWithMatchExpression(StringData,
- BSONElement,
- const boost::intrusive_ptr<ExpressionContext>&,
- const ExtensionsCallback*,
- MatchExpressionParser::AllowedFeatureSet,
- DocumentParseLevel)>>{
+ std::function<StatusWithMatchExpression(StringData,
+ BSONElement,
+ const boost::intrusive_ptr<ExpressionContext>&,
+ const ExtensionsCallback*,
+ MatchExpressionParser::AllowedFeatureSet,
+ DocumentParseLevel)>>{
{"_internalSchemaAllowedProperties", &parseInternalSchemaAllowedProperties},
{"_internalSchemaCond",
&parseInternalSchemaFixedArityArgument<InternalSchemaCondMatchExpression>},
@@ -1858,12 +1858,12 @@ MONGO_INITIALIZER(MatchExpressionParser)(InitializerContext* context) {
* Returns the proper parser for the indicated pathless operator. Returns 'null' if 'name'
* doesn't represent a known type.
*/
-stdx::function<StatusWithMatchExpression(StringData,
- BSONElement,
- const boost::intrusive_ptr<ExpressionContext>&,
- const ExtensionsCallback*,
- MatchExpressionParser::AllowedFeatureSet,
- DocumentParseLevel)>
+std::function<StatusWithMatchExpression(StringData,
+ BSONElement,
+ const boost::intrusive_ptr<ExpressionContext>&,
+ const ExtensionsCallback*,
+ MatchExpressionParser::AllowedFeatureSet,
+ DocumentParseLevel)>
retrievePathlessParser(StringData name) {
auto func = pathlessOperatorMap->find(name);
if (func == pathlessOperatorMap->end()) {
diff --git a/src/mongo/db/matcher/expression_parser.h b/src/mongo/db/matcher/expression_parser.h
index 40aa8eb965a..b4048949055 100644
--- a/src/mongo/db/matcher/expression_parser.h
+++ b/src/mongo/db/matcher/expression_parser.h
@@ -29,6 +29,8 @@
#pragma once
+#include <functional>
+
#include "mongo/base/status.h"
#include "mongo/base/status_with.h"
#include "mongo/db/matcher/expression.h"
@@ -41,7 +43,6 @@
#include "mongo/db/matcher/schema/expression_internal_schema_allowed_properties.h"
#include "mongo/db/pipeline/expression.h"
#include "mongo/db/pipeline/expression_context.h"
-#include "mongo/stdx/functional.h"
namespace mongo {
diff --git a/src/mongo/db/matcher/schema/expression_internal_schema_str_length.h b/src/mongo/db/matcher/schema/expression_internal_schema_str_length.h
index 12ade1d8fc0..8721a8d718a 100644
--- a/src/mongo/db/matcher/schema/expression_internal_schema_str_length.h
+++ b/src/mongo/db/matcher/schema/expression_internal_schema_str_length.h
@@ -29,15 +29,16 @@
#pragma once
+#include <functional>
+
#include "mongo/base/string_data.h"
#include "mongo/db/matcher/expression_leaf.h"
-#include "mongo/stdx/functional.h"
namespace mongo {
class InternalSchemaStrLengthMatchExpression : public LeafMatchExpression {
public:
- using Validator = stdx::function<bool(int)>;
+ using Validator = std::function<bool(int)>;
InternalSchemaStrLengthMatchExpression(MatchType type,
StringData path,