24#ifndef DD__INDEX_ELEMENT_INCLUDED
25#define DD__INDEX_ELEMENT_INCLUDED
38class Index_element_impl;
41class Index_column_usage;
Definition: index_element_impl.h:54
Definition: index_element.h:46
virtual uint ordinal_position() const =0
virtual bool is_length_null() const =0
virtual void set_length(uint length)=0
virtual enum_index_element_order order() const =0
virtual Column & column()=0
virtual const Index & index() const =0
enum_index_element_order
Definition: index_element.h:52
@ ORDER_ASC
Definition: index_element.h:52
@ ORDER_UNDEF
Definition: index_element.h:52
@ ORDER_DESC
Definition: index_element.h:52
virtual bool is_prefix() const =0
Check if index element (a.k.a.
virtual void serialize(Sdi_wcontext *wctx, Sdi_writer *w) const =0
Converts *this into json.
virtual void set_order(enum_index_element_order order)=0
Index_element_impl Impl
Definition: index_element.h:48
virtual void set_length_null(bool is_null)=0
virtual Index & index()=0
virtual bool is_hidden() const =0
virtual bool deserialize(Sdi_rcontext *rctx, const RJ_Value &val)=0
Re-establishes the state of *this by reading sdi information from the rapidjson DOM subobject provide...
tables::Index_column_usage DD_table
Definition: index_element.h:49
virtual const Column & column() const =0
virtual void set_hidden(bool hidden)=0
~Index_element() override=default
virtual uint length() const =0
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
Base class for all data dictionary objects.
Definition: weak_object.h:42
Definition: index_column_usage.h:38
Some integer typedefs for easier portability.
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
rapidjson::GenericValue< RJ_Encoding, RJ_Allocator > RJ_Value
Definition: sdi_fwd.h:49
This header provides Rapidjson Type Aliases.