Storage Engine API
mongo::KeyV1 Class Reference

#include <key.h>

Inheritance diagram for mongo::KeyV1:
mongo::KeyV1Owned

Public Member Functions

 KeyV1 ()
 
 ~KeyV1 ()
 
 KeyV1 (const KeyV1 &rhs)
 
void assign (const KeyV1 &rhs)
 
 KeyV1 (const char *keyData)
 
int woCompare (const KeyV1 &r, const Ordering &o) const
 
bool woEqual (const KeyV1 &r) const
 
BSONObj toBson () const
 
std::string toString () const
 
const char * data () const
 get the key data we want to store in the btree bucket More...
 
int dataSize () const
 
BSONElement _firstElement () const
 only used by geo, which always has bson keys More...
 
bool isCompactFormat () const
 
bool isValid () const
 

Protected Types

enum  { IsBSON = 0xff }
 

Protected Member Functions

BSONObj bson () const
 

Protected Attributes

const unsigned char * _keyData
 

Private Member Functions

void operator= (const KeyV1 &)
 
 KeyV1 (const KeyV1Owned &)
 
int compareHybrid (const KeyV1 &right, const Ordering &order) const
 

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protected
Enumerator
IsBSON 

Constructor & Destructor Documentation

◆ KeyV1() [1/4]

mongo::KeyV1::KeyV1 ( const KeyV1Owned )
private

◆ KeyV1() [2/4]

mongo::KeyV1::KeyV1 ( )
inline

◆ ~KeyV1()

mongo::KeyV1::~KeyV1 ( )
inline

◆ KeyV1() [3/4]

mongo::KeyV1::KeyV1 ( const KeyV1 rhs)
inline

◆ KeyV1() [4/4]

mongo::KeyV1::KeyV1 ( const char *  keyData)
inlineexplicit
Parameters
keyDatacan be a buffer containing data in either BSON format, OR in KeyV1 format. when BSON, we are just a wrapper

Member Function Documentation

◆ _firstElement()

BSONElement mongo::KeyV1::_firstElement ( ) const
inline

only used by geo, which always has bson keys

◆ assign()

void mongo::KeyV1::assign ( const KeyV1 rhs)
inline

◆ bson()

BSONObj mongo::KeyV1::bson ( ) const
inlineprotected

◆ compareHybrid()

int NOINLINE_DECL mongo::KeyV1::compareHybrid ( const KeyV1 right,
const Ordering &  order 
) const
private

◆ data()

const char* mongo::KeyV1::data ( ) const
inline

get the key data we want to store in the btree bucket

◆ dataSize()

int mongo::KeyV1::dataSize ( ) const
Returns
size of data()

◆ isCompactFormat()

bool mongo::KeyV1::isCompactFormat ( ) const
inline

◆ isValid()

bool mongo::KeyV1::isValid ( ) const
inline

◆ operator=()

void mongo::KeyV1::operator= ( const KeyV1 )
private

◆ toBson()

BSONObj mongo::KeyV1::toBson ( ) const

◆ toString()

std::string mongo::KeyV1::toString ( ) const
inline

◆ woCompare()

int mongo::KeyV1::woCompare ( const KeyV1 r,
const Ordering &  o 
) const

◆ woEqual()

bool mongo::KeyV1::woEqual ( const KeyV1 r) const

Member Data Documentation

◆ _keyData

const unsigned char* mongo::KeyV1::_keyData
protected

The documentation for this class was generated from the following files: