summaryrefslogtreecommitdiff
path: root/src/mongo/db/jsobj.cpp
diff options
context:
space:
mode:
authorHari Khalsa <hkhalsa@10gen.com>2012-11-02 10:31:42 -0400
committerHari Khalsa <hkhalsa@10gen.com>2012-11-05 15:31:27 -0500
commitb500d17c347044b6d38c135c7edc142e3ac68658 (patch)
tree87f1d36019c5399e5c77e9085c67074c610f8253 /src/mongo/db/jsobj.cpp
parentdcc1f2404856344885a3f5b1ef25c40ea3a105fb (diff)
downloadmongo-b500d17c347044b6d38c135c7edc142e3ac68658.tar.gz
SERVER-2874 add s2 indexing and cursor
Diffstat (limited to 'src/mongo/db/jsobj.cpp')
-rw-r--r--src/mongo/db/jsobj.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/mongo/db/jsobj.cpp b/src/mongo/db/jsobj.cpp
index 2278097dd8f..19741de8b7b 100644
--- a/src/mongo/db/jsobj.cpp
+++ b/src/mongo/db/jsobj.cpp
@@ -291,9 +291,13 @@ namespace mongo {
}
else if ( fn[1] == 't' && fn[2] == 'y' && fn[3] == 'p' && fn[4] == 'e' && fn[5] == 0 )
return BSONObj::opTYPE;
- else if ( fn[1] == 'i' && fn[2] == 'n' && fn[3] == 0 )
- return BSONObj::opIN;
- else if ( fn[1] == 'n' && fn[2] == 'i' && fn[3] == 'n' && fn[4] == 0 )
+ else if ( fn[1] == 'i' && fn[2] == 'n') {
+ if (0 == fn[3]) {
+ return BSONObj::opIN;
+ } else if (mongoutils::str::equals(fn + 3, "tersect")) {
+ return BSONObj::opINTERSECT;
+ }
+ } else if ( fn[1] == 'n' && fn[2] == 'i' && fn[3] == 'n' && fn[4] == 0 )
return BSONObj::NIN;
else if ( fn[1] == 'a' && fn[2] == 'l' && fn[3] == 'l' && fn[4] == 0 )
return BSONObj::opALL;