60 #if defined (SUPPRESS_STRLEN_WARNING) 61 #define strlen(s1) ((int) strlen(s1)) 64 #define SAFENUM(node, field) ((node) ? (node)->field : -1) 65 #define PT_MEMB_BUF_SIZE 100 66 #define PT_MEMB_PRINTABLE_BUF_SIZE 512 67 #define PT_MEMB_ERR_BUF_SIZE 256 68 #define MAX_STRING_SEGMENT_LENGTH 254 69 #define DONT_PRT_LONG_STRING_LENGTH 256 71 #define PT_APPLY_WALK(parser, ptr, arg) do { \ 74 (ptr) = pt_walk_private ((parser), (ptr), (arg)); \ 420 #if defined(ENABLE_UNUSED_FUNCTION) 499 tree = lambda_arg->
tree;
500 name = lambda_arg->
name;
537 if (cast_coll != name_coll)
568 PT_NODE *name_node, *lambda_name, *result, *next, *temp;
587 if (lambda_arg->
type == 1)
603 name_node = tree_or_name;
604 lambda_name = lambda_arg->
name;
617 next = tree_or_name->
next;
620 for (temp = result; temp->
next; temp = temp->
next)
664 next = tree_or_name->
next;
667 for (temp = result; temp->
next; temp = temp->
next)
677 result = tree_or_name;
724 if (new_node ==
NULL)
730 *new_node = *old_node;
780 if (curr_cte_copy_info ==
NULL)
825 if (cte_info_it !=
NULL)
878 (*apply) (
parser, node, walk);
940 for (walk = node; walk; walk = walk->
or_next)
949 (*apply) (
parser, walk, &walk_argument);
953 walk->data_type =
pt_walk_private (parser, walk->data_type, &walk_argument);
1025 int save_paren_type = 0;
1036 if (corresponding_tree)
1052 return tree_with_names;
1056 lambda_arg.
name = name_node;
1057 lambda_arg.
tree = corresponding_tree;
1092 return pt_lambda_with_arg (parser, tree_with_names, name_node, corresponding_tree,
false, 0,
false);
1177 PT_NODE *res_list, *save_node1, *save_node2, *node1, *node2;
1190 for (node1 = list1; node1; node1 = node1->
next)
1196 for (node2 = list2; node2; node2 = node2->
next)
1281 for (node = tree; node; node = node->
next)
1339 if (new_top ==
NULL)
1352 list->
next = new_top;
1492 pt_frob_error (parser, &node,
"System error (%s) in %s (line: %d)", what, file, line);
1498 #if defined (ENABLE_UNUSED_FUNCTION) 1524 c = fgetc (p->
file);
1546 c = *((
const unsigned char *) p->
buffer);
1560 #if defined (ENABLE_UNUSED_FUNCTION) 1593 #define INITIAL_EXTENT 512 1596 int new_siz, old_siz;
1599 if (!parser || !node)
1776 #if defined (ENABLE_UNUSED_FUNCTION) 1786 parser_parse_binary (
PARSER_CONTEXT * parser,
const char *buffer,
size_t size)
1840 parser->
file = file;
1897 parser->
file = file;
1952 if (context !=
NULL)
1961 int before_context_len =
strlen (before_context_str) - 4;
1962 int context_len =
strlen (context);
1963 int end_of_statement = 0;
1977 context_copy = (
char *) context;
1980 if ((context_len == 0) || ((context_len == 1) && (*context_copy <= 32)))
1982 end_of_statement = 1;
1984 str_len =
strlen (before_end_of_stmt_str);
1988 str_len = context_len + before_context_len;
2000 if (end_of_statement == 0)
2003 snprintf (s, str_len + 1, before_context_str, context_copy);
2004 if (s[str_len - 3] ==
'\n')
2006 s[str_len - 3] =
' ';
2011 strcpy (s, before_end_of_stmt_str);
2073 const char *context =
NULL;
2142 return errors->
next;
2180 memset (node, 0x00,
sizeof (
PT_NODE));
2215 memset (node, 0x00,
sizeof (
PT_NODE));
2297 result = f (parser, (
PT_NODE *) node);
2303 return f (parser, (
PT_NODE *) node);
2335 sb.
body = (
char *) malloc (sb.
size);
2470 db_val = &new_db_val;
2540 for (i = 1; i < size; i++)
2615 return (
char *)
string->bytes;
2629 #define PT_QUERY_STRING_USER_TEXT ( \ 2657 return (
char *)
string->bytes;
2660 #undef PT_QUERY_STRING_USER_TEXT 2673 char *p = user_text;
2676 memset (user_text, 0, len);
2683 return snprintf (p, len - 1,
"user=%d|%d|%d", oid->
volid, oid->
pageid, oid->
slotid);
2696 unsigned int save_custom;
2706 return (
char *)
string->bytes;
2752 return (
char *)
string->bytes;
2776 for (n = p; n; n = n->
next)
2832 const int max_print_len = 64;
2842 if (
strlen (str) > max_print_len)
2844 strcpy (str + 60,
"...");
2862 const int max_print_len = 64;
2872 if (
strlen (str) > max_print_len)
2874 strcpy (str + 60,
"...");
2892 return "null_pointer";
2899 return "ALTER_INDEX";
2901 return "ALTER_USER";
2903 return "ALTER_TRIGGER";
2909 return "ATTR_ORDERING";
2913 return "COMMIT_WORK";
2915 return "CREATE_ENTITY";
2917 return "CREATE_INDEX";
2919 return "CREATE_USER";
2921 return "CREATE_TRIGGER";
2923 return "DATA_DEFAULT";
2929 return "DIFFERENCE";
2935 return "DROP_INDEX";
2939 return "DROP TRIGGER";
2941 return "EVENT_OBJECT";
2943 return "EVENT_SPEC";
2945 return "EVENT_TARGET";
2947 return "EXECUTE_TRIGGER";
2955 return "GET OPT LEVEL";
2957 return "GET TRANSACTION";
2965 return "INTERSECTION";
2967 return "ISOLATION LEVEL";
2971 return "METHOD CALL";
2973 return "METHOD_DEF";
2979 return "PREPARE TO COMMIT";
2987 return "REMOVE_TRIGGER";
2991 return "RESOLUTION";
2995 return "ROLLBACK_WORK";
3003 return "SET TIMEZONE";
3005 return "SET OPT LVL";
3007 return "SET SYSTEM PARAMETERS";
3009 return "SET TRANSACTION";
3019 return "TRIGGER_ACTION";
3021 return "TRIGGER_SPEC_LIST";
3031 return "UPDATE_STATS";
3034 #if defined (ENABLE_UNUSED_FUNCTION) 3041 return "CONSTRAINT";
3055 return "NODE: type unknown";
3120 for (len = 0; list; len++)
3140 for (len = 0; list; len++)
3148 for (len = 0; list; list = list->
next)
3170 if (list ==
NULL || index < 0)
3175 while (list && index > 0)
3207 return "invalidate transaction";
3227 return "with grant option";
3229 return "with no grant option";
3253 return "no isolation level";
3255 return "serializable";
3257 return "repeatable read";
3259 return "read committed";
3261 return "isolation level";
3263 return "lock timeout";
3275 return "match full";
3277 return "match partial";
3303 return "millisecond";
3305 return "simple case";
3307 return "searched case";
3325 return "constraint";
3337 return "MISC_TYPE: type unknown";
3365 return " not between ";
3391 return " not like ";
3397 return " not regexp ";
3399 return " regexp binary ";
3401 return " not regexp binary ";
3413 return " is not null ";
3461 return " subseteq ";
3463 return " superset ";
3465 return " superseteq ";
3483 return "bit_count ";
3497 return "connect_by_root ";
3543 return "find_in_set ";
3545 return "substring ";
3547 return "substring_index ";
3549 return "octet_length ";
3551 return "bit_length ";
3553 return "char_length ";
3599 return "date_format ";
3601 return "str_to_date ";
3603 return "time_format ";
3615 return "concat_ws ";
3631 return "disk_size ";
3633 return "like_match_lower_bound ";
3635 return "like_match_upper_bound ";
3649 return "aes_encrypt ";
3651 return "aes_decrypt ";
3657 return "to_base64 ";
3659 return "from_base64 ";
3679 return "translate ";
3681 return "sys_connect_by_path ";
3683 return "add_months ";
3687 return "months_between ";
3691 return "current_date ";
3695 return "current_time ";
3697 return "sys_timestamp ";
3699 return "current_timestamp ";
3701 return "sys_datetime ";
3703 return "current_datetime ";
3715 return "to_timestamp ";
3717 return "timestamp ";
3725 return "dayofmonth ";
3733 return "unix_timestamp ";
3735 return "from_unixtime ";
3741 return "dayofweek ";
3743 return "dayofyear ";
3747 return "from_days ";
3749 return "time_to_sec ";
3751 return "sec_to_time ";
3767 return "to_datetime ";
3769 return "to_number ";
3771 return "serial_current_value ";
3773 return "serial_next_value ";
3785 return "orderby_num";
3787 return "connect_by_iscycle ";
3789 return "connect_by_isleaf ";
3793 return "current_user ";
3795 return "local_transaction_id ";
3815 return "row_count ";
3817 return "last_insert_id ";
3825 return "oid_of_duplicate_key ";
3827 return "bit_to_blob";
3829 return "char_to_blob";
3831 return "blob_to_bit";
3833 return "char_to_clob";
3835 return "clob_to_char";
3837 return "blob_from_file";
3839 return "clob_from_file";
3841 return "blob_length";
3843 return "clob_length";
3847 return "index_cardinality ";
3849 return "evaluate_variable";
3851 return "define_variable";
3853 return "exec_stats";
3855 return "to_enumeration_value";
3857 return "inet_aton ";
3859 return "inet_ntoa ";
3863 return "coercibility ";
3865 return "collation ";
3867 return "width_bucket";
3869 return "trace_stats";
3871 return "index_prefix ";
3875 return "dbtimezone";
3877 return "sessiontimezone";
3885 return "to_datetime_tz ";
3887 return "to_timestamp_tz ";
3889 return "utc_timestamp ";
3893 return "schema_def";
3898 return "unknown opcode";
3931 return "references";
3937 return "unknown privilege";
3952 return "unknown data type";
3980 return "timestamptz";
3982 return "timestampltz";
3986 return "datetimetz";
3988 return "datetimeltz";
3996 return "nchar varying";
4000 return "bit varying";
4045 #if defined (ENABLE_UNUSED_FUNCTION) 4059 return "DROP QUERY";
4061 return "CHANGE QUERY";
4063 return "RESET QUERY";
4065 return "ADD ATTR/MTHD";
4067 return "DROP ATTR/MTHD";
4069 return "CHANGE ATTR/MTHD";
4071 return "RENAME ATTR/MTHD";
4073 return "ADD SUPCLASS";
4075 return "DROP SUPCLASS";
4077 return "DROP RESOLUTION";
4079 return "RENAME RESOLUTION";
4081 return "DROP CONSTRAINT";
4083 return "APPLY PARTITION";
4085 return "REMOVE PARTITION";
4087 return "ANALYZE PARTITION";
4089 return "DROP PARTITION";
4091 return "ADD PARTITION";
4093 return "ADD HASH PARTITION";
4095 return "REORGANIZE PARTITION";
4097 return "COALESCE PARTITION";
4099 return "PROMOTE PARTITION";
4101 return "CHANGE DEFAULT";
4103 return "RENAME ENTITY";
4105 return "ALTER SET DEFAULT";
4107 return "DROP INDEX";
4109 return "DROP PRIMARY KEY";
4111 return "DROP FOREIGN KEY";
4113 return "unknown alter code";
4135 return "unknown partition type";
4173 class_attr_list_p =
NULL;
4182 if (attr_list_p !=
NULL)
4184 next = *attr_list_p;
4197 *attr_list_p = next = tmp->
next;
4204 *attr_list_p = next = tmp->
next;
4210 attr_list_p = &next->
next;
4217 if (class_attr_list_p !=
NULL)
4219 next = *class_attr_list_p;
4232 *class_attr_list_p = next = tmp->
next;
4238 class_attr_list_p = &next->
next;
4284 for (col = node; col; col = col->
next)
4362 for (list = node; list; list = list->
next)
4381 PT_NODE *val, *col, *list, *next;
4402 for (col = list; col && do_rewrite !=
true; col = col->
next)
4415 PT_NODE *derived, *from, *range_var, *spec;
4429 range_var =
pt_name (parser,
"av3491");
4447 sprintf (buf,
"av_%d", i);
4537 bool e1_is_expr_set, e2_is_expr_set;
4538 int e1_cnt, e2_cnt,
rc;
4550 for (; e1 && e2; e1 = e1->
next, e2 = e2->
next)
4552 e1_is_expr_set = e2_is_expr_set =
false;
4555 e1_is_expr_set =
true;
4559 e2_is_expr_set =
true;
4562 if (e1_is_expr_set == e2_is_expr_set)
4564 if (e1_is_expr_set ==
true)
4583 if (e1_cnt > 0 && e2_cnt > 0 && e1_cnt != e2_cnt)
4594 PT_ERROR (parser, e2,
"check syntax at = or <>.");
4599 if ((e1 || e2) && rc)
4602 PT_ERROR (parser, e2,
"check syntax at = or <>.");
4619 PT_NODE *arg1, *arg2, *e1, *e2, *e1_next, *e2_next, *lhs, *tmp;
4620 bool e1_is_expr_set, e2_is_expr_set;
4649 e1_is_expr_set = e2_is_expr_set =
false;
4652 e1_is_expr_set =
true;
4656 e2_is_expr_set =
true;
4659 if (e1_is_expr_set == e2_is_expr_set)
4661 if (e1_is_expr_set ==
true)
4704 for (e1 = e1_next, e2 = e2_next; e1 && e2; e1 = e1_next, e2 = e2_next)
4716 e1_is_expr_set = e2_is_expr_set =
false;
4719 e1_is_expr_set =
true;
4723 e2_is_expr_set =
true;
4726 if (e1_is_expr_set == e2_is_expr_set)
4728 if (e1_is_expr_set ==
true)
4753 rhs->info.expr.op =
PT_EQ;
4754 rhs->info.expr.arg1 = e1;
4787 PT_ERRORf (parser, exp,
"check syntax at %s, different number of elements in expression.",
4893 #if defined (ENABLE_UNUSED_FUNCTION) 4937 #define pt_init_func_null_function ((PARSER_INIT_NODE_FUNC)(NULL)) 5016 #if defined (ENABLE_UNUSED_FUNCTION) 5135 #if defined (ENABLE_UNUSED_FUNCTION) 5191 memset (&(node->
info), 0x00, sizeof (node->
info));
5253 for (i = 0; i < str_length; i++)
5396 return " statement insert ";
5400 return " statement delete ";
5404 return " statement update ";
5408 return " rollback ";
5410 return " unknown trigger event type ";
5458 #if defined (ENABLE_RENAME_CONSTRAINT) 5459 case PT_RENAME_CONSTRAINT:
5460 case PT_RENAME_INDEX:
5511 bool close_parenthesis =
false;
5512 unsigned int save_custom;
5596 close_parenthesis =
false;
5607 close_parenthesis =
true;
5620 if (close_parenthesis)
5627 close_parenthesis =
true;
5633 if (close_parenthesis)
5662 names = names->
next;
5710 if (attrs->info.attr_def.ordering_info !=
NULL)
5725 if (attrs->info.attr_def.ordering_info !=
NULL)
5743 c_node = c_node->
next;
5758 if (attrs->info.attr_def.ordering_info !=
NULL)
5760 r1 =
pt_print_bytes (parser, attrs->info.attr_def.ordering_info);
5820 #if defined (ENABLE_RENAME_CONSTRAINT) 5821 case PT_RENAME_CONSTRAINT:
5822 case PT_RENAME_INDEX:
5881 while (names && defaults)
5892 names = names->
next;
5893 defaults = defaults->
next;
6124 for (crt_clause = p; crt_clause !=
NULL; crt_clause = crt_clause->
next)
6213 #if defined (ENABLE_RENAME_CONSTRAINT) 6220 const char *new_name = p->
info.
index.new_name->info.name.original;
6490 bool show_precision;
6500 show_precision =
true;
6506 show_precision =
false;
6522 show_precision = (precision != 7);
6527 if (show_precision ==
true)
6529 sprintf (s,
"(%d)", precision);
6843 unsigned int save_custom;
6905 constraint = constraint->
next;
6917 constraint = constraint->
next;
6925 constraint = constraint->
next;
6934 constraint = constraint->
next;
7125 PT_NODE *sort_spec, *prefix_length;
7162 if (prefix_length !=
NULL)
7536 const char *tde_algo_name;
7583 if (tde_algo_name !=
NULL)
7772 unsigned int save_custom;
8206 bool show_collation =
false;
8234 show_collation =
true;
8240 bool show_precision;
8252 show_precision =
true;
8258 show_precision =
false;
8274 show_precision = (precision != 7);
8280 if (show_precision ==
true)
8282 sprintf (buf,
"(%d)", precision);
8296 show_collation =
true;
8782 const char *index_name =
NULL;
8987 unsigned int save_custom;
9085 && r1->bytes[r1->length - 1] ==
')')
9121 bool insert_with_use_sbr =
false;
9138 insert_with_use_sbr =
true;
9142 if (!insert_with_use_sbr)
9178 #if defined (ENABLE_UNUSED_FUNCTION) 9434 const char *op1 =
NULL, *op2 =
NULL;
9511 PT_NODE *between, *between_ge_lt;
9966 bool has_user_format =
false;
9967 bool has_user_lang =
false;
10008 if (has_user_format)
10016 if (lang_name !=
NULL && has_user_lang)
10994 bool use_parentheses =
false;
11016 if (v_coll_id != -1)
11018 use_parentheses =
true;
11024 use_parentheses =
true;
11027 if (use_parentheses)
11449 sb.
body = (
char *) malloc (sb.
size);
11501 if (r2 && (r2->bytes[0] ==
'-') && q && (q->
bytes[q->
length - 1] ==
'-'))
11941 if (order_by !=
NULL)
12218 unsigned int save_custom;
12376 bool is_first_list =
true, multiple_values_insert =
false;
12464 multiple_values_insert = (crt_list !=
NULL && crt_list->
next !=
NULL);
12465 crt_list !=
NULL; crt_list = crt_list->
next, is_first_list =
false)
12467 if (!is_first_list)
12475 if (is_first_list && multiple_values_insert)
13213 crt_pair = crt_pair->
next;
13215 while (crt_pair !=
NULL);
13346 unsigned int save_custom;
13542 bool set_paren =
false;
13543 bool toggle_print_alias =
false;
13544 bool is_first_list;
13545 unsigned int save_custom = 0;
13556 if (where_list !=
NULL)
13632 is_first_list =
true;
13633 for (temp = temp; temp; temp = temp->
next)
13635 if (!is_first_list)
13642 is_first_list =
false;
13948 toggle_print_alias =
true;
14024 where_list = where_list->next;
14026 where_list->next =
NULL;
14122 ?
"with decrement for " :
"with increment for "));
14185 if (toggle_print_alias ==
true)
15178 #if defined (ENABLE_UNUSED_FUNCTION) 15207 if (p->
info.use.use_list)
15221 else if (p->
info.use.exclude_list)
15243 if (p->
info.use.as_default)
15437 int prt_coll_id = -1;
15674 if (prt_coll_id != -1)
15689 if (prt_coll_id != -1)
15737 if (prt_coll_id != -1)
15761 if (strstr (s,
"++") || strstr (s,
"--"))
15763 if (strstr (s,
"Inf"))
15767 (val->
amount > 0 ? DBL_MAX : -DBL_MAX));
15793 if (prt_coll_id != -1)
16570 bool first_cte =
true;
16682 int list_size = 0,
i;
16711 if (q && i < list_size - p->info.index.func_no_args)
16721 if (q->
next && i < list_size - p->info.index.func_no_args - 1)
16789 bool const_function_holder =
false;
16794 const_function_holder =
true;
16795 while (f_arg !=
NULL)
16799 const_function_holder =
false;
16802 f_arg = f_arg->
next;
16805 return const_function_holder;
17100 while (assigns && (links_idx < count || count == -1))
17106 lhs->
next = links[links_idx++];
17107 if (links_idx < count || count == -1)
17109 rhs->
next = links[links_idx++];
17115 for (att = lhs; att && (links_idx < count || count == -1); att = att->
next)
17117 att->
next = links[links_idx++];
17120 rhs->
next = links[links_idx++];
17122 assigns = assigns->
next;
17147 PT_NODE ** const_names,
PT_NODE ** const_values,
int *no_vals,
int *no_consts,
17150 #define ASSIGN_LINKS_EXTENT 10 17157 PT_NODE **links, **new_links;
17163 goto exit_on_error;
17166 if (!select_names || !select_values || !const_names || !const_values || !no_vals || !no_consts)
17169 #if defined(CUBRID_DEBUG) 17170 fprintf (stdout,
"system error detected in %s, line %d.\n", __FILE__, __LINE__);
17173 goto exit_on_error;
17176 *select_names = *select_values = *const_names = *const_values =
NULL;
17177 *no_vals = *no_consts = 0;
17185 #if defined(CUBRID_DEBUG) 17186 fprintf (stdout,
"system error detected in %s, line %d.\n", __FILE__, __LINE__);
17189 goto exit_on_error;
17195 if (links_idx >= links_alloc)
17197 links_alloc += links_chunk;
17199 if (new_links ==
NULL)
17202 goto exit_on_error;
17207 links[links_idx++] = lhs->
next;
17208 links[links_idx++] = rhs->
next;
17214 for (att = lhs; att; att = att->
next)
17218 #if defined(CUBRID_DEBUG) 17219 fprintf (stdout,
"system error detected in %s, line %d.\n", __FILE__, __LINE__);
17222 goto exit_on_error;
17226 if (links_idx >= links_alloc)
17228 links_alloc += links_chunk;
17230 if (new_links ==
NULL)
17233 goto exit_on_error;
17238 links[links_idx++] = att->
next;
17243 if (links_idx >= links_alloc)
17245 links_alloc += links_chunk;
17247 if (new_links ==
NULL)
17250 goto exit_on_error;
17255 links[links_idx++] = rhs->
next;
17261 if (*select_names ==
NULL)
17263 *select_names = lhs;
17264 *select_values = rhs;
17276 if (*const_names ==
NULL)
17278 *const_names = lhs;
17279 *const_values = rhs;
17287 assign = assign->
next;
17289 *old_links = links;
17668 if (srt_spec ==
NULL)
17688 if (srt_spec ==
NULL)
17701 if (srt_spec ==
NULL)
17714 if (srt_spec ==
NULL)
17831 for (node = sort_spec_list; node; node = node->
next)
17839 for (node = sort_spec_list; node; node = node->
next)
17974 save_next = cte_info_it->
next;
17975 free (cte_info_it);
18057 if (nested->next !=
NULL)
18091 static const char *
18094 switch (behavior_type)
18107 return "UNKNOWN BEHAVIOR";
static PARSER_VARCHAR * pt_print_drop_serial(PARSER_CONTEXT *parser, PT_NODE *p)
static PARSER_VARCHAR * pt_print_auth_cmd(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_apply_drop_trigger(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
#define PT_NAME_INFO_SET_FLAG(e, f)
PT_NODE * pt_point_l(PARSER_CONTEXT *parser, const PT_NODE *in_tree)
PT_NODE * pt_name(PARSER_CONTEXT *parser_ptr, const char *name)
static PT_NODE * pt_apply_revoke(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
PARSER_VARCHAR * pt_print_and_list(PARSER_CONTEXT *parser, const PT_NODE *p)
PT_GET_OPT_LVL_INFO get_opt_lvl
static PARSER_VARCHAR * pt_print_set_sys_params(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_apply_remove_trigger(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * pt_init_attr_def(PT_NODE *p)
PT_MISC_TYPE delete_action
static PT_NODE * pt_apply_rename_trigger(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static void pt_print_range_op(PARSER_CONTEXT *parser, PT_STRING_BLOCK *sb, PT_NODE *t, PARSER_VARCHAR *lhs)
struct pt_alter_info::@111::@115 rename
void pt_record_warning(PARSER_CONTEXT *parser, int stmt_no, int line_no, int col_no, const char *msg)
static PT_NODE * pt_init_create_entity(PT_NODE *p)
PT_NODE * pt_get_errors(PARSER_CONTEXT *parser)
unsigned dont_collect_exec_stats
bool pt_is_join_expr(PT_NODE *expr, UINTPTR *spec_id)
PT_NODE * trigger_reference
static PT_NODE * pt_apply_attach(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
PT_NODE * resolution_list
static PT_NODE * pt_apply_set_xaction(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PARSER_VARCHAR * pt_print_delete(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * free_node_in_tree_pre(PARSER_CONTEXT *parser, PT_NODE *node, void *arg, int *continue_walk)
bool pt_is_keyword(const char *text)
static PARSER_VARCHAR * pt_print_file_path(PARSER_CONTEXT *parser, PT_NODE *p)
static bool pt_function_is_allowed_as_function_index(const PT_NODE *func)
DB_COLLECTION * db_get_set(const DB_VALUE *value)
PT_METHOD_CALL_INFO method_call
PT_METHOD_DEF_INFO method_def
#define LANG_SYS_COLLATION
#define PT_SELECT_INFO_IS_FLAGED(s, f)
PARSER_VARCHAR *(* PARSER_PRINT_NODE_FUNC)(PARSER_CONTEXT *parser, PT_NODE *node)
static PT_NODE * pt_apply_json_table_node(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PARSER_VARCHAR * pt_print_insert(PARSER_CONTEXT *parser, PT_NODE *p)
static PARSER_VARCHAR * pt_print_alter(PARSER_CONTEXT *parser, PT_NODE *p)
static PARSER_VARCHAR * pt_print_union_stmt(PARSER_CONTEXT *parser, PT_NODE *p)
#define PT_APPLY_WALK(parser, ptr, arg)
static PARSER_VARCHAR * pt_print_alter_index(PARSER_CONTEXT *parser, PT_NODE *p)
PT_CHECK_OPTION_INFO check_option
static PT_NODE * pt_init_value(PT_NODE *p)
size_t input_buffer_length
#define PT_IS_SORT_SPEC_NODE(n)
PT_NODE ** parser_parse_string_use_sys_charset(PARSER_CONTEXT *parser, const char *buffer)
#define PT_MEMB_ERR_BUF_SIZE
PT_NODE * pt_function_index_skip_expr(PT_NODE *node)
TP_DOMAIN * expected_domain
#define PT_ERRORm(parser, node, setNo, msgNo)
PT_NODE *(* PARSER_APPLY_NODE_FUNC)(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
enum json_table_column_function func
static PT_NODE * pt_apply_vacuum(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * pt_apply_drop(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
void qo_get_optimization_param(void *, QO_PARAM,...)
void * parser_alloc(const PARSER_CONTEXT *parser, const int length)
static PARSER_VARCHAR * pt_print_query_trace(PARSER_CONTEXT *parser, PT_NODE *p)
PT_NODE * table_option_list
static PARSER_VARCHAR * pt_print_session_variables(PARSER_CONTEXT *parser, PT_NODE *p)
PARSER_VARCHAR * expr_before_const_folding
PT_NODE * pt_gather_constraints(PARSER_CONTEXT *parser, PT_NODE *node)
#define PT_NAME_INFO_DOT_SPEC
struct db_value * m_default_value
static PT_NODE * pt_apply_set_opt_lvl(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * pt_apply_difference(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
PT_ATTR_ORDERING_INFO attr_ordering
PT_MISC_TYPE call_or_expr
bool lang_check_identifier(const char *name, int length)
static PT_NODE * pt_init_name(PT_NODE *p)
PT_JSON_TABLE_COLUMN_INFO json_table_column_info
static PARSER_VARCHAR * pt_print_named_arg(PARSER_CONTEXT *parser, PT_NODE *p)
static PARSER_INIT_NODE_FUNC pt_init_func_array[PT_NODE_NUMBER]
PT_CTE_COPY_INFO * cte_structures_list
static PT_NODE * pt_apply_prepare_to_commit(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
struct pt_alter_info::@111::@119 auto_increment
static PT_NODE * pt_apply_auth_cmd(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
#define MSGCAT_SEMANTIC_INVALID_FUNCTION_INDEX_EXPR
static PARSER_VARCHAR * pt_print_intersection(PARSER_CONTEXT *parser, PT_NODE *p)
#define PT_ERROR(parser, node, msg)
PT_NODE ** parser_parse_file(PARSER_CONTEXT *parser, FILE *file)
static PARSER_VARCHAR * pt_print_json_table(PARSER_CONTEXT *parser, PT_NODE *p)
static PARSER_VARCHAR * pt_print_prepare_to_commit(PARSER_CONTEXT *parser, PT_NODE *p)
PT_NODE * pt_point_ref(PARSER_CONTEXT *parser, const PT_NODE *node)
PARSER_VARCHAR * pt_append_nulstring(const PARSER_CONTEXT *parser, PARSER_VARCHAR *bstring, const char *nulstring)
#define LANG_VARIABLE_CHARSET(x)
static PT_NODE * pt_apply_alter_user(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
PT_INT_FUNCTION next_byte
static PT_NODE * pt_init_merge(PT_NODE *p)
PT_NODE * trigger_priority
static PARSER_VARCHAR * pt_print_parts(PARSER_CONTEXT *parser, PT_NODE *p)
#define PT_SELECT_INFO_IS_UPD_DEL_QUERY
static PARSER_VARCHAR * pt_print_dot(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_init_query_trace(PT_NODE *p)
static PT_NODE * pt_apply_set_trigger(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * pt_apply_drop_user(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PARSER_VARCHAR * pt_print_attach(PARSER_CONTEXT *parser, PT_NODE *p)
PT_TYPE_ENUM recursive_type
PT_NODE * trigger_name_list
#define MSGCAT_SEMANTIC_OUT_OF_MEMORY
PT_MISC_TYPE all_or_distinct
static PT_NODE * pt_init_node_list(PT_NODE *p)
static PT_NODE * pt_init_create_index(PT_NODE *p)
struct json_table_column_behavior on_empty
static PARSER_VARCHAR * pt_print_json_table_column_info(PARSER_CONTEXT *parser, PT_NODE *p, PARSER_VARCHAR *pstr)
PARSER_VARCHAR * pt_print_db_value(PARSER_CONTEXT *parser, const struct db_value *val)
int vasprintf(char **ptr, const char *format, va_list ap)
PT_GET_XACTION_INFO get_xaction
PARSER_VARCHAR * pt_append_name(const PARSER_CONTEXT *parser, PARSER_VARCHAR *string, const char *name)
static PARSER_VARCHAR * pt_print_event_object(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_init_set_opt_lvl(PT_NODE *p)
int db_value_clone(DB_VALUE *src, DB_VALUE *dest)
static PARSER_VARCHAR * pt_print_tuple_value(PARSER_CONTEXT *parser, PT_NODE *p)
int parser_input_host_index
PT_TABLE_OPTION_INFO table_option
enum pt_type_enum PT_TYPE_ENUM
static const char * pt_json_table_column_behavior_to_string(const json_table_column_behavior_type &behavior_type)
static PT_NODE * pt_apply_set_sys_params(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
unsigned dont_prt_long_string
#define MAX_STRING_SEGMENT_LENGTH
void pt_record_error(PARSER_CONTEXT *parser, int stmt_no, int line_no, int col_no, const char *msg, const char *context)
static PT_NODE * pt_init_intersection(PT_NODE *p)
static PT_NODE * pt_apply_function(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
#define assert_release(e)
void pt_move_node(REFPTR(PT_NODE, destp), REFPTR(PT_NODE, srcp))
const char * pt_show_node_type(PT_NODE *node)
PT_NODE * pt_get_next_error(PT_NODE *errors, int *stmt_no, int *line_no, int *col_no, const char **msg)
static PT_NODE * copy_node_in_tree_pre(PARSER_CONTEXT *parser, PT_NODE *old_node, void *arg, int *continue_walk)
static PARSER_VARCHAR * pt_print_check_option(PARSER_CONTEXT *parser, PT_NODE *p)
int setobj_get_element_ptr(COL *col, int index, DB_VALUE **result)
PT_STORED_PROC_PARAM_INFO sp_param
static PT_NODE * pt_apply_do(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PARSER_VARCHAR * pt_print_commit_work(PARSER_CONTEXT *parser, PT_NODE *p)
PT_TYPE_ENUM pt_db_to_type_enum(const DB_TYPE t)
const char * pt_type_enum_to_db_domain_name(const PT_TYPE_ENUM t)
static PARSER_VARCHAR * pt_print_resolution(PARSER_CONTEXT *parser, PT_NODE *p)
INTL_LANG lang_get_lang_id_from_flag(const int flag, bool *has_user_format, bool *has_user_lang)
PT_NODE * pt_get_subquery_list(PT_NODE *node)
struct pt_query_info::@123 flag
PT_NODE * pt_get_end_path_node(PT_NODE *node)
static PARSER_VARCHAR * pt_print_json_table_column_error_or_empty_behavior(PARSER_CONTEXT *parser, PARSER_VARCHAR *pstr, const struct json_table_column_behavior &column_behavior)
static PT_NODE * pt_apply_expr(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
PT_NODE * path_correlation
PT_NODE_WALK_FUNCTION post_function
PARSER_VARCHAR * pt_append_bytes(const PARSER_CONTEXT *parser, PARSER_VARCHAR *old_string, const char *new_tail, const int new_tail_length)
unsigned int custom_print
OID * ws_identifier(MOP mop)
union pt_query_info::@124 q
static PARSER_VARCHAR * pt_print_data_default(PARSER_CONTEXT *parser, PT_NODE *p)
static PARSER_VARCHAR * pt_append_quoted_string(const PARSER_CONTEXT *parser, PARSER_VARCHAR *buf, const char *str, size_t str_length)
PT_NODE * as_attr_mthd_name
struct pt_merge_info::@125 update
void vid_get_keys(MOP mop, DB_VALUE *value)
const char * db_default_expression_string(DB_DEFAULT_EXPR_TYPE default_expr_type)
unsigned int custom_print
static PT_NODE * pt_apply_create_index(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * pt_apply_truncate(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * pt_init_insert(PT_NODE *p)
PT_DROP_USER_INFO drop_user
void pt_select_list_to_one_col(PARSER_CONTEXT *parser, PT_NODE *node, bool do_one)
static PARSER_VARCHAR * pt_print_trigger_action(PARSER_CONTEXT *parser, PT_NODE *p)
PT_NODE * parser_append_node_or(PT_NODE *node, PT_NODE *list)
static PARSER_VARCHAR * pt_print_alter_serial(PARSER_CONTEXT *parser, PT_NODE *p)
static PARSER_VARCHAR * pt_print_scope(PARSER_CONTEXT *parser, PT_NODE *p)
#define PT_NAME_INFO_IS_FLAGED(e, f)
static PT_NODE * pt_apply_kill(PARSER_CONTEXT *parser, PT_NODE *P, void *arg)
PT_NODE_LIST_INFO node_list
static PARSER_VARCHAR * pt_print_create_user(PARSER_CONTEXT *parser, PT_NODE *p)
PT_INT_FUNCTION next_char
SCAN_OPERATION_TYPE scan_op_type
#define PT_SET_JMP_ENV(parser)
static PARSER_VARCHAR * pt_print_revoke(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_walk_private(PARSER_CONTEXT *parser, PT_NODE *node, void *void_arg)
PT_REMOVE_TRIGGER_INFO remove_trigger
PT_ATTACH_INFO prepare_to_commit
static PT_NODE * pt_apply_constraint(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
const char * pt_show_misc_type(PT_MISC_TYPE p)
unsigned partition_pruned
static PT_NODE * pt_init_vacuum(PT_NODE *p)
static PARSER_VARCHAR * pt_print_rename_trigger(PARSER_CONTEXT *parser, PT_NODE *p)
PT_WITH_CLAUSE_INFO with_clause
void parser_free_node_resources(PT_NODE *node)
static PT_NODE * pt_apply_json_table(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PARSER_VARCHAR * pt_print_do(PARSER_CONTEXT *parser, PT_NODE *p)
unsigned single_table_opt
static PT_NODE * pt_init_showstmt(PT_NODE *p)
static PARSER_VARCHAR * pt_print_get_stats(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_apply_partition(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * pt_apply_data_default(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
struct parser_context::@134 flag
static PARSER_VARCHAR * pt_print_sp_parameter(PARSER_CONTEXT *parser, PT_NODE *p)
static PARSER_VARCHAR * pt_print_set_timezone(PARSER_CONTEXT *parser, PT_NODE *p)
static PARSER_VARCHAR * pt_print_create_entity(PARSER_CONTEXT *parser, PT_NODE *p)
DB_DEFAULT_EXPR_TYPE default_expr_type
static PT_NODE * pt_apply_event_spec(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PARSER_VARCHAR * pt_print_spec(PARSER_CONTEXT *parser, PT_NODE *p)
static PARSER_VARCHAR * pt_print_get_trigger(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_init_method_def(PT_NODE *p)
static PARSER_VARCHAR * pt_print_set_trigger(PARSER_CONTEXT *parser, PT_NODE *p)
PT_FOREIGN_KEY_INFO foreign_key
PT_NODE * pt_lambda(PARSER_CONTEXT *parser, PT_NODE *tree_with_names, PT_NODE *name_node, PT_NODE *corresponding_tree)
PT_MISC_TYPE trigger_status
static PT_NODE * pt_lambda_check_reduce_eq(PARSER_CONTEXT *parser, PT_NODE *tree_or_name, void *void_arg, int *continue_walk)
#define DB_FLOAT_DECIMAL_PRECISION
PARSER_VARCHAR * pt_print_bytes_l(PARSER_CONTEXT *parser, const PT_NODE *p)
static PT_NODE * pt_apply_error_msg(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
PT_NODE * parser_get_tree_list_diff(PARSER_CONTEXT *parser, PT_NODE *list1, PT_NODE *list2)
static PARSER_VARCHAR * pt_print_cte(PARSER_CONTEXT *parser, PT_NODE *p)
PT_NODE * method_args_list
void describe_value(const db_value *value)
PT_JSON_TABLE_INFO json_table_info
SERVER_INSERT_ALLOWED server_allowed
static PARSER_VARCHAR * pt_print_drop(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_apply_create_entity(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
PT_PRINT_VALUE_FUNC print_db_value
PT_NODE * class_attr_def_list
PT_KILLSTMT_INFO killstmt
int intl_identifier_lower(const char *src, char *dst)
static PT_NODE * pt_apply_tuple_value(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * free_node_in_tree_post(PARSER_CONTEXT *parser, PT_NODE *node, void *arg, int *continue_walk)
PT_NODE * trigger_priority
const char * lang_get_collation_name(const int coll_id)
static PARSER_VARCHAR * pt_print_grant(PARSER_CONTEXT *parser, PT_NODE *p)
json_table_column_behavior_type
static PT_NODE * pt_apply_sp_parameter(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
DB_MONETARY * db_get_monetary(const DB_VALUE *value)
static PT_NODE * pt_apply_rollback_work(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PARSER_VARCHAR * pt_print_attr_ordering(PARSER_CONTEXT *parser, PT_NODE *p)
static PARSER_VARCHAR * pt_print_remove_trigger(PARSER_CONTEXT *parser, PT_NODE *p)
INTL_CODESET lang_charset(void)
static PARSER_VARCHAR * pt_print_constraint(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_lambda_node(PARSER_CONTEXT *parser, PT_NODE *tree_or_name, void *void_arg, int *continue_walk)
char * parser_print_function_index_expr(PARSER_CONTEXT *parser, const PT_NODE *expr)
static PARSER_VARCHAR * pt_print_host_var(PARSER_CONTEXT *parser, PT_NODE *p)
PT_NODE ** pt_init_one_statement_parser(PARSER_CONTEXT *parser, FILE *file)
static PARSER_VARCHAR * pt_print_drop_index(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_apply_update(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
const char * tde_get_algorithm_name(TDE_ALGORITHM tde_algo)
PT_MISC_TYPE derived_table_type
#define DB_MAX_VARBIT_PRECISION
union pt_alter_info::@111 alter_clause
PT_NODE * pt_expr_to_sort_spec(PARSER_CONTEXT *parser, PT_NODE *expr)
static PT_NODE * pt_apply_attr_ordering(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
void er_set(int severity, const char *file_name, const int line_no, int err_id, int num_args,...)
PT_NODE ** parser_main(PARSER_CONTEXT *p)
static PARSER_VARCHAR * pt_print_set_opt_lvl(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_find_id_node(PARSER_CONTEXT *parser, PT_NODE *tree, void *void_arg, int *continue_walk)
static PARSER_VARCHAR * pt_print_with_clause(PARSER_CONTEXT *parser, PT_NODE *p)
static void pt_init_print_f(void)
static PT_NODE * pt_apply_sort_spec(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
PT_NODE * del_search_cond
int db_set_get(DB_SET *set, int index, DB_VALUE *value)
static PARSER_VARCHAR * pt_print_set_session_variables(PARSER_CONTEXT *parser, PT_NODE *p)
PT_NODE * cte_definition_list
PT_FUNCTION_INFO function
PT_CONNECT_BY_CHECK_CYCLES check_cycles
static PT_NODE * pt_apply_prepare(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
#define PT_IS_VACUUM_NODE(n)
static PT_NODE * pt_apply_alter_serial(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
#define CAST_POINTER_TO_NODE(p)
#define DB_MAX_VARCHAR_PRECISION
static PT_NODE * pt_apply_set_names(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * pt_apply_attr_def(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
#define PT_ERRORmf2(parser, node, setNo, msgNo, arg1, arg2)
int set_get_setobj(DB_COLLECTION *ref, COL **setptr, int for_write)
PT_NODE * constraint_list
PT_NODE * resolution_list
static PT_NODE * pt_init_expr(PT_NODE *p)
#define PT_IS_CONST_NOT_HOSTVAR(n)
PT_NODE * referenced_attrs
static PARSER_VARCHAR * pt_print_vacuum(PARSER_CONTEXT *parser, PT_NODE *p)
static PARSER_VARCHAR * pt_print_json_table_node(PARSER_CONTEXT *parser, PT_NODE *p)
static PARSER_VARCHAR * pt_print_node_list(PARSER_CONTEXT *parser, PT_NODE *p)
static PARSER_VARCHAR * pt_print_showstmt(PARSER_CONTEXT *parser, PT_NODE *p)
static PARSER_VARCHAR * pt_print_difference(PARSER_CONTEXT *parser, PT_NODE *p)
struct pt_alter_info::@111::@113 attr_mthd
static PT_NODE * pt_apply_trigger_action(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
#define PT_IS_QUERY_NODE_TYPE(x)
PT_NODE * parser_walk_leaves(PARSER_CONTEXT *parser, PT_NODE *node, PT_NODE_WALK_FUNCTION pre_function, void *pre_argument, PT_NODE_WALK_FUNCTION post_function, void *post_argument)
static PARSER_VARCHAR * pt_print_create_stored_procedure(PARSER_CONTEXT *parser, PT_NODE *p)
#define LANG_COERCIBLE_CODESET
static PT_NODE * pt_apply_timeout(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
unsigned has_internal_error
static PT_NODE * pt_apply_parts(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PARSER_VARCHAR * pt_print_partition(PARSER_CONTEXT *parser, PT_NODE *p)
#define DB_DOUBLE_DECIMAL_PRECISION
static PARSER_VARCHAR * pt_print_function(PARSER_CONTEXT *parser, PT_NODE *p)
#define PT_SPEC_IS_ENTITY(spec_)
size_t input_buffer_position
PT_NODE * pt_rewrite_set_eq_set(PARSER_CONTEXT *parser, PT_NODE *exp)
static PT_NODE * pt_apply_pointer(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * pt_apply_alter_trigger(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PARSER_VARCHAR * pt_print_create_index(PARSER_CONTEXT *parser, PT_NODE *p)
PT_CREATE_TRIGGER_INFO create_trigger
PT_NODE * odku_assignments
PT_NODE * of_sup_class_name
PT_MISC_TYPE grant_option
PT_MISC_TYPE with_check_option
PT_MISC_TYPE trigger_status
#define MSGCAT_SYNTAX_BEFORE_CONTEXT
const char * pt_show_type_enum(PT_TYPE_ENUM t)
#define ER_OUT_OF_VIRTUAL_MEMORY
#define PT_GET_COLLATION_MODIFIER(p)
static PT_NODE * pt_init_isolation_lvl(PT_NODE *p)
PT_SET_XACTION_INFO set_xaction
static PT_NODE * pt_apply_get_stats(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
#define pt_init_func_null_function
PT_NODE * flat_entity_list
PT_NODE ** parser_parse_string(PARSER_CONTEXT *parser, const char *buffer)
PT_MISC_TYPE all_distinct
void lang_set_parser_use_client_charset(bool use)
struct pt_alter_info::@111::@117 collation
unsigned strings_have_no_escapes
static PT_NODE * pt_init_datatype(PT_NODE *p)
PT_NODE * trigger_spec_list
PT_MISC_TYPE nulls_first_or_last
int intl_identifier_casecmp(const char *str1, const char *str2)
#define DB_VALUE_DOMAIN_TYPE(value)
char * pt_print_alias(PARSER_CONTEXT *parser, const PT_NODE *node)
static PT_NODE * pt_apply_evaluate(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PARSER_VARCHAR * pt_print_create_serial(PARSER_CONTEXT *parser, PT_NODE *p)
PT_PARTITION_INFO partition
struct json_table_column_behavior on_error
void * pt_internal_error(PARSER_CONTEXT *parser, const char *file, int line, const char *what)
PT_DROP_SESSION_VAR_INFO drop_session_var
static PARSER_VARCHAR * pt_print_truncate(PARSER_CONTEXT *parser, PT_NODE *p)
PT_NODE * pt_top(PARSER_CONTEXT *parser)
static PARSER_VARCHAR * pt_print_json_table_columns(PARSER_CONTEXT *parser, PT_NODE *p)
PT_NODE * parser_copy_tree(PARSER_CONTEXT *parser, const PT_NODE *tree)
static PARSER_VARCHAR * pt_print_value(PARSER_CONTEXT *parser, PT_NODE *p)
#define PT_IS_VALUE_QUERY(n)
PT_EXECUTE_TRIGGER_INFO execute_trigger
static PT_NODE * pt_init_tuple_value(PT_NODE *p)
static PT_NODE * pt_init_data_default(PT_NODE *p)
#define OPTIMIZATION_ENABLED(level)
static PT_NODE * pt_apply_table_option(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
PT_FILE_PATH_INFO file_path
PT_SHOWSTMT_INFO showstmt
static PT_NODE * pt_init_insert_value(PT_NODE *p)
DB_OBJECT * db_get_object(const DB_VALUE *value)
int substr(std::string &result, bool &is_matched, const cub_regex_object ®, const std::string &src, const int position, const int occurrence, const INTL_CODESET codeset)
const char * pt_show_binopcode(PT_OP_TYPE n)
static PT_NODE * pt_apply_merge(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
#define PT_NAME_INFO_CONSTANT
PT_ISOLATION_LVL_INFO isolation_lvl
#define PT_SELECT_INFO_COLS_SCHEMA
PARSER_VARCHAR * pt_append_varchar(const PARSER_CONTEXT *parser, PARSER_VARCHAR *old_string, const PARSER_VARCHAR *new_tail)
void parser_free_subtrees(PARSER_CONTEXT *parser, PT_NODE *tree)
void pt_parser_line_col(PT_NODE *node)
#define PT_IS_VALUE_NODE(n)
DB_VALUE * db_value_copy(DB_VALUE *value)
static PT_NODE * pt_apply_auto_increment(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
void describe_money(const db_monetary *value)
static PARSER_APPLY_NODE_FUNC * pt_apply_f
static PT_NODE * pt_apply_drop_index(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
#define TP_DOMAIN_TYPE(dom)
#define MSGCAT_SEMANTIC_ATT_CNT_COL_CNT_NE
PT_DATA_TYPE_INFO data_type
static PARSER_VARCHAR * pt_print_method_def(PARSER_CONTEXT *parser, PT_NODE *p)
void pt_frob_error(PARSER_CONTEXT *parser, const PT_NODE *stmt, const char *fmt,...)
static PT_NODE * pt_apply_event_object(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PARSER_VARCHAR * pt_print_event_spec(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_apply_spec(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
#define PT_NAME_INFO_DESC
struct pt_alter_info::@111::@118 index
static PT_NODE * pt_apply_node_list(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PARSER_PRINT_NODE_FUNC * pt_print_f
PT_ATTR_DEF_INFO attr_def
static PT_NODE * pt_init_table_option(PT_NODE *p)
PT_NODE * pt_pointer_stack_pop(PARSER_CONTEXT *parser, PT_NODE *stack, PT_NODE **node)
struct pt_alter_info::@111::@121 comment
static PT_NODE * pt_apply_get_opt_lvl(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
PT_GET_TRIGGER_INFO get_trigger
const char * er_msg(void)
static PARSER_VARCHAR * pt_print_alter_user(PARSER_CONTEXT *parser, PT_NODE *p)
bool pt_is_const_expr_node(PT_NODE *node)
static PT_NODE * pt_init_delete(PT_NODE *p)
PT_NODE * referenced_attrs
#define MSGCAT_SYNTAX_BEFORE_END_OF_STMT
#define LANG_COERCIBLE_COLL
static void pt_init_init_f(void)
static PARSER_VARCHAR * pt_print_table_option(PARSER_CONTEXT *parser, PT_NODE *p)
PT_EVENT_OBJECT_INFO event_object
PARSER_VARCHAR * pt_print_bytes_spec_list(PARSER_CONTEXT *parser, const PT_NODE *p)
PT_JSON_TABLE_NODE_INFO json_table_node_info
PT_TABLE_OPTION_TYPE option
#define PT_SPEC_IS_DERIVED(spec_)
static PARSER_VARCHAR * pt_print_index_columns(PARSER_CONTEXT *parser, PT_NODE *p)
void dbcs_start_input(void)
char * parser_print_tree_list(PARSER_CONTEXT *parser, const PT_NODE *node)
PARSER_CONTEXT * parent_parser
char * pt_append_string(const PARSER_CONTEXT *parser, const char *old_string, const char *new_tail)
PT_CREATE_SELECT_ACTION create_select_action
PT_CREATE_ENTITY_INFO create_entity
PARSER_VARCHAR * pt_print_bytes(PARSER_CONTEXT *parser, const PT_NODE *node)
#define PT_ERRORc(parser, node, msg)
static PARSER_VARCHAR * pt_print_col_def_constraint(PARSER_CONTEXT *parser, PT_NODE *p)
PT_ZZ_ERROR_MSG_INFO error_msg
#define db_private_free_and_init(thrd, ptr)
PT_NODE * trigger_spec_list
struct pt_alter_info::@110 super
PT_NODE ** parser_parse_string_with_escapes(PARSER_CONTEXT *parser, const char *buffer, const bool strings_have_no_escapes)
static PT_NODE * pt_apply_name(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * pt_apply_alter(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
const char * get_buffer() const
short db_value_is_in_workspace
PT_AUTH_CMD_INFO auth_cmd
#define IS_UPDATE_OBJ(node)
#define db_private_free(thrd, ptr)
#define PT_SPEC_IS_CTE(spec_)
PT_NODE * pt_continue_walk(PARSER_CONTEXT *parser, PT_NODE *tree, void *arg, int *continue_walk)
static PARSER_VARCHAR * pt_print_datatype(PARSER_CONTEXT *parser, PT_NODE *p)
#define db_private_alloc(thrd, size)
struct pt_alter_info::@111::@120 user
static PARSER_VARCHAR * pt_print_alter_stored_procedure(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_apply_set_session_variables(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * pt_init_spec(PT_NODE *p)
PT_TRIGGER_SPEC_LIST_INFO trigger_spec_list
PT_EVENT_TARGET_INFO event_target
static bool pt_is_nested_expr(const PT_NODE *node)
static PT_NODE * pt_apply_with_clause(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
PT_NODE * parser_create_node(const PARSER_CONTEXT *parser)
PT_EVALUATE_INFO evaluate
static PARSER_VARCHAR * pt_print_select(PARSER_CONTEXT *parser, PT_NODE *p)
int db_set_size(DB_SET *set)
PT_AUTO_INCREMENT_INFO auto_increment
static PT_NODE * pt_apply_union_stmt(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PARSER_VARCHAR * pt_print_execute_trigger(PARSER_CONTEXT *parser, PT_NODE *p)
#define MSGCAT_SET_PARSER_SYNTAX
int count(int &result, const cub_regex_object ®, const std::string &src, const int position, const INTL_CODESET codeset)
PT_RENAME_TRIGGER_INFO rename_trigger
#define MSGCAT_CATALOG_CUBRID
DB_OBJECT * db_get_user(void)
#define MSGCAT_SEMANTIC_INVALID_FUNCTION_INDEX
static PT_NODE * pt_apply_query_trace(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * pt_apply_file_path(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * pt_init_sort_spec(PT_NODE *p)
static DB_CURRENCY pt_currency_to_db(const PT_CURRENCY t)
PT_SET_NAMES_INFO set_names
SM_INDEX_STATUS index_status
static PT_NODE * pt_init_constraint(PT_NODE *node)
PT_TUPLE_VALUE_INFO tuple_value
static PARSER_INIT_NODE_FUNC * pt_init_f
bool is_cascade_constraints
PARSER_VARCHAR * pt_print_bytes_alias(PARSER_CONTEXT *parser, const PT_NODE *node)
static PT_NODE * pt_init_get_opt_lvl(PT_NODE *p)
static PT_NODE * pt_apply_trigger_spec_list(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
#define PT_QUERY_STRING_USER_TEXT
static PARSER_VARCHAR * pt_print_method_call(PARSER_CONTEXT *parser, PT_NODE *p)
DB_DEFAULT_EXPR_TYPE on_update
static PT_NODE * pt_init_pointer(PT_NODE *node)
PT_NODE * parser_append_node(PT_NODE *node, PT_NODE *list)
char * pt_short_print(PARSER_CONTEXT *parser, const PT_NODE *node)
static PARSER_VARCHAR * pt_print_evaluate(PARSER_CONTEXT *parser, PT_NODE *p)
PT_NODE * parser_init_node(PT_NODE *node, PT_NODE_TYPE node_type)
struct pt_constraint_info::@127::@131 check
const char * generic_name
PT_NODE * parser_new_node(PARSER_CONTEXT *parser, PT_NODE_TYPE node_type)
static void error(const char *msg)
PT_SET_SYS_PARAMS_INFO set_sys_params
PT_NODE * pt_pop(PARSER_CONTEXT *parser)
void parser_free_node(const PARSER_CONTEXT *parser, PT_NODE *node)
static PARSER_VARCHAR * pt_print_get_xaction(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_init_function(PT_NODE *p)
PT_NODE * pt_get_node_from_list(PT_NODE *list, int index)
static PARSER_VARCHAR * pt_print_timeout(PARSER_CONTEXT *parser, PT_NODE *p)
#define PT_IS_SIMPLE_CHAR_STRING_TYPE(t)
const char * pt_show_priv(PT_PRIV_TYPE t)
static PT_NODE * pt_apply_method_def(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * pt_apply_intersection(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PARSER_VARCHAR * pt_print_update(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_apply_get_xaction(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
short db_value_is_initialized
PT_NODE * referenced_class
PT_UPDATE_STATS_INFO update_stats
PT_SORT_SPEC_INFO sort_spec
#define MAX_PRINT_ERROR_CONTEXT_LENGTH
PT_NODE * odku_non_null_attrs
static int parser_print_user(char *user_text, int len)
static PARSER_VARCHAR * pt_print_event_target(PARSER_CONTEXT *parser, PT_NODE *p)
const char * lang_get_codeset_name(int codeset_id)
bool pt_name_equal(PARSER_CONTEXT *parser, const PT_NODE *name1, const PT_NODE *name2)
void parser_free_tree(PARSER_CONTEXT *parser, PT_NODE *tree)
static PT_NODE * pt_apply_method_call(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * pt_apply_insert(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * pt_apply_grant(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static int buffgetin(PARSER_CONTEXT *p)
static PARSER_VARCHAR * pt_print_name(PARSER_CONTEXT *parser, PT_NODE *p)
enum pt_currency_types PT_CURRENCY
const char * fcode_get_lowercase_name(FUNC_TYPE ftype)
static PT_NODE * pt_apply_create_serial(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * pt_init_kill(PT_NODE *p)
#define MSGCAT_SET_PARSER_SEMANTIC
PT_NODE * trigger_condition
static PT_NODE * pt_apply_drop_serial(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PARSER_PRINT_NODE_FUNC pt_print_func_array[PT_NODE_NUMBER]
static PARSER_APPLY_NODE_FUNC pt_apply_func_array[PT_NODE_NUMBER]
int intl_identifier_lower_string_size(const char *src)
static PT_NODE * pt_apply_named_arg(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * pt_apply_isolation_lvl(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * pt_apply_showstmt(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
PT_MISC_TYPE update_action
struct pt_constraint_info::@127::@130 unique
static PT_NODE * pt_apply_rename(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
#define free_and_init(ptr)
struct pt_merge_info::@126 insert
#define PT_IS_EXPR_NODE(n)
static PT_NODE * pt_apply_get_trigger(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
PT_COMMIT_WORK_INFO commit_work
PT_RESOLUTION_INFO resolution
enum json_table_column_behavior_type m_behavior
char * parser_print_tree_with_quotes(PARSER_CONTEXT *parser, const PT_NODE *node)
unsigned long_string_skipped
static PARSER_VARCHAR * pt_append_string_prefix(const PARSER_CONTEXT *parser, PARSER_VARCHAR *buf, const PT_NODE *value)
PT_NODE * pt_point(PARSER_CONTEXT *parser, const PT_NODE *in_tree)
PT_NODE * non_recursive_part
bool pt_is_function_index_expr(PARSER_CONTEXT *parser, PT_NODE *expr, bool report_error)
static PT_NODE * pt_apply_create_trigger(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
UINTPTR pt_find_id(PARSER_CONTEXT *parser, PT_NODE *tree_with_names, UINTPTR id)
const char * original_buffer
static PARSER_VARCHAR * pt_print_alter_trigger(PARSER_CONTEXT *parser, PT_NODE *p)
static void strcat_with_realloc(PT_STRING_BLOCK *sb, const char *tail)
const char * lang_get_lang_name_from_id(const INTL_LANG lang_id)
PT_SET_TIMEZONE_INFO set_timezone
PT_ALTER_TRIGGER_INFO alter_trigger
#define PT_SELECT_FULL_INFO_COLS_SCHEMA
struct pt_constraint_info::@127::@129 not_null
static PARSER_VARCHAR * pt_print_pointer(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_apply_stored_procedure(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PARSER_VARCHAR * pt_print_set_names(PARSER_CONTEXT *parser, PT_NODE *p)
enum intl_codeset INTL_CODESET
struct pt_function_info::@122 analytic
#define SAFENUM(node, field)
PT_ROLLBACK_WORK_INFO rollback_work
PT_NODE * pt_pointer_stack_push(PARSER_CONTEXT *parser, PT_NODE *stack, PT_NODE *node)
static const char DECIMAL_FORMAT[]
bool prm_get_bool_value(PARAM_ID prm_id)
PT_ALTER_USER_INFO alter_user
PT_NODE * pt_sort_spec_list_to_name_node_list(PARSER_CONTEXT *parser, PT_NODE *sort_spec_list)
PT_DROP_TRIGGER_INFO drop_trigger
PT_NODE * after_cb_filter
PARSER_VARCHAR * pt_print_node_value(PARSER_CONTEXT *parser, const PT_NODE *val)
static PT_NODE * pt_apply_set_timezone(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * pt_apply_value(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
PT_GET_STATS_INFO get_stats
#define ASSIGN_LINKS_EXTENT
#define PT_IS_N_COLUMN_UPDATE_EXPR(n)
static PARSER_VARCHAR * pt_print_alter_one_clause(PARSER_CONTEXT *parser, PT_NODE *p)
PT_NODE * method_def_list
static PT_NODE * copy_node_in_tree_post(PARSER_CONTEXT *parser, PT_NODE *new_node, void *arg, int *continue_walk)
PT_NODE * method_file_list
#define TP_FLOATING_PRECISION_VALUE
static PARSER_VARCHAR * pt_print_expr(PARSER_CONTEXT *parser, PT_NODE *p)
static PARSER_VARCHAR * pt_print_drop_trigger(PARSER_CONTEXT *parser, PT_NODE *p)
PT_SET_OPT_LVL_INFO set_opt_lvl
static void pt_init_apply_f(void)
char * parser_print_tree(PARSER_CONTEXT *parser, const PT_NODE *node)
#define DB_VALUE_TYPE(value)
PT_NODE * trigger_spec_list
static PARSER_VARCHAR * pt_print_get_opt_lvl(PARSER_CONTEXT *parser, PT_NODE *p)
PT_NODE * correlation_name
#define DONT_PRT_LONG_STRING_LENGTH
int parser_output_host_index
static PARSER_VARCHAR * pt_print_auto_increment(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_apply_insert_value(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
const char * pt_show_partition_type(PT_PARTITION_TYPE t)
int pt_length_of_select_list(PT_NODE *list, int hidden_col)
static PT_NODE * pt_apply_execute_trigger(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
int db_make_null(DB_VALUE *value)
char * msgcat_message(int cat_id, int set_id, int msg_id)
static PT_NODE * pt_apply_select(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static void pt_clean_tree_copy_info(PT_TREE_COPY_INFO *tree_copy_info)
PT_NODE_WALK_FUNCTION pre_function
#define DB_IS_NULL(value)
static PT_NODE * pt_apply_alter_index(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PARSER_VARCHAR * pt_print_sort_spec(PARSER_CONTEXT *parser, PT_NODE *p)
#define MSGCAT_SEMANTIC_FUNCTION_CANNOT_BE_USED_FOR_INDEX
PT_NODE * pt_lambda_with_arg(PARSER_CONTEXT *parser, PT_NODE *tree_with_names, PT_NODE *name_node, PT_NODE *corresponding_tree, bool loc_check, int type, bool dont_replace)
struct pt_alter_info::@111::@114 ch_attr_def
#define pt_is_set_type(n)
struct pt_constraint_info::@127::@128 primary_key
static PARSER_VARCHAR * pt_print_create_trigger(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_apply_scope(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PARSER_VARCHAR * pt_print_error_msg(PARSER_CONTEXT *parser, PT_NODE *p)
PT_NODE * parser_reinit_node(PT_NODE *node)
PT_TRUNCATE_INFO truncate
unsigned print_type_ambiguity
#define DB_MAX_VARNCHAR_PRECISION
static PT_NODE * pt_apply_dot(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
const char * lang_charset_introducer(const INTL_CODESET codeset)
void parser_clear_node(PARSER_CONTEXT *parser, PT_NODE *node)
static PT_NODE * pt_apply_json_table_column(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
char * sysprm_print_parameters_for_qry_string(void)
#define PT_INTERNAL_ERROR(parser, what)
static bool pt_expr_is_allowed_as_function_index(const PT_NODE *expr)
static PARSER_VARCHAR * pt_print_rollback_work(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_apply_savepoint(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
PARSER_CONTEXT * this_parser
PT_DROP_VARIABLE_INFO drop_variable
#define pt_has_error(parser)
PT_SAVEPOINT_INFO savepoint
static PT_NODE * pt_init_difference(PT_NODE *p)
static PT_NODE * pt_apply_delete(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
enum pt_node_type PT_NODE_TYPE
static PT_NODE * pt_apply_cte(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
PT_NODE * trigger_spec_list
static PT_NODE * pt_apply_check_option(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
PT_NAMED_ARG_INFO named_arg
#define PT_CLEAR_JMP_ENV(parser)
static PARSER_VARCHAR * pt_print_savepoint(PARSER_CONTEXT *parser, PT_NODE *p)
#define PT_SELECT_INFO_FOR_UPDATE
PT_SET_TRIGGER_INFO set_trigger
#define PT_SELECT_INFO_IDX_SCHEMA
#define MSGCAT_SEMANTIC_CONSTANT_IN_FUNCTION_INDEX_NOT_ALLOWED
int dbcs_get_next(PARSER_CONTEXT *parser)
void * parser_allocate_string_buffer(const PARSER_CONTEXT *parser, const int length, const int align)
char * pt_print_query_spec_no_list(PARSER_CONTEXT *parser, const PT_NODE *node)
#define PT_HAS_COLLATION(t)
PT_TRIGGER_ACTION_INFO trigger_action
PT_CONSTRAINT_INFO constraint
int pt_push(PARSER_CONTEXT *parser, PT_NODE *node)
PT_ENUM_ELEMENT enumeration
static PT_NODE * pt_apply_commit_work(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PARSER_VARCHAR * pt_print_update_stats(PARSER_CONTEXT *parser, PT_NODE *p)
PT_SET_SESSION_VARIABLE_INFO set_variables
int pt_get_assignment_lists(PARSER_CONTEXT *parser, PT_NODE **select_names, PT_NODE **select_values, PT_NODE **const_names, PT_NODE **const_values, int *no_vals, int *no_consts, PT_NODE *assign, PT_NODE ***old_links)
static PT_NODE * pt_apply_drop_variable(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
PT_MISC_TYPE is_subinsert
static PT_NODE * pt_apply_event_target(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
int pt_length_of_list(const PT_NODE *list)
PT_NODE *(* PT_NODE_WALK_FUNCTION)(PARSER_CONTEXT *p, PT_NODE *tree, void *arg, int *continue_walk)
struct parser_node::@132 flag
PT_NODE * object_parameter
static PT_NODE * pt_apply_create_user(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
DB_VALUE * pt_value_to_db(PARSER_CONTEXT *parser, PT_NODE *value)
#define db_private_realloc(thrd, ptr, size)
PT_DATA_DEFAULT_INFO data_default
static PT_NODE * pt_init_union_stmt(PT_NODE *p)
static PT_NODE * pt_init_select(PT_NODE *p)
PT_EVENT_SPEC_INFO event_spec
void pt_restore_assignment_links(PT_NODE *assigns, PT_NODE **links, int count)
void pt_init_node(PT_NODE *node, PT_NODE_TYPE node_type)
static PT_NODE * pt_init_grant(PT_NODE *p)
static const char * pt_show_event_type(PT_EVENT_TYPE p)
void pt_frob_warning(PARSER_CONTEXT *parser, const PT_NODE *stmt, const char *fmt,...)
#define PT_MEMB_PRINTABLE_BUF_SIZE
struct pt_alter_info::@111::@116 partition
static PARSER_VARCHAR * pt_print_drop_session_variables(PARSER_CONTEXT *parser, PT_NODE *p)
union pt_constraint_info::@127 un
PT_HOST_VAR_INFO host_var
static PT_NODE * pt_apply_update_stats(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PT_NODE * pt_init_json_table_column(PT_NODE *p)
PT_NODE *(* PARSER_INIT_NODE_FUNC)(PT_NODE *)
static PARSER_VARCHAR * pt_print_rename(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_apply_host_var(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
PT_NODE * parser_walk_tree(PARSER_CONTEXT *parser, PT_NODE *node, PT_NODE_WALK_FUNCTION pre_function, void *pre_argument, PT_NODE_WALK_FUNCTION post_function, void *post_argument)
TP_DOMAIN_COLL_ACTION collation_flag
#define PT_EXPR_INFO_IS_FLAGED(e, f)
static PT_NODE * pt_init_update(PT_NODE *p)
static PARSER_VARCHAR * pt_print_drop_stored_procedure(PARSER_CONTEXT *parser, PT_NODE *p)
#define PT_ERRORf(parser, node, msg, arg1)
#define PT_IS_NAME_NODE(n)
static PARSER_VARCHAR * pt_print_attr_def(PARSER_CONTEXT *parser, PT_NODE *p)
PT_NODE * parser_copy_tree_list(PARSER_CONTEXT *parser, PT_NODE *tree)
void parser_init_func_vectors(void)
static PT_NODE * pt_apply_drop_session_variables(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
static PARSER_VARCHAR * pt_print_drop_user(PARSER_CONTEXT *parser, PT_NODE *p)
#define PT_ERRORmf(parser, node, setNo, msgNo, arg1)
const char * fcode_get_uppercase_name(FUNC_TYPE ftype)
unsigned is_hidden_column
static int fgetin(PARSER_CONTEXT *p)
static PT_NODE * pt_init_alter_trigger(PT_NODE *p)
PT_MISC_TYPE condition_time
static PARSER_VARCHAR * pt_print_isolation_lvl(PARSER_CONTEXT *parser, PT_NODE *p)
PT_CREATE_USER_INFO create_user
PT_NODE * constraint_list
static PARSER_VARCHAR * pt_print_insert_value(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_init_resolution(PT_NODE *p)
static PARSER_VARCHAR * pt_print_trigger_spec_list(PARSER_CONTEXT *parser, PT_NODE *p)
#define PT_NAME_GENERATED_DERIVED_SPEC
#define PT_EXPR_INFO_CAST_COLL_MODIFIER
static PARSER_VARCHAR * pt_print_set_xaction(PARSER_CONTEXT *parser, PT_NODE *p)
static PARSER_VARCHAR * pt_print_drop_variable(PARSER_CONTEXT *parser, PT_NODE *p)
PT_INSERT_VALUE_INFO insert_value
int pt_check_set_count_set(PARSER_CONTEXT *parser, PT_NODE *arg1, PT_NODE *arg2)
char * intl_get_money_esc_ISO_symbol(const DB_CURRENCY currency)
static PT_NODE * pt_apply_datatype(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)
int pt_get_expression_count(PT_NODE *node)
char * pt_short_print_l(PARSER_CONTEXT *parser, const PT_NODE *node)
static PT_NODE * pt_init_auth_cmd(PT_NODE *p)
static PARSER_VARCHAR * pt_print_merge(PARSER_CONTEXT *parser, PT_NODE *p)
static PT_NODE * pt_apply_resolution(PARSER_CONTEXT *parser, PT_NODE *p, void *arg)