110
110
namespace drizzled {
111
111
namespace parser {
113
Item* handle_sql2003_note184_exception(Session *session, Item* left, bool equal, Item *expr);
114
bool add_select_to_union_list(Session *session, LEX *lex, bool is_union_distinct);
115
bool setup_select_in_parentheses(Session *session, LEX *lex);
116
Item* reserved_keyword_function(Session *session, const std::string &name, List<Item> *item_list);
117
void my_parse_error(Lex_input_stream *lip);
118
void my_parse_error(const char *message);
119
bool check_reserved_words(lex_string_t *name);
120
void errorOn(drizzled::Session *session, const char *s);
123
bool buildOrderBy(LEX *lex);
124
void buildEngineOption(LEX *lex, const char *key, const lex_string_t &value);
125
void buildEngineOption(LEX *lex, const char *key, uint64_t value);
126
void buildSchemaOption(LEX *lex, const char *key, const lex_string_t &value);
127
void buildSchemaOption(LEX *lex, const char *key, uint64_t value);
128
void buildSchemaDefiner(LEX *lex, const lex_string_t &value);
129
void buildSchemaDefiner(LEX *lex, const identifier::User &user);
130
bool checkFieldIdent(LEX *lex, const lex_string_t &schema_name, const lex_string_t &table_name);
132
Item *buildIdent(LEX *lex, const lex_string_t &schema_name, const lex_string_t &table_name, const lex_string_t &field_name);
133
Item *buildTableWild(LEX *lex, const lex_string_t &schema_name, const lex_string_t &table_name);
135
void buildCreateFieldIdent(LEX *lex);
137
void storeAlterColumnPosition(LEX *lex, const char *position);
139
bool buildCollation(LEX *lex, const charset_info_st *arg);
140
void buildKey(LEX *lex, Key::Keytype type_par, const lex_string_t &name_arg);
141
void buildForeignKey(LEX *lex, const lex_string_t &name_arg, drizzled::Table_ident *table);
143
drizzled::enum_field_types buildIntegerColumn(LEX *lex, drizzled::enum_field_types final_type, const bool is_unsigned);
144
drizzled::enum_field_types buildSerialColumn(LEX *lex);
145
drizzled::enum_field_types buildVarcharColumn(LEX *lex, const char *length);
146
drizzled::enum_field_types buildVarbinaryColumn(LEX *lex, const char *length);
147
drizzled::enum_field_types buildBlobColumn(LEX *lex);
148
drizzled::enum_field_types buildBooleanColumn(LEX *lex);
149
drizzled::enum_field_types buildUuidColumn(LEX *lex);
150
drizzled::enum_field_types buildIPv6Column(LEX *lex);
151
drizzled::enum_field_types buildDoubleColumn(LEX *lex);
152
drizzled::enum_field_types buildTimestampColumn(LEX *lex, const char *length);
153
drizzled::enum_field_types buildDecimalColumn(LEX *lex);
155
void buildKeyOnColumn(LEX *lex);
156
void buildAutoOnColumn(LEX *lex);
157
void buildPrimaryOnColumn(LEX *lex);
158
void buildReplicationOption(LEX *lex, bool arg);
159
void buildAddAlterDropIndex(LEX *lex, const char *name, bool is_foreign_key= false);
113
Item* handle_sql2003_note184_exception(Session*, Item* left, bool equal, Item *expr);
114
bool add_select_to_union_list(Session*, LEX*, bool is_union_distinct);
115
bool setup_select_in_parentheses(Session*, LEX*);
116
Item* reserved_keyword_function(Session*, const std::string &name, List<Item> *item_list);
117
void my_parse_error(Lex_input_stream*);
118
void my_parse_error(const char*);
119
bool check_reserved_words(str_ref);
120
void errorOn(Session*, const char *s);
123
bool buildOrderBy(LEX*);
124
void buildEngineOption(LEX*, const char *key, str_ref value);
125
void buildEngineOption(LEX*, const char *key, uint64_t value);
126
void buildSchemaOption(LEX*, const char *key, str_ref value);
127
void buildSchemaOption(LEX*, const char *key, uint64_t value);
128
void buildSchemaDefiner(LEX*, const identifier::User&);
129
bool checkFieldIdent(LEX*, str_ref schema_name, str_ref table_name);
131
Item *buildIdent(LEX*, str_ref schema_name, str_ref table_name, str_ref field_name);
132
Item *buildTableWild(LEX*, str_ref schema_name, str_ref table_name);
134
void buildCreateFieldIdent(LEX*);
135
void storeAlterColumnPosition(LEX*, const char *position);
137
bool buildCollation(LEX*, const charset_info_st *arg);
138
void buildKey(LEX*, Key::Keytype type_par, str_ref name_arg);
139
void buildForeignKey(LEX*, str_ref name_arg, Table_ident *table);
141
enum_field_types buildIntegerColumn(LEX*, enum_field_types final_type, const bool is_unsigned);
142
enum_field_types buildSerialColumn(LEX*);
143
enum_field_types buildVarcharColumn(LEX*, const char *length);
144
enum_field_types buildVarbinaryColumn(LEX*, const char *length);
145
enum_field_types buildBlobColumn(LEX*);
146
enum_field_types buildBooleanColumn(LEX*);
147
enum_field_types buildUuidColumn(LEX*);
148
enum_field_types buildIPv6Column(LEX*);
149
enum_field_types buildDoubleColumn(LEX*);
150
enum_field_types buildTimestampColumn(LEX*, const char *length);
151
enum_field_types buildDecimalColumn(LEX*);
153
void buildKeyOnColumn(LEX*);
154
void buildAutoOnColumn(LEX*);
155
void buildPrimaryOnColumn(LEX*);
156
void buildReplicationOption(LEX*, bool arg);
157
void buildAddAlterDropIndex(LEX*, const char *name, bool is_foreign_key= false);
161
159
} // namespace parser
162
160
} // namespace drizzled