Skip to content

File parser.h

FileList > cubrid > src > parser > parser.h

Go to the source code of this file

  • #include <stdio.h>
  • #include <stdarg.h>
  • #include "system.h"
  • #include "dbtype_def.h"
  • #include "parse_tree.h"
  • #include "deduplicate_key.h"

Public Types

Type Name
enum CASE_SENSITIVENESS
typedef enum view_handling VIEW_HANDLING
enum view_handling

Public Attributes

Type Name
size_t json_table_column_count

Public Functions

Type Name
void csql_yyset_lineno (int line_number)
DB_ATTRIBUTE * db_get_attribute_force (DB_OBJECT * obj, const char * name)
DB_ATTRIBUTE * db_get_attributes_force (DB_OBJECT * obj)
int dbcs_get_next (PARSER_CONTEXT * parser)
void dbcs_start_input (void)
void insert_rewrite_names_in_value_clauses (PARSER_CONTEXT * parser, PT_NODE * insert_statement)
PT_NODE * meth_translate (PARSER_CONTEXT * parser, PT_NODE *volatile node)
void mq_free_virtual_query_cache (PARSER_CONTEXT * parser)
const char * mq_generate_name (PARSER_CONTEXT * parser, const char * root, int * version)
int mq_is_real_class_of_vclass (PARSER_CONTEXT * parser, const PT_NODE * s_class, const PT_NODE * d_class)
PT_NODE * mq_regenerate_if_ambiguous (PARSER_CONTEXT * parser, PT_NODE * spec, PT_NODE * statement, PT_NODE * from)
PARSER_CONTEXT * mq_virtual_queries (DB_OBJECT * class_obj)
void * parser_alloc (const PARSER_CONTEXT * parser, const int length)
PT_NODE * parser_append_node (PT_NODE * node, PT_NODE * list)
PT_NODE * parser_append_node_or (PT_NODE * node, PT_NODE * list)
PT_NODE * parser_append_previous_node (PT_NODE * node, PT_NODE * list)
void parser_clear_node (PARSER_CONTEXT * parser, PT_NODE * node)
PT_NODE * parser_copy_tree (PARSER_CONTEXT * parser, const PT_NODE * tree)
PT_NODE * parser_copy_tree_list (PARSER_CONTEXT * parser, PT_NODE * tree)
PT_NODE * parser_create_node (const PARSER_CONTEXT * parser)
PARSER_CONTEXT * parser_create_parser (void)
void parser_final (void)
void parser_free_lcks_classes (PARSER_CONTEXT * parser)
void parser_free_node (const PARSER_CONTEXT * parser, PT_NODE * node)
void parser_free_node_resources (PT_NODE * node)
void parser_free_parser (PARSER_CONTEXT * parser)
void parser_free_subtrees (PARSER_CONTEXT * parser, PT_NODE * tree)
void parser_free_tree (PARSER_CONTEXT * parser, PT_NODE * tree)
PT_NODE * parser_get_tree_list_diff (PARSER_CONTEXT * parser, PT_NODE * list1, PT_NODE * list2)
void parser_init_func_vectors (void)
PT_NODE * parser_init_node (PT_NODE * node, PT_NODE_TYPE node_type)
PT_NODE * parser_keyword_func (const char * name, PT_NODE * args)
PT_NODE ** parser_main (PARSER_CONTEXT * p)
PT_NODE * parser_make_expression (PARSER_CONTEXT * parser, PT_OP_TYPE OP, PT_NODE * arg1, PT_NODE * arg2, PT_NODE * arg3)
PT_NODE * parser_new_node (PARSER_CONTEXT * parser, PT_NODE_TYPE node)
PT_NODE ** parser_parse_binary (PARSER_CONTEXT * parser, const char * buffer, size_t size)
PT_NODE ** parser_parse_file (PARSER_CONTEXT * parser, FILE * file)
PT_NODE ** parser_parse_string (PARSER_CONTEXT * parser, const char * buffer)
PT_NODE ** parser_parse_string_use_sys_charset (PARSER_CONTEXT * parser, const char * buffer)
PT_NODE ** parser_parse_string_with_escapes (PARSER_CONTEXT * parser, const char * buffer, const bool no_escapes_strings)
char * parser_print_function_index_expr (PARSER_CONTEXT * parser, const PT_NODE * expr)
char * parser_print_tree (PARSER_CONTEXT * parser, const PT_NODE * node)
char * parser_print_tree_list (PARSER_CONTEXT * parser, const PT_NODE * p)
char * parser_print_tree_with_quotes (PARSER_CONTEXT * parser, const PT_NODE * node)
PT_NODE * parser_reinit_node (PT_NODE * node)
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)
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)
PT_NODE * pt_add_class_to_entity_list (PARSER_CONTEXT * r, struct db_object * db, PT_NODE * entity, const PT_NODE * parent, UINTPTR id, PT_MISC_TYPE meta_class)
PT_NODE * pt_add_column_oid (PARSER_CONTEXT * parser, PT_NODE * stmt)
PT_NODE * pt_add_row_classoid_name (PARSER_CONTEXT * parser, PT_NODE * statement, int server_op)
PT_NODE * pt_add_row_oid (PARSER_CONTEXT * parser, PT_NODE * stmt)
PT_NODE * pt_add_row_oid_name (PARSER_CONTEXT * parser, PT_NODE * stmt)
PT_NODE * pt_add_table_name_to_from_list (PARSER_CONTEXT * parser, PT_NODE * select, const char * table_name, const char * table_alias, const DB_AUTH auth_bypass)
void pt_add_type_to_set (PARSER_CONTEXT * parser, const PT_NODE * val, PT_NODE ** set)
PT_NODE * pt_and (PARSER_CONTEXT * parser_ptr, const PT_NODE * expression1, const PT_NODE * expression2)
PARSER_VARCHAR * pt_append_bytes (const PARSER_CONTEXT * parser, PARSER_VARCHAR * old_bytes, const char * new_tail, const int length)
PARSER_VARCHAR * pt_append_name (const PARSER_CONTEXT * parser, PARSER_VARCHAR * string, const char * name)
PARSER_VARCHAR * pt_append_nulstring (const PARSER_CONTEXT * parser, PARSER_VARCHAR * old_bytes, const char * new_tail)
PT_NODE * pt_append_query_select_list (PARSER_CONTEXT * parser, PT_NODE * query, PT_NODE * attrs)
char * pt_append_string (const PARSER_CONTEXT * parser, const char * old_string, const char * new_tail)
PARSER_VARCHAR * pt_append_varchar (const PARSER_CONTEXT * parser, PARSER_VARCHAR * old_bytes, const PARSER_VARCHAR * new_tail)
PT_NODE * pt_arg1_part (const PT_NODE * node)
PT_NODE * pt_arg2_part (const PT_NODE * node)
PT_NODE * pt_assignments_part (const PT_NODE * update_statement)
int pt_associate_label_with_value_check_reference (const char * label, DB_VALUE * val)
PT_NODE * pt_attrs_part (const PT_NODE * insert_statement)
DB_AUTH pt_auth_to_db_auth (const PT_NODE * auth)
int pt_between_to_comp_op (PT_OP_TYPE between, PT_OP_TYPE * left, PT_OP_TYPE * right)
PT_NODE * pt_bind_param_node (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
PT_NODE * pt_bind_type_from_dbval (PARSER_CONTEXT * parser, PT_NODE * node, DB_VALUE * val)
PT_NODE * pt_bind_values_to_hostvars (PARSER_CONTEXT * parser, PT_NODE * node)
int pt_check_class_eq (PARSER_CONTEXT * parser, PT_NODE * p, PT_NODE * q)
int pt_check_dblink_column_alias (PARSER_CONTEXT * parser, PT_NODE * dblink)
int pt_check_dblink_password (PARSER_CONTEXT * parser, const char * passwd, char * cipher, int ciper_size)
PT_NODE * pt_check_dblink_query (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
int pt_check_enum_data_type (PARSER_CONTEXT * parser, PT_NODE * dt)
int pt_check_grammar_charset_collation (PARSER_CONTEXT * parser, PT_NODE * charset_node, PT_NODE * coll_node, int * charset, int * coll_id)
int pt_check_group_by (PARSER_CONTEXT * parser, PT_NODE * node)
PT_NODE * pt_check_groupbynum_post (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
PT_NODE * pt_check_groupbynum_pre (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
int pt_check_if_query (PARSER_CONTEXT * parser, PT_NODE * stmt)
PT_NODE * pt_check_instnum_post (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
PT_NODE * pt_check_instnum_pre (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
void pt_check_level_expr (PARSER_CONTEXT * parser, PT_NODE * expr, bool * has_greater, bool * has_lesser)
bool pt_check_not_null_constraint (PARSER_CONTEXT * parser, PT_NODE * from, PT_NODE * node)
bool pt_check_ordby_num_for_multi_range_opt (PARSER_CONTEXT * parser, PT_NODE * query, bool * mro_candidate, bool * cannot_eval)
int pt_check_order_by (PARSER_CONTEXT * parser, PT_NODE * query)
PT_NODE * pt_check_orderbynum_post (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
PT_NODE * pt_check_orderbynum_pre (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
int pt_check_path_eq (PARSER_CONTEXT * parser, const PT_NODE * p, const PT_NODE * q)
PT_NODE * pt_check_removable_expr_post (PARSER_CONTEXT * parser, PT_NODE * tree, void * arg, int * continue_walk)
PT_NODE * pt_check_removable_expr_pre (PARSER_CONTEXT * parser, PT_NODE * tree, void * arg, int * continue_walk)
int pt_check_same_datatype (const PARSER_CONTEXT * parser, const PT_NODE * p, const PT_NODE * q)
int pt_check_set_count_set (PARSER_CONTEXT * parser, PT_NODE * arg1, PT_NODE * arg2)
PT_NODE * pt_check_subquery_post (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
PT_NODE * pt_check_subquery_pre (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
int pt_check_unique_names (PARSER_CONTEXT * parser, const PT_NODE * p)
DB_OBJECT * pt_check_user_owns_class (PARSER_CONTEXT * parser, PT_NODE * cls_ref)
char * pt_chop_trailing_dots (PARSER_CONTEXT * parser, const char * msg)
PT_NODE * pt_class_names_part (const PT_NODE * stmt)
PT_NODE * pt_class_part (const PT_NODE * statement)
PT_NODE * pt_class_pre_fetch (PARSER_CONTEXT * parser, PT_NODE * statement)
PT_NODE * pt_cnf (PARSER_CONTEXT * parser, PT_NODE * node)
PT_NODE * pt_coerce_node_collation (PARSER_CONTEXT * parser, PT_NODE * node, const int coll_id, const INTL_CODESET codeset, bool force_mode, bool use_collate_modifier, PT_TYPE_ENUM wrap_type_for_maybe, PT_TYPE_ENUM wrap_type_collection)
int pt_coerce_value (PARSER_CONTEXT * parser, PT_NODE * src, PT_NODE * dest, PT_TYPE_ENUM desired_type, PT_NODE * elem_type_list)
int pt_coerce_value_explicit (PARSER_CONTEXT * parser, PT_NODE * src, PT_NODE * dest, PT_TYPE_ENUM desired_type, PT_NODE * elem_type_list)
int pt_coerce_value_for_default_value (PARSER_CONTEXT * parser, PT_NODE * src, PT_NODE * dest, PT_TYPE_ENUM desired_type, PT_NODE * elem_type_list, DB_DEFAULT_EXPR_TYPE default_expr_type, bool check_string_precision)
bool pt_column_updatable (PARSER_CONTEXT * parser, PT_NODE * query)
int pt_common_collation (PT_COLL_INFER * arg1_coll_infer, PT_COLL_INFER * arg2_coll_infer, PT_COLL_INFER * arg3_coll_infer, const int args_w_coll, bool op_has_3_args, int * common_coll, INTL_CODESET * common_cs)
PT_TYPE_ENUM pt_common_type (PT_TYPE_ENUM arg1_type, PT_TYPE_ENUM arg2_type)
int pt_comp_to_between_op (PT_OP_TYPE left, PT_OP_TYPE right, PT_COMP_TO_BETWEEN_OP_CODE_TYPE code, PT_OP_TYPE * between)
PT_NODE * pt_compile (PARSER_CONTEXT * parser, PT_NODE *volatile statement)
PT_NODE * pt_compile_trigger_stmt (PARSER_CONTEXT * parser, const char * trigger_stmt, DB_OBJECT * class_op, const char * name1, const char * name2, char ** new_trigger_stmt, int with_evaluate)
PT_NODE * pt_continue_walk (PARSER_CONTEXT * parser, PT_NODE * tree, void * arg, int * continue_walk)
PT_OP_TYPE pt_converse_op (PT_OP_TYPE op)
PT_NODE * pt_convert_to_logical_expr (PARSER_CONTEXT * parser, PT_NODE * node, bool use_parens_inside, bool use_parens_outside)
void pt_copy_statement_flags (PT_NODE * source, PT_NODE * destination)
int pt_count_assignments (PARSER_CONTEXT * parser, PT_NODE * assignments)
PT_NODE * pt_count_input_markers (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
PT_NODE * pt_count_name_nodes (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
PT_NODE * pt_count_output_markers (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
void pt_data_type_init_value (const PT_NODE * node, DB_VALUE * value_out)
DB_DOMAIN * pt_data_type_to_db_domain (PARSER_CONTEXT * parser, PT_NODE * dt, const char * class_name)
const char * pt_data_type_to_db_domain_name (const PT_NODE * dt)
PT_TYPE_ENUM pt_db_to_type_enum (const DB_TYPE t)
DB_VALUE * pt_db_value_initialize (PARSER_CONTEXT * parser, PT_NODE * value, DB_VALUE * db_value, int * more_type_info_needed)
PT_NODE * pt_dbval_to_value (PARSER_CONTEXT * parser, const DB_VALUE * val)
PT_NODE * pt_do_cnf (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
PT_NODE * pt_domain_to_data_type (PARSER_CONTEXT * parser, DB_DOMAIN * domain)
PT_NODE * pt_dump (PT_NODE * node)
PT_NODE * pt_dup_key_update_stmt (PARSER_CONTEXT * parser, PT_NODE * spec, PT_NODE * assignment)
void pt_end_query (PARSER_CONTEXT * parser, QUERY_ID query_id_self)
PT_NODE * pt_entity (PARSER_CONTEXT * parser, const PT_NODE * entity_name, const PT_NODE * range_var, const PT_NODE * flat_list)
bool pt_eval_path_expr (PARSER_CONTEXT * parser, PT_NODE * tree, DB_VALUE * val)
PT_NODE * pt_eval_value_path (PARSER_CONTEXT * parser, PT_NODE * path)
int pt_evaluate_db_value_expr (PARSER_CONTEXT * parser, PT_NODE * expr, PT_OP_TYPE op, DB_VALUE * arg1, DB_VALUE * arg2, DB_VALUE * arg3, DB_VALUE * result, TP_DOMAIN * domain, PT_NODE * o1, PT_NODE * o2, PT_NODE * o3, PT_MISC_TYPE qualifier)
int pt_evaluate_function (PARSER_CONTEXT * parser, PT_NODE * func, DB_VALUE * dbval_res)
int pt_evaluate_function_w_args (PARSER_CONTEXT * parser, FUNC_CODE fcode, DB_VALUE * args, const int num_args, DB_VALUE * result)
void pt_evaluate_tree (PARSER_CONTEXT * parser, PT_NODE * tree, DB_VALUE * db_values, int values_count)
void pt_evaluate_tree_having_serial (PARSER_CONTEXT * parser, PT_NODE * tree, DB_VALUE * db_value, int vals_cnt)
int pt_exec_trigger_stmt (PARSER_CONTEXT * parser, PT_NODE * trigger_stmt, DB_OBJECT * object1, DB_OBJECT * object2, DB_VALUE * result)
PT_NODE * pt_expr_disallow_op_except_agg (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
PT_NODE * pt_expr_disallow_op_pre (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
bool pt_expr_keep_uniqueness (const PT_NODE * expr)
PT_NODE * pt_expr_to_sort_spec (PARSER_CONTEXT * parser, PT_NODE * expr)
PT_NODE * pt_expression (PARSER_CONTEXT * parser_ptr, PT_OP_TYPE op, PT_NODE * arg1, PT_NODE * arg2, PT_NODE * arg3)
PT_NODE * pt_expression_0 (PARSER_CONTEXT * parser_ptr, PT_OP_TYPE op)
PT_NODE * pt_expression_1 (PARSER_CONTEXT * parser_ptr, PT_OP_TYPE op, PT_NODE * arg1)
PT_NODE * pt_expression_2 (PARSER_CONTEXT * parser_ptr, PT_OP_TYPE op, PT_NODE * arg1, PT_NODE * arg2)
PT_NODE * pt_expression_3 (PARSER_CONTEXT * parser_ptr, PT_OP_TYPE op, PT_NODE * arg1, PT_NODE * arg2, PT_NODE * arg3)
bool pt_false_search_condition (PARSER_CONTEXT * parser, const PT_NODE * statement)
bool pt_false_where (PARSER_CONTEXT * parser, PT_NODE * statement)
DB_QUERY_TYPE * pt_fillin_type_size (PARSER_CONTEXT * parser, PT_NODE * query, DB_QUERY_TYPE * list, const int include_oid, bool want_spec_entity_name, bool fixup_columns_type)
PT_NODE * pt_find_aggregate_functions_post (PARSER_CONTEXT * parser, PT_NODE * tree, void * arg, int * continue_walk)
PT_NODE * pt_find_aggregate_functions_pre (PARSER_CONTEXT * parser, PT_NODE * tree, void * arg, int * continue_walk)
PT_NODE * pt_find_aggregate_names (PARSER_CONTEXT * parser, PT_NODE * tree, void * arg, int * continue_walk)
int pt_find_attribute (PARSER_CONTEXT * parser, const PT_NODE * name, const PT_NODE * attributes)
PT_NODE * pt_find_entity (PARSER_CONTEXT * parser, const PT_NODE * scope, UINTPTR id)
FUNCTION_MAP * pt_find_function_name (const char * name)
UINTPTR pt_find_id (PARSER_CONTEXT * parser, PT_NODE * node, UINTPTR id)
int pt_find_labels (DB_NAMELIST ** list)
PT_NODE * pt_find_name (PARSER_CONTEXT * parser, const PT_NODE * name, const PT_NODE * list)
PT_NODE * pt_find_node_type_pre (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
PT_NODE * pt_find_op_type_pre (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
PT_NODE * pt_find_spec (PARSER_CONTEXT * parser, const PT_NODE * from, const PT_NODE * name)
PT_NODE * pt_find_spec_in_statement (PARSER_CONTEXT * parser, const PT_NODE * stmt, const PT_NODE * name)
DB_OBJECT * pt_find_users_class (PARSER_CONTEXT * parser, PT_NODE * name)
DB_VALUE * pt_find_value_of_label (const char * label)
int pt_find_var (PT_NODE * p, PT_NODE ** result)
void pt_fixup_column_type (PT_NODE * col)
PT_NODE * pt_flat_spec_pre (PARSER_CONTEXT * parser, PT_NODE * p, void * scope, int * continue_walk)
void pt_free_dblink_remote_cols (PARSER_CONTEXT * parser)
void pt_free_escape_char (PARSER_CONTEXT *const parser, PT_NODE *const like, PT_NODE *const pattern, PT_NODE *const escape)
void pt_free_host_info (PT_HOST_VARS * hv)
void pt_free_label_table (void)
void pt_free_orphans (PARSER_CONTEXT * parser)
void pt_free_query_etc_area (PARSER_CONTEXT * parser, PT_NODE * query)
void pt_free_statement_xasl_id (PT_NODE * statement)
void pt_frob_error (PARSER_CONTEXT * parser, const PT_NODE * statement, const char * fmt, ...)
void pt_frob_warning (PARSER_CONTEXT * parser, const PT_NODE * statement, const char * fmt, ...)
PT_NODE * pt_from_entity_part (const PT_NODE * node)
PT_NODE * pt_from_list_part (const PT_NODE * node)
PT_NODE * pt_function_index_skip_expr (PT_NODE * node)
PT_NODE * pt_gather_constraints (PARSER_CONTEXT * parser, PT_NODE * tree)
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)
bool pt_get_collation_info (const PT_NODE * node, PT_COLL_INFER * coll_infer)
int pt_get_correlation_level (PT_NODE * node)
PT_NODE * pt_get_cursor (const PT_HOST_VARS * hv)
void pt_get_default_expression_from_data_default_node (PARSER_CONTEXT * parser, PT_NODE * data_default_node, DB_DEFAULT_EXPR * default_expr)
void pt_get_default_expression_from_string (PARSER_CONTEXT * parser, const char * str, const int str_size, DB_DEFAULT_EXPR * default_expr)
int pt_get_dup_key_oid_var_index (PARSER_CONTEXT * parser, PT_NODE * update_statement)
PT_NODE * pt_get_end_path_node (PT_NODE * node)
PT_NODE * pt_get_errors (PARSER_CONTEXT * parser)
int pt_get_expression_count (PT_NODE * node)
int pt_get_expression_number (PT_NODE * node)
PT_NODE * pt_get_first_arg_ignore_prior (PT_NODE * node)
PT_HINT_ENUM pt_get_hint_from_query (PARSER_CONTEXT * parser, PT_NODE * query)
PT_NODE * pt_get_input_host_vars (const PT_HOST_VARS * hv)
KEYWORD_RECORD * pt_get_keyword_rec (int * rec_count)
int pt_get_max_pred_order (PARSER_CONTEXT * parser, PT_NODE * pred)
const char * pt_get_name (PT_NODE * nam)
const char * pt_get_name_with_qualifier_removed (const char * name)
const char * pt_get_name_without_current_user_name (const char * name)
PT_NODE * pt_get_next_assignment (PT_ASSIGNMENTS_HELPER * helper)
PT_NODE * pt_get_next_error (PT_NODE * errors, int * stmt_no, int * line_no, int * col_no, const char ** msg)
PT_NODE * pt_get_node_from_list (PT_NODE * list, int index)
int pt_get_one_tuple_from_list_id (PARSER_CONTEXT * parser, PT_NODE * tree, struct db_value * vals, int cnt)
PT_NODE * pt_get_output_host_descr (PT_HOST_VARS * hv)
PT_NODE * pt_get_output_host_vars (const PT_HOST_VARS * hv)
PT_NODE * pt_get_parameters (PARSER_CONTEXT * parser, PT_NODE * statement)
const char * pt_get_proxy_spec_name (PARSER_CONTEXT * parser, const char * qspec)
const char * pt_get_qualifier_name (PARSER_CONTEXT * parser, PT_NODE * name)
int pt_get_query_expr_value (PARSER_CONTEXT * parser, PT_NODE * expr, DB_VALUE * expr_val)
DB_BIGINT pt_get_query_limit_from_query (PARSER_CONTEXT * parser, PT_NODE * query)
int pt_get_query_limit_value (PARSER_CONTEXT * parser, PT_NODE * query, DB_VALUE * limit_val, bool add_offset)
const char * pt_get_select_from_name (PARSER_CONTEXT * parser, const PT_NODE * spec)
PT_NODE * pt_get_select_list (PARSER_CONTEXT * parser, PT_NODE * query)
int pt_get_select_query_columns (PARSER_CONTEXT * parser, PT_NODE * create_select, DB_QUERY_TYPE ** query_columns)
const char * pt_get_spec_name (PARSER_CONTEXT * parser, const PT_NODE * selqry)
PT_NODE * pt_get_subquery_list (PT_NODE * node)
PT_NODE * pt_get_subquery_of_insert_select (const PT_NODE * insert_statement)
DB_QUERY_TYPE * pt_get_titles (PARSER_CONTEXT * parser, PT_NODE * query)
const unsigned char * pt_get_varchar_bytes (const PARSER_VARCHAR * string)
int pt_get_varchar_length (const PARSER_VARCHAR * string)
PT_NODE * pt_get_warnings (const PARSER_CONTEXT * parser)
PT_NODE * pt_group_by_part (const PT_NODE * node)
int pt_groupbynum_compatibility (PT_NODE * expr)
bool pt_has_aggregate (PARSER_CONTEXT * parser, PT_NODE * node)
bool pt_has_analytic (PARSER_CONTEXT * parser, PT_NODE * node)
bool pt_has_define_vars (PARSER_CONTEXT * parser, PT_NODE * stmt)
bool pt_has_expr_of_inst_in_sel_list (PARSER_CONTEXT * parser, PT_NODE * select_list)
bool pt_has_having_with_predicate (PARSER_CONTEXT * parser, PT_NODE * node)
bool pt_has_inst_in_where_and_select_list (PARSER_CONTEXT * parser, PT_NODE * node)
bool pt_has_inst_num (PARSER_CONTEXT * parser, PT_NODE * node)
bool pt_has_inst_or_orderby_num (PARSER_CONTEXT * parser, PT_NODE * node)
bool pt_has_inst_or_orderby_num_in_where (PARSER_CONTEXT * parser, PT_NODE * node)
PT_NODE * pt_has_name_oid (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
PT_NODE * pt_has_non_groupby_column_node (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
PT_NODE * pt_has_non_idx_sarg_coll_pre (PARSER_CONTEXT * parser, PT_NODE * tree, void * arg, int * continue_walk)
bool pt_has_nullable_term (PARSER_CONTEXT * parser, PT_NODE * node)
bool pt_has_order_sensitive_agg (PARSER_CONTEXT * parser, PT_NODE * node)
bool pt_has_path_expr (PARSER_CONTEXT * parser, PT_NODE * stmt)
PT_NODE * pt_has_using_index_clause (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
PT_NODE * pt_having_part (const PT_NODE * node)
PT_HOST_VARS * pt_host_info (PARSER_CONTEXT * parser, PT_NODE * stmt)
DB_VALUE * pt_host_var_db_value (PARSER_CONTEXT * parser, PT_NODE * hv)
int pt_host_var_index (const PT_NODE * hv)
int pt_identifier_or_keyword (const char * text)
void pt_init_assignments_helper (PARSER_CONTEXT * parser, PT_ASSIGNMENTS_HELPER * helper, PT_NODE * assignment)
PT_NODE ** pt_init_one_statement_parser (PARSER_CONTEXT * parser, FILE * file)
PT_NODE * pt_insert_value (PARSER_CONTEXT * parser, PT_NODE * node)
int pt_instnum_compatibility (PT_NODE * expr)
void * pt_internal_error (PARSER_CONTEXT * parser, const char * file, int line, const char * what)
bool pt_is_aggregate_function (PARSER_CONTEXT * parser, const PT_NODE * node)
bool pt_is_analytic_function (PARSER_CONTEXT * parser, const PT_NODE * node)
PT_NODE * pt_is_analytic_node (PARSER_CONTEXT * parser, PT_NODE * tree, void * arg, int * continue_walk)
PT_NODE * pt_is_analytic_node_post (PARSER_CONTEXT * parser, PT_NODE * tree, void * arg, int * continue_walk)
bool pt_is_ascii_string_value_node (const PT_NODE *const node)
int pt_is_attr (PT_NODE * node)
int pt_is_between_range_op (PT_OP_TYPE op)
int pt_is_comp_op (PT_OP_TYPE op)
bool pt_is_const_expr_node (PT_NODE * node)
int pt_is_ddl_statement (const PT_NODE * node)
PT_NODE * pt_is_define_vars (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
bool pt_is_expr_wrapped_function (PARSER_CONTEXT * parser, const PT_NODE * node)
bool pt_is_function_index_expr (PARSER_CONTEXT * parser, PT_NODE * expr, bool report_error)
int pt_is_function_index_expression (PT_NODE * node)
PT_NODE * pt_is_inst_num_node (PARSER_CONTEXT * parser, PT_NODE * tree, void * arg, int * continue_walk)
PT_NODE * pt_is_inst_num_node_post (PARSER_CONTEXT * parser, PT_NODE * tree, void * arg, int * continue_walk)
PT_NODE * pt_is_inst_or_inst_num_node (PARSER_CONTEXT * parser, PT_NODE * tree, void * arg, int * continue_walk)
PT_NODE * pt_is_inst_or_orderby_num_node (PARSER_CONTEXT * parser, PT_NODE * tree, void * arg, int * continue_walk)
PT_NODE * pt_is_inst_or_orderby_num_node_post (PARSER_CONTEXT * parser, PT_NODE * tree, void * arg, int * continue_walk)
bool pt_is_join_expr (PT_NODE * expr, UINTPTR * spec_id)
bool pt_is_json_function (PARSER_CONTEXT * parser, const PT_NODE * node)
bool pt_is_keyword (const char * s)
int pt_is_method_call (PT_NODE * node)
PT_NODE * pt_is_method_call_node (PARSER_CONTEXT * parser, PT_NODE * tree, void * arg, int * continue_walk)
bool pt_is_op_hv_late_bind (PT_OP_TYPE op)
bool pt_is_operator_arith (PT_OP_TYPE op)
bool pt_is_operator_logical (PT_OP_TYPE op)
PT_NODE * pt_is_order_sensitive_agg (PARSER_CONTEXT * parser, PT_NODE * tree, void * arg, int * continue_walk)
PT_NODE * pt_is_order_sensitive_agg_post (PARSER_CONTEXT * parser, PT_NODE * tree, void * arg, int * continue_walk)
PT_NODE * pt_is_path_expr (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
bool pt_is_pseudo_const (PT_NODE * expr)
PT_NODE * pt_is_pseudocolumn_node (PARSER_CONTEXT * parser, PT_NODE * tree, void * arg, int * continue_walk)
int pt_is_reference_to_reusable_oid (DB_VALUE * val)
bool pt_is_reserved_word (const char * s)
bool pt_is_same_enum_data_type (PT_NODE * dt1, PT_NODE * dt2)
int pt_is_server_insert_with_generated_keys (PARSER_CONTEXT * parser, PT_NODE * statement)
bool pt_is_symmetric_op (PT_OP_TYPE op)
PT_NODE * pt_lambda (PARSER_CONTEXT * parser_ptr, PT_NODE * expression, PT_NODE * name, PT_NODE * named_expression)
PT_NODE * pt_lambda_with_arg (PARSER_CONTEXT * parser_ptr, PT_NODE * expression, PT_NODE * name, PT_NODE * named_expression, bool loc_check, int type, bool dont_replace)
PT_NODE * pt_left_part (const PT_NODE * expr)
int pt_length_of_list (const PT_NODE * list)
int pt_length_of_select_list (PT_NODE * list, int hidden_col)
PT_NODE * pt_limit_to_numbering_expr (PARSER_CONTEXT * parser, PT_NODE * limit, PT_OP_TYPE num_op, bool is_gby_num)
bool pt_list_has_logical_nodes (PT_NODE * list)
DB_QUERY_RESULT * pt_make_cache_hit_result_descriptor (void)
PT_NODE * pt_make_data_default_expr_node (PARSER_CONTEXT * parser, PT_NODE * expr)
PT_NODE * pt_make_integer_value (PARSER_CONTEXT * parser, const int value_int)
PT_NODE * pt_make_prim_data_type (PARSER_CONTEXT * parser, PT_TYPE_ENUM e)
PT_NODE * pt_make_prim_data_type_fortonum (PARSER_CONTEXT * parser, int prec, int scale)
PT_NODE * pt_make_query_describe_w_identifier (PARSER_CONTEXT * parser, PT_NODE * original_cls_id, PT_NODE * att_id)
PT_NODE * pt_make_query_show_collation (PARSER_CONTEXT * parser, int like_where_syntax, PT_NODE * like_or_where_expr)
PT_NODE * pt_make_query_show_columns (PARSER_CONTEXT * parser, PT_NODE * original_cls_id, int like_where_syntax, PT_NODE * like_or_where_expr, int is_show_full)
PT_NODE * pt_make_query_show_create_table (PARSER_CONTEXT * parser, PT_NODE * table_name)
PT_NODE * pt_make_query_show_create_view (PARSER_CONTEXT * parser, PT_NODE * view_identifier)
PT_NODE * pt_make_query_show_exec_stats (PARSER_CONTEXT * parser)
PT_NODE * pt_make_query_show_exec_stats_all (PARSER_CONTEXT * parser)
PT_NODE * pt_make_query_show_grants (PARSER_CONTEXT * parser, const char * original_user_name)
PT_NODE * pt_make_query_show_grants_curr_usr (PARSER_CONTEXT * parser)
PT_NODE * pt_make_query_show_index (PARSER_CONTEXT * parser, PT_NODE * original_cls_id)
PT_NODE * pt_make_query_show_table (PARSER_CONTEXT * parser, bool is_full_syntax, int like_where_syntax, PT_NODE * like_or_where_expr)
PT_NODE * pt_make_query_show_trace (PARSER_CONTEXT * parser)
PT_NODE * pt_make_query_showstmt (PARSER_CONTEXT * parser, unsigned int type, PT_NODE * args, int like_where_syntax, PT_NODE * where_cond)
PT_NODE * pt_make_string_value (PARSER_CONTEXT * parser, const char * value_string)
PT_NODE * pt_make_tuple_value_reference (PARSER_CONTEXT * parser, PT_NODE * name, PT_NODE * select_list, CURSOR_ID * cursor_p)
void pt_mark_spec_list_for_delete (PARSER_CONTEXT * parser, PT_NODE * statement)
void pt_mark_spec_list_for_update (PARSER_CONTEXT * parser, PT_NODE * statement)
MISC_OPERAND pt_misc_to_qp_misc_operand (PT_MISC_TYPE misc_specifier)
void pt_move_node (REFPTR(PT_NODE, destp), REFPTR(PT_NODE, srcp))
PT_NODE * pt_name (PARSER_CONTEXT * parser_ptr, const char * name)
bool pt_name_equal (PARSER_CONTEXT * parser, const PT_NODE * name1, const PT_NODE * name2)
int pt_name_occurs_in_from_list (PARSER_CONTEXT * parser, const char * name, PT_NODE * from_list)
PT_OP_TYPE pt_negate_op (PT_OP_TYPE op)
DB_QUERY_RESULT * pt_new_query_result_descriptor (PARSER_CONTEXT * parser, PT_NODE * query)
void pt_no_attr_and_meta_attr_updates (PARSER_CONTEXT * parser, PT_NODE * stmt)
void pt_no_double_insert_assignments (PARSER_CONTEXT * parser, PT_NODE * stmt)
void pt_no_double_updates (PARSER_CONTEXT * parser, PT_NODE * stmt)
DB_DOMAIN * pt_node_data_type_to_db_domain (PARSER_CONTEXT * parser, PT_NODE * dt, PT_TYPE_ENUM type)
void * pt_node_etc (const PT_NODE * col)
PT_NODE * pt_node_list (PARSER_CONTEXT * parser_ptr, PT_MISC_TYPE list_type, PT_NODE * list)
int pt_node_list_to_array (PARSER_CONTEXT * parser, PT_NODE * arg_list, PT_NODE * arg_array, const int array_size, int * num_args)
PT_NODE * pt_node_next (const PT_NODE * node)
CUBRID_STMT_TYPE pt_node_to_cmd_type (PT_NODE * node)
DB_DOMAIN * pt_node_to_db_domain (PARSER_CONTEXT * parser, PT_NODE * node, const char * class_name)
const char * pt_node_to_db_domain_name (PT_NODE * node)
DB_TYPE pt_node_to_db_type (PT_NODE * node)
void pt_null_etc (PT_NODE * node)
int pt_null_where (PARSER_CONTEXT * parser, PT_NODE * node)
void * pt_object_part (const PT_NODE * name_node)
PT_OP_TYPE pt_op_type_from_default_expr (DB_DEFAULT_EXPR_TYPE expr_type)
PT_OP_TYPE pt_op_type_from_default_expr_type (DB_DEFAULT_EXPR_TYPE expr_type)
int pt_operator_part (const PT_NODE * expr)
PT_NODE * pt_order_by_part (const PT_NODE * node)
const char * pt_partition_name (PARSER_CONTEXT * parser, const char * class_name, const char * partition)
PT_NODE * pt_point (PARSER_CONTEXT * parser, const PT_NODE * tree)
PT_NODE * pt_point_l (PARSER_CONTEXT * parser, const PT_NODE * tree)
PT_NODE * pt_point_ref (PARSER_CONTEXT * parser, const PT_NODE * node)
PT_NODE * pt_pointer_stack_pop (PARSER_CONTEXT * parser, PT_NODE * stack, PT_NODE ** node)
PT_NODE * pt_pointer_stack_push (PARSER_CONTEXT * parser, PT_NODE * stack, PT_NODE * node)
PT_NODE * pt_pop (PARSER_CONTEXT * parser)
int pt_prepare_count_optim_classes (PARSER_CONTEXT * parser, PT_NODE * stmt)
void pt_preset_hostvar (PARSER_CONTEXT * parser, PT_NODE * hv_node)
char * pt_print_alias (PARSER_CONTEXT * parser, const PT_NODE * node)
PARSER_VARCHAR * pt_print_and_list (PARSER_CONTEXT * parser, const PT_NODE * node)
PARSER_VARCHAR * pt_print_bytes (PARSER_CONTEXT * parser, const PT_NODE * node)
PARSER_VARCHAR * pt_print_bytes_alias (PARSER_CONTEXT * parser, const PT_NODE * node)
PARSER_VARCHAR * pt_print_bytes_l (PARSER_CONTEXT * parser, const PT_NODE * node)
PARSER_VARCHAR * pt_print_bytes_spec_list (PARSER_CONTEXT * parser, const PT_NODE * node)
PARSER_VARCHAR * pt_print_class_name (PARSER_CONTEXT * parser, PT_NODE * p)
PARSER_VARCHAR * pt_print_db_value (PARSER_CONTEXT * parser, const struct db_value * val)
PARSER_VARCHAR * pt_print_node_value (PARSER_CONTEXT * parser, const PT_NODE * val)
char * pt_print_query_spec_no_list (PARSER_CONTEXT * parser, const PT_NODE * node)
int pt_push (PARSER_CONTEXT * parser, PT_NODE * q)
void pt_put_type_enum (PARSER_CONTEXT * parser, PT_NODE * node, PT_NODE * data_type)
const char * pt_qualifier_part (const PT_NODE * tbl)
int pt_quick_resolve_names (PARSER_CONTEXT * parser, PT_NODE ** spec, PT_NODE ** node, SEMANTIC_CHK_INFO * sc_info)
bool pt_recompile_for_like_optimizations (PARSER_CONTEXT * parser, PT_NODE * statement, int xasl_flag)
bool pt_recompile_for_limit_optimizations (PARSER_CONTEXT * parser, PT_NODE * statement, int xasl_flag)
void pt_record_error (PARSER_CONTEXT * parser, int stmt_no, int line_no, int col_no, const char * msg, const char * context)
void pt_record_warning (PARSER_CONTEXT * parser, int stmt_no, int line_no, int col_no, const char * msg)
void pt_register_orphan (PARSER_CONTEXT * parser, const PT_NODE * orphan)
void pt_register_orphan_db_value (PARSER_CONTEXT * parser, const DB_VALUE * orphan)
PT_NODE * pt_remove_from_list (PARSER_CONTEXT * parser, PT_NODE * node, PT_NODE * list)
void pt_report_to_ersys (const PARSER_CONTEXT * parser, const PT_ERROR_TYPE error_type)
void pt_report_to_ersys_with_statement (PARSER_CONTEXT * parser, const PT_ERROR_TYPE error_type, PT_NODE * statement)
void pt_reset_error (PARSER_CONTEXT * parser)
PT_NODE * pt_resolve_cte_specs (PARSER_CONTEXT * parser, PT_NODE * stmt, void * arg, int * continue_walk)
int pt_resolve_default_value (PARSER_CONTEXT * parser, PT_NODE * name)
PT_NODE * pt_resolve_names (PARSER_CONTEXT * parser, PT_NODE * statement, SEMANTIC_CHK_INFO * sc_info)
void pt_resolve_object (PARSER_CONTEXT * parser, PT_NODE * node)
DB_OBJECT * pt_resolve_serial (PARSER_CONTEXT * parser, PT_NODE * node)
int pt_resolve_server_names (PARSER_CONTEXT * parser, PT_NODE * spec)
PT_NODE * pt_resolve_star (PARSER_CONTEXT * parser, PT_NODE * from, PT_NODE * attr)
PT_NODE * pt_resolve_using_index (PARSER_CONTEXT * parser, PT_NODE * index, PT_NODE * from, bool * is_ignore)
int pt_resolved (const PT_NODE * expr)
void pt_restore_assignment_links (PT_NODE * assigns, PT_NODE ** links, int count)
void pt_rewrite_for_dblink (PARSER_CONTEXT * parser, PT_NODE * stmt)
PT_NODE * pt_rewrite_set_eq_set (PARSER_CONTEXT * parser, PT_NODE * exp)
PT_NODE * pt_rewrite_to_auto_param (PARSER_CONTEXT * parser, PT_NODE * value)
PT_NODE * pt_right_part (const PT_NODE * expr)
PT_NODE * pt_select_list_part (const PT_NODE * stmt)
void pt_select_list_to_one_col (PARSER_CONTEXT * parser, PT_NODE * node, bool do_one)
PT_NODE * pt_semantic_type (PARSER_CONTEXT * parser, PT_NODE * tree, SEMANTIC_CHK_INFO * sc_info)
DB_VALUE * pt_seq_value_to_db (PARSER_CONTEXT * parser, PT_NODE * values, DB_VALUE * db_value, PT_NODE ** el_types)
void pt_set_correlation_level (PARSER_CONTEXT * parser, PT_NODE * subquery, int level)
void pt_set_expected_domain (PT_NODE * node, TP_DOMAIN * domain)
void pt_set_fill_default_in_path_expression (PT_NODE * node)
void pt_set_host_variables (PARSER_CONTEXT * parser, int count, DB_VALUE * values)
PT_NODE * pt_set_is_view_spec (PARSER_CONTEXT * parser, PT_NODE * node, void * dummy, int * continue_walk)
void pt_set_node_etc (PT_NODE * node, const void * etc)
void pt_set_pred_order (PARSER_CONTEXT * parser, PT_NODE * pre_pred, int pre_order)
void pt_set_update_object (PARSER_CONTEXT * parser, PT_NODE * node)
PT_NODE * pt_set_user_specified_name (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
DB_VALUE * pt_set_value_to_db (PARSER_CONTEXT * parser, PT_NODE ** values, DB_VALUE * db_value, PT_NODE ** el_types)
char * pt_short_print (PARSER_CONTEXT * parser, const PT_NODE * p)
char * pt_short_print_l (PARSER_CONTEXT * parser, const PT_NODE * p)
const char * pt_show_alter (PT_ALTER_CODE c)
const char * pt_show_binopcode (PT_OP_TYPE n)
const char * pt_show_misc_type (PT_MISC_TYPE p)
const char * pt_show_node_type (PT_NODE * p)
const char * pt_show_partition_type (PT_PARTITION_TYPE t)
const char * pt_show_priv (PT_PRIV_TYPE t)
const char * pt_show_type_enum (PT_TYPE_ENUM t)
PT_NODE * pt_sm_attribute_default_value_to_node (PARSER_CONTEXT * parser, const SM_ATTRIBUTE * default_value)
PT_NODE * pt_sort_in_desc_order (PT_NODE * vlist)
bool pt_sort_spec_cover (PT_NODE * cur_list, PT_NODE * new_list)
bool pt_sort_spec_cover_for_min_max (PARSER_CONTEXT * parser, PT_NODE * tree, PT_NODE * cur_list, PT_NODE * new_list)
bool pt_sort_spec_cover_groupby (PARSER_CONTEXT * parser, PT_NODE * sort_list, PT_NODE * group_list, PT_NODE * tree)
PT_NODE * pt_sort_spec_list_to_name_node_list (PARSER_CONTEXT * parser, PT_NODE * sort_spec_list)
PT_NODE * pt_spec_to_oid_attr (PARSER_CONTEXT * parser, PT_NODE * spec, VIEW_HANDLING how)
int pt_split_delete_stmt (PARSER_CONTEXT * parser, PT_NODE * delete_stmt)
void pt_split_join_preds (PARSER_CONTEXT * parser, PT_NODE * predicates, PT_NODE ** join_part, PT_NODE ** after_cb_filter)
int pt_statement_have_methods (PARSER_CONTEXT * parser, PT_NODE * statement)
int pt_statement_line_number (const PT_NODE * stmt)
int pt_str_compare (const char * p, const char * q, CASE_SENSITIVENESS case_flag)
const char * pt_string_part (const PT_NODE * tbl)
void pt_string_to_data_type (PARSER_CONTEXT * parser, const char * s, PT_NODE * node)
DB_DOMAIN * pt_string_to_db_domain (const char * s, const char * class_name)
PT_NODE * pt_table_option (PARSER_CONTEXT * parser, const PT_TABLE_OPTION_TYPE option, PT_NODE * val)
SORT_NULLS pt_to_null_ordering (PT_NODE * sort_spec)
void pt_to_regu_resolve_domain (int * p_precision, int * p_scale, const PT_NODE * node)
PT_NODE * pt_top (PARSER_CONTEXT * parser)
PT_NODE * pt_tuple_value (PARSER_CONTEXT * parser, PT_NODE * name, CURSOR_ID * cursor_p, int index)
DB_TYPE pt_type_enum_to_db (const PT_TYPE_ENUM dt)
DB_DOMAIN * pt_type_enum_to_db_domain (const PT_TYPE_ENUM t)
const char * pt_type_enum_to_db_domain_name (const PT_TYPE_ENUM t)
int pt_type_generic_func (PARSER_CONTEXT * parser, PT_NODE * node)
PT_NODE * pt_union (PARSER_CONTEXT * parser_ptr, PT_NODE * expression1, PT_NODE * expression2)
int pt_user_specified_name_compare (const char * p, const char * q)
int pt_validate_query_spec (PARSER_CONTEXT * parser, PT_NODE * s, struct db_object * c)
DB_VALUE * pt_value_to_db (PARSER_CONTEXT * parser, PT_NODE * value)
PT_NODE * pt_values_part (const PT_NODE * insert_statement)
void pt_void_internal_error (PARSER_CONTEXT * parser, const char * file, int line, const char * what)
PT_NODE * pt_where_part (const PT_NODE * stmt)
PT_NODE * pt_where_type (PARSER_CONTEXT * parser, PT_NODE * where)
PT_NODE * pt_where_type_keep_true (PARSER_CONTEXT * parser, PT_NODE * where)
PT_NODE * pt_wrap_collection_with_cast_op (PARSER_CONTEXT * parser, PT_NODE * arg, PT_TYPE_ENUM set_type, PT_NODE * set_data, bool for_collation)
int pt_wrap_select_list_with_cast_op (PARSER_CONTEXT * parser, PT_NODE * query, PT_TYPE_ENUM new_type, int p, int s, PT_NODE * data_type, bool force_wrap)
PT_NODE * pt_wrap_with_cast_op (PARSER_CONTEXT * parser, PT_NODE * arg, PT_TYPE_ENUM new_type, int p, int s, PT_NODE * desired_dt)
void qo_auto_parameterize (PARSER_CONTEXT * parser, PT_NODE * where)

Macros

Type Name
define mq_free_virtual_query_cache_and_init (virtual_query_cache) /* multi line expression */
define pt_has_error (parser) ( ([**parser**](shard__proxy__handler_8c.md#variable-parser)) && (([**parser**](shard__proxy__handler_8c.md#variable-parser))-&gt;error\_msgs \|\| ([**parser**](shard__proxy__handler_8c.md#variable-parser))-&gt;flag.has\_internal\_error))

Public Types Documentation

enum CASE_SENSITIVENESS

enum CASE_SENSITIVENESS {
    CASE_INSENSITIVE,
    CASE_SENSITIVE
};

typedef VIEW_HANDLING

typedef enum view_handling VIEW_HANDLING;

enum view_handling

enum view_handling {
    OID_NAME,
    VIEW_OID,
    CLASSOID_NAME,
    HIDDEN_CLASSOID_NAME
};

Public Attributes Documentation

variable json_table_column_count

size_t json_table_column_count;

Public Functions Documentation

function csql_yyset_lineno

void csql_yyset_lineno (
    int line_number
) 

function db_get_attribute_force

DB_ATTRIBUTE * db_get_attribute_force (
    DB_OBJECT * obj,
    const  char * name
) 

function db_get_attributes_force

DB_ATTRIBUTE * db_get_attributes_force (
    DB_OBJECT * obj
) 

function dbcs_get_next

int dbcs_get_next (
    PARSER_CONTEXT * parser
) 

function dbcs_start_input

void dbcs_start_input (
    void
) 

function insert_rewrite_names_in_value_clauses

void insert_rewrite_names_in_value_clauses (
    PARSER_CONTEXT * parser,
    PT_NODE * insert_statement
) 

function meth_translate

PT_NODE * meth_translate (
    PARSER_CONTEXT * parser,
    PT_NODE * volatile node
) 

function mq_free_virtual_query_cache

void mq_free_virtual_query_cache (
    PARSER_CONTEXT * parser
) 

function mq_generate_name

const  char * mq_generate_name (
    PARSER_CONTEXT * parser,
    const  char * root,
    int * version
) 

function mq_is_real_class_of_vclass

int mq_is_real_class_of_vclass (
    PARSER_CONTEXT * parser,
    const  PT_NODE * s_class,
    const  PT_NODE * d_class
) 

function mq_regenerate_if_ambiguous

PT_NODE * mq_regenerate_if_ambiguous (
    PARSER_CONTEXT * parser,
    PT_NODE * spec,
    PT_NODE * statement,
    PT_NODE * from
) 

function mq_virtual_queries

PARSER_CONTEXT * mq_virtual_queries (
    DB_OBJECT * class_obj
) 

function parser_alloc

void * parser_alloc (
    const  PARSER_CONTEXT * parser,
    const  int length
) 

function parser_append_node

PT_NODE * parser_append_node (
    PT_NODE * node,
    PT_NODE * list
) 

function parser_append_node_or

PT_NODE * parser_append_node_or (
    PT_NODE * node,
    PT_NODE * list
) 

function parser_append_previous_node

PT_NODE * parser_append_previous_node (
    PT_NODE * node,
    PT_NODE * list
) 

function parser_clear_node

void parser_clear_node (
    PARSER_CONTEXT * parser,
    PT_NODE * node
) 

function parser_copy_tree

PT_NODE * parser_copy_tree (
    PARSER_CONTEXT * parser,
    const  PT_NODE * tree
) 

function parser_copy_tree_list

PT_NODE * parser_copy_tree_list (
    PARSER_CONTEXT * parser,
    PT_NODE * tree
) 

function parser_create_node

PT_NODE * parser_create_node (
    const  PARSER_CONTEXT * parser
) 

function parser_create_parser

PARSER_CONTEXT * parser_create_parser (
    void
) 

function parser_final

void parser_final (
    void
) 

function parser_free_lcks_classes

void parser_free_lcks_classes (
    PARSER_CONTEXT * parser
) 

function parser_free_node

void parser_free_node (
    const  PARSER_CONTEXT * parser,
    PT_NODE * node
) 

function parser_free_node_resources

void parser_free_node_resources (
    PT_NODE * node
) 

function parser_free_parser

void parser_free_parser (
    PARSER_CONTEXT * parser
) 

function parser_free_subtrees

void parser_free_subtrees (
    PARSER_CONTEXT * parser,
    PT_NODE * tree
) 

function parser_free_tree

void parser_free_tree (
    PARSER_CONTEXT * parser,
    PT_NODE * tree
) 

function parser_get_tree_list_diff

PT_NODE * parser_get_tree_list_diff (
    PARSER_CONTEXT * parser,
    PT_NODE * list1,
    PT_NODE * list2
) 

function parser_init_func_vectors

void parser_init_func_vectors (
    void
) 

function parser_init_node

PT_NODE * parser_init_node (
    PT_NODE * node,
    PT_NODE_TYPE node_type
) 

function parser_keyword_func

PT_NODE * parser_keyword_func (
    const  char * name,
    PT_NODE * args
) 

function parser_main

PT_NODE ** parser_main (
    PARSER_CONTEXT * p
) 

function parser_make_expression

PT_NODE * parser_make_expression (
    PARSER_CONTEXT * parser,
    PT_OP_TYPE OP,
    PT_NODE * arg1,
    PT_NODE * arg2,
    PT_NODE * arg3
) 

function parser_new_node

PT_NODE * parser_new_node (
    PARSER_CONTEXT * parser,
    PT_NODE_TYPE node
) 

function parser_parse_binary

PT_NODE ** parser_parse_binary (
    PARSER_CONTEXT * parser,
    const  char * buffer,
    size_t size
) 

function parser_parse_file

PT_NODE ** parser_parse_file (
    PARSER_CONTEXT * parser,
    FILE * file
) 

function parser_parse_string

PT_NODE ** parser_parse_string (
    PARSER_CONTEXT * parser,
    const  char * buffer
) 

function parser_parse_string_use_sys_charset

PT_NODE ** parser_parse_string_use_sys_charset (
    PARSER_CONTEXT * parser,
    const  char * buffer
) 

function parser_parse_string_with_escapes

PT_NODE ** parser_parse_string_with_escapes (
    PARSER_CONTEXT * parser,
    const  char * buffer,
    const  bool no_escapes_strings
) 

function parser_print_function_index_expr

char * parser_print_function_index_expr (
    PARSER_CONTEXT * parser,
    const  PT_NODE * expr
) 

function parser_print_tree

char * parser_print_tree (
    PARSER_CONTEXT * parser,
    const  PT_NODE * node
) 

function parser_print_tree_list

char * parser_print_tree_list (
    PARSER_CONTEXT * parser,
    const  PT_NODE * p
) 

function parser_print_tree_with_quotes

char * parser_print_tree_with_quotes (
    PARSER_CONTEXT * parser,
    const  PT_NODE * node
) 

function parser_reinit_node

PT_NODE * parser_reinit_node (
    PT_NODE * node
) 

function parser_walk_leaves

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
) 

function parser_walk_tree

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
) 

function pt_add_class_to_entity_list

PT_NODE * pt_add_class_to_entity_list (
    PARSER_CONTEXT * r,
    struct  db_object * db,
    PT_NODE * entity,
    const  PT_NODE * parent,
    UINTPTR id,
    PT_MISC_TYPE meta_class
) 

function pt_add_column_oid

PT_NODE * pt_add_column_oid (
    PARSER_CONTEXT * parser,
    PT_NODE * stmt
) 

function pt_add_row_classoid_name

PT_NODE * pt_add_row_classoid_name (
    PARSER_CONTEXT * parser,
    PT_NODE * statement,
    int server_op
) 

function pt_add_row_oid

PT_NODE * pt_add_row_oid (
    PARSER_CONTEXT * parser,
    PT_NODE * stmt
) 

function pt_add_row_oid_name

PT_NODE * pt_add_row_oid_name (
    PARSER_CONTEXT * parser,
    PT_NODE * stmt
) 

function pt_add_table_name_to_from_list

PT_NODE * pt_add_table_name_to_from_list (
    PARSER_CONTEXT * parser,
    PT_NODE * select,
    const  char * table_name,
    const  char * table_alias,
    const  DB_AUTH auth_bypass
) 

function pt_add_type_to_set

void pt_add_type_to_set (
    PARSER_CONTEXT * parser,
    const  PT_NODE * val,
    PT_NODE ** set
) 

function pt_and

PT_NODE * pt_and (
    PARSER_CONTEXT * parser_ptr,
    const  PT_NODE * expression1,
    const  PT_NODE * expression2
) 

function pt_append_bytes

PARSER_VARCHAR * pt_append_bytes (
    const  PARSER_CONTEXT * parser,
    PARSER_VARCHAR * old_bytes,
    const  char * new_tail,
    const  int length
) 

function pt_append_name

PARSER_VARCHAR * pt_append_name (
    const  PARSER_CONTEXT * parser,
    PARSER_VARCHAR * string,
    const  char * name
) 

function pt_append_nulstring

PARSER_VARCHAR * pt_append_nulstring (
    const  PARSER_CONTEXT * parser,
    PARSER_VARCHAR * old_bytes,
    const  char * new_tail
) 

function pt_append_query_select_list

PT_NODE * pt_append_query_select_list (
    PARSER_CONTEXT * parser,
    PT_NODE * query,
    PT_NODE * attrs
) 

function pt_append_string

char * pt_append_string (
    const  PARSER_CONTEXT * parser,
    const  char * old_string,
    const  char * new_tail
) 

function pt_append_varchar

PARSER_VARCHAR * pt_append_varchar (
    const  PARSER_CONTEXT * parser,
    PARSER_VARCHAR * old_bytes,
    const  PARSER_VARCHAR * new_tail
) 

function pt_arg1_part

PT_NODE * pt_arg1_part (
    const  PT_NODE * node
) 

function pt_arg2_part

PT_NODE * pt_arg2_part (
    const  PT_NODE * node
) 

function pt_assignments_part

PT_NODE * pt_assignments_part (
    const  PT_NODE * update_statement
) 

function pt_associate_label_with_value_check_reference

int pt_associate_label_with_value_check_reference (
    const  char * label,
    DB_VALUE * val
) 

function pt_attrs_part

PT_NODE * pt_attrs_part (
    const  PT_NODE * insert_statement
) 

function pt_auth_to_db_auth

DB_AUTH pt_auth_to_db_auth (
    const  PT_NODE * auth
) 

function pt_between_to_comp_op

int pt_between_to_comp_op (
    PT_OP_TYPE between,
    PT_OP_TYPE * left,
    PT_OP_TYPE * right
) 

function pt_bind_param_node

PT_NODE * pt_bind_param_node (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_bind_type_from_dbval

PT_NODE * pt_bind_type_from_dbval (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    DB_VALUE * val
) 

function pt_bind_values_to_hostvars

PT_NODE * pt_bind_values_to_hostvars (
    PARSER_CONTEXT * parser,
    PT_NODE * node
) 

function pt_check_class_eq

int pt_check_class_eq (
    PARSER_CONTEXT * parser,
    PT_NODE * p,
    PT_NODE * q
) 

int pt_check_dblink_column_alias (
    PARSER_CONTEXT * parser,
    PT_NODE * dblink
) 

int pt_check_dblink_password (
    PARSER_CONTEXT * parser,
    const  char * passwd,
    char * cipher,
    int ciper_size
) 

PT_NODE * pt_check_dblink_query (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_check_enum_data_type

int pt_check_enum_data_type (
    PARSER_CONTEXT * parser,
    PT_NODE * dt
) 

function pt_check_grammar_charset_collation

int pt_check_grammar_charset_collation (
    PARSER_CONTEXT * parser,
    PT_NODE * charset_node,
    PT_NODE * coll_node,
    int * charset,
    int * coll_id
) 

function pt_check_group_by

int pt_check_group_by (
    PARSER_CONTEXT * parser,
    PT_NODE * node
) 

function pt_check_groupbynum_post

PT_NODE * pt_check_groupbynum_post (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_check_groupbynum_pre

PT_NODE * pt_check_groupbynum_pre (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_check_if_query

int pt_check_if_query (
    PARSER_CONTEXT * parser,
    PT_NODE * stmt
) 

function pt_check_instnum_post

PT_NODE * pt_check_instnum_post (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_check_instnum_pre

PT_NODE * pt_check_instnum_pre (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_check_level_expr

void pt_check_level_expr (
    PARSER_CONTEXT * parser,
    PT_NODE * expr,
    bool * has_greater,
    bool * has_lesser
) 

function pt_check_not_null_constraint

bool pt_check_not_null_constraint (
    PARSER_CONTEXT * parser,
    PT_NODE * from,
    PT_NODE * node
) 

function pt_check_ordby_num_for_multi_range_opt

bool pt_check_ordby_num_for_multi_range_opt (
    PARSER_CONTEXT * parser,
    PT_NODE * query,
    bool * mro_candidate,
    bool * cannot_eval
) 

function pt_check_order_by

int pt_check_order_by (
    PARSER_CONTEXT * parser,
    PT_NODE * query
) 

function pt_check_orderbynum_post

PT_NODE * pt_check_orderbynum_post (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_check_orderbynum_pre

PT_NODE * pt_check_orderbynum_pre (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_check_path_eq

int pt_check_path_eq (
    PARSER_CONTEXT * parser,
    const  PT_NODE * p,
    const  PT_NODE * q
) 

function pt_check_removable_expr_post

PT_NODE * pt_check_removable_expr_post (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    void * arg,
    int * continue_walk
) 

function pt_check_removable_expr_pre

PT_NODE * pt_check_removable_expr_pre (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    void * arg,
    int * continue_walk
) 

function pt_check_same_datatype

int pt_check_same_datatype (
    const  PARSER_CONTEXT * parser,
    const  PT_NODE * p,
    const  PT_NODE * q
) 

function pt_check_set_count_set

int pt_check_set_count_set (
    PARSER_CONTEXT * parser,
    PT_NODE * arg1,
    PT_NODE * arg2
) 

function pt_check_subquery_post

PT_NODE * pt_check_subquery_post (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_check_subquery_pre

PT_NODE * pt_check_subquery_pre (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_check_unique_names

int pt_check_unique_names (
    PARSER_CONTEXT * parser,
    const  PT_NODE * p
) 

function pt_check_user_owns_class

DB_OBJECT * pt_check_user_owns_class (
    PARSER_CONTEXT * parser,
    PT_NODE * cls_ref
) 

function pt_chop_trailing_dots

char * pt_chop_trailing_dots (
    PARSER_CONTEXT * parser,
    const  char * msg
) 

function pt_class_names_part

PT_NODE * pt_class_names_part (
    const  PT_NODE * stmt
) 

function pt_class_part

PT_NODE * pt_class_part (
    const  PT_NODE * statement
) 

function pt_class_pre_fetch

PT_NODE * pt_class_pre_fetch (
    PARSER_CONTEXT * parser,
    PT_NODE * statement
) 

function pt_cnf

PT_NODE * pt_cnf (
    PARSER_CONTEXT * parser,
    PT_NODE * node
) 

function pt_coerce_node_collation

PT_NODE * pt_coerce_node_collation (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    const  int coll_id,
    const  INTL_CODESET codeset,
    bool force_mode,
    bool use_collate_modifier,
    PT_TYPE_ENUM wrap_type_for_maybe,
    PT_TYPE_ENUM wrap_type_collection
) 

function pt_coerce_value

int pt_coerce_value (
    PARSER_CONTEXT * parser,
    PT_NODE * src,
    PT_NODE * dest,
    PT_TYPE_ENUM desired_type,
    PT_NODE * elem_type_list
) 

function pt_coerce_value_explicit

int pt_coerce_value_explicit (
    PARSER_CONTEXT * parser,
    PT_NODE * src,
    PT_NODE * dest,
    PT_TYPE_ENUM desired_type,
    PT_NODE * elem_type_list
) 

function pt_coerce_value_for_default_value

int pt_coerce_value_for_default_value (
    PARSER_CONTEXT * parser,
    PT_NODE * src,
    PT_NODE * dest,
    PT_TYPE_ENUM desired_type,
    PT_NODE * elem_type_list,
    DB_DEFAULT_EXPR_TYPE default_expr_type,
    bool check_string_precision
) 

function pt_column_updatable

bool pt_column_updatable (
    PARSER_CONTEXT * parser,
    PT_NODE * query
) 

function pt_common_collation

int pt_common_collation (
    PT_COLL_INFER * arg1_coll_infer,
    PT_COLL_INFER * arg2_coll_infer,
    PT_COLL_INFER * arg3_coll_infer,
    const  int args_w_coll,
    bool op_has_3_args,
    int * common_coll,
    INTL_CODESET * common_cs
) 

function pt_common_type

PT_TYPE_ENUM pt_common_type (
    PT_TYPE_ENUM arg1_type,
    PT_TYPE_ENUM arg2_type
) 

function pt_comp_to_between_op

int pt_comp_to_between_op (
    PT_OP_TYPE left,
    PT_OP_TYPE right,
    PT_COMP_TO_BETWEEN_OP_CODE_TYPE code,
    PT_OP_TYPE * between
) 

function pt_compile

PT_NODE * pt_compile (
    PARSER_CONTEXT * parser,
    PT_NODE * volatile statement
) 

function pt_compile_trigger_stmt

PT_NODE * pt_compile_trigger_stmt (
    PARSER_CONTEXT * parser,
    const  char * trigger_stmt,
    DB_OBJECT * class_op,
    const  char * name1,
    const  char * name2,
    char ** new_trigger_stmt,
    int with_evaluate
) 

function pt_continue_walk

PT_NODE * pt_continue_walk (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    void * arg,
    int * continue_walk
) 

function pt_converse_op

PT_OP_TYPE pt_converse_op (
    PT_OP_TYPE op
) 

function pt_convert_to_logical_expr

PT_NODE * pt_convert_to_logical_expr (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    bool use_parens_inside,
    bool use_parens_outside
) 

function pt_copy_statement_flags

void pt_copy_statement_flags (
    PT_NODE * source,
    PT_NODE * destination
) 

function pt_count_assignments

int pt_count_assignments (
    PARSER_CONTEXT * parser,
    PT_NODE * assignments
) 

function pt_count_input_markers

PT_NODE * pt_count_input_markers (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_count_name_nodes

PT_NODE * pt_count_name_nodes (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_count_output_markers

PT_NODE * pt_count_output_markers (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_data_type_init_value

void pt_data_type_init_value (
    const  PT_NODE * node,
    DB_VALUE * value_out
) 

function pt_data_type_to_db_domain

DB_DOMAIN * pt_data_type_to_db_domain (
    PARSER_CONTEXT * parser,
    PT_NODE * dt,
    const  char * class_name
) 

function pt_data_type_to_db_domain_name

const  char * pt_data_type_to_db_domain_name (
    const  PT_NODE * dt
) 

function pt_db_to_type_enum

PT_TYPE_ENUM pt_db_to_type_enum (
    const  DB_TYPE t
) 

function pt_db_value_initialize

DB_VALUE * pt_db_value_initialize (
    PARSER_CONTEXT * parser,
    PT_NODE * value,
    DB_VALUE * db_value,
    int * more_type_info_needed
) 

function pt_dbval_to_value

PT_NODE * pt_dbval_to_value (
    PARSER_CONTEXT * parser,
    const  DB_VALUE * val
) 

function pt_do_cnf

PT_NODE * pt_do_cnf (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_domain_to_data_type

PT_NODE * pt_domain_to_data_type (
    PARSER_CONTEXT * parser,
    DB_DOMAIN * domain
) 

function pt_dump

PT_NODE * pt_dump (
    PT_NODE * node
) 

function pt_dup_key_update_stmt

PT_NODE * pt_dup_key_update_stmt (
    PARSER_CONTEXT * parser,
    PT_NODE * spec,
    PT_NODE * assignment
) 

function pt_end_query

void pt_end_query (
    PARSER_CONTEXT * parser,
    QUERY_ID query_id_self
) 

function pt_entity

PT_NODE * pt_entity (
    PARSER_CONTEXT * parser,
    const  PT_NODE * entity_name,
    const  PT_NODE * range_var,
    const  PT_NODE * flat_list
) 

function pt_eval_path_expr

bool pt_eval_path_expr (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    DB_VALUE * val
) 

function pt_eval_value_path

PT_NODE * pt_eval_value_path (
    PARSER_CONTEXT * parser,
    PT_NODE * path
) 

function pt_evaluate_db_value_expr

int pt_evaluate_db_value_expr (
    PARSER_CONTEXT * parser,
    PT_NODE * expr,
    PT_OP_TYPE op,
    DB_VALUE * arg1,
    DB_VALUE * arg2,
    DB_VALUE * arg3,
    DB_VALUE * result,
    TP_DOMAIN * domain,
    PT_NODE * o1,
    PT_NODE * o2,
    PT_NODE * o3,
    PT_MISC_TYPE qualifier
) 

function pt_evaluate_function

int pt_evaluate_function (
    PARSER_CONTEXT * parser,
    PT_NODE * func,
    DB_VALUE * dbval_res
) 

function pt_evaluate_function_w_args

int pt_evaluate_function_w_args (
    PARSER_CONTEXT * parser,
    FUNC_CODE fcode,
    DB_VALUE * args,
    const  int num_args,
    DB_VALUE * result
) 

function pt_evaluate_tree

void pt_evaluate_tree (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    DB_VALUE * db_values,
    int values_count
) 

function pt_evaluate_tree_having_serial

void pt_evaluate_tree_having_serial (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    DB_VALUE * db_value,
    int vals_cnt
) 

function pt_exec_trigger_stmt

int pt_exec_trigger_stmt (
    PARSER_CONTEXT * parser,
    PT_NODE * trigger_stmt,
    DB_OBJECT * object1,
    DB_OBJECT * object2,
    DB_VALUE * result
) 

function pt_expr_disallow_op_except_agg

PT_NODE * pt_expr_disallow_op_except_agg (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_expr_disallow_op_pre

PT_NODE * pt_expr_disallow_op_pre (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_expr_keep_uniqueness

bool pt_expr_keep_uniqueness (
    const  PT_NODE * expr
) 

function pt_expr_to_sort_spec

PT_NODE * pt_expr_to_sort_spec (
    PARSER_CONTEXT * parser,
    PT_NODE * expr
) 

function pt_expression

PT_NODE * pt_expression (
    PARSER_CONTEXT * parser_ptr,
    PT_OP_TYPE op,
    PT_NODE * arg1,
    PT_NODE * arg2,
    PT_NODE * arg3
) 

function pt_expression_0

PT_NODE * pt_expression_0 (
    PARSER_CONTEXT * parser_ptr,
    PT_OP_TYPE op
) 

function pt_expression_1

PT_NODE * pt_expression_1 (
    PARSER_CONTEXT * parser_ptr,
    PT_OP_TYPE op,
    PT_NODE * arg1
) 

function pt_expression_2

PT_NODE * pt_expression_2 (
    PARSER_CONTEXT * parser_ptr,
    PT_OP_TYPE op,
    PT_NODE * arg1,
    PT_NODE * arg2
) 

function pt_expression_3

PT_NODE * pt_expression_3 (
    PARSER_CONTEXT * parser_ptr,
    PT_OP_TYPE op,
    PT_NODE * arg1,
    PT_NODE * arg2,
    PT_NODE * arg3
) 

function pt_false_search_condition

bool pt_false_search_condition (
    PARSER_CONTEXT * parser,
    const  PT_NODE * statement
) 

function pt_false_where

bool pt_false_where (
    PARSER_CONTEXT * parser,
    PT_NODE * statement
) 

function pt_fillin_type_size

DB_QUERY_TYPE * pt_fillin_type_size (
    PARSER_CONTEXT * parser,
    PT_NODE * query,
    DB_QUERY_TYPE * list,
    const  int include_oid,
    bool want_spec_entity_name,
    bool fixup_columns_type
) 

function pt_find_aggregate_functions_post

PT_NODE * pt_find_aggregate_functions_post (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    void * arg,
    int * continue_walk
) 

function pt_find_aggregate_functions_pre

PT_NODE * pt_find_aggregate_functions_pre (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    void * arg,
    int * continue_walk
) 

function pt_find_aggregate_names

PT_NODE * pt_find_aggregate_names (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    void * arg,
    int * continue_walk
) 

function pt_find_attribute

int pt_find_attribute (
    PARSER_CONTEXT * parser,
    const  PT_NODE * name,
    const  PT_NODE * attributes
) 

function pt_find_entity

PT_NODE * pt_find_entity (
    PARSER_CONTEXT * parser,
    const  PT_NODE * scope,
    UINTPTR id
) 

function pt_find_function_name

FUNCTION_MAP * pt_find_function_name (
    const  char * name
) 

function pt_find_id

UINTPTR pt_find_id (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    UINTPTR id
) 

function pt_find_labels

int pt_find_labels (
    DB_NAMELIST ** list
) 

function pt_find_name

PT_NODE * pt_find_name (
    PARSER_CONTEXT * parser,
    const  PT_NODE * name,
    const  PT_NODE * list
) 

function pt_find_node_type_pre

PT_NODE * pt_find_node_type_pre (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_find_op_type_pre

PT_NODE * pt_find_op_type_pre (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_find_spec

PT_NODE * pt_find_spec (
    PARSER_CONTEXT * parser,
    const  PT_NODE * from,
    const  PT_NODE * name
) 

function pt_find_spec_in_statement

PT_NODE * pt_find_spec_in_statement (
    PARSER_CONTEXT * parser,
    const  PT_NODE * stmt,
    const  PT_NODE * name
) 

function pt_find_users_class

DB_OBJECT * pt_find_users_class (
    PARSER_CONTEXT * parser,
    PT_NODE * name
) 

function pt_find_value_of_label

DB_VALUE * pt_find_value_of_label (
    const  char * label
) 

function pt_find_var

int pt_find_var (
    PT_NODE * p,
    PT_NODE ** result
) 

function pt_fixup_column_type

void pt_fixup_column_type (
    PT_NODE * col
) 

function pt_flat_spec_pre

PT_NODE * pt_flat_spec_pre (
    PARSER_CONTEXT * parser,
    PT_NODE * p,
    void * scope,
    int * continue_walk
) 

void pt_free_dblink_remote_cols (
    PARSER_CONTEXT * parser
) 

function pt_free_escape_char

void pt_free_escape_char (
    PARSER_CONTEXT * const parser,
    PT_NODE * const like,
    PT_NODE * const pattern,
    PT_NODE * const escape
) 

function pt_free_host_info

void pt_free_host_info (
    PT_HOST_VARS * hv
) 

function pt_free_label_table

void pt_free_label_table (
    void
) 

function pt_free_orphans

void pt_free_orphans (
    PARSER_CONTEXT * parser
) 

function pt_free_query_etc_area

void pt_free_query_etc_area (
    PARSER_CONTEXT * parser,
    PT_NODE * query
) 

function pt_free_statement_xasl_id

void pt_free_statement_xasl_id (
    PT_NODE * statement
) 

function pt_frob_error

void pt_frob_error (
    PARSER_CONTEXT * parser,
    const  PT_NODE * statement,
    const  char * fmt,
    ...
) 

function pt_frob_warning

void pt_frob_warning (
    PARSER_CONTEXT * parser,
    const  PT_NODE * statement,
    const  char * fmt,
    ...
) 

function pt_from_entity_part

PT_NODE * pt_from_entity_part (
    const  PT_NODE * node
) 

function pt_from_list_part

PT_NODE * pt_from_list_part (
    const  PT_NODE * node
) 

function pt_function_index_skip_expr

PT_NODE * pt_function_index_skip_expr (
    PT_NODE * node
) 

function pt_gather_constraints

PT_NODE * pt_gather_constraints (
    PARSER_CONTEXT * parser,
    PT_NODE * tree
) 

function pt_get_assignment_lists

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
) 

function pt_get_collation_info

bool pt_get_collation_info (
    const  PT_NODE * node,
    PT_COLL_INFER * coll_infer
) 

function pt_get_correlation_level

int pt_get_correlation_level (
    PT_NODE * node
) 

function pt_get_cursor

PT_NODE * pt_get_cursor (
    const  PT_HOST_VARS * hv
) 

function pt_get_default_expression_from_data_default_node

void pt_get_default_expression_from_data_default_node (
    PARSER_CONTEXT * parser,
    PT_NODE * data_default_node,
    DB_DEFAULT_EXPR * default_expr
) 

function pt_get_default_expression_from_string

void pt_get_default_expression_from_string (
    PARSER_CONTEXT * parser,
    const  char * str,
    const  int str_size,
    DB_DEFAULT_EXPR * default_expr
) 

function pt_get_dup_key_oid_var_index

int pt_get_dup_key_oid_var_index (
    PARSER_CONTEXT * parser,
    PT_NODE * update_statement
) 

function pt_get_end_path_node

PT_NODE * pt_get_end_path_node (
    PT_NODE * node
) 

function pt_get_errors

PT_NODE * pt_get_errors (
    PARSER_CONTEXT * parser
) 

function pt_get_expression_count

int pt_get_expression_count (
    PT_NODE * node
) 

function pt_get_expression_number

int pt_get_expression_number (
    PT_NODE * node
) 

function pt_get_first_arg_ignore_prior

PT_NODE * pt_get_first_arg_ignore_prior (
    PT_NODE * node
) 

function pt_get_hint_from_query

PT_HINT_ENUM pt_get_hint_from_query (
    PARSER_CONTEXT * parser,
    PT_NODE * query
) 

function pt_get_input_host_vars

PT_NODE * pt_get_input_host_vars (
    const  PT_HOST_VARS * hv
) 

function pt_get_keyword_rec

KEYWORD_RECORD * pt_get_keyword_rec (
    int * rec_count
) 

function pt_get_max_pred_order

int pt_get_max_pred_order (
    PARSER_CONTEXT * parser,
    PT_NODE * pred
) 

function pt_get_name

const  char * pt_get_name (
    PT_NODE * nam
) 

function pt_get_name_with_qualifier_removed

const  char * pt_get_name_with_qualifier_removed (
    const  char * name
) 

function pt_get_name_without_current_user_name

const  char * pt_get_name_without_current_user_name (
    const  char * name
) 

function pt_get_next_assignment

PT_NODE * pt_get_next_assignment (
    PT_ASSIGNMENTS_HELPER * helper
) 

function pt_get_next_error

PT_NODE * pt_get_next_error (
    PT_NODE * errors,
    int * stmt_no,
    int * line_no,
    int * col_no,
    const  char ** msg
) 

function pt_get_node_from_list

PT_NODE * pt_get_node_from_list (
    PT_NODE * list,
    int index
) 

function pt_get_one_tuple_from_list_id

int pt_get_one_tuple_from_list_id (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    struct  db_value * vals,
    int cnt
) 

function pt_get_output_host_descr

PT_NODE * pt_get_output_host_descr (
    PT_HOST_VARS * hv
) 

function pt_get_output_host_vars

PT_NODE * pt_get_output_host_vars (
    const  PT_HOST_VARS * hv
) 

function pt_get_parameters

PT_NODE * pt_get_parameters (
    PARSER_CONTEXT * parser,
    PT_NODE * statement
) 

function pt_get_proxy_spec_name

const  char * pt_get_proxy_spec_name (
    PARSER_CONTEXT * parser,
    const  char * qspec
) 

function pt_get_qualifier_name

const  char * pt_get_qualifier_name (
    PARSER_CONTEXT * parser,
    PT_NODE * name
) 

function pt_get_query_expr_value

int pt_get_query_expr_value (
    PARSER_CONTEXT * parser,
    PT_NODE * expr,
    DB_VALUE * expr_val
) 

function pt_get_query_limit_from_query

DB_BIGINT pt_get_query_limit_from_query (
    PARSER_CONTEXT * parser,
    PT_NODE * query
) 

function pt_get_query_limit_value

int pt_get_query_limit_value (
    PARSER_CONTEXT * parser,
    PT_NODE * query,
    DB_VALUE * limit_val,
    bool add_offset
) 

function pt_get_select_from_name

const  char * pt_get_select_from_name (
    PARSER_CONTEXT * parser,
    const  PT_NODE * spec
) 

function pt_get_select_list

PT_NODE * pt_get_select_list (
    PARSER_CONTEXT * parser,
    PT_NODE * query
) 

function pt_get_select_query_columns

int pt_get_select_query_columns (
    PARSER_CONTEXT * parser,
    PT_NODE * create_select,
    DB_QUERY_TYPE ** query_columns
) 

function pt_get_spec_name

const  char * pt_get_spec_name (
    PARSER_CONTEXT * parser,
    const  PT_NODE * selqry
) 

function pt_get_subquery_list

PT_NODE * pt_get_subquery_list (
    PT_NODE * node
) 

function pt_get_subquery_of_insert_select

PT_NODE * pt_get_subquery_of_insert_select (
    const  PT_NODE * insert_statement
) 

function pt_get_titles

DB_QUERY_TYPE * pt_get_titles (
    PARSER_CONTEXT * parser,
    PT_NODE * query
) 

function pt_get_varchar_bytes

const  unsigned  char * pt_get_varchar_bytes (
    const  PARSER_VARCHAR * string
) 

function pt_get_varchar_length

int pt_get_varchar_length (
    const  PARSER_VARCHAR * string
) 

function pt_get_warnings

PT_NODE * pt_get_warnings (
    const  PARSER_CONTEXT * parser
) 

function pt_group_by_part

PT_NODE * pt_group_by_part (
    const  PT_NODE * node
) 

function pt_groupbynum_compatibility

int pt_groupbynum_compatibility (
    PT_NODE * expr
) 

function pt_has_aggregate

bool pt_has_aggregate (
    PARSER_CONTEXT * parser,
    PT_NODE * node
) 

function pt_has_analytic

bool pt_has_analytic (
    PARSER_CONTEXT * parser,
    PT_NODE * node
) 

function pt_has_define_vars

bool pt_has_define_vars (
    PARSER_CONTEXT * parser,
    PT_NODE * stmt
) 

function pt_has_expr_of_inst_in_sel_list

bool pt_has_expr_of_inst_in_sel_list (
    PARSER_CONTEXT * parser,
    PT_NODE * select_list
) 

function pt_has_having_with_predicate

bool pt_has_having_with_predicate (
    PARSER_CONTEXT * parser,
    PT_NODE * node
) 

function pt_has_inst_in_where_and_select_list

bool pt_has_inst_in_where_and_select_list (
    PARSER_CONTEXT * parser,
    PT_NODE * node
) 

function pt_has_inst_num

bool pt_has_inst_num (
    PARSER_CONTEXT * parser,
    PT_NODE * node
) 

function pt_has_inst_or_orderby_num

bool pt_has_inst_or_orderby_num (
    PARSER_CONTEXT * parser,
    PT_NODE * node
) 

function pt_has_inst_or_orderby_num_in_where

bool pt_has_inst_or_orderby_num_in_where (
    PARSER_CONTEXT * parser,
    PT_NODE * node
) 

function pt_has_name_oid

PT_NODE * pt_has_name_oid (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_has_non_groupby_column_node

PT_NODE * pt_has_non_groupby_column_node (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_has_non_idx_sarg_coll_pre

PT_NODE * pt_has_non_idx_sarg_coll_pre (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    void * arg,
    int * continue_walk
) 

function pt_has_nullable_term

bool pt_has_nullable_term (
    PARSER_CONTEXT * parser,
    PT_NODE * node
) 

function pt_has_order_sensitive_agg

bool pt_has_order_sensitive_agg (
    PARSER_CONTEXT * parser,
    PT_NODE * node
) 

function pt_has_path_expr

bool pt_has_path_expr (
    PARSER_CONTEXT * parser,
    PT_NODE * stmt
) 

function pt_has_using_index_clause

PT_NODE * pt_has_using_index_clause (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_having_part

PT_NODE * pt_having_part (
    const  PT_NODE * node
) 

function pt_host_info

PT_HOST_VARS * pt_host_info (
    PARSER_CONTEXT * parser,
    PT_NODE * stmt
) 

function pt_host_var_db_value

DB_VALUE * pt_host_var_db_value (
    PARSER_CONTEXT * parser,
    PT_NODE * hv
) 

function pt_host_var_index

int pt_host_var_index (
    const  PT_NODE * hv
) 

function pt_identifier_or_keyword

int pt_identifier_or_keyword (
    const  char * text
) 

function pt_init_assignments_helper

void pt_init_assignments_helper (
    PARSER_CONTEXT * parser,
    PT_ASSIGNMENTS_HELPER * helper,
    PT_NODE * assignment
) 

function pt_init_one_statement_parser

PT_NODE ** pt_init_one_statement_parser (
    PARSER_CONTEXT * parser,
    FILE * file
) 

function pt_insert_value

PT_NODE * pt_insert_value (
    PARSER_CONTEXT * parser,
    PT_NODE * node
) 

function pt_instnum_compatibility

int pt_instnum_compatibility (
    PT_NODE * expr
) 

function pt_internal_error

void * pt_internal_error (
    PARSER_CONTEXT * parser,
    const  char * file,
    int line,
    const  char * what
) 

function pt_is_aggregate_function

bool pt_is_aggregate_function (
    PARSER_CONTEXT * parser,
    const  PT_NODE * node
) 

function pt_is_analytic_function

bool pt_is_analytic_function (
    PARSER_CONTEXT * parser,
    const  PT_NODE * node
) 

function pt_is_analytic_node

PT_NODE * pt_is_analytic_node (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    void * arg,
    int * continue_walk
) 

function pt_is_analytic_node_post

PT_NODE * pt_is_analytic_node_post (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    void * arg,
    int * continue_walk
) 

function pt_is_ascii_string_value_node

bool pt_is_ascii_string_value_node (
    const  PT_NODE * const node
) 

function pt_is_attr

int pt_is_attr (
    PT_NODE * node
) 

function pt_is_between_range_op

int pt_is_between_range_op (
    PT_OP_TYPE op
) 

function pt_is_comp_op

int pt_is_comp_op (
    PT_OP_TYPE op
) 

function pt_is_const_expr_node

bool pt_is_const_expr_node (
    PT_NODE * node
) 

function pt_is_ddl_statement

int pt_is_ddl_statement (
    const  PT_NODE * node
) 

function pt_is_define_vars

PT_NODE * pt_is_define_vars (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_is_expr_wrapped_function

bool pt_is_expr_wrapped_function (
    PARSER_CONTEXT * parser,
    const  PT_NODE * node
) 

function pt_is_function_index_expr

bool pt_is_function_index_expr (
    PARSER_CONTEXT * parser,
    PT_NODE * expr,
    bool report_error
) 

function pt_is_function_index_expression

int pt_is_function_index_expression (
    PT_NODE * node
) 

function pt_is_inst_num_node

PT_NODE * pt_is_inst_num_node (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    void * arg,
    int * continue_walk
) 

function pt_is_inst_num_node_post

PT_NODE * pt_is_inst_num_node_post (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    void * arg,
    int * continue_walk
) 

function pt_is_inst_or_inst_num_node

PT_NODE * pt_is_inst_or_inst_num_node (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    void * arg,
    int * continue_walk
) 

function pt_is_inst_or_orderby_num_node

PT_NODE * pt_is_inst_or_orderby_num_node (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    void * arg,
    int * continue_walk
) 

function pt_is_inst_or_orderby_num_node_post

PT_NODE * pt_is_inst_or_orderby_num_node_post (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    void * arg,
    int * continue_walk
) 

function pt_is_join_expr

bool pt_is_join_expr (
    PT_NODE * expr,
    UINTPTR * spec_id
) 

function pt_is_json_function

bool pt_is_json_function (
    PARSER_CONTEXT * parser,
    const  PT_NODE * node
) 

function pt_is_keyword

bool pt_is_keyword (
    const  char * s
) 

function pt_is_method_call

int pt_is_method_call (
    PT_NODE * node
) 

function pt_is_method_call_node

PT_NODE * pt_is_method_call_node (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    void * arg,
    int * continue_walk
) 

function pt_is_op_hv_late_bind

bool pt_is_op_hv_late_bind (
    PT_OP_TYPE op
) 

function pt_is_operator_arith

bool pt_is_operator_arith (
    PT_OP_TYPE op
) 

function pt_is_operator_logical

bool pt_is_operator_logical (
    PT_OP_TYPE op
) 

function pt_is_order_sensitive_agg

PT_NODE * pt_is_order_sensitive_agg (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    void * arg,
    int * continue_walk
) 

function pt_is_order_sensitive_agg_post

PT_NODE * pt_is_order_sensitive_agg_post (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    void * arg,
    int * continue_walk
) 

function pt_is_path_expr

PT_NODE * pt_is_path_expr (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_is_pseudo_const

bool pt_is_pseudo_const (
    PT_NODE * expr
) 

function pt_is_pseudocolumn_node

PT_NODE * pt_is_pseudocolumn_node (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    void * arg,
    int * continue_walk
) 

function pt_is_reference_to_reusable_oid

int pt_is_reference_to_reusable_oid (
    DB_VALUE * val
) 

function pt_is_reserved_word

bool pt_is_reserved_word (
    const  char * s
) 

function pt_is_same_enum_data_type

bool pt_is_same_enum_data_type (
    PT_NODE * dt1,
    PT_NODE * dt2
) 

function pt_is_server_insert_with_generated_keys

int pt_is_server_insert_with_generated_keys (
    PARSER_CONTEXT * parser,
    PT_NODE * statement
) 

function pt_is_symmetric_op

bool pt_is_symmetric_op (
    PT_OP_TYPE op
) 

function pt_lambda

PT_NODE * pt_lambda (
    PARSER_CONTEXT * parser_ptr,
    PT_NODE * expression,
    PT_NODE * name,
    PT_NODE * named_expression
) 

function pt_lambda_with_arg

PT_NODE * pt_lambda_with_arg (
    PARSER_CONTEXT * parser_ptr,
    PT_NODE * expression,
    PT_NODE * name,
    PT_NODE * named_expression,
    bool loc_check,
    int type,
    bool dont_replace
) 

function pt_left_part

PT_NODE * pt_left_part (
    const  PT_NODE * expr
) 

function pt_length_of_list

int pt_length_of_list (
    const  PT_NODE * list
) 

function pt_length_of_select_list

int pt_length_of_select_list (
    PT_NODE * list,
    int hidden_col
) 

function pt_limit_to_numbering_expr

PT_NODE * pt_limit_to_numbering_expr (
    PARSER_CONTEXT * parser,
    PT_NODE * limit,
    PT_OP_TYPE num_op,
    bool is_gby_num
) 

function pt_list_has_logical_nodes

bool pt_list_has_logical_nodes (
    PT_NODE * list
) 

function pt_make_cache_hit_result_descriptor

DB_QUERY_RESULT * pt_make_cache_hit_result_descriptor (
    void
) 

function pt_make_data_default_expr_node

PT_NODE * pt_make_data_default_expr_node (
    PARSER_CONTEXT * parser,
    PT_NODE * expr
) 

function pt_make_integer_value

PT_NODE * pt_make_integer_value (
    PARSER_CONTEXT * parser,
    const  int value_int
) 

function pt_make_prim_data_type

PT_NODE * pt_make_prim_data_type (
    PARSER_CONTEXT * parser,
    PT_TYPE_ENUM e
) 

function pt_make_prim_data_type_fortonum

PT_NODE * pt_make_prim_data_type_fortonum (
    PARSER_CONTEXT * parser,
    int prec,
    int scale
) 

function pt_make_query_describe_w_identifier

PT_NODE * pt_make_query_describe_w_identifier (
    PARSER_CONTEXT * parser,
    PT_NODE * original_cls_id,
    PT_NODE * att_id
) 

function pt_make_query_show_collation

PT_NODE * pt_make_query_show_collation (
    PARSER_CONTEXT * parser,
    int like_where_syntax,
    PT_NODE * like_or_where_expr
) 

function pt_make_query_show_columns

PT_NODE * pt_make_query_show_columns (
    PARSER_CONTEXT * parser,
    PT_NODE * original_cls_id,
    int like_where_syntax,
    PT_NODE * like_or_where_expr,
    int is_show_full
) 

function pt_make_query_show_create_table

PT_NODE * pt_make_query_show_create_table (
    PARSER_CONTEXT * parser,
    PT_NODE * table_name
) 

function pt_make_query_show_create_view

PT_NODE * pt_make_query_show_create_view (
    PARSER_CONTEXT * parser,
    PT_NODE * view_identifier
) 

function pt_make_query_show_exec_stats

PT_NODE * pt_make_query_show_exec_stats (
    PARSER_CONTEXT * parser
) 

function pt_make_query_show_exec_stats_all

PT_NODE * pt_make_query_show_exec_stats_all (
    PARSER_CONTEXT * parser
) 

function pt_make_query_show_grants

PT_NODE * pt_make_query_show_grants (
    PARSER_CONTEXT * parser,
    const  char * original_user_name
) 

function pt_make_query_show_grants_curr_usr

PT_NODE * pt_make_query_show_grants_curr_usr (
    PARSER_CONTEXT * parser
) 

function pt_make_query_show_index

PT_NODE * pt_make_query_show_index (
    PARSER_CONTEXT * parser,
    PT_NODE * original_cls_id
) 

function pt_make_query_show_table

PT_NODE * pt_make_query_show_table (
    PARSER_CONTEXT * parser,
    bool is_full_syntax,
    int like_where_syntax,
    PT_NODE * like_or_where_expr
) 

function pt_make_query_show_trace

PT_NODE * pt_make_query_show_trace (
    PARSER_CONTEXT * parser
) 

function pt_make_query_showstmt

PT_NODE * pt_make_query_showstmt (
    PARSER_CONTEXT * parser,
    unsigned  int type,
    PT_NODE * args,
    int like_where_syntax,
    PT_NODE * where_cond
) 

function pt_make_string_value

PT_NODE * pt_make_string_value (
    PARSER_CONTEXT * parser,
    const  char * value_string
) 

function pt_make_tuple_value_reference

PT_NODE * pt_make_tuple_value_reference (
    PARSER_CONTEXT * parser,
    PT_NODE * name,
    PT_NODE * select_list,
    CURSOR_ID * cursor_p
) 

function pt_mark_spec_list_for_delete

void pt_mark_spec_list_for_delete (
    PARSER_CONTEXT * parser,
    PT_NODE * statement
) 

function pt_mark_spec_list_for_update

void pt_mark_spec_list_for_update (
    PARSER_CONTEXT * parser,
    PT_NODE * statement
) 

function pt_misc_to_qp_misc_operand

MISC_OPERAND pt_misc_to_qp_misc_operand (
    PT_MISC_TYPE misc_specifier
) 

function pt_move_node

void pt_move_node (
    REFPTR ( PT_NODE , destp ),
    REFPTR ( PT_NODE , srcp )
) 

function pt_name

PT_NODE * pt_name (
    PARSER_CONTEXT * parser_ptr,
    const  char * name
) 

function pt_name_equal

bool pt_name_equal (
    PARSER_CONTEXT * parser,
    const  PT_NODE * name1,
    const  PT_NODE * name2
) 

function pt_name_occurs_in_from_list

int pt_name_occurs_in_from_list (
    PARSER_CONTEXT * parser,
    const  char * name,
    PT_NODE * from_list
) 

function pt_negate_op

PT_OP_TYPE pt_negate_op (
    PT_OP_TYPE op
) 

function pt_new_query_result_descriptor

DB_QUERY_RESULT * pt_new_query_result_descriptor (
    PARSER_CONTEXT * parser,
    PT_NODE * query
) 

function pt_no_attr_and_meta_attr_updates

void pt_no_attr_and_meta_attr_updates (
    PARSER_CONTEXT * parser,
    PT_NODE * stmt
) 

function pt_no_double_insert_assignments

void pt_no_double_insert_assignments (
    PARSER_CONTEXT * parser,
    PT_NODE * stmt
) 

function pt_no_double_updates

void pt_no_double_updates (
    PARSER_CONTEXT * parser,
    PT_NODE * stmt
) 

function pt_node_data_type_to_db_domain

DB_DOMAIN * pt_node_data_type_to_db_domain (
    PARSER_CONTEXT * parser,
    PT_NODE * dt,
    PT_TYPE_ENUM type
) 

function pt_node_etc

void * pt_node_etc (
    const  PT_NODE * col
) 

function pt_node_list

PT_NODE * pt_node_list (
    PARSER_CONTEXT * parser_ptr,
    PT_MISC_TYPE list_type,
    PT_NODE * list
) 

function pt_node_list_to_array

int pt_node_list_to_array (
    PARSER_CONTEXT * parser,
    PT_NODE * arg_list,
    PT_NODE * arg_array,
    const  int array_size,
    int * num_args
) 

function pt_node_next

PT_NODE * pt_node_next (
    const  PT_NODE * node
) 

function pt_node_to_cmd_type

CUBRID_STMT_TYPE pt_node_to_cmd_type (
    PT_NODE * node
) 

function pt_node_to_db_domain

DB_DOMAIN * pt_node_to_db_domain (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    const  char * class_name
) 

function pt_node_to_db_domain_name

const  char * pt_node_to_db_domain_name (
    PT_NODE * node
) 

function pt_node_to_db_type

DB_TYPE pt_node_to_db_type (
    PT_NODE * node
) 

function pt_null_etc

void pt_null_etc (
    PT_NODE * node
) 

function pt_null_where

int pt_null_where (
    PARSER_CONTEXT * parser,
    PT_NODE * node
) 

function pt_object_part

void * pt_object_part (
    const  PT_NODE * name_node
) 

function pt_op_type_from_default_expr

PT_OP_TYPE pt_op_type_from_default_expr (
    DB_DEFAULT_EXPR_TYPE expr_type
) 

function pt_op_type_from_default_expr_type

PT_OP_TYPE pt_op_type_from_default_expr_type (
    DB_DEFAULT_EXPR_TYPE expr_type
) 

function pt_operator_part

int pt_operator_part (
    const  PT_NODE * expr
) 

function pt_order_by_part

PT_NODE * pt_order_by_part (
    const  PT_NODE * node
) 

function pt_partition_name

const  char * pt_partition_name (
    PARSER_CONTEXT * parser,
    const  char * class_name,
    const  char * partition
) 

function pt_point

PT_NODE * pt_point (
    PARSER_CONTEXT * parser,
    const  PT_NODE * tree
) 

function pt_point_l

PT_NODE * pt_point_l (
    PARSER_CONTEXT * parser,
    const  PT_NODE * tree
) 

function pt_point_ref

PT_NODE * pt_point_ref (
    PARSER_CONTEXT * parser,
    const  PT_NODE * node
) 

function pt_pointer_stack_pop

PT_NODE * pt_pointer_stack_pop (
    PARSER_CONTEXT * parser,
    PT_NODE * stack,
    PT_NODE ** node
) 

function pt_pointer_stack_push

PT_NODE * pt_pointer_stack_push (
    PARSER_CONTEXT * parser,
    PT_NODE * stack,
    PT_NODE * node
) 

function pt_pop

PT_NODE * pt_pop (
    PARSER_CONTEXT * parser
) 

function pt_prepare_count_optim_classes

int pt_prepare_count_optim_classes (
    PARSER_CONTEXT * parser,
    PT_NODE * stmt
) 

function pt_preset_hostvar

void pt_preset_hostvar (
    PARSER_CONTEXT * parser,
    PT_NODE * hv_node
) 

function pt_print_alias

char * pt_print_alias (
    PARSER_CONTEXT * parser,
    const  PT_NODE * node
) 

function pt_print_and_list

PARSER_VARCHAR * pt_print_and_list (
    PARSER_CONTEXT * parser,
    const  PT_NODE * node
) 

function pt_print_bytes

PARSER_VARCHAR * pt_print_bytes (
    PARSER_CONTEXT * parser,
    const  PT_NODE * node
) 

function pt_print_bytes_alias

PARSER_VARCHAR * pt_print_bytes_alias (
    PARSER_CONTEXT * parser,
    const  PT_NODE * node
) 

function pt_print_bytes_l

PARSER_VARCHAR * pt_print_bytes_l (
    PARSER_CONTEXT * parser,
    const  PT_NODE * node
) 

function pt_print_bytes_spec_list

PARSER_VARCHAR * pt_print_bytes_spec_list (
    PARSER_CONTEXT * parser,
    const  PT_NODE * node
) 

function pt_print_class_name

PARSER_VARCHAR * pt_print_class_name (
    PARSER_CONTEXT * parser,
    PT_NODE * p
) 

function pt_print_db_value

PARSER_VARCHAR * pt_print_db_value (
    PARSER_CONTEXT * parser,
    const  struct  db_value * val
) 

function pt_print_node_value

PARSER_VARCHAR * pt_print_node_value (
    PARSER_CONTEXT * parser,
    const  PT_NODE * val
) 

function pt_print_query_spec_no_list

char * pt_print_query_spec_no_list (
    PARSER_CONTEXT * parser,
    const  PT_NODE * node
) 

function pt_push

int pt_push (
    PARSER_CONTEXT * parser,
    PT_NODE * q
) 

function pt_put_type_enum

void pt_put_type_enum (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    PT_NODE * data_type
) 

function pt_qualifier_part

const  char * pt_qualifier_part (
    const  PT_NODE * tbl
) 

function pt_quick_resolve_names

int pt_quick_resolve_names (
    PARSER_CONTEXT * parser,
    PT_NODE ** spec,
    PT_NODE ** node,
    SEMANTIC_CHK_INFO * sc_info
) 

function pt_recompile_for_like_optimizations

bool pt_recompile_for_like_optimizations (
    PARSER_CONTEXT * parser,
    PT_NODE * statement,
    int xasl_flag
) 

function pt_recompile_for_limit_optimizations

bool pt_recompile_for_limit_optimizations (
    PARSER_CONTEXT * parser,
    PT_NODE * statement,
    int xasl_flag
) 

function pt_record_error

void pt_record_error (
    PARSER_CONTEXT * parser,
    int stmt_no,
    int line_no,
    int col_no,
    const  char * msg,
    const  char * context
) 

function pt_record_warning

void pt_record_warning (
    PARSER_CONTEXT * parser,
    int stmt_no,
    int line_no,
    int col_no,
    const  char * msg
) 

function pt_register_orphan

void pt_register_orphan (
    PARSER_CONTEXT * parser,
    const  PT_NODE * orphan
) 

function pt_register_orphan_db_value

void pt_register_orphan_db_value (
    PARSER_CONTEXT * parser,
    const  DB_VALUE * orphan
) 

function pt_remove_from_list

PT_NODE * pt_remove_from_list (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    PT_NODE * list
) 

function pt_report_to_ersys

void pt_report_to_ersys (
    const  PARSER_CONTEXT * parser,
    const  PT_ERROR_TYPE error_type
) 

function pt_report_to_ersys_with_statement

void pt_report_to_ersys_with_statement (
    PARSER_CONTEXT * parser,
    const  PT_ERROR_TYPE error_type,
    PT_NODE * statement
) 

function pt_reset_error

void pt_reset_error (
    PARSER_CONTEXT * parser
) 

function pt_resolve_cte_specs

PT_NODE * pt_resolve_cte_specs (
    PARSER_CONTEXT * parser,
    PT_NODE * stmt,
    void * arg,
    int * continue_walk
) 

function pt_resolve_default_value

int pt_resolve_default_value (
    PARSER_CONTEXT * parser,
    PT_NODE * name
) 

function pt_resolve_names

PT_NODE * pt_resolve_names (
    PARSER_CONTEXT * parser,
    PT_NODE * statement,
    SEMANTIC_CHK_INFO * sc_info
) 

function pt_resolve_object

void pt_resolve_object (
    PARSER_CONTEXT * parser,
    PT_NODE * node
) 

function pt_resolve_serial

DB_OBJECT * pt_resolve_serial (
    PARSER_CONTEXT * parser,
    PT_NODE * node
) 

function pt_resolve_server_names

int pt_resolve_server_names (
    PARSER_CONTEXT * parser,
    PT_NODE * spec
) 

function pt_resolve_star

PT_NODE * pt_resolve_star (
    PARSER_CONTEXT * parser,
    PT_NODE * from,
    PT_NODE * attr
) 

function pt_resolve_using_index

PT_NODE * pt_resolve_using_index (
    PARSER_CONTEXT * parser,
    PT_NODE * index,
    PT_NODE * from,
    bool * is_ignore
) 

function pt_resolved

int pt_resolved (
    const  PT_NODE * expr
) 

void pt_restore_assignment_links (
    PT_NODE * assigns,
    PT_NODE ** links,
    int count
) 

void pt_rewrite_for_dblink (
    PARSER_CONTEXT * parser,
    PT_NODE * stmt
) 

function pt_rewrite_set_eq_set

PT_NODE * pt_rewrite_set_eq_set (
    PARSER_CONTEXT * parser,
    PT_NODE * exp
) 

function pt_rewrite_to_auto_param

PT_NODE * pt_rewrite_to_auto_param (
    PARSER_CONTEXT * parser,
    PT_NODE * value
) 

function pt_right_part

PT_NODE * pt_right_part (
    const  PT_NODE * expr
) 

function pt_select_list_part

PT_NODE * pt_select_list_part (
    const  PT_NODE * stmt
) 

function pt_select_list_to_one_col

void pt_select_list_to_one_col (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    bool do_one
) 

function pt_semantic_type

PT_NODE * pt_semantic_type (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    SEMANTIC_CHK_INFO * sc_info
) 

function pt_seq_value_to_db

DB_VALUE * pt_seq_value_to_db (
    PARSER_CONTEXT * parser,
    PT_NODE * values,
    DB_VALUE * db_value,
    PT_NODE ** el_types
) 

function pt_set_correlation_level

void pt_set_correlation_level (
    PARSER_CONTEXT * parser,
    PT_NODE * subquery,
    int level
) 

function pt_set_expected_domain

void pt_set_expected_domain (
    PT_NODE * node,
    TP_DOMAIN * domain
) 

function pt_set_fill_default_in_path_expression

void pt_set_fill_default_in_path_expression (
    PT_NODE * node
) 

function pt_set_host_variables

void pt_set_host_variables (
    PARSER_CONTEXT * parser,
    int count,
    DB_VALUE * values
) 

function pt_set_is_view_spec

PT_NODE * pt_set_is_view_spec (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * dummy,
    int * continue_walk
) 

function pt_set_node_etc

void pt_set_node_etc (
    PT_NODE * node,
    const  void * etc
) 

function pt_set_pred_order

void pt_set_pred_order (
    PARSER_CONTEXT * parser,
    PT_NODE * pre_pred,
    int pre_order
) 

function pt_set_update_object

void pt_set_update_object (
    PARSER_CONTEXT * parser,
    PT_NODE * node
) 

function pt_set_user_specified_name

PT_NODE * pt_set_user_specified_name (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_set_value_to_db

DB_VALUE * pt_set_value_to_db (
    PARSER_CONTEXT * parser,
    PT_NODE ** values,
    DB_VALUE * db_value,
    PT_NODE ** el_types
) 

function pt_short_print

char * pt_short_print (
    PARSER_CONTEXT * parser,
    const  PT_NODE * p
) 

function pt_short_print_l

char * pt_short_print_l (
    PARSER_CONTEXT * parser,
    const  PT_NODE * p
) 

function pt_show_alter

const  char * pt_show_alter (
    PT_ALTER_CODE c
) 

function pt_show_binopcode

const  char * pt_show_binopcode (
    PT_OP_TYPE n
) 

function pt_show_misc_type

const  char * pt_show_misc_type (
    PT_MISC_TYPE p
) 

function pt_show_node_type

const  char * pt_show_node_type (
    PT_NODE * p
) 

function pt_show_partition_type

const  char * pt_show_partition_type (
    PT_PARTITION_TYPE t
) 

function pt_show_priv

const  char * pt_show_priv (
    PT_PRIV_TYPE t
) 

function pt_show_type_enum

const  char * pt_show_type_enum (
    PT_TYPE_ENUM t
) 

function pt_sm_attribute_default_value_to_node

PT_NODE * pt_sm_attribute_default_value_to_node (
    PARSER_CONTEXT * parser,
    const  SM_ATTRIBUTE * default_value
) 

function pt_sort_in_desc_order

PT_NODE * pt_sort_in_desc_order (
    PT_NODE * vlist
) 

function pt_sort_spec_cover

bool pt_sort_spec_cover (
    PT_NODE * cur_list,
    PT_NODE * new_list
) 

function pt_sort_spec_cover_for_min_max

bool pt_sort_spec_cover_for_min_max (
    PARSER_CONTEXT * parser,
    PT_NODE * tree,
    PT_NODE * cur_list,
    PT_NODE * new_list
) 

function pt_sort_spec_cover_groupby

bool pt_sort_spec_cover_groupby (
    PARSER_CONTEXT * parser,
    PT_NODE * sort_list,
    PT_NODE * group_list,
    PT_NODE * tree
) 

function pt_sort_spec_list_to_name_node_list

PT_NODE * pt_sort_spec_list_to_name_node_list (
    PARSER_CONTEXT * parser,
    PT_NODE * sort_spec_list
) 

function pt_spec_to_oid_attr

PT_NODE * pt_spec_to_oid_attr (
    PARSER_CONTEXT * parser,
    PT_NODE * spec,
    VIEW_HANDLING how
) 

function pt_split_delete_stmt

int pt_split_delete_stmt (
    PARSER_CONTEXT * parser,
    PT_NODE * delete_stmt
) 

function pt_split_join_preds

void pt_split_join_preds (
    PARSER_CONTEXT * parser,
    PT_NODE * predicates,
    PT_NODE ** join_part,
    PT_NODE ** after_cb_filter
) 

function pt_statement_have_methods

int pt_statement_have_methods (
    PARSER_CONTEXT * parser,
    PT_NODE * statement
) 

function pt_statement_line_number

int pt_statement_line_number (
    const  PT_NODE * stmt
) 

function pt_str_compare

int pt_str_compare (
    const  char * p,
    const  char * q,
    CASE_SENSITIVENESS case_flag
) 

function pt_string_part

const  char * pt_string_part (
    const  PT_NODE * tbl
) 

function pt_string_to_data_type

void pt_string_to_data_type (
    PARSER_CONTEXT * parser,
    const  char * s,
    PT_NODE * node
) 

function pt_string_to_db_domain

DB_DOMAIN * pt_string_to_db_domain (
    const  char * s,
    const  char * class_name
) 

function pt_table_option

PT_NODE * pt_table_option (
    PARSER_CONTEXT * parser,
    const  PT_TABLE_OPTION_TYPE option,
    PT_NODE * val
) 

function pt_to_null_ordering

SORT_NULLS pt_to_null_ordering (
    PT_NODE * sort_spec
) 

function pt_to_regu_resolve_domain

void pt_to_regu_resolve_domain (
    int * p_precision,
    int * p_scale,
    const  PT_NODE * node
) 

function pt_top

PT_NODE * pt_top (
    PARSER_CONTEXT * parser
) 

function pt_tuple_value

PT_NODE * pt_tuple_value (
    PARSER_CONTEXT * parser,
    PT_NODE * name,
    CURSOR_ID * cursor_p,
    int index
) 

function pt_type_enum_to_db

DB_TYPE pt_type_enum_to_db (
    const  PT_TYPE_ENUM dt
) 

function pt_type_enum_to_db_domain

DB_DOMAIN * pt_type_enum_to_db_domain (
    const  PT_TYPE_ENUM t
) 

function pt_type_enum_to_db_domain_name

const  char * pt_type_enum_to_db_domain_name (
    const  PT_TYPE_ENUM t
) 

function pt_type_generic_func

int pt_type_generic_func (
    PARSER_CONTEXT * parser,
    PT_NODE * node
) 

function pt_union

PT_NODE * pt_union (
    PARSER_CONTEXT * parser_ptr,
    PT_NODE * expression1,
    PT_NODE * expression2
) 

function pt_user_specified_name_compare

int pt_user_specified_name_compare (
    const  char * p,
    const  char * q
) 

function pt_validate_query_spec

int pt_validate_query_spec (
    PARSER_CONTEXT * parser,
    PT_NODE * s,
    struct  db_object * c
) 

function pt_value_to_db

DB_VALUE * pt_value_to_db (
    PARSER_CONTEXT * parser,
    PT_NODE * value
) 

function pt_values_part

PT_NODE * pt_values_part (
    const  PT_NODE * insert_statement
) 

function pt_void_internal_error

void pt_void_internal_error (
    PARSER_CONTEXT * parser,
    const  char * file,
    int line,
    const  char * what
) 

function pt_where_part

PT_NODE * pt_where_part (
    const  PT_NODE * stmt
) 

function pt_where_type

PT_NODE * pt_where_type (
    PARSER_CONTEXT * parser,
    PT_NODE * where
) 

function pt_where_type_keep_true

PT_NODE * pt_where_type_keep_true (
    PARSER_CONTEXT * parser,
    PT_NODE * where
) 

function pt_wrap_collection_with_cast_op

PT_NODE * pt_wrap_collection_with_cast_op (
    PARSER_CONTEXT * parser,
    PT_NODE * arg,
    PT_TYPE_ENUM set_type,
    PT_NODE * set_data,
    bool for_collation
) 

function pt_wrap_select_list_with_cast_op

int pt_wrap_select_list_with_cast_op (
    PARSER_CONTEXT * parser,
    PT_NODE * query,
    PT_TYPE_ENUM new_type,
    int p,
    int s,
    PT_NODE * data_type,
    bool force_wrap
) 

function pt_wrap_with_cast_op

PT_NODE * pt_wrap_with_cast_op (
    PARSER_CONTEXT * parser,
    PT_NODE * arg,
    PT_TYPE_ENUM new_type,
    int p,
    int s,
    PT_NODE * desired_dt
) 

function qo_auto_parameterize

void qo_auto_parameterize (
    PARSER_CONTEXT * parser,
    PT_NODE * where
) 

Macro Definition Documentation

define mq_free_virtual_query_cache_and_init

#define mq_free_virtual_query_cache_and_init (
    virtual_query_cache
) `/* multi line expression */`

define pt_has_error

#define pt_has_error (
    parser
) `( ( parser ) && (( parser )->error_msgs || ( parser )->flag.has_internal_error))`


The documentation for this class was generated from the following file cubrid/src/parser/parser.h