MySQL 9.4.0
Source Code Documentation
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
PT_collate_column_attr Class Reference

Node for the COLLATE <collation> column attribute. More...

#include <parse_tree_column_attrs.h>

Inheritance diagram for PT_collate_column_attr:
[legend]

Public Member Functions

 PT_collate_column_attr (const POS &pos, const CHARSET_INFO *collation)
 
bool apply_collation (Column_parse_context *pc, const CHARSET_INFO **to, bool *has_explicit_collation) const override
 
enum Attr_type attr_type () const override
 
- Public Member Functions inherited from PT_column_attr_base
virtual void apply_type_flags (ulong *) const
 
virtual void apply_alter_info_flags (ulonglong *) const
 
virtual void apply_comment (LEX_CSTRING *) const
 
virtual void apply_default_value (Item **) const
 
virtual void apply_gen_default_value (Value_generator **)
 
virtual void apply_on_update_value (Item **) const
 
virtual void apply_srid_modifier (std::optional< gis::srid_t > *) const
 
virtual bool add_check_constraints (Sql_check_constraint_spec_list *check_const_list)
 
virtual bool has_constraint_enforcement () const
 Check for the [NOT] ENFORCED characteristic. More...
 
virtual bool is_constraint_enforced () const
 Check if constraint is enforced. More...
 
virtual bool set_constraint_enforcement (bool enforced)
 Update the ENFORCED/NOT ENFORCED state of the CHECK constraint. More...
 
- Public Member Functions inherited from Parse_tree_node_tmpl< Column_parse_context >
virtual ~Parse_tree_node_tmpl ()=default
 
bool is_contextualized () const
 
void set_contextualized ()
 
virtual bool contextualize (Column_parse_context *pc) final
 
void error (Column_parse_context *pc, const POS &pos) const
 syntax_error() function replacement for deferred reporting of syntax errors More...
 
void error (Column_parse_context *pc, const POS &pos, const char *msg) const
 syntax_error() function replacement for deferred reporting of syntax errors More...
 
void errorf (Column_parse_context *pc, const POS &pos, const char *format,...) const
 syntax_error() function replacement for deferred reporting of syntax errors More...
 

Private Attributes

const CHARSET_INFO *const m_collation
 

Additional Inherited Members

- Public Types inherited from PT_column_attr_base
enum  Attr_type {
  AT_NONE , AT_COLLATE_COLUMN_ATTR , AT_DEFAULT_COLUMN_ATTR , AT_GENERATED_DEFAULT_VAL_COLUMN_ATTR ,
  AT_SECONDARY_COLUMN_ATTR , AT_NOT_NULL_COLUMN_ATTR , AT_NULL_COLUMN_ATTR , AT_UNIQUE_KEY_COLUMN_ATTR ,
  AT_PRIMARY_KEY_COLUMN_ATTR , AT_CHECK_CONSTRAINT_COLUMN_ATTR , AT_CONSTRAINT_ENFORCEMENT_ATTR , AT_COMMENT_COLUMN_ATTR ,
  AT_ON_UPDATE_COLUMN_ATTR , AT_AUTO_INCREMENT_COLUMN_ATTR , AT_SERIAL_DEFAULT_VALUE_COLUMN_ATTR , AT_COLUMN_FORMAT_COLUMN_ATTR ,
  AT_STORAGE_MEDIA_COLUMN_ATTR , AT_SRID_COLUMN_ATTR , AT_COLUMN_VISIBILITY_ATTR
}
 
typedef decltype(Alter_info::flagsalter_info_flags_t
 
- Public Types inherited from Parse_tree_node_tmpl< Column_parse_context >
typedef Column_parse_context context_t
 
- Static Public Member Functions inherited from Parse_tree_node_tmpl< Column_parse_context >
static void * operator new (size_t size, MEM_ROOT *mem_root, const std::nothrow_t &arg=std::nothrow) noexcept
 
static void operator delete (void *ptr, size_t size)
 
static void operator delete (void *, MEM_ROOT *, const std::nothrow_t &) noexcept
 
- Public Attributes inherited from Parse_tree_node_tmpl< Column_parse_context >
POS m_pos
 
- Protected Member Functions inherited from PT_column_attr_base
 PT_column_attr_base (const POS &pos)
 
- Protected Member Functions inherited from Parse_tree_node_tmpl< Column_parse_context >
 Parse_tree_node_tmpl ()=delete
 
 Parse_tree_node_tmpl (const POS &pos)
 
 Parse_tree_node_tmpl (const POS &start_pos, const POS &end_pos)
 
bool begin_parse_tree (Show_parse_tree *tree)
 
bool end_parse_tree (Show_parse_tree *tree)
 
virtual bool do_contextualize (Column_parse_context *pc)
 Do all context-sensitive things and mark the node as contextualized. More...
 
virtual void add_json_info (Json_object *json_obj)
 Add all the node-specific json fields. More...
 

Detailed Description

Node for the COLLATE <collation> column attribute.

Constructor & Destructor Documentation

◆ PT_collate_column_attr()

PT_collate_column_attr::PT_collate_column_attr ( const POS pos,
const CHARSET_INFO collation 
)
inlineexplicit

Member Function Documentation

◆ apply_collation()

bool PT_collate_column_attr::apply_collation ( Column_parse_context pc,
const CHARSET_INFO **  to,
bool *  has_explicit_collation 
) const
inlineoverridevirtual

Reimplemented from PT_column_attr_base.

◆ attr_type()

enum Attr_type PT_collate_column_attr::attr_type ( ) const
inlineoverridevirtual

Reimplemented from PT_column_attr_base.

Member Data Documentation

◆ m_collation

const CHARSET_INFO* const PT_collate_column_attr::m_collation
private

The documentation for this class was generated from the following file: