|
CDT
v4.2.0
инструменты разработчика
|
Определяет многоиндексную таблицу COOPOS (Multi Index Table) Подробнее...
#include <multi_index.hpp>
Классы | |
| struct | const_iterator |
Открытые типы | |
| typedef std::reverse_iterator< const_iterator > | const_reverse_iterator |
| struct multi_index::const_iterator Подробнее... | |
Открытые члены | |
| multi_index (name code, uint64_t scope) | |
| load_object_by_primary_iterator Подробнее... | |
| name | get_code () const |
| uint64_t | get_scope () const |
| const_iterator | cbegin () const |
| const_iterator | begin () const |
| const_iterator | cend () const |
| const_iterator | end () const |
| const_reverse_iterator | crbegin () const |
| const_reverse_iterator | rbegin () const |
| const_reverse_iterator | crend () const |
| const_reverse_iterator | rend () const |
| template<typename PK > | |
| const_iterator | lower_bound (PK primary) const |
| template<typename PK > | |
| const_iterator | upper_bound (PK primary) const |
| uint64_t | available_primary_key () const |
| template<name::raw IndexName> | |
| auto | get_index () |
| template<name::raw IndexName> | |
| auto | get_index () const |
| const_iterator | iterator_to (const T &obj) const |
| template<typename Lambda > | |
| const_iterator | emplace (name payer, Lambda &&constructor) |
| template<typename Lambda > | |
| void | modify (const_iterator itr, name payer, Lambda &&updater) |
| template<typename Lambda > | |
| void | modify (const T &obj, name payer, Lambda &&updater) |
| template<typename PK > | |
| const T & | get (PK primary, const char *error_msg="unable to find key") const |
| template<typename PK > | |
| const_iterator | find (PK primary) const |
| template<typename PK > | |
| const_iterator | require_find (PK primary, const char *error_msg="unable to find key") const |
| const_iterator | erase (const_iterator itr) |
| void | erase (const T &obj) |
Определяет многоиндексную таблицу COOPOS (Multi Index Table)
API многоиндексных таблиц COOPOS даёт C++-интерфейс к базе данных COOPOS и устроен по образцу Boost Multi Index Container. Многоиндексная таблица COOPOS требует ровно один первичный ключ типа uint64_t. Чтобы таблица могла получать первичный ключ, у хранимого в ней объекта должна быть const-функция-член primary_key(), возвращающая uint64_t. Многоиндексная таблица COOPOS также поддерживает до 16 вторичных индексов. Тип вторичного индекса может быть одним из:
| TableName | — имя таблицы |
| T | — тип данных, хранимых в таблице |
| Indices | — вторичные индексы таблицы; поддерживается до 16 индексов |
Пример:
См. определение в файле multi_index.hpp строка 438