| MySQL 5.6.14 Source Code Document
    | 


| Public Types | |
| enum | Keytype { PRIMARY, UNIQUE, MULTIPLE, FULLTEXT, SPATIAL, FOREIGN_KEY } | 
| Public Member Functions | |
| Key (enum Keytype type_par, const LEX_STRING &name_arg, KEY_CREATE_INFO *key_info_arg, bool generated_arg, List< Key_part_spec > &cols) | |
| Key (enum Keytype type_par, const char *name_arg, size_t name_len_arg, KEY_CREATE_INFO *key_info_arg, bool generated_arg, List< Key_part_spec > &cols) | |
| Key (const Key &rhs, MEM_ROOT *mem_root) | |
| virtual Key * | clone (MEM_ROOT *mem_root) const | 
| Public Attributes | |
| enum Keytype | type | 
| KEY_CREATE_INFO | key_create_info | 
| List< Key_part_spec > | columns | 
| LEX_STRING | name | 
| bool | generated | 
| Val | m_val | 
| int8 | m_flag | 
| Friends | |
| bool | foreign_key_prefix (Key *a, Key *b) | 
| Additional Inherited Members | |
|  Static Public Member Functions inherited from Sql_alloc | |
| static void * | operator new (size_t size) throw () | 
| static void * | operator new[] (size_t size) throw () | 
| static void * | operator new[] (size_t size, MEM_ROOT *mem_root) throw () | 
| static void * | operator new (size_t size, MEM_ROOT *mem_root) throw () | 
| static void | operator delete (void *ptr, size_t size) | 
| static void | operator delete (void *ptr, MEM_ROOT *mem_root) | 
| static void | operator delete[] (void *ptr, MEM_ROOT *mem_root) | 
| static void | operator delete[] (void *ptr, size_t size) | 
Definition at line 258 of file sql_class.h.
Construct an (almost) deep copy of this key. Only those elements that are known to never change are not copied. If out of memory, a partial copy is returned and an error is set in THD.
Definition at line 111 of file sql_class.cc.
Used to make a clone of this object for ALTER/CREATE TABLE
Reimplemented in Foreign_key.
Definition at line 290 of file sql_class.h.