24#ifndef DD__INDEX_IMPL_INCLUDED 
   25#define DD__INDEX_IMPL_INCLUDED 
   48class Open_dictionary_tables_ctx;
 
Definition: collection.h:44
 
Definition: entity_object_impl.h:44
 
void set_name(const String_type &name) override
Definition: entity_object_impl.h:62
 
Object_id id() const override
The unique dictionary object id.
Definition: entity_object_impl.h:49
 
const String_type & name() const override
Definition: entity_object_impl.h:60
 
Entity_object_impl * impl() override
Definition: entity_object_impl.h:68
 
bool is_persistent() const override
Is dictionary object persistent in dictionary tables ?
Definition: entity_object_impl.h:57
 
Definition: index_element.h:46
 
Definition: index_impl.h:59
 
Object_id id() const override
The unique dictionary object id.
Definition: index_impl.h:245
 
void set_name(const String_type &name) override
Definition: index_impl.h:252
 
Table_impl & table_impl()
Definition: index_impl.h:109
 
const Entity_object_impl * impl() const override
Definition: index_impl.h:242
 
Object_id tablespace_id() const override
Definition: index_impl.h:173
 
void set_generated(bool generated) override
Definition: index_impl.h:117
 
bool is_persistent() const override
Is dictionary object persistent in dictionary tables ?
Definition: index_impl.h:246
 
void set_algorithm(Index::enum_index_algorithm algorithm) override
Definition: index_impl.h:201
 
const Table_impl & table_impl() const
Definition: index_impl.h:107
 
bool is_visible() const override
Definition: index_impl.h:213
 
Index::enum_index_type type() const override
Definition: index_impl.h:191
 
bool set_se_private_data(const Properties &se_private_data) override
Definition: index_impl.h:165
 
void set_visible(bool is_visible) override
Definition: index_impl.h:215
 
bool drop_children(Open_dictionary_tables_ctx *otx) const override
Definition: index_impl.cc:152
 
Properties & se_private_data() override
Definition: index_impl.h:159
 
const String_type & engine() const override
Definition: index_impl.h:183
 
bool validate() const override
Definition: index_impl.cc:113
 
const Table & table() const override
Definition: index_impl.cc:107
 
Index::enum_index_algorithm algorithm() const override
Definition: index_impl.h:199
 
void debug_print(String_type &outb) const override
Definition: index_impl.cc:300
 
bool set_se_private_data(const String_type &se_private_data_raw) override
Definition: index_impl.h:161
 
Object_id m_tablespace_id
Definition: index_impl.h:295
 
bool is_candidate_key() const override
Check if index represents candidate key.
Definition: index_impl.cc:352
 
const String_type & comment() const override
Definition: index_impl.h:131
 
void set_engine(const String_type &engine) override
Definition: index_impl.h:185
 
uint m_ordinal_position
Definition: index_impl.h:271
 
const Properties & options() const override
Definition: index_impl.h:139
 
bool is_algorithm_explicit() const override
Definition: index_impl.h:205
 
void set_secondary_engine_attribute(LEX_CSTRING a) override
Definition: index_impl.h:226
 
bool deserialize(Sdi_rcontext *rctx, const RJ_Value &val) override
Re-establishes the state of *this by reading sdi information from the rapidjson DOM subobject provide...
Definition: index_impl.cc:268
 
void set_hidden(bool hidden) override
Definition: index_impl.h:125
 
Index_element * add_element(Column *c) override
Definition: index_impl.cc:338
 
void serialize(Sdi_wcontext *wctx, Sdi_writer *w) const override
Converts *this into json.
Definition: index_impl.cc:239
 
LEX_CSTRING secondary_engine_attribute() const override
Definition: index_impl.h:223
 
Properties & options() override
Definition: index_impl.h:141
 
Index_elements m_elements
Definition: index_impl.h:291
 
bool store_attributes(Raw_record *r) override
Definition: index_impl.cc:197
 
const Object_table & object_table() const override
Definition: index_impl.cc:416
 
const Properties & se_private_data() const override
Definition: index_impl.h:155
 
bool is_generated() const override
Definition: index_impl.h:115
 
const Index_elements & elements() const override
Definition: index_impl.h:236
 
uint ordinal_position() const override
Definition: index_impl.h:94
 
bool m_hidden
Definition: index_impl.h:268
 
void set_tablespace_id(Object_id tablespace_id) override
Definition: index_impl.h:175
 
