mongo::FieldRangeSet Class Reference

#include <queryutil.h>

List of all members.

Public Member Functions

 FieldRangeSet (const char *ns, const BSONObj &query, bool optimize=true)
string getSpecial () const
bool hasRange (const char *fieldName) const
BoundList indexBounds (const BSONObj &keyPattern, int direction) const
bool matchPossible () const
int nNontrivialRanges () const
const char * ns () const
const FieldRangeSetoperator&= (const FieldRangeSet &other)
const FieldRangeSetoperator-= (const FieldRangeSet &other)
QueryPattern pattern (const BSONObj &sort=BSONObj()) const
FieldRangerange (const char *fieldName)
const FieldRangerange (const char *fieldName) const
BSONObj simplifiedQuery (const BSONObj &fields=BSONObj()) const
FieldRangeSetsubset (const BSONObj &fields) const

Private Member Functions

void appendQueries (const FieldRangeSet &other)
void makeEmpty ()
void processOpElement (const char *fieldName, const BSONElement &f, bool isNot, bool optimize)
void processQueryField (const BSONElement &e, bool optimize)

Static Private Member Functions

static FieldRangetrivialRange ()

Private Attributes

const char * _ns
vector< BSONObj_queries
map< string, FieldRange_ranges

Static Private Attributes

static FieldRangetrivialRange_

Friends

class FieldRangeOrSet
class FieldRangeVector

Detailed Description

Definition at line 199 of file queryutil.h.


Constructor & Destructor Documentation

mongo::FieldRangeSet::FieldRangeSet ( const char *  ns,
const BSONObj query,
bool  optimize = true 
)

Member Function Documentation

void mongo::FieldRangeSet::appendQueries ( const FieldRangeSet other  )  [inline, private]

Definition at line 329 of file queryutil.h.

string mongo::FieldRangeSet::getSpecial (  )  const
bool mongo::FieldRangeSet::hasRange ( const char *  fieldName  )  const [inline]

Definition at line 204 of file queryutil.h.

BoundList mongo::FieldRangeSet::indexBounds ( const BSONObj keyPattern,
int  direction 
) const
void mongo::FieldRangeSet::makeEmpty (  )  [inline, private]

Definition at line 334 of file queryutil.h.

bool mongo::FieldRangeSet::matchPossible (  )  const [inline]

Definition at line 231 of file queryutil.h.

int mongo::FieldRangeSet::nNontrivialRanges (  )  const [inline]

Definition at line 220 of file queryutil.h.

const char* mongo::FieldRangeSet::ns (  )  const [inline]

Definition at line 228 of file queryutil.h.

const FieldRangeSet& mongo::FieldRangeSet::operator&= ( const FieldRangeSet other  )  [inline]

Definition at line 293 of file queryutil.h.

const FieldRangeSet& mongo::FieldRangeSet::operator-= ( const FieldRangeSet other  )  [inline]

Definition at line 251 of file queryutil.h.

QueryPattern mongo::FieldRangeSet::pattern ( const BSONObj sort = BSONObj()  )  const
void mongo::FieldRangeSet::processOpElement ( const char *  fieldName,
const BSONElement f,
bool  isNot,
bool  optimize 
) [private]
void mongo::FieldRangeSet::processQueryField ( const BSONElement e,
bool  optimize 
) [private]
FieldRange& mongo::FieldRangeSet::range ( const char *  fieldName  )  [inline]

Definition at line 214 of file queryutil.h.

const FieldRange& mongo::FieldRangeSet::range ( const char *  fieldName  )  const [inline]

Definition at line 208 of file queryutil.h.

BSONObj mongo::FieldRangeSet::simplifiedQuery ( const BSONObj fields = BSONObj()  )  const
FieldRangeSet* mongo::FieldRangeSet::subset ( const BSONObj fields  )  const
Parameters:
return - A new FieldRangeSet based on this FieldRangeSet, but with only a subset of the fields.
fields - Only fields which are represented as field names in this object will be included in the returned FieldRangeSet.
static FieldRange& mongo::FieldRangeSet::trivialRange (  )  [static, private]

Friends And Related Function Documentation

friend class FieldRangeOrSet [friend]

Definition at line 201 of file queryutil.h.

friend class FieldRangeVector [friend]

Definition at line 202 of file queryutil.h.


Member Data Documentation

const char* mongo::FieldRangeSet::_ns [private]

Definition at line 344 of file queryutil.h.

Definition at line 346 of file queryutil.h.

map< string, FieldRange > mongo::FieldRangeSet::_ranges [mutable, private]

Definition at line 343 of file queryutil.h.

Definition at line 341 of file queryutil.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


mongodb
Author(s): Nate Koenig
autogenerated on Fri Jan 11 12:15:55 2013