backends/flint/flint_table.h File Reference

#include <xapian/error.h>
#include <xapian/visibility.h>
#include <algorithm>
#include <string>
#include "flint_types.h"
#include "flint_btreebase.h"
#include "flint_btreeutil.h"
#include "flint_cursor.h"
#include "noreturn.h"
#include "stringutils.h"
#include "utils.h"
#include <zlib.h>

Include dependency graph for flint_table.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Key_
class  Item_base_< T >
class  Item_
class  Item_wr_
class  FlintTable
 Class managing a Btree table in a Flint database. More...

Defines

#define DONT_COMPRESS   -1
#define FLINT_BTREE_MAX_KEY_LEN   252
 The largest possible value of a key_len.
#define BYTES_PER_BLOCK_NUMBER   4
#define K1   1
#define I2   2
#define D2   2
#define C2   2
#define getK(p, c)   getint1(p, c)
#define setD(p, c, x)   setint2(p, c, x)
#define BTREE_CURSOR_LEVELS   10


Define Documentation

#define DONT_COMPRESS   -1

Definition at line 43 of file flint_table.h.

Referenced by FlintTable::add(), main(), merge_docid_keyed(), merge_spellings(), and merge_synonyms().

#define FLINT_BTREE_MAX_KEY_LEN   252

The largest possible value of a key_len.

This gives the upper limit of the size of a key that may be stored in the B-tree (252 bytes with the present implementation).

Definition at line 50 of file flint_table.h.

Referenced by FlintTable::del(), FlintCursor::find_entry(), FlintCursor::find_entry_ge(), FlintTable::find_tag(), Item_wr_::form_key(), FlintTable::get_exact_entry(), and FlintTable::key_exists().

#define BYTES_PER_BLOCK_NUMBER   4

Definition at line 53 of file flint_table.h.

Referenced by Item_base< const byte * >::block_given_by(), Item_base_< byte * >::block_given_by(), Item_wr::set_block_given_by(), and Item_wr_::set_block_given_by().

#define K1   1

Definition at line 65 of file flint_table.h.

Referenced by Btree::add(), FlintTable::add(), Btree::enter_key(), FlintTable::enter_key(), Item_wr::fake_root_item(), Item_wr_::fake_root_item(), Item_wr::form_key(), Item_wr_::form_key(), Item_wr::form_null_key(), Item_wr_::form_null_key(), Key::length(), Key_::length(), Key::operator<(), Key_::operator<(), Key::operator==(), Key_::operator==(), Key::operator[](), Key_::operator[](), Key::read(), Key_::read(), Btree::read_root(), FlintTable::read_root(), Btree::read_tag(), FlintTable::read_tag(), Item_wr::set_key_and_block(), and Item_wr_::set_key_and_block().

#define I2   2

Definition at line 66 of file flint_table.h.

Referenced by Btree::add(), FlintTable::add(), Item_base< const byte * >::append_chunk(), Item_base_< byte * >::append_chunk(), Item_base< const byte * >::component_of(), Item_base_< byte * >::component_of(), Item_base< const byte * >::components_of(), Item_base_< byte * >::components_of(), Btree::enter_key(), FlintTable::enter_key(), Item_wr::fake_root_item(), Item_wr_::fake_root_item(), Item_wr::form_key(), Item_wr_::form_key(), Item_wr::form_null_key(), Item_wr_::form_null_key(), Item_base< const byte * >::key(), Item_base_< byte * >::key(), Btree::read_root(), FlintTable::read_root(), Btree::read_tag(), FlintTable::read_tag(), Item_wr::set_component_of(), Item_wr_::set_component_of(), Item_wr::set_components_of(), Item_wr_::set_components_of(), Item_wr::set_key_and_block(), Item_wr_::set_key_and_block(), Item_wr::set_key_len(), and Item_wr_::set_key_len().

#define D2   2

Definition at line 67 of file flint_table.h.

Referenced by Btree::add(), FlintTable::add(), Btree::add_item(), FlintTable::add_item(), Btree::add_item_to_block(), FlintTable::add_item_to_block(), Btree::add_kt(), FlintTable::add_kt(), BtreeCheck::block_check(), Btree::compact(), FlintTable::compact(), Btree::delete_item(), FlintTable::delete_item(), Btree::enter_key(), FlintTable::enter_key(), Btree::find_in_block(), FlintTable::find_in_block(), Btree::mid_point(), FlintTable::mid_point(), Btree::next_default(), FlintTable::next_default(), Btree::next_for_sequential(), FlintTable::next_for_sequential(), Btree::prev_default(), FlintTable::prev_default(), Btree::prev_for_sequential(), FlintTable::prev_for_sequential(), Btree::read_root(), FlintTable::read_root(), BtreeCheck::report_block(), BtreeCheck::report_block_full(), Btree::set_max_item_size(), and FlintTable::set_max_item_size().

#define C2   2

Definition at line 68 of file flint_table.h.

Referenced by Btree::add(), FlintTable::add(), Item_base< const byte * >::append_chunk(), Item_base_< byte * >::append_chunk(), Item_base< const byte * >::component_of(), Item_base_< byte * >::component_of(), Btree::enter_key(), FlintTable::enter_key(), Item_wr::fake_root_item(), Item_wr_::fake_root_item(), Item_wr::form_key(), Item_wr_::form_key(), Key::length(), Key_::length(), Key::operator<(), Key_::operator<(), Key::operator==(), Key_::operator==(), Btree::read_root(), FlintTable::read_root(), Btree::read_tag(), FlintTable::read_tag(), Item_wr::set_component_of(), Item_wr_::set_component_of(), Item_wr::set_key_and_block(), and Item_wr_::set_key_and_block().

#define getK ( p,
 )     getint1(p, c)

Definition at line 72 of file flint_table.h.

Referenced by Item_base_< byte * >::append_chunk(), Item_base_< byte * >::component_of(), Item_base_< byte * >::components_of(), Key_::length(), Item_wr_::set_component_of(), and Item_wr_::set_components_of().

#define setD ( p,
c,
 )     setint2(p, c, x)

Definition at line 73 of file flint_table.h.

Referenced by FlintTable::add_item_to_block(), FlintTable::add_kt(), FlintTable::compact(), and FlintTable::read_root().

#define BTREE_CURSOR_LEVELS   10

Definition at line 237 of file flint_table.h.

Referenced by Btree::commit(), FlintTable::commit(), Btree::split_root(), and FlintTable::split_root().


Documentation for Xapian (version 1.0.10).
Generated on 24 Dec 2008 by Doxygen 1.5.2.