summaryrefslogtreecommitdiff
path: root/db/matcher.h
diff options
context:
space:
mode:
authorAaron <aaron@10gen.com>2010-04-26 17:22:33 -0700
committerAaron <aaron@10gen.com>2010-04-26 17:22:33 -0700
commit51daf493a177247bfd065956d69dc6aa853ca1dd (patch)
tree098e418d66c269724fc52d84b335ce81dad36c38 /db/matcher.h
parent948256f3df6a50d3261cc789309a9f93f80ac25f (diff)
downloadmongo-51daf493a177247bfd065956d69dc6aa853ca1dd.tar.gz
SERVER-1005 $nor
Diffstat (limited to 'db/matcher.h')
-rw-r--r--db/matcher.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/db/matcher.h b/db/matcher.h
index 9ba4bf1a5e9..062f9d3e133 100644
--- a/db/matcher.h
+++ b/db/matcher.h
@@ -161,6 +161,9 @@ namespace mongo {
int valuesMatch(const BSONElement& l, const BSONElement& r, int op, const ElementMatcher& bm);
+ bool parseOrNor( const BSONElement &e, bool subMatcher );
+ void parseOr( const BSONElement &e, bool subMatcher, vector< shared_ptr< Matcher > > &matchers );
+
Where *where; // set if query uses $where
BSONObj jsobj; // the query pattern. e.g., { name: "joe" }
BSONObj constrainIndexKey_;
@@ -183,6 +186,7 @@ namespace mongo {
// so we delete the mem when we're done:
vector< shared_ptr< BSONObjBuilder > > _builders;
vector< shared_ptr< Matcher > > _orMatchers;
+ vector< shared_ptr< Matcher > > _norMatchers;
friend class CoveredIndexMatcher;
};