summaryrefslogtreecommitdiff
path: root/src/mongo/db/matcher/expression_parser.h
diff options
context:
space:
mode:
authorAnne Lim <anne.lim@mongodb.com>2017-07-19 10:57:11 -0400
committerAnne Lim <anne.lim@mongodb.com>2017-07-19 18:08:09 -0400
commit634435949c4b855b9cc5bfbf5cf481d8158fd996 (patch)
treef473a7ac7ff49a92bb5447f97c0afad220eede77 /src/mongo/db/matcher/expression_parser.h
parente034bdc4be7de0326d34e982febf00505cf0d993 (diff)
downloadmongo-634435949c4b855b9cc5bfbf5cf481d8158fd996.tar.gz
SERVER-29583: Create $_internalSchemaMinProperties and $_internalSchemaMaxProperties MatchExpressions
Diffstat (limited to 'src/mongo/db/matcher/expression_parser.h')
-rw-r--r--src/mongo/db/matcher/expression_parser.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/mongo/db/matcher/expression_parser.h b/src/mongo/db/matcher/expression_parser.h
index b6a7f9c21c6..c3ec2a14c0c 100644
--- a/src/mongo/db/matcher/expression_parser.h
+++ b/src/mongo/db/matcher/expression_parser.h
@@ -210,6 +210,18 @@ private:
StatusWithMatchExpression _parseInternalSchemaSingleIntegerArgument(
const char* name, const BSONElement& elem) const;
+ /**
+ * Same as the _parseInternalSchemaSingleIntegerArgument function, but for top-level
+ * operators which don't have paths.
+ */
+ template <class T>
+ StatusWithMatchExpression _parseTopLevelInternalSchemaSingleIntegerArgument(
+ const BSONElement& elem) const;
+
+
+ // The maximum allowed depth of a query tree. Just to guard against stack overflow.
+ static const int kMaximumTreeDepth;
+
// Performs parsing for the match extensions. We do not own this pointer - it has to live
// as long as the parser is active.
const ExtensionsCallback* _extensionsCallback;