Key Class Reference

#include <chert_table.h>

List of all members.

Public Member Functions

 Key (const byte *p_)
const byteget_address () const
void read (std::string *key) const
bool operator== (Key key2) const
bool operator!= (Key key2) const
bool operator< (Key key2) const
 Compares this key with key2.
bool operator>= (Key key2) const
bool operator> (Key key2) const
bool operator<= (Key key2) const
int length () const
char operator[] (size_t i) const

Private Attributes

const bytep


Detailed Description

Definition at line 113 of file chert_table.h.


Constructor & Destructor Documentation

Key::Key ( const byte p_  )  [inline, explicit]

Definition at line 116 of file chert_table.h.


Member Function Documentation

const byte* Key::get_address (  )  const [inline]

int Key::length (  )  const [inline]

bool Key::operator!= ( Key  key2  )  const [inline]

Definition at line 122 of file chert_table.h.

bool Key::operator< ( Key  key2  )  const

Compares this key with key2.

The result is true if this key precedes key2. The comparison is for byte sequence collating order, taking lengths into account. So if the keys are made up of lower case ASCII letters we get alphabetical ordering.

Now remember that items are added into the B-tree in fastest time when they are preordered by their keys. This is therefore the piece of code that needs to be followed to arrange for the preordering.

This is complicated by the fact that keys have two parts - a value and then a count. We first compare the values, and only if they are equal do we compare the counts.

Definition at line 2265 of file chert_table.cc.

References C2, K1, length(), LOGCALL, p, and RETURN.

bool Key::operator<= ( Key  key2  )  const [inline]

Definition at line 126 of file chert_table.h.

bool Key::operator== ( Key  key2  )  const

Definition at line 2288 of file chert_table.cc.

References C2, K1, length(), LOGCALL, p, and RETURN.

bool Key::operator> ( Key  key2  )  const [inline]

Definition at line 125 of file chert_table.h.

bool Key::operator>= ( Key  key2  )  const [inline]

Definition at line 124 of file chert_table.h.

char Key::operator[] ( size_t  i  )  const [inline]

Definition at line 131 of file chert_table.h.

References AssertRel, and K1.

void Key::read ( std::string *  key  )  const [inline]

Definition at line 118 of file chert_table.h.

References K1.

Referenced by ChertTableCheck::print_key().


Member Data Documentation

const byte* Key::p [private]

Definition at line 114 of file chert_table.h.

Referenced by ChertTable::find(), operator<(), and operator==().


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

Documentation for Xapian (version 1.2.13).
Generated on 9 Jan 2013 by Doxygen 1.5.9.