LEX_CSTRING engine_attribute() const override
Definition: index_impl.h:217
 
bool m_is_algorithm_explicit
Definition: index_impl.h:279
 
static void register_tables(Open_dictionary_tables_ctx *otx)
Definition: index_impl.cc:422
 
Table_impl * m_table
Definition: index_impl.h:289
 
Properties_impl m_se_private_data
Definition: index_impl.h:275
 
void set_ordinal_position(uint ordinal_position) override
Definition: index_impl.h:90
 
static Index_impl * restore_item(Table_impl *table)
Definition: index_impl.h:257
 
bool m_is_visible
Definition: index_impl.h:280
 
String_type m_engine
Definition: index_impl.h:282
 
bool restore_children(Open_dictionary_tables_ctx *otx) override
Definition: index_impl.cc:136
 
bool set_options(const String_type &options_raw) override
Definition: index_impl.h:147
 
String_type m_engine_attribute
Definition: index_impl.h:284
 
bool set_options(const Properties &options) override
Definition: index_impl.h:143
 
bool m_is_generated
Definition: index_impl.h:269
 
void set_algorithm_explicit(bool alg_expl) override
Definition: index_impl.h:209
 
Properties_impl m_options
Definition: index_impl.h:274
 
Index::enum_index_type m_type
Definition: index_impl.h:277
 
String_type m_comment
Definition: index_impl.h:273
 
bool store_children(Open_dictionary_tables_ctx *otx) override
Definition: index_impl.cc:146
 
void set_engine_attribute(LEX_CSTRING a) override
Definition: index_impl.h:220
 
void set_comment(const String_type &comment) override
Definition: index_impl.h:133
 
Index_impl()
Definition: index_impl.cc:75
 
String_type m_secondary_engine_attribute
Definition: index_impl.h:285
 
Entity_object_impl * impl() override
Definition: index_impl.h:241
 
static Index_impl * clone(const Index_impl &other, Table_impl *table)
Definition: index_impl.h:261
 
void set_type(Index::enum_index_type type) override
Definition: index_impl.h:193
 
Index::enum_index_algorithm m_algorithm
Definition: index_impl.h:278
 
const String_type & name() const override
Definition: index_impl.h:249
 
bool is_hidden() const override
Definition: index_impl.h:123
 
bool restore_attributes(const Raw_record &r) override
Definition: index_impl.cc:160
 
enum_index_algorithm
Definition: index.h:68
 
enum_index_type
Definition: index.h:59
 
This class represents all data dictionary table like mysql.tables, mysql.columns and more.
Definition: object_table.h:72
 
Auxiliary class for opening dictionary tables.
Definition: transaction_impl.h:77
 
The Properties_impl class implements the Properties interface.
Definition: properties_impl.h:77
 
bool insert_values(const Properties &properties) override
Insert key/value pairs from a different property object.
Definition: properties_impl.cc:104
 
The Properties class defines an interface for storing key=value pairs, where both key and value may b...
Definition: properties.h:74
 
Definition: raw_record.h:46
 
Opaque context which keeps reusable resoureces needed during deserialization.
Definition: sdi.cc:231
 
Opaque context which keeps reusable resources needed during serialization.
Definition: sdi.cc:129
 
Definition: table_impl.h:68
 
The version of the current data dictionary table definitions.
Definition: dictionary_client.h:43
 
RJ_Writer Sdi_writer
Alias for the rapidjson Writer type to use in serialization.
Definition: sdi_fwd.h:64
 
unsigned long long Object_id
Definition: object_id.h:31
 
rapidjson::GenericValue< RJ_Encoding, RJ_Allocator > RJ_Value
Definition: sdi_fwd.h:49
 
Char_string_template< String_type_allocator > String_type
Definition: string_type.h:51
 
entry::Column Column
Definition: select.h:53
 
entry::Table Table
Definition: select.h:51
 
Definition: options.cc:57
 
const mysql_service_registry_t * r
Definition: pfs_example_plugin_employee.cc:86
 
This header provides Rapidjson Type Aliases.
 
MYSQL_LEX_CSTRING lex_cstring_handle(const STDSTRINGLIKE_TYPE &s)
Return a LEX_CSTRING handle to a std::string like (meaning something which has the c_str() and length...
Definition: strfunc.h:77
 
Definition: mysql_lex_string.h:40
 
const char * str
Definition: mysql_lex_string.h:41
 
size_t length
Definition: mysql_lex_string.h:42