Create a class BSONElementViewMatchableDocument, which inherits from MatchableDocument. BSONElementViewMatchableDocument is similar to BSONMatchableDocument, except that it holds a BSONElement rather than a BSONObj, and it creates its BSONElementIterator after removing the first field in path. BSONElementIterator must be modified to take a BSONObj or BSONElement, which just requires changing getFieldDottedOrArray() to take a BSONObj or BSONElement.
This will be used to efficiently determine whether an array element matches a filter, e.g. {$or: [{i: 0}, {“i.a”: 1}]}.
- is depended on by
-
SERVER-28763 Create UpdateArrayNode
- Closed