CUBRID Engine
latest
|
#include "config.h"
#include <stddef.h>
#include <assert.h>
#include <setjmp.h>
#include <time.h>
#include <sys/time.h>
#include "porting.h"
#include "dbi.h"
#include "parser.h"
#include "jansson.h"
#include "memory_alloc.h"
#include "dbtype.h"
Go to the source code of this file.
Classes | |
struct | parser_node_block |
struct | parser_node_free_list |
struct | parser_string_block |
union | parser_string_block::aligned |
Macros | |
#define | STRINGS_PER_BLOCK (8192-(4*sizeof(long)+sizeof(char *)+40)) |
#define | HASH_NUMBER 128 |
#define | NODES_PER_BLOCK 256 |
Typedefs | |
typedef struct parser_node_block | PARSER_NODE_BLOCK |
typedef struct parser_node_free_list | PARSER_NODE_FREE_LIST |
typedef struct parser_string_block | PARSER_STRING_BLOCK |
Variables | |
PT_RESERVED_NAME | pt_Reserved_name_table [] |
static PARSER_NODE_BLOCK * | parser_Node_blocks [HASH_NUMBER] |
static PARSER_NODE_FREE_LIST * | parser_Node_free_lists [HASH_NUMBER] |
static PARSER_STRING_BLOCK * | parser_String_blocks [HASH_NUMBER] |
static int | parser_id = 1 |
#define HASH_NUMBER 128 |
Definition at line 57 of file parse_tree.c.
Referenced by parser_allocate_string_buffer(), parser_create_node(), parser_create_node_block(), parser_create_string_block(), parser_free_node(), pt_find_string_block(), pt_free_a_string_block(), pt_free_node_blocks(), pt_free_string_blocks(), pt_register_parser(), and pt_unregister_parser().
#define NODES_PER_BLOCK 256 |
Definition at line 58 of file parse_tree.c.
Referenced by parser_create_node_block().
#define STRINGS_PER_BLOCK (8192-(4*sizeof(long)+sizeof(char *)+40)) |
Definition at line 56 of file parse_tree.c.
Referenced by parser_create_string_block().
typedef struct parser_node_block PARSER_NODE_BLOCK |
Definition at line 60 of file parse_tree.c.
typedef struct parser_node_free_list PARSER_NODE_FREE_LIST |
Definition at line 68 of file parse_tree.c.
typedef struct parser_string_block PARSER_STRING_BLOCK |
Definition at line 76 of file parse_tree.c.
void* parser_alloc | ( | const PARSER_CONTEXT * | parser, |
const int | length | ||
) |
Definition at line 951 of file parse_tree.c.
References parser_allocate_string_buffer().
Referenced by parser_block_allocator::alloc(), db_parse_one_statement(), mq_conditionally_add_objects(), mq_get_expression(), mq_virtual_queries(), preserve_info(), pt_json_str_codeset_normalization(), pt_normalize_path(), pt_plan_query(), pt_push(), and sm_save_nested_view_versions().
void* parser_allocate_string_buffer | ( | const PARSER_CONTEXT * | parser, |
const int | length, | ||
const int | align | ||
) |
Definition at line 458 of file parse_tree.c.
References parser_string_block::block_end, CAST_BUFLEN, parser_string_block::aligned::chars, HASH_NUMBER, parser_context::id, parser_string_block::last_string_end, parser_string_block::last_string_start, parser_string_block::next, NULL, parser_create_string_block(), parser_string_block::parser_id, pthread_mutex_lock, pthread_mutex_unlock, rv, and parser_string_block::u.
Referenced by parser_alloc(), pt_append_bytes(), pt_append_bytes_for(), pt_append_string(), pt_append_string_for(), and pt_record_error().
PT_NODE* parser_create_node | ( | const PARSER_CONTEXT * | parser | ) |
Definition at line 271 of file parse_tree.c.
References HASH_NUMBER, parser_context::id, parser_node_free_list::next, parser_node::next, parser_node_free_list::node, NULL, parser_create_node_block(), parser_node_free_list::parser_id, parser_node::parser_id, pthread_mutex_lock, pthread_mutex_unlock, and rv.
Referenced by parser_new_node().
|
static |
Definition at line 214 of file parse_tree.c.
References ARG_FILE_LINE, ER_ERROR_SEVERITY, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), HASH_NUMBER, parser_context::id, parser_context::jmp_env_active, parser_node_block::next, parser_node::next, parser_node_block::nodes, NODES_PER_BLOCK, NULL, parser_node_block::parser_id, pthread_mutex_lock, pthread_mutex_unlock, and rv.
Referenced by parser_create_node().
PARSER_CONTEXT* parser_create_parser | ( | void | ) |
Definition at line 1169 of file parse_tree.c.
References ARG_FILE_LINE, db_make_null(), ER_ERROR_SEVERITY, ER_FAILED, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), free_and_init, NULL, parser, parser_node_block::parser_id, parser_init_func_vectors(), pt_register_parser(), pthread_mutex_lock, pthread_mutex_unlock, and rv.
Referenced by chksum_start(), compile_trigger_activity(), db_open_local(), db_validate_query_spec(), do_recreate_filter_index_constr(), do_recreate_func_index_constr(), emit_query_specs(), emit_query_specs_has_using_index(), mq_fetch_one_real_class_get_cache(), mq_get_attribute(), mq_get_expression(), mq_is_updatable_attribute(), mq_is_updatable_local(), mq_update_attribute(), mq_virtual_queries(), pt_check_alter_partition(), pt_check_cyclic_reference_in_view_spec(), pt_get_proxy_spec_name(), pt_string_to_db_domain(), stmt_exec_batch_query_internal(), and stmt_reset_session_and_parse().
|
static |
Definition at line 374 of file parse_tree.c.
References ARG_FILE_LINE, parser_string_block::block_end, CAST_BUFLEN, parser_string_block::aligned::chars, ER_ERROR_SEVERITY, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), HASH_NUMBER, parser_context::id, parser_context::jmp_env_active, parser_string_block::last_string_end, parser_string_block::last_string_start, parser_string_block::next, NULL, parser_string_block::parser_id, pthread_mutex_lock, pthread_mutex_unlock, rv, STRINGS_PER_BLOCK, and parser_string_block::u.
Referenced by parser_allocate_string_buffer().
void parser_free_lcks_classes | ( | PARSER_CONTEXT * | parser | ) |
Definition at line 1310 of file parse_tree.c.
References free_and_init, i, parser_context::lcks_classes, and parser_context::num_lcks_classes.
Referenced by parser_free_parser(), and pt_class_pre_fetch().
void parser_free_node | ( | const PARSER_CONTEXT * | parser, |
PT_NODE * | node | ||
) |
Definition at line 869 of file parse_tree.c.
References assert_release, HASH_NUMBER, parser_context::id, parser_node_free_list::next, parser_node::next, parser_node_free_list::node, parser_node::node_type, NULL, parser_free_node_resources(), parser_node_free_list::parser_id, parser_node::parser_id, PT_LAST_NODE_NUMBER, PT_SPEC, pthread_mutex_lock, pthread_mutex_unlock, and rv.
Referenced by check_change_attribute(), check_default_on_update_clause(), compile_partition_expression(), do_alter_one_clause_with_template(), fill_in_insert_default_function_arguments(), free_node_in_tree_post(), get_att_default_from_def(), mq_bump_order_dep_corr_lvl_post(), mq_rewrite_query_as_derived(), pt_add_type_to_set(), pt_append_omitted_on_update_expr_assignments(), pt_bind_helper(), pt_bind_names(), pt_bind_set_type(), pt_check_drop(), pt_check_order_by(), pt_cleanup_hint(), pt_coerce_node_collation(), pt_coerce_value_internal(), pt_dbval_to_value(), pt_eval_expr_type(), pt_filter_pseudo_specs(), pt_function_name_is_spec_attr(), pt_lambda_node(), pt_name_list_diff(), pt_name_list_union(), pt_resolve_group_having_alias_pt_name(), pt_resolve_hint_args(), pt_semantic_check_local(), pt_substitute_analytic_references(), pt_to_delete_xasl(), pt_to_pred_expr_local_with_arg(), pt_to_regu_variable(), pt_to_upd_del_query(), pt_update_host_var_data_type(), qo_get_limit_from_eval_term(), qo_make_new_derived_tblspec(), qo_rewrite_index_hints(), and qo_top_plan_new().
void parser_free_node_resources | ( | PT_NODE * | node | ) |
Definition at line 835 of file parse_tree.c.
References pt_value_info::db_value, db_value_clear(), pt_value_info::db_value_is_in_workspace, parser_node::info, pt_statement_info::insert_value, pt_insert_value_info::is_evaluated, pt_statement_info::json_table_column_info, json_table_column_behavior::m_default_value, parser_node::node_type, NULL, pt_json_table_column_info::on_empty, pt_json_table_column_info::on_error, PT_INSERT_VALUE, PT_JSON_TABLE_COLUMN, PT_VALUE, pt_insert_value_info::value, and pt_statement_info::value.
Referenced by parser_clear_node(), and parser_free_node().
void parser_free_parser | ( | PARSER_CONTEXT * | parser | ) |
Definition at line 1240 of file parse_tree.c.
References assert, parser_context::auto_param_count, db_value_clear(), parser_context::error_buffer, pt_plan_trace_info::format, free_and_init, parser_context::host_var_expected_domains, parser_context::host_variables, i, pt_plan_trace_info::json_plan, NULL, parser_context::num_plan_trace, parser_free_lcks_classes(), parser_context::plan_trace, pt_free_node_blocks(), pt_free_string_blocks(), pt_unregister_parser(), parser_context::query_trace, QUERY_TRACE_JSON, QUERY_TRACE_TEXT, pt_plan_trace_info::text_plan, and pt_plan_trace_info::trace.
Referenced by chksum_start(), compile_trigger_activity(), db_close_session_local(), db_validate_query_spec(), do_recreate_filter_index_constr(), do_recreate_func_index_constr(), emit_query_specs(), emit_query_specs_has_using_index(), eval_action(), eval_condition(), free_activity(), mq_fetch_one_real_class_get_cache(), mq_free_virtual_query_cache(), mq_get_attribute(), mq_get_expression(), mq_is_updatable_attribute(), mq_is_updatable_local(), mq_update_attribute(), pt_check_alter_partition(), pt_check_cyclic_reference_in_view_spec(), pt_get_proxy_spec_name(), and pt_string_to_db_domain().
PARSER_VARCHAR* pt_append_bytes | ( | const PARSER_CONTEXT * | parser, |
PARSER_VARCHAR * | old_string, | ||
const char * | new_tail, | ||
const int | new_tail_length | ||
) |
Definition at line 1014 of file parse_tree.c.
References parser_varchar::bytes, parser_varchar::length, NULL, parser, parser_allocate_string_buffer(), and pt_append_bytes_for().
Referenced by chksum_get_quote_escaped_lower_bound(), pt_append_nulstring(), pt_append_quoted_string(), pt_append_varchar(), pt_bind_helper(), pt_check_enum_data_type(), pt_dbval_to_value(), pt_domain_to_data_type(), pt_make_string_value(), pt_print_alter_index(), pt_print_bytes_spec_list(), pt_print_create_entity(), pt_print_create_index(), pt_print_drop_index(), pt_print_index_columns(), pt_print_session_variables(), pt_print_table_option(), pt_print_tuple_value(), qo_find_like_rewrite_bound(), and qo_rewrite_one_like_term().
|
static |
Definition at line 677 of file parse_tree.c.
References parser_string_block::block_end, parser_varchar::bytes, parser_string_block::last_string_end, parser_string_block::last_string_start, parser_varchar::length, parser_context::max_print_len, NULL, parser_allocate_string_buffer(), pt_find_string_block(), and pt_free_a_string_block().
Referenced by pt_append_bytes().
PARSER_VARCHAR* pt_append_nulstring | ( | const PARSER_CONTEXT * | parser, |
PARSER_VARCHAR * | bstring, | ||
const char * | nulstring | ||
) |
Definition at line 1072 of file parse_tree.c.
References NULL, pt_append_bytes(), and strlen.
Referenced by chksum_get_quote_escaped_lower_bound(), chksum_print_attribute_list(), chksum_print_checksum_query(), chksum_print_lower_bound_string(), chksum_print_pk_list(), chksum_print_select_last_chunk(), chksum_print_select_master_checksum(), chksum_print_update_master_checksum(), chksum_set_initial_chunk_id_and_lower_bound(), parser_print_tree(), pt_append_name(), pt_append_quoted_string(), pt_append_string_prefix(), pt_dbval_to_value(), pt_print_alter(), pt_print_alter_index(), pt_print_alter_one_clause(), pt_print_alter_serial(), pt_print_alter_stored_procedure(), pt_print_alter_trigger(), pt_print_alter_user(), pt_print_and_list(), pt_print_attach(), pt_print_attr_def(), pt_print_attr_ordering(), pt_print_auth_cmd(), pt_print_auto_increment(), pt_print_bytes_l(), pt_print_col_def_constraint(), pt_print_commit_work(), pt_print_constraint(), pt_print_create_entity(), pt_print_create_index(), pt_print_create_serial(), pt_print_create_stored_procedure(), pt_print_create_trigger(), pt_print_create_user(), pt_print_cte(), pt_print_data_default(), pt_print_datatype(), pt_print_db_value(), pt_print_delete(), pt_print_difference(), pt_print_do(), pt_print_dot(), pt_print_drop(), pt_print_drop_index(), pt_print_drop_serial(), pt_print_drop_session_variables(), pt_print_drop_stored_procedure(), pt_print_drop_trigger(), pt_print_drop_user(), pt_print_drop_variable(), pt_print_error_msg(), pt_print_evaluate(), pt_print_event_spec(), pt_print_event_target(), pt_print_execute_trigger(), pt_print_expr(), pt_print_function(), pt_print_get_opt_lvl(), pt_print_get_stats(), pt_print_get_trigger(), pt_print_get_xaction(), pt_print_grant(), pt_print_host_var(), pt_print_insert(), pt_print_intersection(), pt_print_isolation_lvl(), pt_print_json_table(), pt_print_json_table_column_error_or_empty_behavior(), pt_print_json_table_column_info(), pt_print_json_table_columns(), pt_print_json_table_node(), pt_print_merge(), pt_print_method_call(), pt_print_method_def(), pt_print_name(), pt_print_named_arg(), pt_print_partition(), pt_print_parts(), pt_print_prepare_to_commit(), pt_print_query_trace(), pt_print_remove_trigger(), pt_print_rename(), pt_print_rename_trigger(), pt_print_resolution(), pt_print_revoke(), pt_print_rollback_work(), pt_print_savepoint(), pt_print_scope(), pt_print_select(), pt_print_session_variables(), pt_print_set_names(), pt_print_set_opt_lvl(), pt_print_set_session_variables(), pt_print_set_sys_params(), pt_print_set_timezone(), pt_print_set_trigger(), pt_print_set_xaction(), pt_print_showstmt(), pt_print_sort_spec(), pt_print_sp_parameter(), pt_print_spec(), pt_print_table_option(), pt_print_timeout(), pt_print_trigger_action(), pt_print_truncate(), pt_print_union_stmt(), pt_print_update(), pt_print_update_stats(), pt_print_vacuum(), pt_print_value(), pt_print_with_clause(), and pt_to_regu_variable().
char* pt_append_string | ( | const PARSER_CONTEXT * | parser, |
const char * | old_string, | ||
const char * | new_tail | ||
) |
Definition at line 980 of file parse_tree.c.
References CONST_CAST, NULL, parser_allocate_string_buffer(), pt_append_string_for(), and strlen.
Referenced by copy_node_in_tree_pre(), mq_class_lambda(), mq_fetch_subqueries(), mq_generate_name(), mq_get_expression(), pt_add_name_col_to_sel_list(), pt_add_string_col_to_sel_list(), pt_check_alter(), pt_check_drop(), pt_check_union_type_compatibility_of_values_query(), pt_chop_trailing_dots(), pt_compile_trigger_stmt(), pt_create_param_for_value(), pt_create_pt_name(), pt_expand_external_path(), pt_fillin_type_size(), pt_fold_const_expr(), pt_get_attributes(), pt_get_node_title(), pt_get_select_from_name(), pt_get_select_list(), pt_get_spec_name(), pt_get_unique_exposed_name(), pt_make_collation_expr_node(), pt_make_collection_type_subquery_node(), pt_make_field_type_expr_node(), pt_make_if_with_expressions(), pt_make_query_show_columns(), pt_make_query_show_grants(), pt_make_query_show_index(), pt_make_query_show_trace(), pt_makename(), pt_mark_pt_name(), pt_name(), pt_partition_name(), pt_record_error(), pt_record_warning(), pt_resolve_star(), pt_resolve_vclass_args(), pt_rewrite_derived_for_upd_del(), pt_select_list_to_one_col(), pt_set_update_object(), and qo_insert_segment().
|
static |
Definition at line 591 of file parse_tree.c.
References parser_string_block::block_end, parser_string_block::last_string_end, parser_string_block::last_string_start, NULL, parser_allocate_string_buffer(), pt_find_string_block(), pt_free_a_string_block(), and strlen.
Referenced by pt_append_string().
PARSER_VARCHAR* pt_append_varchar | ( | const PARSER_CONTEXT * | parser, |
PARSER_VARCHAR * | old_string, | ||
const PARSER_VARCHAR * | new_tail | ||
) |
Definition at line 1052 of file parse_tree.c.
References parser_varchar::bytes, parser_varchar::length, NULL, and pt_append_bytes().
Referenced by chksum_print_checksum_query(), chksum_print_select_last_chunk(), pt_print_alter(), pt_print_alter_index(), pt_print_alter_one_clause(), pt_print_alter_serial(), pt_print_alter_stored_procedure(), pt_print_alter_trigger(), pt_print_alter_user(), pt_print_and_list(), pt_print_attr_def(), pt_print_attr_ordering(), pt_print_auth_cmd(), pt_print_auto_increment(), pt_print_bytes_spec_list(), pt_print_col_def_constraint(), pt_print_constraint(), pt_print_create_entity(), pt_print_create_index(), pt_print_create_serial(), pt_print_create_stored_procedure(), pt_print_create_trigger(), pt_print_create_user(), pt_print_cte(), pt_print_data_default(), pt_print_datatype(), pt_print_delete(), pt_print_difference(), pt_print_do(), pt_print_dot(), pt_print_drop(), pt_print_drop_index(), pt_print_drop_serial(), pt_print_drop_session_variables(), pt_print_drop_stored_procedure(), pt_print_drop_trigger(), pt_print_drop_user(), pt_print_drop_variable(), pt_print_evaluate(), pt_print_event_spec(), pt_print_event_target(), pt_print_execute_trigger(), pt_print_expr(), pt_print_file_path(), pt_print_function(), pt_print_get_opt_lvl(), pt_print_get_stats(), pt_print_get_trigger(), pt_print_get_xaction(), pt_print_grant(), pt_print_host_var(), pt_print_index_columns(), pt_print_insert(), pt_print_intersection(), pt_print_isolation_lvl(), pt_print_json_table(), pt_print_json_table_column_error_or_empty_behavior(), pt_print_json_table_column_info(), pt_print_json_table_node(), pt_print_merge(), pt_print_method_call(), pt_print_method_def(), pt_print_name(), pt_print_named_arg(), pt_print_partition(), pt_print_parts(), pt_print_remove_trigger(), pt_print_rename(), pt_print_rename_trigger(), pt_print_resolution(), pt_print_revoke(), pt_print_rollback_work(), pt_print_savepoint(), pt_print_scope(), pt_print_select(), pt_print_session_variables(), pt_print_set_names(), pt_print_set_opt_lvl(), pt_print_set_session_variables(), pt_print_set_sys_params(), pt_print_set_timezone(), pt_print_set_trigger(), pt_print_set_xaction(), pt_print_showstmt(), pt_print_sort_spec(), pt_print_sp_parameter(), pt_print_spec(), pt_print_table_option(), pt_print_timeout(), pt_print_trigger_action(), pt_print_trigger_spec_list(), pt_print_truncate(), pt_print_union_stmt(), pt_print_update(), pt_print_update_stats(), pt_print_value(), and pt_print_with_clause().
int pt_count_assignments | ( | PARSER_CONTEXT * | parser, |
PT_NODE * | assignments | ||
) |
Definition at line 1413 of file parse_tree.c.
References pt_get_next_assignment(), and pt_init_assignments_helper().
Referenced by check_trigger().
|
static |
Definition at line 549 of file parse_tree.c.
References parser_string_block::aligned::chars, HASH_NUMBER, parser_context::id, parser_string_block::last_string_start, parser_string_block::next, NULL, parser_string_block::parser_id, pthread_mutex_lock, pthread_mutex_unlock, rv, and parser_string_block::u.
Referenced by pt_append_bytes_for(), and pt_append_string_for().
|
static |
Definition at line 509 of file parse_tree.c.
References free_and_init, HASH_NUMBER, parser_context::id, parser_string_block::next, pthread_mutex_lock, pthread_mutex_unlock, and rv.
Referenced by pt_append_bytes_for(), and pt_append_string_for().
|
static |
Definition at line 328 of file parse_tree.c.
References free_and_init, HASH_NUMBER, parser_context::id, parser_node_block::next, NULL, parser_node_block::parser_id, pthread_mutex_lock, pthread_mutex_unlock, and rv.
Referenced by parser_free_parser().
|
static |
Definition at line 1123 of file parse_tree.c.
References free_and_init, HASH_NUMBER, parser_context::id, parser_string_block::next, NULL, parser_string_block::parser_id, pthread_mutex_lock, pthread_mutex_unlock, and rv.
Referenced by parser_free_parser().
PT_NODE* pt_get_next_assignment | ( | PT_ASSIGNMENTS_HELPER * | ea | ) |
Definition at line 1360 of file parse_tree.c.
References pt_expr_info::arg1, pt_expr_info::arg2, pt_assignments_helper::assignment, pt_statement_info::expr, parser_node::info, pt_assignments_helper::is_n_column, pt_assignments_helper::is_rhs_const, pt_assignments_helper::lhs, parser_node::next, parser_node::node_type, NULL, PT_IS_CONST_NOT_HOSTVAR, PT_NAME, and pt_assignments_helper::rhs.
Referenced by check_trigger(), init_update_data(), pt_append_omitted_on_update_expr_assignments(), pt_count_assignments(), pt_mvcc_flag_specs_assign_reev(), pt_mvcc_set_spec_assign_reev_extra_indexes(), pt_no_attr_and_meta_attr_updates(), pt_semantic_check_local(), pt_substitute_assigned_name_node(), pt_to_merge_update_xasl(), pt_to_odku_info(), pt_to_update_xasl(), update_class_attributes(), and update_object_by_oid().
const unsigned char* pt_get_varchar_bytes | ( | const PARSER_VARCHAR * | string | ) |
Definition at line 1089 of file parse_tree.c.
References NULL.
Referenced by chksum_calculate_checksum(), chksum_get_next_lower_bound(), chksum_update_master_checksum(), do_add_attribute(), do_alter_change_col_comment(), do_alter_change_tbl_comment(), do_change_att_schema_only(), do_create_entity(), do_replicate_statement(), pt_get_enumeration_from_data_type(), and pt_is_same_enum_data_type().
int pt_get_varchar_length | ( | const PARSER_VARCHAR * | string | ) |
Definition at line 1106 of file parse_tree.c.
References NULL.
Referenced by pt_get_enumeration_from_data_type(), and pt_is_same_enum_data_type().
void pt_init_assignments_helper | ( | PARSER_CONTEXT * | parser, |
PT_ASSIGNMENTS_HELPER * | helper, | ||
PT_NODE * | assignment | ||
) |
Definition at line 1336 of file parse_tree.c.
References pt_assignments_helper::assignment, pt_assignments_helper::is_n_column, pt_assignments_helper::is_rhs_const, pt_assignments_helper::lhs, NULL, parser, pt_assignments_helper::parser, and pt_assignments_helper::rhs.
Referenced by check_trigger(), init_update_data(), pt_append_omitted_on_update_expr_assignments(), pt_count_assignments(), pt_mvcc_flag_specs_assign_reev(), pt_mvcc_set_spec_assign_reev_extra_indexes(), pt_no_attr_and_meta_attr_updates(), pt_semantic_check_local(), pt_substitute_assigned_name_node(), pt_to_merge_update_xasl(), pt_to_odku_info(), pt_to_update_xasl(), update_class_attributes(), and update_object_by_oid().
bool pt_is_json_doc_type | ( | PT_TYPE_ENUM | type | ) |
Definition at line 1442 of file parse_tree.c.
References db_is_json_doc_type(), pt_type_enum_to_db(), PT_TYPE_MAYBE, and PT_TYPE_NULL.
Referenced by pt_are_equivalent_types(), pt_get_equivalent_type(), and pt_semantic_check_local().
bool pt_is_json_value_type | ( | PT_TYPE_ENUM | type | ) |
Definition at line 1429 of file parse_tree.c.
References db_is_json_value_type(), pt_type_enum_to_db(), PT_TYPE_MAYBE, and PT_TYPE_NULL.
Referenced by pt_are_equivalent_types(), and pt_get_equivalent_type().
|
static |
Definition at line 743 of file parse_tree.c.
References ARG_FILE_LINE, ER_ERROR_SEVERITY, ER_FAILED, ER_GENERIC_ERROR, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), HASH_NUMBER, parser_context::id, parser_node_free_list::next, NO_ERROR, NULL, parser_node_free_list::parser_id, pthread_mutex_lock, pthread_mutex_unlock, and rv.
Referenced by parser_create_parser().
|
static |
Definition at line 801 of file parse_tree.c.
References free_and_init, HASH_NUMBER, parser_context::id, parser_node_free_list::next, NULL, parser_node_free_list::parser_id, pthread_mutex_lock, pthread_mutex_unlock, and rv.
Referenced by parser_free_parser().
|
static |
Definition at line 192 of file parse_tree.c.
Referenced by parser_init_node(), and parser_reinit_node().
|
static |
Definition at line 188 of file parse_tree.c.
|
static |
Definition at line 189 of file parse_tree.c.
|
static |
Definition at line 190 of file parse_tree.c.
PT_RESERVED_NAME pt_Reserved_name_table[] |
Definition at line 92 of file parse_tree.c.
Referenced by pt_bind_reserved_name(), pt_resolve_star_reserved_names(), and qo_get_attr_info().