![]() |
MySQL 9.4.0
Source Code Documentation
|
The subclass of the multi-value entry builder, for non-INSERT cases, With this class, there should be no need to build separate entries for different values in the same multi-value field. More...
#include <row0row.h>
Public Member Functions | |
| Multi_value_entry_builder_normal (const dtuple_t *row, const row_ext_t *ext, dict_index_t *index, mem_heap_t *heap, bool check, bool selected) | |
| Constructor. More... | |
Public Member Functions inherited from Multi_value_entry_builder | |
| Multi_value_entry_builder (dict_index_t *index, dtuple_t *entry, bool selected) | |
| Constructor. More... | |
| virtual | ~Multi_value_entry_builder ()=default |
| dtuple_t * | begin (uint32_t pos=0) |
| Get the first index entry. More... | |
| dtuple_t * | next () |
| Get next index entry based on next multi-value data. More... | |
| uint32_t | last_multi_value_position () const |
| Get the position of last generated multi-value data. More... | |
Private Member Functions | |
| dfield_t * | find_multi_value_field () override |
| Find the multi-value field from the passed in entry or row. More... | |
| void | prepare_entry_if_necessary () override |
| Prepare the entry when the entry is not passed in. More... | |
| uint32_t | skip () override |
| Skip the not selected values and stop m_pos at the next selected one. More... | |
Private Attributes | |
| const dtuple_t * | m_row |
| Based on which complete row to build the index row. More... | |
| const row_ext_t * | m_ext |
| Externally stored column prefixes, or nullptr. More... | |
| mem_heap_t * | m_heap |
| Memory heap. More... | |
| const bool | m_check |
| True if dfield type should be checked, otherwise false. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from Multi_value_entry_builder | |
| virtual bool | prepare_multi_value_field () |
| Prepare the corresponding multi-value field from the row. More... | |
Protected Attributes inherited from Multi_value_entry_builder | |
| dict_index_t * | m_index |
| Based on which index to build the entry. More... | |
| const bool | m_selected |
| True if only the selected(bitmap set) multi-value data would be used to build the entries, otherwise false. More... | |
| dtuple_t * | m_entry |
| Entry built for the index. More... | |
| uint32_t | m_pos |
| Multi-value data position. More... | |
| const multi_value_data * | m_mv_data |
| Multi-value data. More... | |
| uint32_t | m_mv_field_no |
| Field number of multi-value data on the index. More... | |
The subclass of the multi-value entry builder, for non-INSERT cases, With this class, there should be no need to build separate entries for different values in the same multi-value field.
|
inline |
Constructor.
| [in] | row | based on which complete row to build the index row |
| [in] | ext | externally stored column prefixes of the row |
| [in,out] | index | multi-value index |
| [in,out] | heap | memory heap |
| [in] | check | true if type can be checked, otherwise skip checking |
| [in] | selected | true if only the selected(bitmap set) multi-value data would be used to build the entries, otherwise false. |
|
overrideprivatevirtual |
Find the multi-value field from the passed in entry or row.
m_mv_field_no should be set once the multi-value field found.
Implements Multi_value_entry_builder.
|
inlineoverrideprivatevirtual |
Prepare the entry when the entry is not passed in.
Reimplemented from Multi_value_entry_builder.
|
inlineoverrideprivatevirtual |
Skip the not selected values and stop m_pos at the next selected one.
Reimplemented from Multi_value_entry_builder.
|
private |
True if dfield type should be checked, otherwise false.
|
private |
Externally stored column prefixes, or nullptr.
|
private |
Memory heap.
|
private |
Based on which complete row to build the index row.