MongoDB C++ Driver legacy-1.1.2
Loading...
Searching...
No Matches
List of all members
mongo::BSONArray Struct Reference
+ Inheritance diagram for mongo::BSONArray:

Additional Inherited Members

- Public Types inherited from mongo::BSONObj
enum  
 Readable representation of a BSON object in an extended JSON-style notation. More...
 
- Public Member Functions inherited from mongo::BSONObj
 BSONObj ()
 Construct an empty BSONObj – that is, {}.
 
 BSONObj (const char *bsonData)
 Construct a BSONObj from data in the proper format.
 
BSONObjoperator= (BSONObj otherCopy)
 Provide assignment semantics.
 
void swap (BSONObj &other)
 Swap this BSONObj with 'other'.
 
bool isOwned () const
 A BSONObj can use a buffer it "owns" or one it does not.
 
BSONObj getOwned () const
 assure the data buffer is under the control of this BSONObj and not a remote buffer
 
BSONObj copy () const
 
std::string jsonString (JsonStringFormat format=Strict, int pretty=0, bool isArray=false) const
 Properly formatted JSON string.
 
int addFields (BSONObj &from, std::set< std::string > &fields)
 note: addFields always adds _id even if not specified
 
BSONObj removeField (const StringData &name) const
 remove specified field and return a new object with the remaining fields.
 
int nFields () const
 returns # of top level fields in the object note: iterates to count the fields
 
int getFieldNames (std::set< std::string > &fields) const
 adds the field names to the fields set.
 
BSONElement getFieldDotted (const StringData &name) const
 
void getFieldsDotted (const StringData &name, BSONElementSet &ret, bool expandLastArray=true) const
 Like getFieldDotted(), but expands arrays and returns all matching objects.
 
BSONElement getFieldDottedOrArray (const char *&name) const
 Like getFieldDotted(), but returns first array encountered while traversing the dotted fields of name.
 
BSONElement getField (const StringData &name) const
 Get the field of the specified name.
 
void getFields (unsigned n, const char **fieldNames, BSONElement *fields) const
 Get several fields at once.
 
BSONElement operator[] (const StringData &field) const
 Get the field of the specified name.
 
bool hasField (const StringData &name) const
 
bool hasElement (const StringData &name) const
 
const char * getStringField (const StringData &name) const
 
BSONObj getObjectField (const StringData &name) const
 
int getIntField (const StringData &name) const
 
bool getBoolField (const StringData &name) const
 
BSONObj extractFieldsUnDotted (const BSONObj &pattern) const
 
BSONObj extractFields (const BSONObj &pattern, bool fillWithNull=false) const
 extract items from object which match a pattern object.
 
bool couldBeArray () const
 arrays are bson objects with numeric and increasing field names
 
const char * objdata () const
 
int objsize () const
 
bool isValid () const
 performs a cursory check on the object's size only.
 
bool okForStorage () const
 
bool okForStorageAsRoot () const
 Same as above with the following extra restrictions Not valid if:
 
Status storageValidEmbedded (const bool deep=true) const
 Validates that this can be stored as an embedded document See details above in okForStorage.
 
Status storageValid (const bool deep=true) const
 Validates that this can be stored as a document (in a collection) See details above in okForStorageAsRoot.
 
bool isEmpty () const
 
std::string hexDump () const
 Alternative output format.
 
int woCompare (const BSONObj &r, const Ordering &o, bool considerFieldName=true) const
 wo='well ordered'.
 
int woCompare (const BSONObj &r, const BSONObj &ordering=BSONObj(), bool considerFieldName=true) const
 wo='well ordered'.
 
int woSortOrder (const BSONObj &r, const BSONObj &sortKey, bool useDotted=false) const
 
bool isPrefixOf (const BSONObj &otherObj) const
 
bool isFieldNamePrefixOf (const BSONObj &otherObj) const
 
bool binaryEqual (const BSONObj &r) const
 This is "shallow equality" – ints and doubles won't match.
 
BSONElement firstElement () const
 
const char * firstElementFieldName () const
 faster than firstElement().fieldName() - for the first element we can easily find the fieldname without computing the element size.
 
bool getObjectID (BSONElement &e) const
 Get the _id field from the object.
 
BSONObj replaceFieldNames (const BSONObj &obj) const
 Return new object with the field names replaced by those in the passed object.
 
bool valid () const
 true unless corrupt
 
void elems (std::vector< BSONElement > &) const
 add all elements of the object to the specified vector
 
void elems (std::list< BSONElement > &) const
 add all elements of the object to the specified list
 
BSONObjIterator begin () const
 use something like this: for( BSONObj::iterator i = myObj.begin(); i.more(); ) { BSONElement e = i.next(); ... }
 
- Static Public Member Functions inherited from mongo::BSONObj
static BSONObj takeOwnership (char *holderPrefixedData)
 Given a pointer to a region of un-owned memory containing BSON data, prefixed by sufficient space for a BSONObj::Holder object, return a BSONObj that owns the memory.
 

The documentation for this struct was generated from the following file: