|
Tkrzw
|
File secondary index implementation with TreeDBM. More...
#include <tkrzw_index.h>
Classes | |
| class | Iterator |
| Iterator for each record. More... | |
Public Member Functions | |
| Status | Open (const std::string &path, bool writable, int32_t options=File::OPEN_DEFAULT, const TreeDBM::TuningParameters &tuning_params=TreeDBM::TuningParameters()) |
| Opens a database file. More... | |
| Status | Close () |
| Closes the database file. More... | |
| bool | Check (std::string_view key, std::string_view value) |
| Checks whether a record exists in the index. More... | |
| std::vector< std::string > | GetValues (std::string_view key, size_t max=0) |
| Gets all values of records of a key. More... | |
| Status | Add (std::string_view key, std::string_view value) |
| Adds a record. More... | |
| Status | Remove (std::string_view key, std::string_view value) |
| Removes a record. More... | |
| Status | Clear () |
| Removes all records. More... | |
| size_t | Count () |
| Gets the number of records. More... | |
| std::unique_ptr< Iterator > | MakeIterator () |
| Makes an iterator for each record. More... | |
File secondary index implementation with TreeDBM.
All operations are thread-safe; Multiple threads can access the same database concurrently.
| Status tkrzw::FileIndex::Open | ( | const std::string & | path, |
| bool | writable, | ||
| int32_t | options = File::OPEN_DEFAULT, |
||
| const TreeDBM::TuningParameters & | tuning_params = TreeDBM::TuningParameters() |
||
| ) |
Opens a database file.
| path | A path of the file. |
| writable | If true, the file is writable. If false, it is read-only. |
| options | Bit-sum options for opening the file. |
| tuning_params | A structure for tuning parameters. |
| Status tkrzw::FileIndex::Close | ( | ) |
Closes the database file.
| bool tkrzw::FileIndex::Check | ( | std::string_view | key, |
| std::string_view | value | ||
| ) |
Checks whether a record exists in the index.
| key | The key of the record. |
| value | The value of the record. |
| std::vector< std::string > tkrzw::FileIndex::GetValues | ( | std::string_view | key, |
| size_t | max = 0 |
||
| ) |
Gets all values of records of a key.
| key | The key to look for. |
| max | The maximum number of values to get. 0 means unlimited. |
| Status tkrzw::FileIndex::Add | ( | std::string_view | key, |
| std::string_view | value | ||
| ) |
Adds a record.
| key | The key of the record. This can be an arbitrary expression to search the index. |
| value | The value of the record. This should be a primary value of another database. |
| Status tkrzw::FileIndex::Remove | ( | std::string_view | key, |
| std::string_view | value | ||
| ) |
Removes a record.
| key | The key of the record. |
| value | The value of the record. |
| Status tkrzw::FileIndex::Clear | ( | ) |
Removes all records.
| size_t tkrzw::FileIndex::Count | ( | ) |
Gets the number of records.
| std::unique_ptr< FileIndex::Iterator > tkrzw::FileIndex::MakeIterator | ( | ) |
Makes an iterator for each record.