Index interface.  
 More...
#include <index.h>
◆ Lookup
Index lookup (search) result. 
| Enumerator | 
|---|
| FOUND | The searched for indexed cells were found and the cursor is positioned on them.  | 
| NOT_FOUND_CURSOR_POSITIONED_ON_NEXT | The searched for indexed cells were not found and the cursor is positioned on the next indexed cells in index order.  | 
| NOT_FOUND_CURSOR_UNDEFINED | The searched for indexed cells were not found and the cursor position is undefined.  | 
 
 
◆ Index()
      
        
          | temptable::Index::Index | ( | const Table & | table, | 
        
          |  |  | const KEY & | mysql_index | 
        
          |  | ) |  |  | 
      
 
Constructor. 
- Parameters
- 
  
    | [in] | table | Table where this index belongs, used only for fetching metadata of its columns. |  | [in] | mysql_index | MySQL index, for querying metadata. |  
 
 
 
◆ ~Index()
  
  | 
        
          | temptable::Index::~Index | ( |  | ) |  |  | virtual | 
 
 
◆ begin()
  
  | 
        
          | virtual Cursor temptable::Index::begin | ( |  | ) | const |  | pure virtual | 
 
 
◆ end()
  
  | 
        
          | virtual Cursor temptable::Index::end | ( |  | ) | const |  | pure virtual | 
 
 
◆ erase()
  
  | 
        
          | virtual void temptable::Index::erase | ( | const Cursor & | target | ) |  |  | pure virtual | 
 
 
◆ indexed_column()
  
  | 
        
          | const Indexed_column & temptable::Index::indexed_column | ( | size_t | i | ) | const |  | inline | 
 
Get the Nth indexed column. 
- Returns
- the Nth indexed column 
- Parameters
- 
  
    | [in] | i | Index of the column to fetch, must be < `number_of_indexed_columns()`. |  
 
 
 
◆ insert()
Insert a new entry into the index. 
- Returns
- Result::OK or another Result::* error code 
- Parameters
- 
  
    | [in] | indexed_cells | Indexed cells to insert. |  | [out] | insert_position | If insert succeeds (Result::OK) this will be set to the position inside the index where the new indexed cells where inserted. |  
 
Implemented in temptable::Tree, temptable::Hash_duplicates, and temptable::Hash_unique.
 
 
◆ lookup() [1/2]
Lookup (search) an indexed cells. 
- Return values
- 
  
    | Lookup::FOUND | the provided search_cellswere found andfirstwas positioned on them (the first entry, if there are duplicates). |  | Lookup::NOT_FOUND_CURSOR_POSITIONED_ON_NEXT | the provided search_cellswere not found andfirstwas positioned on the next indexed cells in index order. |  | Lookup::NOT_FOUND_CURSOR_UNDEFINED | the provided search_cellswere not found andfirstis undefined. |  
 
- Parameters
- 
  
    | [in] | search_cells | Indexed cells to search for. |  | [out] | first | First indexed cells that were found, see above. |  
 
Implemented in temptable::Tree, temptable::Hash_duplicates, and temptable::Hash_unique.
 
 
◆ lookup() [2/2]
Lookup (search) an indexed cells. 
- Return values
- 
  
    | Lookup::FOUND | the provided search_cellswere found,firstwas positioned on them (the first entry, if there are duplicates) andafter_lastwas positioned after the last matching entry. |  | Lookup::NOT_FOUND_CURSOR_POSITIONED_ON_NEXT | the provided search_cellswere not found andfirstandafter_lastwere positioned on the next indexed cells in index order. |  | Lookup::NOT_FOUND_CURSOR_UNDEFINED | the provided search_cellswere not found andfirstandafter_lastare undefined. |  
 
Implemented in temptable::Tree, temptable::Hash_duplicates, and temptable::Hash_unique.
 
 
◆ mysql_index()
  
  | 
        
          | const KEY & temptable::Index::mysql_index | ( |  | ) | const |  | inline | 
 
Get the MySQL index structure which corresponds to this index. 
- Returns
- mysql index 
 
 
◆ number_of_indexed_columns()
  
  | 
        
          | size_t temptable::Index::number_of_indexed_columns | ( |  | ) | const |  | inline | 
 
Get the number of indexed columns by this index. 
- Returns
- number of indexed columns 
 
 
◆ table()
  
  | 
        
          | const Table & temptable::Index::table | ( |  | ) | const |  | inline | 
 
Get the table of the index. 
- Returns
- table 
 
 
◆ truncate()
  
  | 
        
          | virtual void temptable::Index::truncate | ( |  | ) |  |  | pure virtual | 
 
 
◆ m_indexed_columns
Indexed columns metadata, from [0, m_number_of_indexed_columns). 
 
 
◆ m_mysql_index
  
  | 
        
          | const KEY* temptable::Index::m_mysql_index |  | private | 
 
 
◆ m_number_of_indexed_columns
  
  | 
        
          | size_t temptable::Index::m_number_of_indexed_columns |  | private | 
 
Number of indexed columns. 
 
 
◆ m_table
  
  | 
        
          | const Table& temptable::Index::m_table |  | private | 
 
 
The documentation for this class was generated from the following files: