Skip to content

File parse_tree.h

FileList > cubrid > src > parser > parse_tree.h

Go to the source code of this file

  • #include <setjmp.h>
  • #include <assert.h>
  • #include "class_object.h"
  • #include "compile_context.h"
  • #include "config.h"
  • #include "cursor.h"
  • #include "db_function.hpp"
  • #include "json_table_def.h"
  • #include "message_catalog.h"
  • #include "string_opfunc.h"
  • #include "system_parameter.h"
  • #include "hide_password.h"
  • #include "misctype_def.h"

Classes

Type Name
struct PT_ZZ_ERROR_MSG_INFO
struct SERVER_NAME_LIST
struct execution_state_values
struct function_map
struct host_vars_info
struct keyword_record
struct must_be_filtering_info
struct nested_view_version_info
struct parser_context
struct parser_hint
struct parser_node
struct parser_varchar
struct pt_agg_check_info
struct pt_agg_find_info
struct pt_agg_name_info
struct pt_agg_rewrite_info
struct pt_alter_info
struct pt_alter_server_info
struct pt_alter_trigger_info
struct pt_alter_user_info
struct pt_assignments_helper
struct pt_attach_info
struct pt_attr_def_info
struct pt_attr_ordering_info
struct pt_auth_cmd_info
struct pt_auto_increment_info
struct pt_check_option_info
struct pt_coll_infer
struct pt_commit_work_info
struct pt_constraint_info
struct pt_create_entity_info
struct pt_create_server_info
struct pt_create_trigger_info
struct pt_create_user_info
struct pt_cte_info
struct pt_data_default_info
struct pt_data_type_info
struct pt_dblink_info
struct pt_delete_info
struct pt_do_info
struct pt_dot_info
struct pt_drop_info
struct pt_drop_server_info
struct pt_drop_session_var_info
struct pt_drop_trigger_info
struct pt_drop_user_info
struct pt_drop_variable_info
struct pt_enum_element_value
struct pt_evaluate_info
struct pt_event_object_info
struct pt_event_spec_info
struct pt_event_target_info
struct pt_execute_info
struct pt_execute_trigger_info
struct pt_expr_info
struct pt_file_path_info
struct pt_filter_index_info
struct pt_flat_spec_info
struct pt_foreign_key_info
struct pt_function_info
struct pt_get_opt_lvl_info
struct pt_get_stats_info
struct pt_get_trigger_info
struct pt_get_xaction_info
struct pt_grant_info
struct pt_host_var_info
struct pt_index_info
struct pt_insert_info
struct pt_insert_value_info
struct pt_isolation_lvl_info
struct pt_json_table_column_info
struct pt_json_table_info
struct pt_json_table_node_info
struct pt_killstmt_info
struct pt_merge_info
struct pt_method_call_info
struct pt_method_def_info
struct pt_monetary_value
struct pt_name_info
struct pt_named_arg_info
struct pt_node_list_info
struct pt_non_groupby_col_info
struct pt_partition_info
struct pt_parts_info
struct pt_plan_trace_info
struct pt_pointer_info
struct pt_prepare_info
struct pt_query_info
struct pt_remove_trigger_info
struct pt_rename_info
struct pt_rename_server_info
struct pt_rename_trigger_info
struct pt_reserved_name
struct pt_resolution_info
struct pt_revoke_info
struct pt_rollback_work_info
struct pt_savepoint_info
struct pt_scope_info
struct pt_select_info
struct pt_serial_info
struct pt_set_names_info
struct pt_set_opt_lvl_info
struct pt_set_session_variable_info
struct pt_set_sys_params_info
struct pt_set_timezone_info
struct pt_set_trigger_info
struct pt_set_xaction_info
struct pt_showstmt_info
struct pt_sort_spec_info
struct pt_spec_info
struct pt_stored_proc_body_info
struct pt_stored_proc_info
struct pt_stored_proc_param_info
struct pt_synonym_info
struct pt_table_option_info
struct pt_timeout_info
struct pt_trace_info
struct pt_trigger_action_info
struct pt_trigger_spec_list_info
struct pt_truncate_info
struct pt_tuple_value_info
struct pt_union_info
struct pt_update_info
struct pt_update_stats_info
struct pt_use_info
struct pt_value_info
struct pt_with_clause_info
struct remote_cols
struct semantic_chk_info
struct view_cache_info

Public Types

Type Name
typedef enum cdc_ddl_object_type CDC_DDL_OBJECT_TYPE
typedef enum cdc_ddl_type CDC_DDL_TYPE
typedef struct execution_state_values EXECUTION_STATE_VALUES
typedef struct function_map FUNCTION_MAP
typedef struct keyword_record KEYWORD_RECORD
typedef struct must_be_filtering_info MUST_BE_FILTERING_INFO
typedef struct nested_view_version_info NESTED_VIEW_VERSION_INFO
typedef struct parser_context PARSER_CONTEXT
typedef void(* PARSER_GENERIC_VOID_FUNCTION
typedef struct parser_varchar PARSER_VARCHAR
typedef struct pt_agg_check_info PT_AGG_CHECK_INFO
typedef struct pt_agg_find_info PT_AGG_FIND_INFO
typedef struct pt_agg_name_info PT_AGG_NAME_INFO
typedef struct pt_agg_rewrite_info PT_AGG_REWRITE_INFO
enum PT_ALTER_CODE
typedef struct pt_alter_info PT_ALTER_INFO
typedef struct pt_alter_server_info PT_ALTER_SERVER_INFO
typedef struct pt_alter_trigger_info PT_ALTER_TRIGGER_INFO
typedef struct pt_alter_user_info PT_ALTER_USER_INFO
typedef struct pt_assignments_helper PT_ASSIGNMENTS_HELPER
typedef struct pt_attach_info PT_ATTACH_INFO
typedef struct pt_attr_def_info PT_ATTR_DEF_INFO
typedef struct pt_attr_ordering_info PT_ATTR_ORDERING_INFO
typedef struct pt_auth_cmd_info PT_AUTH_CMD_INFO
typedef struct pt_auto_increment_info PT_AUTO_INCREMENT_INFO
typedef int(* PT_CASECMP_FUN
typedef struct pt_check_option_info PT_CHECK_OPTION_INFO
typedef enum pt_coll_coerc_lev PT_COLL_COERC_LEV
typedef struct pt_coll_infer PT_COLL_INFER
typedef struct pt_commit_work_info PT_COMMIT_WORK_INFO
enum PT_COMP_TO_BETWEEN_OP_CODE_TYPE
enum PT_CONNECT_BY_CHECK_CYCLES
typedef struct pt_constraint_info PT_CONSTRAINT_INFO
enum PT_CONSTRAINT_TYPE
typedef struct pt_create_entity_info PT_CREATE_ENTITY_INFO
enum PT_CREATE_SELECT_ACTION
typedef struct pt_create_server_info PT_CREATE_SERVER_INFO
typedef struct pt_create_trigger_info PT_CREATE_TRIGGER_INFO
typedef struct pt_create_user_info PT_CREATE_USER_INFO
typedef struct pt_cte_info PT_CTE_INFO
typedef enum pt_currency_types PT_CURRENCY
typedef struct cursor_id PT_CURSOR_ID
typedef struct pt_data_default_info PT_DATA_DEFAULT_INFO
typedef struct pt_data_type_info PT_DATA_TYPE_INFO
typedef union pt_data_value PT_DATA_VALUE
typedef long PT_DATE
typedef DB_DATETIME PT_DATETIME
typedef DB_DATETIMETZ PT_DATETIMETZ
typedef struct pt_dblink_info PT_DBLINK_INFO
typedef struct pt_delete_info PT_DELETE_INFO
typedef struct pt_dot_info PT_DOT_INFO
typedef struct pt_do_info PT_DO_INFO
typedef struct pt_drop_info PT_DROP_INFO
typedef struct pt_drop_server_info PT_DROP_SERVER_INFO
typedef struct pt_drop_session_var_info PT_DROP_SESSION_VAR_INFO
typedef struct pt_drop_trigger_info PT_DROP_TRIGGER_INFO
typedef struct pt_drop_user_info PT_DROP_USER_INFO
typedef struct pt_drop_variable_info PT_DROP_VARIABLE_INFO
typedef struct pt_enum_element_value PT_ENUM_ELEMENT
enum PT_ERROR_CODE
enum PT_ERROR_TYPE
typedef struct pt_evaluate_info PT_EVALUATE_INFO
typedef struct pt_event_object_info PT_EVENT_OBJECT_INFO
typedef struct pt_event_spec_info PT_EVENT_SPEC_INFO
typedef struct pt_event_target_info PT_EVENT_TARGET_INFO
enum PT_EVENT_TYPE
typedef struct pt_execute_info PT_EXECUTE_INFO
typedef struct pt_execute_trigger_info PT_EXECUTE_TRIGGER_INFO
typedef struct pt_expr_info PT_EXPR_INFO
typedef struct pt_file_path_info PT_FILE_PATH_INFO
typedef struct pt_filter_index_info PT_FILTER_INDEX_INFO
typedef struct pt_flat_spec_info PT_FLAT_SPEC_INFO
typedef struct pt_foreign_key_info PT_FOREIGN_KEY_INFO
typedef struct pt_function_info PT_FUNCTION_INFO
typedef struct pt_get_opt_lvl_info PT_GET_OPT_LVL_INFO
typedef struct pt_get_stats_info PT_GET_STATS_INFO
typedef struct pt_get_trigger_info PT_GET_TRIGGER_INFO
typedef struct pt_get_xaction_info PT_GET_XACTION_INFO
typedef struct pt_grant_info PT_GRANT_INFO
typedef struct parser_hint PT_HINT
typedef UINT64 PT_HINT_ENUM
typedef struct pt_host_vars PT_HOST_VARS
typedef struct host_vars_info PT_HOST_VAR_IDX_INFO
typedef struct pt_host_var_info PT_HOST_VAR_INFO
enum PT_INCLUDE_OID_TYPE
enum PT_INCLUDE_OR_EXCLUDE_HIDDEN_COLUMNS
typedef struct pt_index_info PT_INDEX_INFO
typedef struct pt_insert_info PT_INSERT_INFO
typedef struct pt_insert_value_info PT_INSERT_VALUE_INFO
typedef int(* PT_INT_FUNCTION
typedef struct pt_isolation_lvl_info PT_ISOLATION_LVL_INFO
enum PT_JOIN_TYPE
typedef struct pt_json_table_column_info PT_JSON_TABLE_COLUMN_INFO
typedef struct pt_json_table_info PT_JSON_TABLE_INFO
typedef struct pt_json_table_node_info PT_JSON_TABLE_NODE_INFO
typedef struct pt_killstmt_info PT_KILLSTMT_INFO
typedef struct qfile_list_id PT_LIST_ID
typedef struct pt_merge_info PT_MERGE_INFO
typedef struct pt_method_call_info PT_METHOD_CALL_INFO
typedef struct pt_method_def_info PT_METHOD_DEF_INFO
typedef struct pt_monetary_value PT_MONETARY
typedef struct pt_named_arg_info PT_NAMED_ARG_INFO
typedef struct pt_name_info PT_NAME_INFO
typedef struct parser_node PT_NODE
typedef struct pt_node_list_info PT_NODE_LIST_INFO
typedef enum pt_node_type PT_NODE_TYPE
typedef PT_NODE *(* PT_NODE_WALK_FUNCTION
typedef struct pt_non_groupby_col_info PT_NON_GROUPBY_COL_INFO
enum PT_OP_TYPE
typedef struct pt_partition_info PT_PARTITION_INFO
enum PT_PARTITION_TYPE
typedef struct pt_parts_info PT_PARTS_INFO
typedef struct pt_plan_trace_info PT_PLAN_TRACE_INFO
typedef struct pt_pointer_info PT_POINTER_INFO
typedef enum pt_pointer_type PT_POINTER_TYPE
typedef struct pt_prepare_info PT_PREPARE_INFO
typedef struct pt_attach_info PT_PREPARE_TO_COMMIT_INFO
typedef PARSER_VARCHAR *(* PT_PRINT_VALUE_FUNC
enum PT_PRIV_TYPE
typedef struct pt_query_info PT_QUERY_INFO
typedef struct pt_remove_trigger_info PT_REMOVE_TRIGGER_INFO
typedef struct pt_rename_info PT_RENAME_INFO
typedef struct pt_rename_server_info PT_RENAME_SERVER_INFO
typedef struct pt_rename_trigger_info PT_RENAME_TRIGGER_INFO
typedef struct pt_reserved_name PT_RESERVED_NAME
enum PT_RESERVED_NAME_ID
enum PT_RESERVED_NAME_TYPE
typedef struct pt_resolution_info PT_RESOLUTION_INFO
typedef struct pt_revoke_info PT_REVOKE_INFO
typedef struct pt_rollback_work_info PT_ROLLBACK_WORK_INFO
typedef struct pt_savepoint_info PT_SAVEPOINT_INFO
typedef struct pt_scope_info PT_SCOPE_INFO
typedef struct pt_select_info PT_SELECT_INFO
typedef struct pt_serial_info PT_SERIAL_INFO
typedef struct pt_set_names_info PT_SET_NAMES_INFO
typedef struct pt_set_opt_lvl_info PT_SET_OPT_LVL_INFO
typedef struct pt_set_session_variable_info PT_SET_SESSION_VARIABLE_INFO
typedef struct pt_set_sys_params_info PT_SET_SYS_PARAMS_INFO
typedef struct pt_set_timezone_info PT_SET_TIMEZONE_INFO
typedef struct pt_set_trigger_info PT_SET_TRIGGER_INFO
typedef struct pt_set_xaction_info PT_SET_XACTION_INFO
typedef struct pt_showstmt_info PT_SHOWSTMT_INFO
typedef struct pt_sort_spec_info PT_SORT_SPEC_INFO
enum PT_SPEC_FLAG
typedef struct pt_spec_info PT_SPEC_INFO
typedef struct pt_stored_proc_body_info PT_SP_BODY_INFO
typedef union pt_statement_info PT_STATEMENT_INFO
typedef struct pt_stored_proc_info PT_STORED_PROC_INFO
typedef struct pt_stored_proc_param_info PT_STORED_PROC_PARAM_INFO
typedef struct pt_synonym_info PT_SYNONYM_INFO
typedef struct pt_table_option_info PT_TABLE_OPTION_INFO
enum PT_TABLE_OPTION_TYPE
typedef long PT_TIME
typedef struct pt_timeout_info PT_TIMEOUT_INFO
typedef DB_TIMESTAMPTZ PT_TIMESTAMPTZ
typedef enum pt_time_zones PT_TIMEZONE
typedef struct pt_trace_info PT_TRACE_INFO
typedef struct pt_trigger_action_info PT_TRIGGER_ACTION_INFO
typedef struct pt_trigger_spec_list_info PT_TRIGGER_SPEC_LIST_INFO
typedef struct pt_truncate_info PT_TRUNCATE_INFO
typedef struct pt_tuple_value_info PT_TUPLE_VALUE_INFO
typedef enum pt_type_enum PT_TYPE_ENUM
typedef struct pt_union_info PT_UNION_INFO
typedef struct pt_update_info PT_UPDATE_INFO
typedef struct pt_update_stats_info PT_UPDATE_STATS_INFO
typedef struct pt_use_info PT_USE_INFO
typedef long PT_UTIME
typedef struct pt_value_info PT_VALUE_INFO
typedef struct pt_with_clause_info PT_WITH_CLAUSE_INFO
typedef struct PT_ZZ_ERROR_MSG_INFO PT_ZZ_ERROR_MSG_INFO
typedef struct remote_cols REMOTE_COLS
typedef struct semantic_chk_info SEMANTIC_CHK_INFO
enum SERVER_INSERT_ALLOWED
typedef struct view_cache_info VIEW_CACHE_INFO
enum cdc_ddl_object_type
enum cdc_ddl_type
enum parse__tree_8h_1a0ae1e3bf78c960c83e2d437efd802058
enum parse__tree_8h_1a10e74d65d7876276a8f6061c71dcf469
enum parse__tree_8h_1a1f3b6c692395e5007ff47ce5d9304c1c
enum pt_coll_coerc_lev
enum pt_currency_types
enum pt_custom_print
union pt_data_value
enum pt_node_type
enum pt_pointer_type
union pt_statement_info
enum pt_time_zones
enum pt_type_enum

Public Attributes

Type Name
PT_RESERVED_NAME pt_Reserved_name_table

Public Functions

Type Name
void * parser_allocate_string_buffer (const PARSER_CONTEXT * parser, const int length, const int align)
void pt_init_node (PT_NODE * node, PT_NODE_TYPE node_type)
bool pt_is_json_doc_type (PT_TYPE_ENUM type)
bool pt_is_json_value_type (PT_TYPE_ENUM type)

Macros

Type Name
define CAST_POINTER_TO_NODE (p) /* multi line expression */
define IS_UPDATE_OBJ (node) (node-&gt;node\_type == PT\_UPDATE && node-&gt;info.update.object\_parameter)
define MAX_KEYWORD_SIZE (20 + 1 + 3)
define MAX_NUM_PLAN_TRACE 100
define MAX_PRINT_ERROR_CONTEXT_LENGTH 64
define NAME_FROM_CLASSNAME_DOT_STAR 2 /\* classname.\* \*/
define NAME_FROM_PT_DOT 1
define NAME_FROM_STAR 3 /\* \* \*/
define NAME_IN_PATH_EXPR 4
define PARTITIONED_SUB_CLASS_TAG "\_\_p\_\_"
define PT_ASSERT_NODE_TYPE (n, t) ([**assert**](malloc__2__8__3_8c.md#define-assert) ((n) != [**NULL**](freelistheap_8h.md#define-null) && (n)-&gt;node\_type == ([**t**](broker__monitor_8c.md#function-timeout))))
define PT_ASSERT_NOT_NULL (n) ([**assert**](malloc__2__8__3_8c.md#define-assert) ((n) != [**NULL**](freelistheap_8h.md#define-null)))
define PT_CHECK_HQ_OP_EXCEPT_PRIOR (op) /* multi line expression */
define PT_CHECK_RESERVED_NAME_BIND (spec_, reserved_id) /* multi line expression */
define PT_CHECK_USER_SCHEMA_PROCEDURE_OR_FUNCTION (n) /* multi line expression */
define PT_CLEAR_JMP_ENV (parser) /* multi line expression */
define PT_CREATE_ENTITY_ASSERT (n) ([**PT\_ASSERT\_NODE\_TYPE**](parse__tree_8h.md#define-pt_assert_node_type) ((n), PT\_CREATE\_ENTITY))
define PT_CREATE_ENTITY_NAME (n) ([**PT\_CREATE\_ENTITY\_ASSERT**](parse__tree_8h.md#define-pt_create_entity_assert) ((n)), (n)-&gt;info.create\_entity.entity\_name)
define PT_DOES_FUNCTION_HAVE_DIFFERENT_ARGS (op) /* multi line expression */
define PT_EMPTY [**INT\_MAX**](broker__monitor_8c.md#function-timeout)
define PT_ERROR (parser, node, msg) [**pt\_frob\_error**](parse__tree__cl_8c.md#function-pt_frob_error)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, msg)
define PT_ERRORc (parser, node, msg) [**pt\_frob\_error**](parse__tree__cl_8c.md#function-pt_frob_error)( [**parser**](shard__proxy__handler_8c.md#variable-parser), node, "%s", msg)
define PT_ERRORf (parser, node, msg, arg1) [**pt\_frob\_error**](parse__tree__cl_8c.md#function-pt_frob_error)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, msg, arg1)
define PT_ERRORf2 (parser, node, msg, arg1, arg2) [**pt\_frob\_error**](parse__tree__cl_8c.md#function-pt_frob_error)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, msg, arg1, arg2)
define PT_ERRORf3 (parser, node, msg, arg1, arg2, arg3) [**pt\_frob\_error**](parse__tree__cl_8c.md#function-pt_frob_error)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, msg, arg1, arg2, arg3)
define PT_ERRORf4 (parser, node, msg, arg1, arg2, arg3, arg4) [**pt\_frob\_error**](parse__tree__cl_8c.md#function-pt_frob_error)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, msg, arg1, arg2, arg3, [**arg4**](broker__monitor_8c.md#function-timeout))
define PT_ERRORf5 (parser, node, msg, arg1, arg2, arg3, arg4, arg5) [**pt\_frob\_error**](parse__tree__cl_8c.md#function-pt_frob_error)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, msg, arg1, arg2, arg3, [**arg4**](broker__monitor_8c.md#function-timeout), [**arg5**](broker__monitor_8c.md#function-timeout))
define PT_ERRORm (parser, node, setNo, msgNo) [**pt\_cat\_error**](parse__tree_8h.md#define-pt_cat_error)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, [**setNo**](broker__monitor_8c.md#function-timeout), [**msgNo**](broker__monitor_8c.md#function-timeout))
define PT_ERRORmf (parser, node, setNo, msgNo, arg1) [**pt\_cat\_error**](parse__tree_8h.md#define-pt_cat_error)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, [**setNo**](broker__monitor_8c.md#function-timeout), [**msgNo**](broker__monitor_8c.md#function-timeout), arg1)
define PT_ERRORmf2 (parser, node, setNo, msgNo, arg1, arg2) [**pt\_cat\_error**](parse__tree_8h.md#define-pt_cat_error)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, [**setNo**](broker__monitor_8c.md#function-timeout), [**msgNo**](broker__monitor_8c.md#function-timeout), arg1, arg2)
define PT_ERRORmf3 (parser, node, setNo, msgNo, arg1, arg2, arg3) [**pt\_cat\_error**](parse__tree_8h.md#define-pt_cat_error)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, [**setNo**](broker__monitor_8c.md#function-timeout), [**msgNo**](broker__monitor_8c.md#function-timeout), arg1, arg2, arg3)
define PT_ERRORmf4 (parser, node, setNo, msgNo, arg1, arg2, arg3, arg4) [**pt\_cat\_error**](parse__tree_8h.md#define-pt_cat_error)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, [**setNo**](broker__monitor_8c.md#function-timeout), [**msgNo**](broker__monitor_8c.md#function-timeout), arg1, arg2, arg3, [**arg4**](broker__monitor_8c.md#function-timeout))
define PT_ERRORmf5 (parser, node, setNo, msgNo, arg1, arg2, arg3, arg4, arg5) [**pt\_cat\_error**](parse__tree_8h.md#define-pt_cat_error)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, [**setNo**](broker__monitor_8c.md#function-timeout), [**msgNo**](broker__monitor_8c.md#function-timeout), arg1, arg2, arg3, [**arg4**](broker__monitor_8c.md#function-timeout), [**arg5**](broker__monitor_8c.md#function-timeout))
define PT_EXPR_ARG1 (n) ([**PT\_EXPR\_ASSERT**](parse__tree_8h.md#define-pt_expr_assert) ((n)), (n)-&gt;info.expr.arg1)
define PT_EXPR_ARG2 (n) ([**PT\_EXPR\_ASSERT**](parse__tree_8h.md#define-pt_expr_assert) ((n)), (n)-&gt;info.expr.arg2)
define PT_EXPR_ARG3 (n) ([**PT\_EXPR\_ASSERT**](parse__tree_8h.md#define-pt_expr_assert) ((n)), (n)-&gt;info.expr.arg3)
define PT_EXPR_ASSERT (n) ([**PT\_ASSERT\_NODE\_TYPE**](parse__tree_8h.md#define-pt_assert_node_type) ((n), PT\_EXPR))
define PT_EXPR_INFO_CAST_COLL_MODIFIER 16384 /\* [**CAST**](broker__monitor_8c.md#function-timeout) [**is**](broker__monitor_8c.md#function-timeout) [**for**](dynamic__load_8c.md#function-for) [**COLLATION**](broker__monitor_8c.md#function-timeout) [**modifier**](broker__monitor_8c.md#function-timeout) \*/
define PT_EXPR_INFO_CAST_NOFAIL /* multi line expression */
define PT_EXPR_INFO_CAST_SHOULD_FOLD 4096 /\* [**flag**](classflag.md) [**which**](broker__monitor_8c.md#function-timeout) [**controls**](broker__monitor_8c.md#function-timeout) [**if**](dynamic__load_8c.md#function-if) [**a**](broker__monitor_8c.md#function-timeout) [**cast**](broker__monitor_8c.md#function-timeout) expr [**should**](broker__monitor_8c.md#function-timeout) [**be**](broker__monitor_8c.md#function-timeout) [**folded**](broker__monitor_8c.md#function-timeout) \*/
define PT_EXPR_INFO_CAST_WRAP 131072 /\* 0x20000, [**CAST**](broker__monitor_8c.md#function-timeout) [**is**](broker__monitor_8c.md#function-timeout) [**wrapped**](broker__monitor_8c.md#function-timeout) [**by**](broker__monitor_8c.md#function-timeout) [**compiling**](broker__monitor_8c.md#function-timeout) \*/
define PT_EXPR_INFO_CLEAR_FLAG (e, f) ([**e**](broker__monitor_8c.md#function-timeout))-&gt;info.expr.flag &= ([**int**](broker__monitor_8c.md#function-timeout)) ~(f)
define PT_EXPR_INFO_CNF_DONE 1 /\* [**CNF**](broker__monitor_8c.md#function-timeout) [**conversion**](broker__monitor_8c.md#function-timeout) [**has**](broker__monitor_8c.md#function-timeout) done? \*/
define PT_EXPR_INFO_COPYPUSH /* multi line expression */
define PT_EXPR_INFO_DO_NOT_AUTOPARAM 65536 /\* [**don**](broker__monitor_8c.md#function-timeout)'[**t**](broker__monitor_8c.md#function-timeout) [**auto**](broker__monitor_8c.md#function-timeout) [**parameterize**](broker__monitor_8c.md#function-timeout) expr [**at**](broker__monitor_8c.md#function-timeout) [**qo\_auto\_parameterize**](query__rewrite__auto__parameterize_8c.md#function-qo_auto_parameterize)() \*/
define PT_EXPR_INFO_EMPTY_RANGE 2 /\* empty [**RANGE**](access__spec_8hpp.md#enum-range) spec? \*/
define PT_EXPR_INFO_FULL_RANGE 1024 /\* [**non**](broker__monitor_8c.md#function-timeout)-[**null**](broker__monitor_8c.md#function-timeout) [**full**](broker__monitor_8c.md#function-timeout) [**RANGE**](access__spec_8hpp.md#enum-range) [**term**](broker__monitor_8c.md#variable-term) ? \*/
define PT_EXPR_INFO_FUNCTION_INDEX 8192 /\* function index expression [**flag**](classflag.md) \*/
define PT_EXPR_INFO_GROUPBYNUM_C 16 /\* compatible with [**groupby\_num**](broker__monitor_8c.md#function-timeout)() \*/
define PT_EXPR_INFO_GROUPBYNUM_LIMIT /* multi line expression */
define PT_EXPR_INFO_GROUPBYNUM_NC 32 /\* [**not**](broker__monitor_8c.md#function-timeout) compatible with [**groupby\_num**](broker__monitor_8c.md#function-timeout)() \*/
define PT_EXPR_INFO_INSTNUM_C 4 /\* compatible with inst\_num() \*/
define PT_EXPR_INFO_INSTNUM_NC 8 /\* [**not**](broker__monitor_8c.md#function-timeout) compatible with inst\_num() \*/
define PT_EXPR_INFO_IS_FLAGED (e, f) (([**e**](broker__monitor_8c.md#function-timeout))-&gt;info.expr.flag & ([**int**](broker__monitor_8c.md#function-timeout)) (f))
define PT_EXPR_INFO_LEFT_OUTER 128 /\* [**Oracle**](broker__monitor_8c.md#function-timeout)'s left outer join [**operator**](broker__monitor_8c.md#function-timeout) \*/
define PT_EXPR_INFO_ORDERBYNUM_C [**PT\_EXPR\_INFO\_INSTNUM\_C**](parse__tree_8h.md#define-pt_expr_info_instnum_c) /\* compatible with [**orderby\_num**](broker__monitor_8c.md#function-timeout)() \*/
define PT_EXPR_INFO_ORDERBYNUM_NC [**PT\_EXPR\_INFO\_INSTNUM\_NC**](parse__tree_8h.md#define-pt_expr_info_instnum_nc) /\* [**not**](broker__monitor_8c.md#function-timeout) compatible with [**orderby\_num**](broker__monitor_8c.md#function-timeout)() \*/
define PT_EXPR_INFO_REMOVABLE 1048576 /\* 0x100000, expression [**is**](broker__monitor_8c.md#function-timeout) [**removable**](broker__monitor_8c.md#function-timeout) \*/
define PT_EXPR_INFO_RIGHT_OUTER 256 /\* [**Oracle**](broker__monitor_8c.md#function-timeout)'s right outer join [**operator**](broker__monitor_8c.md#function-timeout) \*/
define PT_EXPR_INFO_ROWNUM_ONLY 262144 /\* 0x40000, [**rownum**](broker__monitor_8c.md#function-timeout) [**only**](broker__monitor_8c.md#function-timeout) [**predicate**](broker__monitor_8c.md#function-timeout) \*/
define PT_EXPR_INFO_SET_FLAG (e, f) ([**e**](broker__monitor_8c.md#function-timeout))-&gt;info.expr.flag \|= ([**int**](broker__monitor_8c.md#function-timeout)) (f)
define PT_EXPR_INFO_SP_NUMERIC 524288 /\* 0x80000, [**CAST**](broker__monitor_8c.md#function-timeout) [**as**](broker__monitor_8c.md#function-timeout) [**NUMERIC**](broker__monitor_8c.md#function-timeout) [**for**](dynamic__load_8c.md#function-for) [**SP**](broker__monitor_8c.md#function-timeout) \*/
define PT_EXPR_INFO_TRANSITIVE 64 /\* [**always**](broker__monitor_8c.md#function-timeout) [**true**](broker__monitor_8c.md#function-timeout) [**transitive**](broker__monitor_8c.md#function-timeout) join [**term**](broker__monitor_8c.md#variable-term) ? \*/
define PT_EXPR_OP (n) ([**PT\_EXPR\_ASSERT**](parse__tree_8h.md#define-pt_expr_assert) ((n)), (n)-&gt;info.expr.op)
define PT_GET_COLLATION_MODIFIER (p) /* multi line expression */
define PT_GET_RESERVED_NAME_FIRST_AND_LAST (type, first, last) /* multi line expression */
define PT_GET_RESERVED_NAME_TYPE (reserved_id) /* multi line expression */
define PT_HAS_COLLATION (t) /* multi line expression */
define PT_HAS_COLLATION_MODIFIER (p) ([**PT\_GET\_COLLATION\_MODIFIER**](parse__tree_8h.md#define-pt_get_collation_modifier)(([**p**](dynamic__load_8c.md#variable-p))) != -1)
define PT_HAS_DATE_PART (t) /* multi line expression */
define PT_HAS_TIME_PART (t) /* multi line expression */
define PT_HINT_INDEX_LS (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 27) /\* [**enable**](broker__monitor_8c.md#function-timeout) [**loose**](broker__monitor_8c.md#function-timeout) index scan \*/
define PT_HINT_INDEX_SS (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 2) /\* [**enable**](broker__monitor_8c.md#function-timeout) index skip scan \*/
define PT_HINT_INLINE_CTE (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 42) /\* [**inline**](broker__monitor_8c.md#function-timeout) [**CTE**](broker__monitor_8c.md#function-timeout) \*/
define PT_HINT_INSERT_MODE (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 18) /\* set [**insert\_executeion\_mode**](broker__monitor_8c.md#function-timeout) \*/
define PT_HINT_JDBC_CACHE (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 14) /\* jdbc\_cache \*/
define PT_HINT_LEADING (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 37) /\* force [**specific**](broker__monitor_8c.md#function-timeout) table to join left-to-right \*/
define PT_HINT_LK_TIMEOUT (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 9) /\* lock\_timeout \*/
define PT_HINT_MATERIALIZE_CTE (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 43) /\* [**materialize**](broker__monitor_8c.md#function-timeout) [**CTE**](broker__monitor_8c.md#function-timeout) \*/
define PT_HINT_NLJ_KEEP_HEAP_PAGE_PINNED (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 46) /\* [**keep**](broker__monitor_8c.md#function-timeout) page fixed [**on**](broker__monitor_8c.md#function-timeout) [**nl**](broker__monitor_8c.md#function-timeout) join first table heap scan \*/
define PT_HINT_NONE (0ULL ) /\* [**no**](broker__monitor_8c.md#function-timeout) hint \*/
define PT_HINT_NO_COVERING_IDX (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 17) /\* [**do**](dynamic__load_8c.md#variable-do) [**not**](broker__monitor_8c.md#function-timeout) use [**covering**](broker__monitor_8c.md#function-timeout) index scan \*/
define PT_HINT_NO_ELIMINATE_JOIN (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 35) /\* [**do**](dynamic__load_8c.md#variable-do) [**not**](broker__monitor_8c.md#function-timeout) [**eliminate**](broker__monitor_8c.md#function-timeout) join \*/
define PT_HINT_NO_HASH_AGGREGATE (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 24) /\* [**no**](broker__monitor_8c.md#function-timeout) hash [**aggregate**](broker__monitor_8c.md#function-timeout) [**evaluation**](broker__monitor_8c.md#function-timeout) \*/
define PT_HINT_NO_HASH_LIST_SCAN (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 11) /\* [**no**](broker__monitor_8c.md#function-timeout) hash list scan \*/
define PT_HINT_NO_IDX_DESC (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 19) /\* [**do**](dynamic__load_8c.md#variable-do) [**not**](broker__monitor_8c.md#function-timeout) use [**descending**](broker__monitor_8c.md#function-timeout) index scan \*/
define PT_HINT_NO_INDEX_LS (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 26) /\* [**disable**](broker__monitor_8c.md#function-timeout) [**loose**](broker__monitor_8c.md#function-timeout) index scan \*/
define PT_HINT_NO_INDEX_SS (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 1) /\* [**disable**](broker__monitor_8c.md#function-timeout) index skip scan \*/
define PT_HINT_NO_LOGGING (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 10) /\* no\_logging \*/
define PT_HINT_NO_MERGE (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 34) /\* [**do**](dynamic__load_8c.md#variable-do) [**not**](broker__monitor_8c.md#function-timeout) merge [**view**](broker__monitor_8c.md#function-timeout) [**or**](broker__monitor_8c.md#function-timeout) in-line [**view**](broker__monitor_8c.md#function-timeout) \*/
define PT_HINT_NO_MULTI_RANGE_OPT (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 20) /\* [**do**](dynamic__load_8c.md#variable-do) [**not**](broker__monitor_8c.md#function-timeout) use [**multi**](broker__monitor_8c.md#function-timeout) range [**optimization**](broker__monitor_8c.md#function-timeout) \*/
define PT_HINT_NO_PARALLEL_HASH_JOIN (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 45) /\* [**disable**](broker__monitor_8c.md#function-timeout) parallel hash join \*/
define PT_HINT_NO_PARALLEL_HEAP_SCAN (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 40) /\* [**disable**](broker__monitor_8c.md#function-timeout) parallel heap scan \*/
define PT_HINT_NO_PARALLEL_SUBQUERY (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 44) /\* [**disable**](broker__monitor_8c.md#function-timeout) parallel subquery \*/
define PT_HINT_NO_PUSH_PRED (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 33) /\* [**do**](dynamic__load_8c.md#variable-do) [**not**](broker__monitor_8c.md#function-timeout) push [**predicates**](broker__monitor_8c.md#function-timeout) \*/
define PT_HINT_NO_SORT_LIMIT (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 23)
define PT_HINT_NO_SUBQUERY_CACHE (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 38) /\* [**don**](broker__monitor_8c.md#function-timeout)'[**t**](broker__monitor_8c.md#function-timeout) use [**the**](broker__monitor_8c.md#function-timeout) subquery result cache \*/
define PT_HINT_NO_SUPPLEMENTAL_LOG (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 28) /\* [**Used**](broker__monitor_8c.md#function-timeout) in [**DML**](cubrid__log_8h.md#typedef-dml) ([**only**](broker__monitor_8c.md#function-timeout) [**for**](dynamic__load_8c.md#function-for) update [**delete**](broker__monitor_8c.md#function-timeout) [**currently**](broker__monitor_8c.md#function-timeout)) to [**avoid**](broker__monitor_8c.md#function-timeout) [**adding**](broker__monitor_8c.md#function-timeout) [**DML**](cubrid__log_8h.md#typedef-dml) [**supplemental**](broker__monitor_8c.md#function-timeout) [**logs**](broker__monitor_8c.md#function-timeout) [**that**](broker__monitor_8c.md#function-timeout) [**may**](broker__monitor_8c.md#function-timeout) [**be**](broker__monitor_8c.md#function-timeout) [**duplicated**](broker__monitor_8c.md#function-timeout) [**by**](broker__monitor_8c.md#function-timeout) [**DDL**](cubrid__log_8h.md#typedef-ddl) \*/
define PT_HINT_NO_USE_HASH (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 39) /\* [**disable**](broker__monitor_8c.md#function-timeout) hash-join \*/
define PT_HINT_ORDERED (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 0) /\* force join left-to-right \*/
define PT_HINT_PARALLEL (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 41) /\* parallel query [**execution**](broker__monitor_8c.md#function-timeout) [**threads**](broker__monitor_8c.md#function-timeout) \*/
define PT_HINT_QUERY_CACHE (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 12) /\* [**query\_cache**](broker__monitor_8c.md#function-timeout) \*/
define PT_HINT_QUERY_NO_CACHE (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 32) /\* [**don**](broker__monitor_8c.md#function-timeout)'[**t**](broker__monitor_8c.md#function-timeout) use [**the**](broker__monitor_8c.md#function-timeout) query cache (unused) \*/
define PT_HINT_RECOMPILE (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 8) /\* recompile \*/
define PT_HINT_REEXECUTE (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 13) /\* reexecute \*/
define PT_HINT_SAMPLING_SCAN (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 36) /\* [**SELECT**](broker__monitor_8c.md#function-timeout) sampling data [**instead**](broker__monitor_8c.md#function-timeout) [**of**](broker__monitor_8c.md#function-timeout) [**full**](broker__monitor_8c.md#function-timeout) data \*/
define PT_HINT_SELECT_BTREE_NODE_INFO (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 3) /\* [**SELECT**](broker__monitor_8c.md#function-timeout) b-tree node [**information**](broker__monitor_8c.md#function-timeout) \*/
define PT_HINT_SELECT_KEY_INFO (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 31) /\* [**SELECT**](broker__monitor_8c.md#function-timeout) key [**information**](broker__monitor_8c.md#function-timeout) from index b-tree [**instead**](broker__monitor_8c.md#function-timeout) [**of**](broker__monitor_8c.md#function-timeout) table record data \*/
define PT_HINT_SELECT_PAGE_INFO (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 30) /\* [**SELECT**](broker__monitor_8c.md#function-timeout) page header [**information**](broker__monitor_8c.md#function-timeout) from heap file [**instead**](broker__monitor_8c.md#function-timeout) [**of**](broker__monitor_8c.md#function-timeout) record data \*/
define PT_HINT_SELECT_RECORD_INFO (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 29) /\* [**SELECT**](broker__monitor_8c.md#function-timeout) record info from tuple header [**instead**](broker__monitor_8c.md#function-timeout) [**of**](broker__monitor_8c.md#function-timeout) data \*/
define PT_HINT_SKIP_UPDATE_NULL (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 25)
define PT_HINT_USE_HASH (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 7) /\* force hash-join \*/
define PT_HINT_USE_IDX (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 5) /\* force idx-join \*/
define PT_HINT_USE_IDX_DESC (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 16) /\* [**descending**](broker__monitor_8c.md#function-timeout) index scan \*/
define PT_HINT_USE_INSERT_IDX (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 22) /\* [**do**](dynamic__load_8c.md#variable-do) [**not**](broker__monitor_8c.md#function-timeout) [**generate**](broker__monitor_8c.md#function-timeout) SORT-[**LIMIT**](broker__monitor_8c.md#function-timeout) plan \*/
define PT_HINT_USE_MERGE (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 6) /\* force m-join \*/
define PT_HINT_USE_NL (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 4) /\* force [**nl**](broker__monitor_8c.md#function-timeout)-join \*/
define PT_HINT_USE_SBR (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 15) /\* statement [**based**](broker__monitor_8c.md#function-timeout) [**replication**](broker__monitor_8c.md#function-timeout) \*/
define PT_HINT_USE_UPDATE_IDX (1[**ULL**](broker__monitor_8c.md#function-timeout) &lt;&lt; 21) /\* use index [**for**](dynamic__load_8c.md#function-for) merge update \*/
define PT_IDX_HINT_ORDER (hint_node) /* multi line expression */
define PT_INTERNAL_ERROR (parser, what) [**pt\_internal\_error**](parse__tree__cl_8c.md#function-pt_internal_error)(([**parser**](shard__proxy__handler_8c.md#variable-parser)), [**\_\_FILE\_\_**](broker__monitor_8c.md#function-timeout), [**\_\_LINE\_\_**](broker__monitor_8c.md#function-timeout), ([**what**](broker__monitor_8c.md#function-timeout)))
define PT_IS_ANALYTIC_NODE (n) /* multi line expression */
define PT_IS_ASSIGN_NODE (n) ( (n) && ((n)-&gt;node\_type == PT\_EXPR && (n)-&gt;info.expr.op == PT\_ASSIGN) )
define PT_IS_BIT_STRING_TYPE (t) /* multi line expression */
define PT_IS_CAST_CONST_INPUT_HOSTVAR (n) /* multi line expression */
define PT_IS_CHAR_STRING_TYPE (t) /* multi line expression */
define PT_IS_CLASSOID_NAME (x) ( ([**x**](broker__monitor_8c.md#function-timeout))-&gt;info.name.meta\_class == PT\_CLASSOID\_ATTR)
define PT_IS_CLASS_METHOD (n) /* multi line expression */
define PT_IS_COLLECTION_TYPE (t) /* multi line expression */
define PT_IS_COMPLEX_TYPE (t) /* multi line expression */
define PT_IS_CONST (n) /* multi line expression */
define PT_IS_CONST_INPUT_HOSTVAR (n) /* multi line expression */
define PT_IS_CONST_NOT_HOSTVAR (n) /* multi line expression */
define PT_IS_CORRELATED_SUBQUERY (n) ( [**PT\_IS\_QUERY**](parse__tree_8h.md#define-pt_is_query)((n)) && ((n)-&gt;info.query.correlation\_level &gt; 0) )
define PT_IS_COUNTER_TYPE (t) [**PT\_IS\_DISCRETE\_NUMBER\_TYPE**](parse__tree_8h.md#define-pt_is_discrete_number_type)([**t**](broker__monitor_8c.md#function-timeout))
define PT_IS_DATE_TIME_TYPE (t) /* multi line expression */
define PT_IS_DATE_TIME_WITH_TZ_TYPE (t) /* multi line expression */
define PT_IS_DBLINK_DML_QUERY (n) /* multi line expression */
define PT_IS_DIFFERENCE (n) ( (n) && ((n)-&gt;node\_type == PT\_DIFFERENCE) )
define PT_IS_DISCRETE_NUMBER_TYPE (t) /* multi line expression */
define PT_IS_DISTINCT (n) ( (n) && [**PT\_IS\_QUERY\_NODE\_TYPE**](parse__tree_8h.md#define-pt_is_query_node_type)((n)-&gt;node\_type) && (n)-&gt;info.query.all\_distinct != PT\_ALL )
define PT_IS_DOT_NODE (n) ( (n) && ((n)-&gt;node\_type == PT\_DOT\_) )
define PT_IS_EXPR_NODE (n) ( (n) && ((n)-&gt;node\_type == PT\_EXPR) )
define PT_IS_EXPR_NODE_WITH_COMP_OP (n) /* multi line expression */
define PT_IS_EXPR_NODE_WITH_NON_PUSHABLE (n) /* multi line expression */
define PT_IS_EXPR_NODE_WITH_OPERATOR (n, op_type) ( ([**PT\_IS\_EXPR\_NODE**](parse__tree_8h.md#define-pt_is_expr_node) (n)) && ((n)-&gt;info.expr.op == (op\_type)) )
define PT_IS_EXPR_WITH_PRIOR_ARG (x) /* multi line expression */
define PT_IS_FALSE_WHERE_VALUE (node) /* multi line expression */
define PT_IS_FOR_PL_COMPILE (parser) (([**parser**](shard__proxy__handler_8c.md#variable-parser))-&gt;flag.is\_parsing\_static\_sql == 1)
define PT_IS_FUNCTION (n) ( (n) && ((n)-&gt;node\_type == PT\_FUNCTION) )
define PT_IS_GROUPBYNUM (n) ( (n) && ((n)-&gt;node\_type == PT\_FUNCTION && ((n)-&gt;info.function.function\_type == PT\_GROUPBY\_NUM)) )
define PT_IS_HINT_NODE (n) ( (n) && ((n)-&gt;node\_type == PT\_NAME && (n)-&gt;info.name.meta\_class == PT\_HINT\_NAME) )
define PT_IS_HOSTVAR (n) ( (n) && ((n)-&gt;node\_type == PT\_HOST\_VAR) )
define PT_IS_INPUT_HOSTVAR (n) /* multi line expression */
define PT_IS_INPUT_PARAMETER (n) /* multi line expression */
define PT_IS_INSERT_VALUE_NODE (n) ( (n) && ((n)-&gt;node\_type == PT\_INSERT\_VALUE) )
define PT_IS_INSTANCE_METHOD (n) /* multi line expression */
define PT_IS_INSTNUM (n) /* multi line expression */
define PT_IS_INTERSECTION (n) ( (n) && ((n)-&gt;node\_type == PT\_INTERSECTION) )
define PT_IS_LOB_TYPE (t) /* multi line expression */
define PT_IS_LTZ_TYPE (t) (([**t**](broker__monitor_8c.md#function-timeout)) == PT\_TYPE\_TIMESTAMPLTZ \|\| ([**t**](broker__monitor_8c.md#function-timeout)) == PT\_TYPE\_DATETIMELTZ)
define PT_IS_META (n) /* multi line expression */
define PT_IS_METHOD (n) /* multi line expression */
define PT_IS_MULTI_COL_TERM (n) /* multi line expression */
define PT_IS_NAME_NODE (n) ( (n) && ((n)-&gt;node\_type == PT\_NAME) )
define PT_IS_NULL_NODE (e) /* multi line expression */
define PT_IS_NUMBERING_AFTER_EXECUTION (op) /* multi line expression */
define PT_IS_NUMERIC_TYPE (t) /* multi line expression */
define PT_IS_N_COLUMN_UPDATE_EXPR (n) /* multi line expression */
define PT_IS_OID_NAME (n) /* multi line expression */
define PT_IS_ORDERBYNUM (n) ( (n) && ((n)-&gt;node\_type == PT\_EXPR && ((n)-&gt;info.expr.op == PT\_ORDERBY\_NUM)) )
define PT_IS_ORDER_DEPENDENT (n) /* multi line expression */
define PT_IS_OUTPUT_HOSTVAR (n) /* multi line expression */
define PT_IS_PARAMETER (n) /* multi line expression */
define PT_IS_PARAMETERIZED_TYPE (t) /* multi line expression */
define PT_IS_POINTER_REF_NODE (n) /* multi line expression */
define PT_IS_PRIMITIVE_TYPE (t) ( (([**t**](broker__monitor_8c.md#function-timeout)) != PT\_TYPE\_OBJECT) && (([**t**](broker__monitor_8c.md#function-timeout)) != PT\_TYPE\_NONE))
define PT_IS_QUERY (n) ( (n) && ([**PT\_IS\_QUERY\_NODE\_TYPE**](parse__tree_8h.md#define-pt_is_query_node_type)((n)-&gt;node\_type)) )
define PT_IS_QUERY_NODE_TYPE (x) /* multi line expression */
define PT_IS_SELECT (n) ( (n) && ((n)-&gt;node\_type == PT\_SELECT) )
define PT_IS_SERIAL (op) ( (op) == PT\_CURRENT\_VALUE \|\| (op) == PT\_NEXT\_VALUE )
define PT_IS_SET_TYPE (n) /* multi line expression */
define PT_IS_SIMPLE_CHAR_STRING_TYPE (t) /* multi line expression */
define PT_IS_SORT_SPEC_NODE (n) ( (n) && ((n)-&gt;node\_type == PT\_SORT\_SPEC) )
define PT_IS_SP (n) /* multi line expression */
define PT_IS_SPEC_FLAG_SET (spec_, flags_) ((([**spec\_**](broker__monitor_8c.md#function-timeout))-&gt;info.spec.flag & ([**flags\_**](broker__monitor_8c.md#function-timeout))) != 0)
define PT_IS_SPEC_REAL_TABLE (spec_) [**PT\_SPEC\_IS\_ENTITY**](parse__tree_8h.md#define-pt_spec_is_entity)([**spec\_**](broker__monitor_8c.md#function-timeout))
define PT_IS_STRING_TYPE (t) /* multi line expression */
define PT_IS_UNARY (op) /* multi line expression */
define PT_IS_UNION (n) ( (n) && ((n)-&gt;node\_type == PT\_UNION) )
define PT_IS_UPDATE_OBJECT (n) ( (n) && (n)-&gt;node\_type == PT\_UPDATE && (n)-&gt;info.update.spec == [**NULL**](freelistheap_8h.md#define-null) )
define PT_IS_VACUUM_NODE (n) ( (n) && (n)-&gt;node\_type == PT\_VACUUM )
define PT_IS_VALUE_NODE (n) ( (n) && ((n)-&gt;node\_type == PT\_VALUE) )
define PT_IS_VALUE_QUERY (n) ((n)-&gt;flag.is\_value\_query == 1)
define PT_MERGE_INFO_HAS_UNIQUE 1 /\* [**has**](broker__monitor_8c.md#function-timeout) unique constraints \*/
define PT_MERGE_INFO_INSERT_ONLY 4 /\* merge condition [**always**](broker__monitor_8c.md#function-timeout) [**false**](broker__monitor_8c.md#function-timeout) \*/
define PT_MERGE_INFO_SERVER_OP 2 /\* server [**side**](broker__monitor_8c.md#function-timeout) operation \*/
define PT_METHOD_ARG_LIST (n) ((n)-&gt;info.method\_call.arg\_list)
define PT_METHOD_CALL_AUTH_ID (n) ((n)-&gt;info.method\_call.auth\_id)
define PT_METHOD_CALL_AUTH_NAME (n) ((n)-&gt;info.method\_call.auth\_name)
define PT_METHOD_CALL_NAME (n) ((n)-&gt;info.method\_call.method\_name)
define PT_METHOD_CALL_ON_CALL_TARGET (n) ((n)-&gt;info.method\_call.on\_call\_target)
define PT_NAME_ALLOW_REUSABLE_OID 512 /\* ignore [**the**](broker__monitor_8c.md#function-timeout) [**REUSABLE\_OID**](broker__monitor_8c.md#function-timeout) [**restrictions**](broker__monitor_8c.md#function-timeout) [**for**](dynamic__load_8c.md#function-for) [**this**](broker__monitor_8c.md#function-timeout) name \*/
define PT_NAME_ASSERT (n) ([**PT\_ASSERT\_NODE\_TYPE**](parse__tree_8h.md#define-pt_assert_node_type) ((n), PT\_NAME))
define PT_NAME_DB_OBJECT (n) ([**PT\_NAME\_ASSERT**](parse__tree_8h.md#define-pt_name_assert) ((n)), (n)-&gt;info.name.db\_object)
define PT_NAME_DEFAULTF_ACCEPTS 4096 /\* name [**of**](broker__monitor_8c.md#function-timeout) table/column [**that**](broker__monitor_8c.md#function-timeout) [**default**](broker__monitor_8c.md#function-timeout) function [**accepts:**](broker__monitor_8c.md#function-timeout) [**real**](broker__monitor_8c.md#function-timeout) table's, cte's \*/
define PT_NAME_FOR_UPDATE 2048 /\* Table name in [**FOR**](broker__monitor_8c.md#function-timeout) [**UPDATE**](broker__monitor_8c.md#function-timeout) [**clause**](broker__monitor_8c.md#function-timeout) \*/
define PT_NAME_GENERATED_DERIVED_SPEC 1024 /\* attribute [**generated**](broker__monitor_8c.md#function-timeout) from [**derived**](broker__monitor_8c.md#function-timeout) spec \*/
define PT_NAME_INFO_CLEAR_FLAG (e, f) ([**e**](broker__monitor_8c.md#function-timeout))-&gt;info.name.flag &= ([**short**](broker__monitor_8c.md#function-timeout)) ~(f)
define PT_NAME_INFO_CONSTANT 16
define PT_NAME_INFO_DESC 64 /\* [**DESC**](broker__monitor_8c.md#function-timeout) [**on**](broker__monitor_8c.md#function-timeout) [**an**](broker__monitor_8c.md#function-timeout) index column name \*/
define PT_NAME_INFO_DOT_NAME 2 /\* [**z**](broker__monitor_8c.md#function-timeout) [**of**](broker__monitor_8c.md#function-timeout) [**x.y.z**](broker__monitor_8c.md#function-timeout) \*/
define PT_NAME_INFO_DOT_SPEC 1 /\* [**x**](broker__monitor_8c.md#function-timeout), [**y**](broker__monitor_8c.md#function-timeout) [**of**](broker__monitor_8c.md#function-timeout) [**x.y.z**](broker__monitor_8c.md#function-timeout) \*/
define PT_NAME_INFO_DOT_STAR 8 /\* classname.\* \*/
define PT_NAME_INFO_EXTERNAL 32 /\* in [**case**](broker__monitor_8c.md#function-timeout) [**of**](broker__monitor_8c.md#function-timeout) [**TEXT**](broker__monitor_8c.md#function-timeout) type [**at**](broker__monitor_8c.md#function-timeout) attr definition [**or**](broker__monitor_8c.md#function-timeout) attr.object [**at**](broker__monitor_8c.md#function-timeout) attr [**description**](broker__monitor_8c.md#function-timeout) \*/
define PT_NAME_INFO_FILL_DEFAULT 128 /\* [**whether**](broker__monitor_8c.md#function-timeout) default\_value [**should**](broker__monitor_8c.md#function-timeout) [**be**](broker__monitor_8c.md#function-timeout) [**filled**](broker__monitor_8c.md#function-timeout) in \*/
define PT_NAME_INFO_GENERATED_OID /* multi line expression */
define PT_NAME_INFO_IS_FLAGED (e, f) (([**e**](broker__monitor_8c.md#function-timeout))-&gt;info.name.flag & ([**short**](broker__monitor_8c.md#function-timeout)) (f))
define PT_NAME_INFO_SERVER_SPECIFIED 16384 /\* server name [**is**](broker__monitor_8c.md#function-timeout) [**specified**](broker__monitor_8c.md#function-timeout) [**for**](dynamic__load_8c.md#function-for) [**dblink**](broker__monitor_8c.md#function-timeout) \*/
define PT_NAME_INFO_SET_FLAG (e, f) ([**e**](broker__monitor_8c.md#function-timeout))-&gt;info.name.flag \|= ([**short**](broker__monitor_8c.md#function-timeout)) (f)
define PT_NAME_INFO_STAR 4 /\* \* \*/
define PT_NAME_INFO_USER_SPECIFIED 8192 /\* [**resolved\_name**](broker__monitor_8c.md#function-timeout) [**is**](broker__monitor_8c.md#function-timeout) [**added**](broker__monitor_8c.md#function-timeout) to original\_name to [**make**](broker__monitor_8c.md#function-timeout) user\_specified\_name. \*/
define PT_NAME_ORIGINAL (n) ([**PT\_NAME\_ASSERT**](parse__tree_8h.md#define-pt_name_assert) ((n)), (n)-&gt;info.name.original)
define PT_NAME_RESOLVED (n) ([**PT\_NAME\_ASSERT**](parse__tree_8h.md#define-pt_name_assert) ((n)), (n)-&gt;info.name.resolved)
define PT_NAME_SPEC_ID (n) ([**PT\_NAME\_ASSERT**](parse__tree_8h.md#define-pt_name_assert) ((n)), (n)-&gt;info.name.spec\_id)
define PT_NODE_COPY_NUMBER_OUTERLINK (t, s) /* multi line expression */
define PT_NODE_DATA_TYPE (n) ( (n) ? (n)-&gt;data\_type : [**NULL**](freelistheap_8h.md#define-null) )
define PT_NODE_INIT_OUTERLINK (n) /* multi line expression */
define PT_NODE_IS_EXPR (n) ([**PT\_ASSERT\_NOT\_NULL**](parse__tree_8h.md#define-pt_assert_not_null) ((n)), (n)-&gt;node\_type == PT\_EXPR)
define PT_NODE_IS_NAME (n) ([**PT\_ASSERT\_NOT\_NULL**](parse__tree_8h.md#define-pt_assert_not_null) ((n)), (n)-&gt;node\_type == PT\_NAME)
define PT_NODE_IS_SPEC (n) ([**PT\_ASSERT\_NOT\_NULL**](parse__tree_8h.md#define-pt_assert_not_null) ((n)), (n)-&gt;node\_type == PT\_SPEC)
define PT_NODE_IS_SYNONYM (n) /* multi line expression */
define PT_NODE_MOVE_NUMBER_OUTERLINK (t, s) /* multi line expression */
define PT_NODE_PRINT_TO_ALIAS (p, n, c) /* multi line expression */
define PT_NODE_PRINT_VALUE_TO_TEXT (p, n) /* multi line expression */
define PT_RENAME_ASSERT (n) ([**PT\_ASSERT\_NODE\_TYPE**](parse__tree_8h.md#define-pt_assert_node_type) ((n), PT\_RENAME))
define PT_RENAME_NEW_NAME (n) ([**PT\_RENAME\_ASSERT**](parse__tree_8h.md#define-pt_rename_assert) ((n)), (n)-&gt;info.rename.new\_name)
define PT_REQUIRES_HIERARCHICAL_QUERY (op) /* multi line expression */
define PT_SELECT_FULL_INFO_COLS_SCHEMA 0x0100 /\* [**is**](broker__monitor_8c.md#function-timeout) [**show**](broker__monitor_8c.md#function-timeout) columns query \*/
define PT_SELECT_INFO_ANSI_JOIN 0x01 /\* [**has**](broker__monitor_8c.md#function-timeout) [**ANSI**](broker__monitor_8c.md#function-timeout) join? \*/
define PT_SELECT_INFO_CLEAR_FLAG (s, f) (s)-&gt;info.query.q.select.flag &= ~(f)
define PT_SELECT_INFO_COLS_SCHEMA 0x80 /\* [**is**](broker__monitor_8c.md#function-timeout) [**show**](broker__monitor_8c.md#function-timeout) columns query \*/
define PT_SELECT_INFO_DISABLE_LOOSE_SCAN 0x4000 /\* [**loose**](broker__monitor_8c.md#function-timeout) scan [**not**](broker__monitor_8c.md#function-timeout) [**possible**](broker__monitor_8c.md#function-timeout) [**on**](broker__monitor_8c.md#function-timeout) query \*/
define PT_SELECT_INFO_DUMMY 0x04 /\* [**is**](broker__monitor_8c.md#function-timeout) dummy (i.e., '[**SELECT**](broker__monitor_8c.md#function-timeout) \* [**FROM**](broker__monitor_8c.md#function-timeout) [**x**](broker__monitor_8c.md#function-timeout)') ? \*/
define PT_SELECT_INFO_FOR_UPDATE 0x2000 /\* [**FOR**](broker__monitor_8c.md#function-timeout) [**UPDATE**](broker__monitor_8c.md#function-timeout) [**clause**](broker__monitor_8c.md#function-timeout) [**is**](broker__monitor_8c.md#function-timeout) active \*/
define PT_SELECT_INFO_HAS_AGG 0x08 /\* [**has**](broker__monitor_8c.md#function-timeout) [**any**](broker__monitor_8c.md#function-timeout) type [**of**](broker__monitor_8c.md#function-timeout) [**aggregation**](broker__monitor_8c.md#function-timeout)? \*/
define PT_SELECT_INFO_HAS_ANALYTIC 0x10 /\* [**has**](broker__monitor_8c.md#function-timeout) analytic [**functions**](keyword_8c.md#variable-functions) \*/
define PT_SELECT_INFO_IDX_SCHEMA 0x40 /\* [**is**](broker__monitor_8c.md#function-timeout) [**show**](broker__monitor_8c.md#function-timeout) index query \*/
define PT_SELECT_INFO_IS_FLAGED (s, f) ((s)-&gt;info.query.q.select.flag & (f))
define PT_SELECT_INFO_IS_MERGE_QUERY 0x0200 /\* [**is**](broker__monitor_8c.md#function-timeout) [**a**](broker__monitor_8c.md#function-timeout) query [**of**](broker__monitor_8c.md#function-timeout) [**a**](broker__monitor_8c.md#function-timeout) merge stmt \*/
define PT_SELECT_INFO_IS_UPD_DEL_QUERY 0x1000 /\* set [**if**](dynamic__load_8c.md#function-if) select [**was**](broker__monitor_8c.md#function-timeout) [**built**](broker__monitor_8c.md#function-timeout) [**for**](dynamic__load_8c.md#function-for) [**an**](broker__monitor_8c.md#function-timeout) [**UPDATE**](broker__monitor_8c.md#function-timeout) [**or**](broker__monitor_8c.md#function-timeout) [**DELETE**](broker__monitor_8c.md#function-timeout) statement \*/
define PT_SELECT_INFO_LIST_PUSHER /* multi line expression */
define PT_SELECT_INFO_MULTI_UPDATE_AGG 0x20 /\* [**is**](broker__monitor_8c.md#function-timeout) query [**for**](dynamic__load_8c.md#function-for) [**multi**](broker__monitor_8c.md#function-timeout)-table update [**using**](broker__monitor_8c.md#function-timeout) [**aggregate**](broker__monitor_8c.md#function-timeout) \*/
define PT_SELECT_INFO_MVCC_LOCK_NEEDED 0x8000 /\* lock [**returned**](broker__monitor_8c.md#function-timeout) rows \*/
define PT_SELECT_INFO_NO_STRICT_OID_CHECK /* multi line expression */
define PT_SELECT_INFO_ORACLE_OUTER 0x02 /\* [**has**](broker__monitor_8c.md#function-timeout) [**Oracle**](broker__monitor_8c.md#function-timeout)'s outer join [**operator**](broker__monitor_8c.md#function-timeout)? \*/
define PT_SELECT_INFO_READ_ONLY 0x010000 /\* read-[**only**](broker__monitor_8c.md#function-timeout) system [**generated**](broker__monitor_8c.md#function-timeout) queries [**like**](broker__monitor_8c.md#function-timeout) [**show**](broker__monitor_8c.md#function-timeout) statement \*/
define PT_SELECT_INFO_SET_FLAG (s, f) (s)-&gt;info.query.q.select.flag \|= (f)
define PT_SET_JMP_ENV (parser) /* multi line expression */
define PT_SET_NODE_COLL_MODIFIER (p, coll) /* multi line expression */
define PT_SET_ORDER_DEPENDENT_FLAG (n, f) /* multi line expression */
define PT_SET_VALUE_QUERY (n) ((n)-&gt;flag.is\_value\_query = 1)
define PT_SHOULD_BIND_RESERVED_NAME (spec_) ([**PT\_SPEC\_GET\_RESERVED\_NAME\_TYPE**](parse__tree_8h.md#define-pt_spec_get_reserved_name_type) ([**spec\_**](broker__monitor_8c.md#function-timeout)) != RESERVED\_NAME\_INVALID)
define PT_SPEC_ASSERT (n) ([**PT\_ASSERT\_NODE\_TYPE**](parse__tree_8h.md#define-pt_assert_node_type) ((n), PT\_SPEC))
define PT_SPEC_CTE_POINTER (n) ([**PT\_SPEC\_ASSERT**](parse__tree_8h.md#define-pt_spec_assert) ((n)), (n)-&gt;info.spec.cte\_pointer)
define PT_SPEC_DERIVED_TABLE (n) ([**PT\_SPEC\_ASSERT**](parse__tree_8h.md#define-pt_spec_assert) ((n)), (n)-&gt;info.spec.derived\_table)
define PT_SPEC_ENTITY_NAME (n) ([**PT\_SPEC\_ASSERT**](parse__tree_8h.md#define-pt_spec_assert) ((n)), (n)-&gt;info.spec.entity\_name)
define PT_SPEC_FLAT_ENTITY_LIST (n) ([**PT\_SPEC\_ASSERT**](parse__tree_8h.md#define-pt_spec_assert) ((n)), (n)-&gt;info.spec.flat\_entity\_list)
define PT_SPEC_GET_DB_OBJECT (n, r) /* multi line expression */
define PT_SPEC_GET_RESERVED_NAME_TYPE (spec_) /* multi line expression */
define PT_SPEC_ID (n) ([**PT\_SPEC\_ASSERT**](parse__tree_8h.md#define-pt_spec_assert) ((n)), (n)-&gt;[**info.spec.id**](thread__worker__pool__impl_8hpp.md#enum-id))
define PT_SPEC_IS_ALL (n) ([**PT\_SPEC\_ASSERT**](parse__tree_8h.md#define-pt_spec_assert) ((n)), (n)-&gt;info.spec.only\_all == PT\_ALL)
define PT_SPEC_IS_CTE (spec_) (([**spec\_**](broker__monitor_8c.md#function-timeout))-&gt;info.spec.cte\_pointer != [**NULL**](freelistheap_8h.md#define-null))
define PT_SPEC_IS_DERIVED (spec_) (([**spec\_**](broker__monitor_8c.md#function-timeout))-&gt;info.spec.derived\_table != [**NULL**](freelistheap_8h.md#define-null))
define PT_SPEC_IS_ENTITY (spec_) (([**spec\_**](broker__monitor_8c.md#function-timeout))-&gt;info.spec.entity\_name != [**NULL**](freelistheap_8h.md#define-null))
define PT_SPEC_IS_ONLY (n) ([**PT\_SPEC\_ASSERT**](parse__tree_8h.md#define-pt_spec_assert) ((n)), (n)-&gt;info.spec.only\_all == PT\_ONLY)
define PT_SPEC_JOIN_TYPE (n) ([**PT\_SPEC\_ASSERT**](parse__tree_8h.md#define-pt_spec_assert) ((n)), (n)-&gt;info.spec.join\_type)
define PT_SPEC_SPECIAL_INDEX_SCAN (spec_) /* multi line expression */
define PT_SYNONYM_ACCESS_MODIFIER (n) ((n)-&gt;info.synonym.access\_modifier)
define PT_SYNONYM_COMMENT (n) ((n)-&gt;info.synonym.comment)
define PT_SYNONYM_COMMENT_BYTES (n) ((n)-&gt;info.synonym.comment-&gt;info.value.data\_value.str-&gt;bytes)
define PT_SYNONYM_COMMENT_STR (n) ((n)-&gt;info.synonym.comment-&gt;info.value.data\_value.str)
define PT_SYNONYM_IF_EXISTS (n) ((n)-&gt;info.synonym.if\_exists)
define PT_SYNONYM_IS_DBLINKED (n) ((n)-&gt;info.synonym.is\_dblinked) /\* [**for**](dynamic__load_8c.md#function-for) user.table@server \*/
define PT_SYNONYM_NAME (n) ((n)-&gt;info.synonym.synonym\_name)
define PT_SYNONYM_NEW_NAME (n) ((n)-&gt;info.synonym.new\_synonym\_name)
define PT_SYNONYM_NEW_OWNER_NAME (n) ((n)-&gt;info.synonym.new\_synonym\_owner\_name)
define PT_SYNONYM_OLD_NAME (n) ((n)-&gt;info.synonym.old\_synonym\_name)
define PT_SYNONYM_OLD_OWNER_NAME (n) ((n)-&gt;info.synonym.old\_synonym\_owner\_name)
define PT_SYNONYM_OR_REPLACE (n) ((n)-&gt;info.synonym.or\_replace)
define PT_SYNONYM_OWNER_NAME (n) ((n)-&gt;info.synonym.synonym\_owner\_name)
define PT_SYNONYM_TARGET_NAME (n) ((n)-&gt;info.synonym.target\_name)
define PT_SYNONYM_TARGET_OWNER_NAME (n) ((n)-&gt;info.synonym.target\_owner\_name)
define PT_VALUE_GET_BYTES (node) /* multi line expression */
define PT_WARNING (parser, node, msg) [**pt\_frob\_warning**](parse__tree__cl_8c.md#function-pt_frob_warning)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, msg)
define PT_WARNINGc (parser, node, msg) [**pt\_frob\_warning**](parse__tree__cl_8c.md#function-pt_frob_warning)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, msg)
define PT_WARNINGf (parser, node, msg, arg1) [**pt\_cat\_warning**](parse__tree_8h.md#define-pt_cat_warning)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, msg, arg1)
define PT_WARNINGf2 (parser, node, msg, arg1, arg2) [**pt\_cat\_warning**](parse__tree_8h.md#define-pt_cat_warning)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, msg, arg1, arg2)
define PT_WARNINGf3 (parser, node, msg, arg1, arg2, arg3) [**pt\_cat\_warning**](parse__tree_8h.md#define-pt_cat_warning)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, msg, arg1, arg2, arg3)
define PT_WARNINGm (parser, node, setNo, msgNo) [**pt\_cat\_warning**](parse__tree_8h.md#define-pt_cat_warning)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, [**setNo**](broker__monitor_8c.md#function-timeout), [**msgNo**](broker__monitor_8c.md#function-timeout))
define PT_WARNINGmf (parser, node, setNo, msgNo, arg1) [**pt\_cat\_warning**](parse__tree_8h.md#define-pt_cat_warning)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, [**setNo**](broker__monitor_8c.md#function-timeout), [**msgNo**](broker__monitor_8c.md#function-timeout), arg1)
define PT_WARNINGmf2 (parser, node, setNo, msgNo, arg1, arg2) [**pt\_cat\_warning**](parse__tree_8h.md#define-pt_cat_warning)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, [**setNo**](broker__monitor_8c.md#function-timeout), [**msgNo**](broker__monitor_8c.md#function-timeout), arg1, arg2)
define PT_WARNINGmf3 (parser, node, setNo, msgNo, arg1, arg2, arg3) [**pt\_cat\_warning**](parse__tree_8h.md#define-pt_cat_warning)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, [**setNo**](broker__monitor_8c.md#function-timeout), [**msgNo**](broker__monitor_8c.md#function-timeout), arg1, arg2, arg3)
define pt_cat_error (parser, node, setNo, msgNo, ...) [**pt\_frob\_error**](parse__tree__cl_8c.md#function-pt_frob_error)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, [**msgcat\_message**](message__catalog_8c.md#function-msgcat_message)([**MSGCAT\_CATALOG\_CUBRID**](message__catalog_8h.md#define-msgcat_catalog_cubrid), [**setNo**](broker__monitor_8c.md#function-timeout), [**msgNo**](broker__monitor_8c.md#function-timeout)), ##[**\_\_VA\_ARGS\_\_**](broker__monitor_8c.md#function-timeout))
define pt_cat_warning (parser, node, setNo, msgNo, ...) [**pt\_frob\_warning**](parse__tree__cl_8c.md#function-pt_frob_warning)([**parser**](shard__proxy__handler_8c.md#variable-parser), node, [**msgcat\_message**](message__catalog_8c.md#function-msgcat_message)([**MSGCAT\_CATALOG\_CUBRID**](message__catalog_8h.md#define-msgcat_catalog_cubrid), [**setNo**](broker__monitor_8c.md#function-timeout), [**msgNo**](broker__monitor_8c.md#function-timeout)), ##[**\_\_VA\_ARGS\_\_**](broker__monitor_8c.md#function-timeout))
define pt_is_cast_const_input_hostvar (n) [**PT\_IS\_CAST\_CONST\_INPUT\_HOSTVAR**](parse__tree_8h.md#define-pt_is_cast_const_input_hostvar)(n)
define pt_is_const (n) [**PT\_IS\_CONST**](parse__tree_8h.md#define-pt_is_const)(n)
define pt_is_const_input_hostvar (n) [**PT\_IS\_CONST\_INPUT\_HOSTVAR**](parse__tree_8h.md#define-pt_is_const_input_hostvar)(n)
define pt_is_const_not_hostvar (n) [**PT\_IS\_CONST\_NOT\_HOSTVAR**](parse__tree_8h.md#define-pt_is_const_not_hostvar)(n)
define pt_is_correlated_subquery (n) [**PT\_IS\_CORRELATED\_SUBQUERY**](parse__tree_8h.md#define-pt_is_correlated_subquery)(n)
define pt_is_difference (n) [**PT\_IS\_DIFFERENCE**](parse__tree_8h.md#define-pt_is_difference)(n)
define pt_is_distinct (n) [**PT\_IS\_DISTINCT**](parse__tree_8h.md#define-pt_is_distinct)(n)
define pt_is_dot_node (n) [**PT\_IS\_DOT\_NODE**](parse__tree_8h.md#define-pt_is_dot_node)(n)
define pt_is_expr_node (n) [**PT\_IS\_EXPR\_NODE**](parse__tree_8h.md#define-pt_is_expr_node)(n)
define pt_is_function (n) [**PT\_IS\_FUNCTION**](parse__tree_8h.md#define-pt_is_function)(n)
define pt_is_hostvar (n) [**PT\_IS\_HOSTVAR**](parse__tree_8h.md#define-pt_is_hostvar)(n)
define pt_is_input_hostvar (n) [**PT\_IS\_INPUT\_HOSTVAR**](parse__tree_8h.md#define-pt_is_input_hostvar)(n)
define pt_is_input_parameter (n) [**PT\_IS\_INPUT\_PARAMETER**](parse__tree_8h.md#define-pt_is_input_parameter)(n)
define pt_is_instnum (n) [**PT\_IS\_INSTNUM**](parse__tree_8h.md#define-pt_is_instnum)(n)
define pt_is_intersection (n) [**PT\_IS\_INTERSECTION**](parse__tree_8h.md#define-pt_is_intersection)(n)
define pt_is_meta (n) [**PT\_IS\_META**](parse__tree_8h.md#define-pt_is_meta)(n)
define pt_is_multi_col_term (n) [**PT\_IS\_MULTI\_COL\_TERM**](parse__tree_8h.md#define-pt_is_multi_col_term)(n)
define pt_is_name_node (n) [**PT\_IS\_NAME\_NODE**](parse__tree_8h.md#define-pt_is_name_node)(n)
define pt_is_oid_name (n) [**PT\_IS\_OID\_NAME**](parse__tree_8h.md#define-pt_is_oid_name)(n)
define pt_is_orderbynum (n) [**PT\_IS\_ORDERBYNUM**](parse__tree_8h.md#define-pt_is_orderbynum)(n)
define pt_is_output_hostvar (n) [**PT\_IS\_OUTPUT\_HOSTVAR**](parse__tree_8h.md#define-pt_is_output_hostvar)(n)
define pt_is_parameter (n) [**PT\_IS\_PARAMETER**](parse__tree_8h.md#define-pt_is_parameter)(n)
define pt_is_query (n) [**PT\_IS\_QUERY**](parse__tree_8h.md#define-pt_is_query)(n)
define pt_is_select (n) [**PT\_IS\_SELECT**](parse__tree_8h.md#define-pt_is_select)(n)
define pt_is_set_type (n) [**PT\_IS\_SET\_TYPE**](parse__tree_8h.md#define-pt_is_set_type)(n)
define pt_is_sp (n) [**PT\_IS\_SP**](parse__tree_8h.md#define-pt_is_sp)(n)
define pt_is_unary (op) [**PT\_IS\_UNARY**](parse__tree_8h.md#define-pt_is_unary)(op)
define pt_is_union (n) [**PT\_IS\_UNION**](parse__tree_8h.md#define-pt_is_union)(n)
define pt_is_update_object (n) [**PT\_IS\_UPDATE\_OBJECT**](parse__tree_8h.md#define-pt_is_update_object)(n)
define pt_is_value_node (n) [**PT\_IS\_VALUE\_NODE**](parse__tree_8h.md#define-pt_is_value_node)(n)

Public Types Documentation

typedef CDC_DDL_OBJECT_TYPE

typedef enum cdc_ddl_object_type CDC_DDL_OBJECT_TYPE;

typedef CDC_DDL_TYPE

typedef enum cdc_ddl_type CDC_DDL_TYPE;

typedef EXECUTION_STATE_VALUES

typedef struct execution_state_values EXECUTION_STATE_VALUES;

typedef FUNCTION_MAP

typedef struct function_map FUNCTION_MAP;

typedef KEYWORD_RECORD

typedef struct keyword_record KEYWORD_RECORD;

typedef MUST_BE_FILTERING_INFO

typedef struct must_be_filtering_info MUST_BE_FILTERING_INFO;

typedef NESTED_VIEW_VERSION_INFO

typedef struct nested_view_version_info NESTED_VIEW_VERSION_INFO;

typedef PARSER_CONTEXT

typedef struct parser_context PARSER_CONTEXT;

typedef PARSER_GENERIC_VOID_FUNCTION

typedef void(* PARSER_GENERIC_VOID_FUNCTION) ();

typedef PARSER_VARCHAR

typedef struct parser_varchar PARSER_VARCHAR;

typedef PT_AGG_CHECK_INFO

typedef struct pt_agg_check_info PT_AGG_CHECK_INFO;

typedef PT_AGG_FIND_INFO

typedef struct pt_agg_find_info PT_AGG_FIND_INFO;

typedef PT_AGG_NAME_INFO

typedef struct pt_agg_name_info PT_AGG_NAME_INFO;

typedef PT_AGG_REWRITE_INFO

typedef struct pt_agg_rewrite_info PT_AGG_REWRITE_INFO;

enum PT_ALTER_CODE

enum PT_ALTER_CODE {
    PT_ADD_QUERY = 5000,
    PT_DROP_QUERY,
    PT_MODIFY_QUERY,
    PT_RESET_QUERY,
    PT_ADD_ATTR_MTHD,
    PT_DROP_ATTR_MTHD,
    PT_MODIFY_ATTR_MTHD,
    PT_RENAME_ATTR_MTHD,
    PT_MODIFY_DEFAULT,
    PT_ADD_SUPCLASS,
    PT_DROP_SUPCLASS,
    PT_DROP_RESOLUTION,
    PT_RENAME_RESOLUTION,
    PT_DROP_CONSTRAINT,
    PT_APPLY_PARTITION,
    PT_DROP_PARTITION,
    PT_REMOVE_PARTITION,
    PT_ADD_PARTITION,
    PT_ADD_HASHPARTITION,
    PT_REORG_PARTITION,
    PT_COALESCE_PARTITION,
    PT_ANALYZE_PARTITION,
    PT_PROMOTE_PARTITION,
    PT_RENAME_ENTITY,
    PT_ALTER_DEFAULT,
    PT_DROP_INDEX_CLAUSE,
    PT_DROP_PRIMARY_CLAUSE,
    PT_DROP_FK_CLAUSE,
    PT_CHANGE_ATTR,
    PT_CHANGE_AUTO_INCREMENT,
    PT_CHANGE_OWNER,
    PT_CHANGE_COLLATION,
    PT_REBUILD_INDEX,
    PT_ADD_INDEX_CLAUSE,
    PT_CHANGE_TABLE_COMMENT,
    PT_CHANGE_COLUMN_COMMENT,
    PT_CHANGE_INDEX_COMMENT,
    PT_CHANGE_INDEX_STATUS,
    PT_ADD_MEMBERS,
    PT_DROP_MEMBERS,
    PT_SERIAL_OPTION
};

typedef PT_ALTER_INFO

typedef struct pt_alter_info PT_ALTER_INFO;

typedef PT_ALTER_SERVER_INFO

typedef struct pt_alter_server_info PT_ALTER_SERVER_INFO;

typedef PT_ALTER_TRIGGER_INFO

typedef struct pt_alter_trigger_info PT_ALTER_TRIGGER_INFO;

typedef PT_ALTER_USER_INFO

typedef struct pt_alter_user_info PT_ALTER_USER_INFO;

typedef PT_ASSIGNMENTS_HELPER

typedef struct pt_assignments_helper PT_ASSIGNMENTS_HELPER;

typedef PT_ATTACH_INFO

typedef struct pt_attach_info PT_ATTACH_INFO;

typedef PT_ATTR_DEF_INFO

typedef struct pt_attr_def_info PT_ATTR_DEF_INFO;

typedef PT_ATTR_ORDERING_INFO

typedef struct pt_attr_ordering_info PT_ATTR_ORDERING_INFO;

typedef PT_AUTH_CMD_INFO

typedef struct pt_auth_cmd_info PT_AUTH_CMD_INFO;

typedef PT_AUTO_INCREMENT_INFO

typedef struct pt_auto_increment_info PT_AUTO_INCREMENT_INFO;

typedef PT_CASECMP_FUN

typedef int(* PT_CASECMP_FUN) (const char *s1, const char *s2);

typedef PT_CHECK_OPTION_INFO

typedef struct pt_check_option_info PT_CHECK_OPTION_INFO;

typedef PT_COLL_COERC_LEV

typedef enum pt_coll_coerc_lev PT_COLL_COERC_LEV;

typedef PT_COLL_INFER

typedef struct pt_coll_infer PT_COLL_INFER;

typedef PT_COMMIT_WORK_INFO

typedef struct pt_commit_work_info PT_COMMIT_WORK_INFO;

enum PT_COMP_TO_BETWEEN_OP_CODE_TYPE

enum PT_COMP_TO_BETWEEN_OP_CODE_TYPE {
    PT_RANGE_MERGE,
    PT_RANGE_INTERSECTION,
    PT_REDUCE_COMP_PAIR_TERMS
};

enum PT_CONNECT_BY_CHECK_CYCLES

enum PT_CONNECT_BY_CHECK_CYCLES {
    CONNECT_BY_CYCLES_ERROR = 0,
    CONNECT_BY_CYCLES_NONE,
    CONNECT_BY_CYCLES_IGNORE,
    CONNECT_BY_CYCLES_NONE_IGNORE
};

typedef PT_CONSTRAINT_INFO

typedef struct pt_constraint_info PT_CONSTRAINT_INFO;

enum PT_CONSTRAINT_TYPE

enum PT_CONSTRAINT_TYPE {
    PT_CONSTRAIN_UNKNOWN = 7000,
    PT_CONSTRAIN_PRIMARY_KEY,
    PT_CONSTRAIN_FOREIGN_KEY,
    PT_CONSTRAIN_NULL,
    PT_CONSTRAIN_NOT_NULL,
    PT_CONSTRAIN_UNIQUE,
    PT_CONSTRAIN_CHECK
};

typedef PT_CREATE_ENTITY_INFO

typedef struct pt_create_entity_info PT_CREATE_ENTITY_INFO;

enum PT_CREATE_SELECT_ACTION

enum PT_CREATE_SELECT_ACTION {
    PT_CREATE_SELECT_NO_ACTION,
    PT_CREATE_SELECT_REPLACE,
    PT_CREATE_SELECT_IGNORE
};

typedef PT_CREATE_SERVER_INFO

typedef struct pt_create_server_info PT_CREATE_SERVER_INFO;

typedef PT_CREATE_TRIGGER_INFO

typedef struct pt_create_trigger_info PT_CREATE_TRIGGER_INFO;

typedef PT_CREATE_USER_INFO

typedef struct pt_create_user_info PT_CREATE_USER_INFO;

typedef PT_CTE_INFO

typedef struct pt_cte_info PT_CTE_INFO;

typedef PT_CURRENCY

typedef enum pt_currency_types PT_CURRENCY;

typedef PT_CURSOR_ID

typedef struct cursor_id PT_CURSOR_ID;

typedef PT_DATA_DEFAULT_INFO

typedef struct pt_data_default_info PT_DATA_DEFAULT_INFO;

typedef PT_DATA_TYPE_INFO

typedef struct pt_data_type_info PT_DATA_TYPE_INFO;

typedef PT_DATA_VALUE

typedef union pt_data_value PT_DATA_VALUE;

typedef PT_DATE

typedef long PT_DATE;

typedef PT_DATETIME

typedef DB_DATETIME PT_DATETIME;

typedef PT_DATETIMETZ

typedef DB_DATETIMETZ PT_DATETIMETZ;

typedef struct pt_dblink_info PT_DBLINK_INFO;

typedef PT_DELETE_INFO

typedef struct pt_delete_info PT_DELETE_INFO;

typedef PT_DOT_INFO

typedef struct pt_dot_info PT_DOT_INFO;

typedef PT_DO_INFO

typedef struct pt_do_info PT_DO_INFO;

typedef PT_DROP_INFO

typedef struct pt_drop_info PT_DROP_INFO;

typedef PT_DROP_SERVER_INFO

typedef struct pt_drop_server_info PT_DROP_SERVER_INFO;

typedef PT_DROP_SESSION_VAR_INFO

typedef struct pt_drop_session_var_info PT_DROP_SESSION_VAR_INFO;

typedef PT_DROP_TRIGGER_INFO

typedef struct pt_drop_trigger_info PT_DROP_TRIGGER_INFO;

typedef PT_DROP_USER_INFO

typedef struct pt_drop_user_info PT_DROP_USER_INFO;

typedef PT_DROP_VARIABLE_INFO

typedef struct pt_drop_variable_info PT_DROP_VARIABLE_INFO;

typedef PT_ENUM_ELEMENT

typedef struct pt_enum_element_value PT_ENUM_ELEMENT;

enum PT_ERROR_CODE

enum PT_ERROR_CODE {
    PT_NO_ERROR = 4000,
    PT_USAGE,
    PT_NODE_TABLE_OVERFLOW,
    PT_NAMES_TABLE_OVERFLOW,
    PT_CANT_OPEN_FILE,
    PT_STACK_OVERFLOW,
    PT_STACK_UNDERFLOW,
    PT_PARSE_ERROR,
    PT_ILLEGAL_TYPE_IN_FUNC,
    PT_NO_ARG_IN_FUNC
};

enum PT_ERROR_TYPE

enum PT_ERROR_TYPE {
    PT_SYNTAX,
    PT_SEMANTIC,
    PT_EXECUTION
};

typedef PT_EVALUATE_INFO

typedef struct pt_evaluate_info PT_EVALUATE_INFO;

typedef PT_EVENT_OBJECT_INFO

typedef struct pt_event_object_info PT_EVENT_OBJECT_INFO;

typedef PT_EVENT_SPEC_INFO

typedef struct pt_event_spec_info PT_EVENT_SPEC_INFO;

typedef PT_EVENT_TARGET_INFO

typedef struct pt_event_target_info PT_EVENT_TARGET_INFO;

enum PT_EVENT_TYPE

enum PT_EVENT_TYPE {
    PT_EV_INSERT = 6000,
    PT_EV_STMT_INSERT,
    PT_EV_DELETE,
    PT_EV_STMT_DELETE,
    PT_EV_UPDATE,
    PT_EV_STMT_UPDATE,
    PT_EV_ALTER,
    PT_EV_DROP,
    PT_EV_COMMIT,
    PT_EV_ROLLBACK,
    PT_EV_ABORT,
    PT_EV_TIMEOUT
};

typedef PT_EXECUTE_INFO

typedef struct pt_execute_info PT_EXECUTE_INFO;

typedef PT_EXECUTE_TRIGGER_INFO

typedef struct pt_execute_trigger_info PT_EXECUTE_TRIGGER_INFO;

typedef PT_EXPR_INFO

typedef struct pt_expr_info PT_EXPR_INFO;

typedef PT_FILE_PATH_INFO

typedef struct pt_file_path_info PT_FILE_PATH_INFO;

typedef PT_FILTER_INDEX_INFO

typedef struct pt_filter_index_info PT_FILTER_INDEX_INFO;

typedef PT_FLAT_SPEC_INFO

typedef struct pt_flat_spec_info PT_FLAT_SPEC_INFO;

typedef PT_FOREIGN_KEY_INFO

typedef struct pt_foreign_key_info PT_FOREIGN_KEY_INFO;

typedef PT_FUNCTION_INFO

typedef struct pt_function_info PT_FUNCTION_INFO;

typedef PT_GET_OPT_LVL_INFO

typedef struct pt_get_opt_lvl_info PT_GET_OPT_LVL_INFO;

typedef PT_GET_STATS_INFO

typedef struct pt_get_stats_info PT_GET_STATS_INFO;

typedef PT_GET_TRIGGER_INFO

typedef struct pt_get_trigger_info PT_GET_TRIGGER_INFO;

typedef PT_GET_XACTION_INFO

typedef struct pt_get_xaction_info PT_GET_XACTION_INFO;

typedef PT_GRANT_INFO

typedef struct pt_grant_info PT_GRANT_INFO;

typedef PT_HINT

typedef struct parser_hint PT_HINT;

typedef PT_HINT_ENUM

typedef UINT64 PT_HINT_ENUM;

typedef PT_HOST_VARS

typedef struct pt_host_vars PT_HOST_VARS;

typedef PT_HOST_VAR_IDX_INFO

typedef struct host_vars_info PT_HOST_VAR_IDX_INFO;

typedef PT_HOST_VAR_INFO

typedef struct pt_host_var_info PT_HOST_VAR_INFO;

enum PT_INCLUDE_OID_TYPE

enum PT_INCLUDE_OID_TYPE {
    PT_NO_OID_INCLUDED,
    PT_INCLUDE_OID,
    PT_INCLUDE_OID_TRUSTME
};

enum PT_INCLUDE_OR_EXCLUDE_HIDDEN_COLUMNS

enum PT_INCLUDE_OR_EXCLUDE_HIDDEN_COLUMNS {
    EXCLUDE_HIDDEN_COLUMNS,
    INCLUDE_HIDDEN_COLUMNS
};

typedef PT_INDEX_INFO

typedef struct pt_index_info PT_INDEX_INFO;

typedef PT_INSERT_INFO

typedef struct pt_insert_info PT_INSERT_INFO;

typedef PT_INSERT_VALUE_INFO

typedef struct pt_insert_value_info PT_INSERT_VALUE_INFO;

typedef PT_INT_FUNCTION

typedef int(* PT_INT_FUNCTION) (PARSER_CONTEXT *c);

typedef PT_ISOLATION_LVL_INFO

typedef struct pt_isolation_lvl_info PT_ISOLATION_LVL_INFO;

enum PT_JOIN_TYPE

enum PT_JOIN_TYPE {
    PT_JOIN_NONE = 0x00,
    PT_JOIN_CROSS = 0x01,
    PT_JOIN_NATURAL = 0x02,
    PT_JOIN_INNER = 0x04,
    PT_JOIN_LEFT_OUTER = 0x08,
    PT_JOIN_RIGHT_OUTER = 0x10,
    PT_JOIN_FULL_OUTER = 0x20,
    PT_JOIN_UNION = 0x40
};

typedef PT_JSON_TABLE_COLUMN_INFO

typedef struct pt_json_table_column_info PT_JSON_TABLE_COLUMN_INFO;

typedef PT_JSON_TABLE_INFO

typedef struct pt_json_table_info PT_JSON_TABLE_INFO;

typedef PT_JSON_TABLE_NODE_INFO

typedef struct pt_json_table_node_info PT_JSON_TABLE_NODE_INFO;

typedef PT_KILLSTMT_INFO

typedef struct pt_killstmt_info PT_KILLSTMT_INFO;

typedef PT_LIST_ID

typedef struct qfile_list_id PT_LIST_ID;

typedef PT_MERGE_INFO

typedef struct pt_merge_info PT_MERGE_INFO;

typedef PT_METHOD_CALL_INFO

typedef struct pt_method_call_info PT_METHOD_CALL_INFO;

typedef PT_METHOD_DEF_INFO

typedef struct pt_method_def_info PT_METHOD_DEF_INFO;

typedef PT_MONETARY

typedef struct pt_monetary_value PT_MONETARY;

typedef PT_NAMED_ARG_INFO

typedef struct pt_named_arg_info PT_NAMED_ARG_INFO;

typedef PT_NAME_INFO

typedef struct pt_name_info PT_NAME_INFO;

typedef PT_NODE

typedef struct parser_node PT_NODE;

typedef PT_NODE_LIST_INFO

typedef struct pt_node_list_info PT_NODE_LIST_INFO;

typedef PT_NODE_TYPE

typedef enum pt_node_type PT_NODE_TYPE;

typedef PT_NODE_WALK_FUNCTION

typedef PT_NODE *(* PT_NODE_WALK_FUNCTION) (PARSER_CONTEXT *p, PT_NODE *tree, void *arg, int *continue_walk);

typedef PT_NON_GROUPBY_COL_INFO

typedef struct pt_non_groupby_col_info PT_NON_GROUPBY_COL_INFO;

enum PT_OP_TYPE

enum PT_OP_TYPE {
    PT_AND = 400,
    PT_OR,
    PT_NOT,
    PT_BETWEEN,
    PT_NOT_BETWEEN,
    PT_LIKE,
    PT_NOT_LIKE,
    PT_IS_IN,
    PT_IS_NOT_IN,
    PT_IS_NULL,
    PT_IS_NOT_NULL,
    PT_IS,
    PT_IS_NOT,
    PT_EXISTS,
    PT_EQ_SOME,
    PT_NE_SOME,
    PT_GE_SOME,
    PT_GT_SOME,
    PT_LT_SOME,
    PT_LE_SOME,
    PT_EQ_ALL,
    PT_NE_ALL,
    PT_GE_ALL,
    PT_GT_ALL,
    PT_LT_ALL,
    PT_LE_ALL,
    PT_EQ,
    PT_NE,
    PT_GE,
    PT_GT,
    PT_LT,
    PT_LE,
    PT_NULLSAFE_EQ,
    PT_GT_INF,
    PT_LT_INF,
    PT_SETEQ,
    PT_SETNEQ,
    PT_SUPERSETEQ,
    PT_SUPERSET,
    PT_SUBSET,
    PT_SUBSETEQ,
    PT_PLUS,
    PT_MINUS,
    PT_TIMES,
    PT_DIVIDE,
    PT_UNARY_MINUS,
    PT_PRIOR,
    PT_QPRIOR,
    PT_CONNECT_BY_ROOT,
    PT_BIT_NOT,
    PT_BIT_XOR,
    PT_BIT_AND,
    PT_BIT_OR,
    PT_BIT_COUNT,
    PT_BITSHIFT_LEFT,
    PT_BITSHIFT_RIGHT,
    PT_DIV,
    PT_MOD,
    PT_IF,
    PT_IFNULL,
    PT_ISNULL,
    PT_XOR,
    PT_ASSIGN,
    PT_BETWEEN_AND,
    PT_BETWEEN_GE_LE,
    PT_BETWEEN_GE_LT,
    PT_BETWEEN_GT_LE,
    PT_BETWEEN_GT_LT,
    PT_BETWEEN_EQ_NA,
    PT_BETWEEN_INF_LE,
    PT_BETWEEN_INF_LT,
    PT_BETWEEN_GE_INF,
    PT_BETWEEN_GT_INF,
    PT_RANGE,
    PT_MODULUS,
    PT_RAND,
    PT_DRAND,
    PT_POSITION,
    PT_SUBSTRING,
    PT_OCTET_LENGTH,
    PT_BIT_LENGTH,
    PT_SUBSTRING_INDEX,
    PT_MD5,
    PT_SPACE,
    PT_CHAR_LENGTH,
    PT_LOWER,
    PT_UPPER,
    PT_TRIM,
    PT_LTRIM,
    PT_RTRIM,
    PT_LPAD,
    PT_RPAD,
    PT_REPLACE,
    PT_TRANSLATE,
    PT_REPEAT,
    PT_ADD_MONTHS,
    PT_LAST_DAY,
    PT_MONTHS_BETWEEN,
    PT_SYS_DATE,
    PT_TO_CHAR,
    PT_TO_DATE,
    PT_TO_NUMBER,
    PT_SYS_TIME,
    PT_SYS_TIMESTAMP,
    PT_CURRENT_TIMESTAMP,
    PT_SYS_DATETIME,
    PT_CURRENT_DATETIME,
    PT_CURRENT_TIME,
    PT_CURRENT_DATE,
    PT_UTC_TIME,
    PT_UTC_DATE,
    PT_TO_TIME,
    PT_TO_TIMESTAMP,
    PT_TO_DATETIME,
    PT_CURRENT_VALUE,
    PT_NEXT_VALUE,
    PT_INST_NUM,
    PT_ROWNUM,
    PT_ORDERBY_NUM,
    PT_CONNECT_BY_ISCYCLE,
    PT_CONNECT_BY_ISLEAF,
    PT_LEVEL,
    PT_SYS_CONNECT_BY_PATH,
    PT_EXTRACT,
    PT_LIKE_ESCAPE,
    PT_CAST,
    PT_CASE,
    PT_CURRENT_USER,
    PT_LOCAL_TRANSACTION_ID,
    PT_FLOOR,
    PT_CEIL,
    PT_SIGN,
    PT_POWER,
    PT_ROUND,
    PT_ABS,
    PT_TRUNC,
    PT_CHR,
    PT_INSTR,
    PT_LEAST,
    PT_GREATEST,
    PT_PATH_EXPR_SET,
    PT_ENCRYPT,
    PT_DECRYPT,
    PT_STRCAT,
    PT_NULLIF,
    PT_COALESCE,
    PT_NVL,
    PT_NVL2,
    PT_DECODE,
    PT_RANDOM,
    PT_DRANDOM,
    PT_INCR,
    PT_DECR,
    PT_LOG,
    PT_EXP,
    PT_SQRT,
    PT_CONCAT,
    PT_CONCAT_WS,
    PT_FIELD,
    PT_LEFT,
    PT_RIGHT,
    PT_LOCATE,
    PT_MID,
    PT_STRCMP,
    PT_REVERSE,
    PT_ACOS,
    PT_ASIN,
    PT_ATAN,
    PT_ATAN2,
    PT_COS,
    PT_SIN,
    PT_COT,
    PT_TAN,
    PT_DEGREES,
    PT_RADIANS,
    PT_PI,
    PT_FORMAT,
    PT_DISK_SIZE,
    PT_LN,
    PT_LOG2,
    PT_LOG10,
    PT_TIME_FORMAT,
    PT_TIMESTAMP,
    PT_UNIX_TIMESTAMP,
    PT_FROM_UNIXTIME,
    PT_SCHEMA,
    PT_DATABASE,
    PT_VERSION,
    PT_ADDDATE,
    PT_DATE_ADD,
    PT_SUBDATE,
    PT_DATE_SUB,
    PT_DATE_FORMAT,
    PT_DATEF,
    PT_TIMEF,
    PT_YEARF,
    PT_MONTHF,
    PT_DAYF,
    PT_HOURF,
    PT_MINUTEF,
    PT_SECONDF,
    PT_DAYOFMONTH,
    PT_WEEKDAY,
    PT_DAYOFWEEK,
    PT_DAYOFYEAR,
    PT_QUARTERF,
    PT_TODAYS,
    PT_FROMDAYS,
    PT_TIMETOSEC,
    PT_SECTOTIME,
    PT_MAKEDATE,
    PT_MAKETIME,
    PT_WEEKF,
    PT_USER,
    PT_ROW_COUNT,
    PT_LAST_INSERT_ID,
    PT_DATEDIFF,
    PT_TIMEDIFF,
    PT_STR_TO_DATE,
    PT_DEFAULTF,
    PT_LIST_DBS,
    PT_OID_OF_DUPLICATE_KEY,
    PT_LIKE_LOWER_BOUND,
    PT_LIKE_UPPER_BOUND,
    PT_BIT_TO_BLOB,
    PT_BLOB_FROM_FILE,
    PT_BLOB_LENGTH,
    PT_BLOB_TO_BIT,
    PT_CHAR_TO_BLOB,
    PT_CHAR_TO_CLOB,
    PT_CLOB_FROM_FILE,
    PT_CLOB_LENGTH,
    PT_CLOB_TO_CHAR,
    PT_TYPEOF,
    PT_FUNCTION_HOLDER,
    PT_INDEX_CARDINALITY,
    PT_DEFINE_VARIABLE,
    PT_EVALUATE_VARIABLE,
    PT_EXEC_STATS,
    PT_ADDTIME,
    PT_BIN,
    PT_FINDINSET,
    PT_HEX,
    PT_ASCII,
    PT_CONV,
    PT_RLIKE,
    PT_NOT_RLIKE,
    PT_RLIKE_BINARY,
    PT_NOT_RLIKE_BINARY,
    PT_TO_ENUMERATION_VALUE,
    PT_INET_ATON,
    PT_INET_NTOA,
    PT_CHARSET,
    PT_COERCIBILITY,
    PT_COLLATION,
    PT_WIDTH_BUCKET,
    PT_TRACE_STATS,
    PT_INDEX_PREFIX,
    PT_AES_ENCRYPT,
    PT_AES_DECRYPT,
    PT_SHA_ONE,
    PT_SHA_TWO,
    PT_TO_BASE64,
    PT_FROM_BASE64,
    PT_SLEEP,
    PT_SYS_GUID,
    PT_DBTIMEZONE,
    PT_SESSIONTIMEZONE,
    PT_TZ_OFFSET,
    PT_NEW_TIME,
    PT_FROM_TZ,
    PT_TO_DATETIME_TZ,
    PT_TO_TIMESTAMP_TZ,
    PT_UTC_TIMESTAMP,
    PT_CRC32,
    PT_SCHEMA_DEF,
    PT_CONV_TZ,
    PT_LAST_OPCODE
};

typedef PT_PARTITION_INFO

typedef struct pt_partition_info PT_PARTITION_INFO;

enum PT_PARTITION_TYPE

enum PT_PARTITION_TYPE {
    PT_PARTITION_HASH = 0,
    PT_PARTITION_RANGE,
    PT_PARTITION_LIST
};

typedef PT_PARTS_INFO

typedef struct pt_parts_info PT_PARTS_INFO;

typedef PT_PLAN_TRACE_INFO

typedef struct pt_plan_trace_info PT_PLAN_TRACE_INFO;

typedef PT_POINTER_INFO

typedef struct pt_pointer_info PT_POINTER_INFO;

typedef PT_POINTER_TYPE

typedef enum pt_pointer_type PT_POINTER_TYPE;

typedef PT_PREPARE_INFO

typedef struct pt_prepare_info PT_PREPARE_INFO;

typedef PT_PREPARE_TO_COMMIT_INFO

typedef struct pt_attach_info PT_PREPARE_TO_COMMIT_INFO;

typedef PT_PRINT_VALUE_FUNC

typedef PARSER_VARCHAR *(* PT_PRINT_VALUE_FUNC) (PARSER_CONTEXT *parser, const PT_NODE *val);

enum PT_PRIV_TYPE

enum PT_PRIV_TYPE {
    PT_NO_PRIV = 2000,
    PT_ADD_PRIV,
    PT_ALL_PRIV,
    PT_ALTER_PRIV,
    PT_DELETE_PRIV,
    PT_DROP_PRIV,
    PT_EXECUTE_PRIV,
    PT_INDEX_PRIV,
    PT_INSERT_PRIV,
    PT_REFERENCES_PRIV,
    PT_SELECT_PRIV,
    PT_UPDATE_PRIV,
    PT_EXECUTE_PROCEDURE_PRIV
};

typedef PT_QUERY_INFO

typedef struct pt_query_info PT_QUERY_INFO;

typedef PT_REMOVE_TRIGGER_INFO

typedef struct pt_remove_trigger_info PT_REMOVE_TRIGGER_INFO;

typedef PT_RENAME_INFO

typedef struct pt_rename_info PT_RENAME_INFO;

typedef PT_RENAME_SERVER_INFO

typedef struct pt_rename_server_info PT_RENAME_SERVER_INFO;

typedef PT_RENAME_TRIGGER_INFO

typedef struct pt_rename_trigger_info PT_RENAME_TRIGGER_INFO;

typedef PT_RESERVED_NAME

typedef struct pt_reserved_name PT_RESERVED_NAME;

enum PT_RESERVED_NAME_ID

enum PT_RESERVED_NAME_ID {
    RESERVED_T_PAGEID = 0,
    RESERVED_T_SLOTID,
    RESERVED_T_VOLUMEID,
    RESERVED_T_OFFSET,
    RESERVED_T_LENGTH,
    RESERVED_T_REC_TYPE,
    RESERVED_T_REPRID,
    RESERVED_T_CHN,
    RESERVED_T_MVCC_INSID,
    RESERVED_T_MVCC_DELID,
    RESERVED_T_MVCC_FLAGS,
    RESERVED_T_MVCC_PREV_VERSION_LSA,
    RESERVED_P_CLASS_OID,
    RESERVED_P_CUR_VOLUMEID,
    RESERVED_P_CUR_PAGEID,
    RESERVED_P_PREV_PAGEID,
    RESERVED_P_NEXT_PAGEID,
    RESERVED_P_NUM_SLOTS,
    RESERVED_P_NUM_RECORDS,
    RESERVED_P_ANCHOR_TYPE,
    RESERVED_P_ALIGNMENT,
    RESERVED_P_TOTAL_FREE,
    RESERVED_P_CONT_FREE,
    RESERVED_P_OFFSET_TO_FREE_AREA,
    RESERVED_P_IS_SAVING,
    RESERVED_P_UPDATE_BEST,
    RESERVED_KEY_VOLUMEID,
    RESERVED_KEY_PAGEID,
    RESERVED_KEY_SLOTID,
    RESERVED_KEY_KEY,
    RESERVED_KEY_OID_COUNT,
    RESERVED_KEY_FIRST_OID,
    RESERVED_KEY_OVERFLOW_KEY,
    RESERVED_KEY_OVERFLOW_OIDS,
    RESERVED_BT_NODE_VOLUMEID,
    RESERVED_BT_NODE_PAGEID,
    RESERVED_BT_NODE_TYPE,
    RESERVED_BT_NODE_KEY_COUNT,
    RESERVED_BT_NODE_FIRST_KEY,
    RESERVED_BT_NODE_LAST_KEY,
    RESERVED_ATTR_COUNT,
    RESERVED_FIRST_RECORD_INFO = RESERVED_T_PAGEID,
    RESERVED_FIRST_MVCC_INFO = RESERVED_T_MVCC_INSID,
    RESERVED_LAST_RECORD_INFO = RESERVED_T_MVCC_PREV_VERSION_LSA,
    RESERVED_FIRST_PAGE_INFO = RESERVED_P_CLASS_OID,
    RESERVED_LAST_PAGE_INFO = RESERVED_P_UPDATE_BEST,
    RESERVED_FIRST_KEY_INFO = RESERVED_KEY_VOLUMEID,
    RESERVED_LAST_KEY_INFO = RESERVED_KEY_OVERFLOW_OIDS,
    RESERVED_FIRST_BT_NODE_INFO = RESERVED_BT_NODE_VOLUMEID,
    RESERVED_LAST_BT_NODE_INFO = RESERVED_BT_NODE_LAST_KEY
};

enum PT_RESERVED_NAME_TYPE

enum PT_RESERVED_NAME_TYPE {
    RESERVED_NAME_INVALID = -1,
    RESERVED_NAME_RECORD_INFO = 0,
    RESERVED_NAME_PAGE_INFO,
    RESERVED_NAME_KEY_INFO,
    RESERVED_NAME_BTREE_NODE_INFO
};

typedef PT_RESOLUTION_INFO

typedef struct pt_resolution_info PT_RESOLUTION_INFO;

typedef PT_REVOKE_INFO

typedef struct pt_revoke_info PT_REVOKE_INFO;

typedef PT_ROLLBACK_WORK_INFO

typedef struct pt_rollback_work_info PT_ROLLBACK_WORK_INFO;

typedef PT_SAVEPOINT_INFO

typedef struct pt_savepoint_info PT_SAVEPOINT_INFO;

typedef PT_SCOPE_INFO

typedef struct pt_scope_info PT_SCOPE_INFO;

typedef PT_SELECT_INFO

typedef struct pt_select_info PT_SELECT_INFO;

typedef PT_SERIAL_INFO

typedef struct pt_serial_info PT_SERIAL_INFO;

typedef PT_SET_NAMES_INFO

typedef struct pt_set_names_info PT_SET_NAMES_INFO;

typedef PT_SET_OPT_LVL_INFO

typedef struct pt_set_opt_lvl_info PT_SET_OPT_LVL_INFO;

typedef PT_SET_SESSION_VARIABLE_INFO

typedef struct pt_set_session_variable_info PT_SET_SESSION_VARIABLE_INFO;

typedef PT_SET_SYS_PARAMS_INFO

typedef struct pt_set_sys_params_info PT_SET_SYS_PARAMS_INFO;

typedef PT_SET_TIMEZONE_INFO

typedef struct pt_set_timezone_info PT_SET_TIMEZONE_INFO;

typedef PT_SET_TRIGGER_INFO

typedef struct pt_set_trigger_info PT_SET_TRIGGER_INFO;

typedef PT_SET_XACTION_INFO

typedef struct pt_set_xaction_info PT_SET_XACTION_INFO;

typedef PT_SHOWSTMT_INFO

typedef struct pt_showstmt_info PT_SHOWSTMT_INFO;

typedef PT_SORT_SPEC_INFO

typedef struct pt_sort_spec_info PT_SORT_SPEC_INFO;

enum PT_SPEC_FLAG

enum PT_SPEC_FLAG {
    PT_SPEC_FLAG_NONE = 0x0,
    PT_SPEC_FLAG_UPDATE = 0x01,
    PT_SPEC_FLAG_DELETE = 0x02,
    PT_SPEC_FLAG_HAS_UNIQUE = 0x04,
    PT_SPEC_FLAG_FROM_VCLASS = 0x08,
    PT_SPEC_FLAG_CONTAINS_OID = 0x10,
    PT_SPEC_FLAG_FOR_UPDATE_CLAUSE = 0x20,
    PT_SPEC_FLAG_RECORD_INFO_SCAN = 0x40,
    PT_SPEC_FLAG_PAGE_INFO_SCAN = 0x80,
    PT_SPEC_FLAG_KEY_INFO_SCAN = 0x100,
    PT_SPEC_FLAG_BTREE_NODE_INFO_SCAN = 0x200,
    PT_SPEC_FLAG_MVCC_COND_REEV = 0x400,
    PT_SPEC_FLAG_MVCC_ASSIGN_REEV = 0x800,
    PT_SPEC_FLAG_DOESNT_HAVE_UNIQUE = 0x1000,
    PT_SPEC_FLAG_SAMPLING_SCAN = 0x2000,
    PT_SPEC_FLAG_REFERENCED_AT_ODKU = 0x4000,
    PT_SPEC_FLAG_NO_PARALLEL_HEAP_SCAN = 0x8000,
    PT_SPEC_FLAG_PARALLEL_THREAD = 0x10000
};

typedef PT_SPEC_INFO

typedef struct pt_spec_info PT_SPEC_INFO;

typedef PT_SP_BODY_INFO

typedef struct pt_stored_proc_body_info PT_SP_BODY_INFO;

typedef PT_STATEMENT_INFO

typedef union pt_statement_info PT_STATEMENT_INFO;

typedef PT_STORED_PROC_INFO

typedef struct pt_stored_proc_info PT_STORED_PROC_INFO;

typedef PT_STORED_PROC_PARAM_INFO

typedef struct pt_stored_proc_param_info PT_STORED_PROC_PARAM_INFO;

typedef PT_SYNONYM_INFO

typedef struct pt_synonym_info PT_SYNONYM_INFO;

typedef PT_TABLE_OPTION_INFO

typedef struct pt_table_option_info PT_TABLE_OPTION_INFO;

enum PT_TABLE_OPTION_TYPE

enum PT_TABLE_OPTION_TYPE {
    PT_TABLE_OPTION_NONE = 0,
    PT_TABLE_OPTION_REUSE_OID = 9000,
    PT_TABLE_OPTION_AUTO_INCREMENT,
    PT_TABLE_OPTION_CHARSET,
    PT_TABLE_OPTION_COLLATION,
    PT_TABLE_OPTION_COMMENT,
    PT_TABLE_OPTION_ENCRYPT,
    PT_TABLE_OPTION_DONT_REUSE_OID
};

typedef PT_TIME

typedef long PT_TIME;

typedef PT_TIMEOUT_INFO

typedef struct pt_timeout_info PT_TIMEOUT_INFO;

typedef PT_TIMESTAMPTZ

typedef DB_TIMESTAMPTZ PT_TIMESTAMPTZ;

typedef PT_TIMEZONE

typedef enum pt_time_zones PT_TIMEZONE;

typedef PT_TRACE_INFO

typedef struct pt_trace_info PT_TRACE_INFO;

typedef PT_TRIGGER_ACTION_INFO

typedef struct pt_trigger_action_info PT_TRIGGER_ACTION_INFO;

typedef PT_TRIGGER_SPEC_LIST_INFO

typedef struct pt_trigger_spec_list_info PT_TRIGGER_SPEC_LIST_INFO;

typedef PT_TRUNCATE_INFO

typedef struct pt_truncate_info PT_TRUNCATE_INFO;

typedef PT_TUPLE_VALUE_INFO

typedef struct pt_tuple_value_info PT_TUPLE_VALUE_INFO;

typedef PT_TYPE_ENUM

typedef enum pt_type_enum PT_TYPE_ENUM;

typedef PT_UNION_INFO

typedef struct pt_union_info PT_UNION_INFO;

typedef PT_UPDATE_INFO

typedef struct pt_update_info PT_UPDATE_INFO;

typedef PT_UPDATE_STATS_INFO

typedef struct pt_update_stats_info PT_UPDATE_STATS_INFO;

typedef PT_USE_INFO

typedef struct pt_use_info PT_USE_INFO;

typedef PT_UTIME

typedef long PT_UTIME;

typedef PT_VALUE_INFO

typedef struct pt_value_info PT_VALUE_INFO;

typedef PT_WITH_CLAUSE_INFO

typedef struct pt_with_clause_info PT_WITH_CLAUSE_INFO;

typedef PT_ZZ_ERROR_MSG_INFO

typedef struct PT_ZZ_ERROR_MSG_INFO PT_ZZ_ERROR_MSG_INFO;

typedef REMOTE_COLS

typedef struct remote_cols REMOTE_COLS;

typedef SEMANTIC_CHK_INFO

typedef struct semantic_chk_info SEMANTIC_CHK_INFO;

enum SERVER_INSERT_ALLOWED

enum SERVER_INSERT_ALLOWED {
    SERVER_INSERT_NOT_CHECKED = 0,
    SERVER_INSERT_IS_ALLOWED = 1,
    SERVER_INSERT_IS_NOT_ALLOWED = -1
};

typedef VIEW_CACHE_INFO

typedef struct view_cache_info VIEW_CACHE_INFO;

enum cdc_ddl_object_type

enum cdc_ddl_object_type {
    CDC_TABLE,
    CDC_INDEX,
    CDC_SERIAL,
    CDC_VIEW,
    CDC_FUNCTION,
    CDC_PROCEDURE,
    CDC_TRIGGER,
    CDC_USER
};

enum cdc_ddl_type

enum cdc_ddl_type {
    CDC_CREATE,
    CDC_ALTER,
    CDC_DROP,
    CDC_RENAME,
    CDC_TRUNCATE
};

enum parse__tree_8h_1a0ae1e3bf78c960c83e2d437efd802058

enum parse__tree_8h_1a0ae1e3bf78c960c83e2d437efd802058 {
    PT_IDX_HINT_FORCE = 1,
    PT_IDX_HINT_USE = 0,
    PT_IDX_HINT_IGNORE = -1,
    PT_IDX_HINT_ALL_EXCEPT = -2,
    PT_IDX_HINT_CLASS_NONE = -3,
    PT_IDX_HINT_NONE = -4
};

enum parse__tree_8h_1a10e74d65d7876276a8f6061c71dcf469

enum parse__tree_8h_1a10e74d65d7876276a8f6061c71dcf469 {
    PT_STOP_WALK = 0,
    PT_CONTINUE_WALK,
    PT_LEAF_WALK,
    PT_LIST_WALK
};

enum parse__tree_8h_1a1f3b6c692395e5007ff47ce5d9304c1c

enum parse__tree_8h_1a1f3b6c692395e5007ff47ce5d9304c1c {
    PT_USER_SELECT = 0,
    PT_MERGE_SELECT
};

enum pt_coll_coerc_lev

enum pt_coll_coerc_lev {
    PT_COLLATION_L0_COERC = 0,
    PT_COLLATION_L1_COERC,
    PT_COLLATION_L1_ISO_BIN_COERC,
    PT_COLLATION_L1_BIN_COERC,
    PT_COLLATION_L2_COERC,
    PT_COLLATION_L2_BINARY_COERC,
    PT_COLLATION_L2_BIN_COERC,
    PT_COLLATION_L3_COERC,
    PT_COLLATION_L4_COERC,
    PT_COLLATION_L4_BINARY_COERC,
    PT_COLLATION_L4_BIN_COERC,
    PT_COLLATION_L5_COERC,
    PT_COLLATION_L6_COERC,
    PT_COLLATION_NOT_APPLICABLE = PT_COLLATION_L6_COERC,
    PT_COLLATION_NOT_COERC = PT_COLLATION_L0_COERC,
    PT_COLLATION_FULLY_COERC = PT_COLLATION_L5_COERC
};

enum pt_currency_types

enum pt_currency_types {
    PT_CURRENCY_DOLLAR,
    PT_CURRENCY_YEN,
    PT_CURRENCY_BRITISH_POUND,
    PT_CURRENCY_WON,
    PT_CURRENCY_TL,
    PT_CURRENCY_CAMBODIAN_RIEL,
    PT_CURRENCY_CHINESE_RENMINBI,
    PT_CURRENCY_INDIAN_RUPEE,
    PT_CURRENCY_RUSSIAN_RUBLE,
    PT_CURRENCY_AUSTRALIAN_DOLLAR,
    PT_CURRENCY_CANADIAN_DOLLAR,
    PT_CURRENCY_BRASILIAN_REAL,
    PT_CURRENCY_ROMANIAN_LEU,
    PT_CURRENCY_EURO,
    PT_CURRENCY_SWISS_FRANC,
    PT_CURRENCY_DANISH_KRONE,
    PT_CURRENCY_NORWEGIAN_KRONE,
    PT_CURRENCY_BULGARIAN_LEV,
    PT_CURRENCY_VIETNAMESE_DONG,
    PT_CURRENCY_CZECH_KORUNA,
    PT_CURRENCY_POLISH_ZLOTY,
    PT_CURRENCY_SWEDISH_KRONA,
    PT_CURRENCY_CROATIAN_KUNA,
    PT_CURRENCY_SERBIAN_DINAR,
    PT_CURRENCY_NULL
};

enum pt_custom_print

enum pt_custom_print {
    PT_SUPPRESS_RESOLVED = 0x1,
    PT_SUPPRESS_META_ATTR_CLASS = (0x1 << 1),
    PT_SUPPRESS_INTO = (0x1 << 2),
    PT_SUPPRESS_SELECTOR = (0x1 << 3),
    PT_SUPPRESS_SELECT_LIST = (0x1 << 4),
    PT_SUPPRESS_QUOTES = (0x1 << 5),
    PT_PRINT_ALIAS = (0x1 << 6),
    PT_PAD_BYTE = (0x1 << 7),
    PT_CONVERT_RANGE = (0x1 << 8),
    PT_PRINT_DB_VALUE = (0x1 << 9),
    PT_SUPPRESS_INDEX = (0x1 << 10),
    PT_SUPPRESS_ORDERING = (0x1 << 11),
    PT_PRINT_QUOTES = (0x1 << 12),
    PT_FORCE_ORIGINAL_TABLE_NAME = (0x1 << 13),
    PT_SUPPRESS_CHARSET_PRINT = (0x1 << 14),
    PT_PRINT_DIFFERENT_SYSTEM_PARAMETERS = (0x1 << 15),
    PT_SHORT_PRINT = (0x1 << 16),
    PT_SUPPRESS_BIGINT_CAST = (0x1 << 17),
    PT_CHARSET_COLLATE_FULL = (0x1 << 18),
    PT_CHARSET_COLLATE_USER_ONLY = (0x1 << 19),
    PT_PRINT_USER = (0x1 << 20),
    PT_PRINT_ORIGINAL_BEFORE_CONST_FOLDING = (0x1 << 21),
    PT_PRINT_NO_HOST_VAR_INDEX = (0x1 << 22),
    PT_PRINT_NO_SPECIFIED_USER_NAME = (0x1 << 23),
    PT_PRINT_NO_CURRENT_USER_NAME = (0x1 << 24),
    PT_PRINT_SUPPRESS_SERVER_NAME = (0x1 << 25),
    PT_PRINT_SUPPRESS_SERIAL_CONV = (0x1 << 26),
    PT_PRINT_SUPPRESS_FOR_DBLINK = (0x1 << 27),
    PT_PRINT_HOST_VAR_COUNT = (0x1 << 28),
    PT_PRINT_DBLINK_INFO = (0x1 << 29),
    PT_PRINT_LOWER = (0x1 << 30)
};

union pt_data_value



enum pt_node_type

enum pt_node_type {
    PT_NODE_NONE = CUBRID_STMT_NONE,
    PT_ALTER = CUBRID_STMT_ALTER_CLASS,
    PT_ALTER_INDEX = CUBRID_STMT_ALTER_INDEX,
    PT_ALTER_USER = CUBRID_STMT_ALTER_USER,
    PT_ALTER_SERIAL = CUBRID_STMT_ALTER_SERIAL,
    PT_COMMIT_WORK = CUBRID_STMT_COMMIT_WORK,
    PT_CREATE_ENTITY = CUBRID_STMT_CREATE_CLASS,
    PT_CREATE_INDEX = CUBRID_STMT_CREATE_INDEX,
    PT_CREATE_USER = CUBRID_STMT_CREATE_USER,
    PT_CREATE_TRIGGER = CUBRID_STMT_CREATE_TRIGGER,
    PT_CREATE_SERIAL = CUBRID_STMT_CREATE_SERIAL,
    PT_DROP = CUBRID_STMT_DROP_CLASS,
    PT_DROP_INDEX = CUBRID_STMT_DROP_INDEX,
    PT_DROP_USER = CUBRID_STMT_DROP_USER,
    PT_DROP_VARIABLE = CUBRID_STMT_DROP_LABEL,
    PT_DROP_TRIGGER = CUBRID_STMT_DROP_TRIGGER,
    PT_DROP_SERIAL = CUBRID_STMT_DROP_SERIAL,
    PT_EVALUATE = CUBRID_STMT_EVALUATE,
    PT_RENAME = CUBRID_STMT_RENAME_CLASS,
    PT_ROLLBACK_WORK = CUBRID_STMT_ROLLBACK_WORK,
    PT_GRANT = CUBRID_STMT_GRANT,
    PT_REVOKE = CUBRID_STMT_REVOKE,
    PT_UPDATE_STATS = CUBRID_STMT_UPDATE_STATS,
    PT_GET_STATS = CUBRID_STMT_GET_STATS,
    PT_INSERT = CUBRID_STMT_INSERT,
    PT_SELECT = CUBRID_STMT_SELECT,
    PT_UPDATE = CUBRID_STMT_UPDATE,
    PT_DELETE = CUBRID_STMT_DELETE,
    PT_METHOD_CALL = CUBRID_STMT_CALL,
    PT_GET_XACTION = CUBRID_STMT_GET_ISO_LVL,
    PT_GET_OPT_LVL = CUBRID_STMT_GET_OPT_LVL,
    PT_SET_OPT_LVL = CUBRID_STMT_SET_OPT_LVL,
    PT_SET_SYS_PARAMS = CUBRID_STMT_SET_SYS_PARAMS,
    PT_SCOPE = CUBRID_STMT_SCOPE,
    PT_SET_TRIGGER = CUBRID_STMT_SET_TRIGGER,
    PT_GET_TRIGGER = CUBRID_STMT_GET_TRIGGER,
    PT_SAVEPOINT = CUBRID_STMT_SAVEPOINT,
    PT_PREPARE_TO_COMMIT = CUBRID_STMT_PREPARE,
    PT_2PC_ATTACH = CUBRID_STMT_ATTACH,
    PT_USE = CUBRID_STMT_USE,
    PT_REMOVE_TRIGGER = CUBRID_STMT_REMOVE_TRIGGER,
    PT_RENAME_TRIGGER = CUBRID_STMT_RENAME_TRIGGER,
    PT_CREATE_STORED_PROCEDURE = CUBRID_STMT_CREATE_STORED_PROCEDURE,
    PT_ALTER_STORED_PROCEDURE = CUBRID_STMT_ALTER_STORED_PROCEDURE,
    PT_DROP_STORED_PROCEDURE = CUBRID_STMT_DROP_STORED_PROCEDURE,
    PT_PREPARE_STATEMENT = CUBRID_STMT_PREPARE_STATEMENT,
    PT_EXECUTE_PREPARE = CUBRID_STMT_EXECUTE_PREPARE,
    PT_DEALLOCATE_PREPARE = CUBRID_STMT_DEALLOCATE_PREPARE,
    PT_TRUNCATE = CUBRID_STMT_TRUNCATE,
    PT_DO = CUBRID_STMT_DO,
    PT_SET_SESSION_VARIABLES = CUBRID_STMT_SET_SESSION_VARIABLES,
    PT_DROP_SESSION_VARIABLES = CUBRID_STMT_DROP_SESSION_VARIABLES,
    PT_MERGE = CUBRID_STMT_MERGE,
    PT_SET_NAMES = CUBRID_STMT_SET_NAMES,
    PT_SET_TIMEZONE = CUBRID_STMT_SET_TIMEZONE,
    PT_CREATE_SERVER = CUBRID_STMT_CREATE_SERVER,
    PT_DROP_SERVER = CUBRID_STMT_DROP_SERVER,
    PT_RENAME_SERVER = CUBRID_STMT_RENAME_SERVER,
    PT_ALTER_SERVER = CUBRID_STMT_ALTER_SERVER,
    PT_ALTER_SYNONYM = CUBRID_STMT_ALTER_SYNONYM,
    PT_CREATE_SYNONYM = CUBRID_STMT_CREATE_SYNONYM,
    PT_DROP_SYNONYM = CUBRID_STMT_DROP_SYNONYM,
    PT_RENAME_SYNONYM = CUBRID_STMT_RENAME_SYNONYM,
    PT_DIFFERENCE = CUBRID_MAX_STMT_TYPE,
    PT_INTERSECTION,
    PT_UNION,
    PT_ZZ_ERROR_MSG,
    PT_ALTER_TRIGGER,
    PT_ATTR_DEF,
    PT_AUTH_CMD,
    PT_AUTO_INCREMENT,
    PT_CHECK_OPTION,
    PT_CONSTRAINT,
    PT_CTE,
    PT_DATA_DEFAULT,
    PT_DATA_TYPE,
    PT_DOT_,
    PT_EVENT_OBJECT,
    PT_EVENT_SPEC,
    PT_EVENT_TARGET,
    PT_EXECUTE_TRIGGER,
    PT_EXPR,
    PT_FILE_PATH,
    PT_FUNCTION,
    PT_HOST_VAR,
    PT_ISOLATION_LVL,
    PT_METHOD_DEF,
    PT_NAME,
    PT_PARTITION,
    PT_PARTS,
    PT_RESOLUTION,
    PT_SET_XACTION,
    PT_SORT_SPEC,
    PT_SP_PARAMETERS,
    PT_SPEC,
    PT_TIMEOUT,
    PT_TRIGGER_ACTION,
    PT_TRIGGER_SPEC_LIST,
    PT_VALUE,
    PT_NODE_POINTER,
    PT_NODE_LIST,
    PT_TABLE_OPTION,
    PT_ATTR_ORDERING,
    PT_TUPLE_VALUE,
    PT_QUERY_TRACE,
    PT_INSERT_VALUE,
    PT_NAMED_ARG,
    PT_SHOWSTMT,
    PT_KILL_STMT,
    PT_VACUUM,
    PT_WITH_CLAUSE,
    PT_JSON_TABLE,
    PT_JSON_TABLE_NODE,
    PT_JSON_TABLE_COLUMN,
    PT_DBLINK_TABLE,
    PT_DBLINK_TABLE_DML,
    PT_SP_BODY,
    PT_NODE_NUMBER,
    PT_LAST_NODE_NUMBER = PT_NODE_NUMBER
};

enum pt_pointer_type

enum pt_pointer_type {
    PT_POINTER_NORMAL = 0,
    PT_POINTER_REF = 1
};

union pt_statement_info



enum pt_time_zones

enum pt_time_zones {
    PT_TIMEZONE_EASTERN,
    PT_TIMEZONE_CENTRAL,
    PT_TIMEZONE_MOUNTAIN,
    PT_TIMEZONE_PACIFIC
};

enum pt_type_enum

enum pt_type_enum {
    PT_TYPE_NONE = 1000,
    PT_TYPE_MIN = PT_TYPE_NONE,
    PT_TYPE_INTEGER,
    PT_TYPE_FLOAT,
    PT_TYPE_DOUBLE,
    PT_TYPE_SMALLINT,
    PT_TYPE_DATE,
    PT_TYPE_TIME,
    PT_TYPE_TIMESTAMP,
    PT_TYPE_DATETIME,
    PT_TYPE_MONETARY,
    PT_TYPE_NUMERIC,
    PT_TYPE_CHAR,
    PT_TYPE_VARCHAR,
    PT_TYPE_NCHAR_DEPRECATED,
    PT_TYPE_VARNCHAR_DEPRECATED,
    PT_TYPE_BIT,
    PT_TYPE_VARBIT,
    PT_TYPE_LOGICAL,
    PT_TYPE_MAYBE,
    PT_TYPE_JSON,
    PT_TYPE_NA,
    PT_TYPE_NULL,
    PT_TYPE_STAR,
    PT_TYPE_OBJECT,
    PT_TYPE_SET,
    PT_TYPE_MULTISET,
    PT_TYPE_SEQUENCE,
    PT_TYPE_MIDXKEY,
    PT_TYPE_COMPOUND,
    PT_TYPE_EXPR_SET,
    PT_TYPE_RESULTSET,
    PT_TYPE_BIGINT,
    PT_TYPE_BLOB,
    PT_TYPE_CLOB,
    PT_TYPE_ELO,
    PT_TYPE_ENUMERATION,
    PT_TYPE_TIMESTAMPLTZ,
    PT_TYPE_TIMESTAMPTZ,
    PT_TYPE_DATETIMETZ,
    PT_TYPE_DATETIMELTZ,
    PT_TYPE_MAX,
    PT_TYPE_TABLE_COLUMN
};

Public Attributes Documentation

variable pt_Reserved_name_table

PT_RESERVED_NAME pt_Reserved_name_table[];

Public Functions Documentation

function parser_allocate_string_buffer

void * parser_allocate_string_buffer (
    const  PARSER_CONTEXT * parser,
    const  int length,
    const  int align
) 

function pt_init_node

void pt_init_node (
    PT_NODE * node,
    PT_NODE_TYPE node_type
) 

function pt_is_json_doc_type

bool pt_is_json_doc_type (
    PT_TYPE_ENUM type
) 

function pt_is_json_value_type

bool pt_is_json_value_type (
    PT_TYPE_ENUM type
) 

Macro Definition Documentation

define CAST_POINTER_TO_NODE

#define CAST_POINTER_TO_NODE (
    p
) `/* multi line expression */`

define IS_UPDATE_OBJ

#define IS_UPDATE_OBJ (
    node
) `(node->node_type == PT_UPDATE && node->info.update.object_parameter)`

define MAX_KEYWORD_SIZE

#define MAX_KEYWORD_SIZE `(20 + 1 + 3)`

define MAX_NUM_PLAN_TRACE

#define MAX_NUM_PLAN_TRACE `100`

define MAX_PRINT_ERROR_CONTEXT_LENGTH

#define MAX_PRINT_ERROR_CONTEXT_LENGTH `64`

define NAME_FROM_CLASSNAME_DOT_STAR

#define NAME_FROM_CLASSNAME_DOT_STAR `2 /* classname.* */`

define NAME_FROM_PT_DOT

#define NAME_FROM_PT_DOT `1`

define NAME_FROM_STAR

#define NAME_FROM_STAR `3   /* * */`

define NAME_IN_PATH_EXPR

#define NAME_IN_PATH_EXPR `4`

define PARTITIONED_SUB_CLASS_TAG

#define PARTITIONED_SUB_CLASS_TAG `"__p__"`

define PT_ASSERT_NODE_TYPE

#define PT_ASSERT_NODE_TYPE (
    n,
    t
) `( assert ((n) != NULL && (n)->node_type == ( t )))`

define PT_ASSERT_NOT_NULL

#define PT_ASSERT_NOT_NULL (
    n
) `( assert ((n) != NULL ))`

define PT_CHECK_HQ_OP_EXCEPT_PRIOR

#define PT_CHECK_HQ_OP_EXCEPT_PRIOR (
    op
) `/* multi line expression */`

define PT_CHECK_RESERVED_NAME_BIND

#define PT_CHECK_RESERVED_NAME_BIND (
    spec_,
    reserved_id
) `/* multi line expression */`

define PT_CHECK_USER_SCHEMA_PROCEDURE_OR_FUNCTION

#define PT_CHECK_USER_SCHEMA_PROCEDURE_OR_FUNCTION (
    n
) `/* multi line expression */`

define PT_CLEAR_JMP_ENV

#define PT_CLEAR_JMP_ENV (
    parser
) `/* multi line expression */`

define PT_CREATE_ENTITY_ASSERT

#define PT_CREATE_ENTITY_ASSERT (
    n
) `( PT_ASSERT_NODE_TYPE ((n), PT_CREATE_ENTITY ))`

define PT_CREATE_ENTITY_NAME

#define PT_CREATE_ENTITY_NAME (
    n
) `( PT_CREATE_ENTITY_ASSERT ((n)), (n)->info.create_entity.entity_name)`

define PT_DOES_FUNCTION_HAVE_DIFFERENT_ARGS

#define PT_DOES_FUNCTION_HAVE_DIFFERENT_ARGS (
    op
) `/* multi line expression */`

define PT_EMPTY

#define PT_EMPTY `INT_MAX`

define PT_ERROR

#define PT_ERROR (
    parser,
    node,
    msg
) `pt_frob_error ( parser , node, msg)`

define PT_ERRORc

#define PT_ERRORc (
    parser,
    node,
    msg
) `pt_frob_error ( parser , node, "%s", msg)`

define PT_ERRORf

#define PT_ERRORf (
    parser,
    node,
    msg,
    arg1
) `pt_frob_error ( parser , node, msg, arg1)`

define PT_ERRORf2

#define PT_ERRORf2 (
    parser,
    node,
    msg,
    arg1,
    arg2
) `pt_frob_error ( parser , node, msg, arg1, arg2)`

define PT_ERRORf3

#define PT_ERRORf3 (
    parser,
    node,
    msg,
    arg1,
    arg2,
    arg3
) `pt_frob_error ( parser , node, msg, arg1, arg2, arg3)`

define PT_ERRORf4

#define PT_ERRORf4 (
    parser,
    node,
    msg,
    arg1,
    arg2,
    arg3,
    arg4
) `pt_frob_error ( parser , node, msg, arg1, arg2, arg3, arg4 )`

define PT_ERRORf5

#define PT_ERRORf5 (
    parser,
    node,
    msg,
    arg1,
    arg2,
    arg3,
    arg4,
    arg5
) `pt_frob_error ( parser , node, msg, arg1, arg2, arg3, arg4 , arg5 )`

define PT_ERRORm

#define PT_ERRORm (
    parser,
    node,
    setNo,
    msgNo
) `pt_cat_error ( parser , node, setNo , msgNo )`

define PT_ERRORmf

#define PT_ERRORmf (
    parser,
    node,
    setNo,
    msgNo,
    arg1
) `pt_cat_error ( parser , node, setNo , msgNo , arg1)`

define PT_ERRORmf2

#define PT_ERRORmf2 (
    parser,
    node,
    setNo,
    msgNo,
    arg1,
    arg2
) `pt_cat_error ( parser , node, setNo , msgNo , arg1, arg2)`

define PT_ERRORmf3

#define PT_ERRORmf3 (
    parser,
    node,
    setNo,
    msgNo,
    arg1,
    arg2,
    arg3
) `pt_cat_error ( parser , node, setNo , msgNo , arg1, arg2, arg3)`

define PT_ERRORmf4

#define PT_ERRORmf4 (
    parser,
    node,
    setNo,
    msgNo,
    arg1,
    arg2,
    arg3,
    arg4
) `pt_cat_error ( parser , node, setNo , msgNo , arg1, arg2, arg3, arg4 )`

define PT_ERRORmf5

#define PT_ERRORmf5 (
    parser,
    node,
    setNo,
    msgNo,
    arg1,
    arg2,
    arg3,
    arg4,
    arg5
) `pt_cat_error ( parser , node, setNo , msgNo , arg1, arg2, arg3, arg4 , arg5 )`

define PT_EXPR_ARG1

#define PT_EXPR_ARG1 (
    n
) `( PT_EXPR_ASSERT ((n)), (n)->info.expr.arg1)`

define PT_EXPR_ARG2

#define PT_EXPR_ARG2 (
    n
) `( PT_EXPR_ASSERT ((n)), (n)->info.expr.arg2)`

define PT_EXPR_ARG3

#define PT_EXPR_ARG3 (
    n
) `( PT_EXPR_ASSERT ((n)), (n)->info.expr.arg3)`

define PT_EXPR_ASSERT

#define PT_EXPR_ASSERT (
    n
) `( PT_ASSERT_NODE_TYPE ((n), PT_EXPR ))`

define PT_EXPR_INFO_CAST_COLL_MODIFIER

#define PT_EXPR_INFO_CAST_COLL_MODIFIER `16384  /* CAST  is  for  COLLATION  modifier */`

define PT_EXPR_INFO_CAST_NOFAIL

#define PT_EXPR_INFO_CAST_NOFAIL `2048  /* flag  for  non  failing  cast operation; at runtime will  return  null  DB_VALUE * instead  of  failing */`

define PT_EXPR_INFO_CAST_SHOULD_FOLD

#define PT_EXPR_INFO_CAST_SHOULD_FOLD `4096 /* flag  which  controls  if  a  cast expr should  be  folded */`

define PT_EXPR_INFO_CAST_WRAP

#define PT_EXPR_INFO_CAST_WRAP `131072  /* 0x20000, CAST  is  wrapped  by  compiling */`

define PT_EXPR_INFO_CLEAR_FLAG

#define PT_EXPR_INFO_CLEAR_FLAG (
    e,
    f
) `( e )->info.expr.flag &= ( int ) ~(f)`

define PT_EXPR_INFO_CNF_DONE

#define PT_EXPR_INFO_CNF_DONE `1    /* CNF  conversion  has done? */`

define PT_EXPR_INFO_COPYPUSH

#define PT_EXPR_INFO_COPYPUSH `/* multi line expression */`

define PT_EXPR_INFO_DO_NOT_AUTOPARAM

#define PT_EXPR_INFO_DO_NOT_AUTOPARAM `65536    /* don ' t  auto  parameterize expr at  qo_auto_parameterize () */`

define PT_EXPR_INFO_EMPTY_RANGE

#define PT_EXPR_INFO_EMPTY_RANGE `2 /* empty RANGE spec? */`

define PT_EXPR_INFO_FULL_RANGE

#define PT_EXPR_INFO_FULL_RANGE `1024   /* non - null  full  RANGE  term ? */`

define PT_EXPR_INFO_FUNCTION_INDEX

#define PT_EXPR_INFO_FUNCTION_INDEX `8192   /* function index expression flag */`

define PT_EXPR_INFO_GROUPBYNUM_C

#define PT_EXPR_INFO_GROUPBYNUM_C `16   /* compatible with groupby_num () */`

define PT_EXPR_INFO_GROUPBYNUM_LIMIT

#define PT_EXPR_INFO_GROUPBYNUM_LIMIT `32768    /* flag  that  marks  if  the expression resulted from a  GROUP  BY ... LIMIT * statement */`

define PT_EXPR_INFO_GROUPBYNUM_NC

#define PT_EXPR_INFO_GROUPBYNUM_NC `32  /* not compatible with groupby_num () */`

define PT_EXPR_INFO_INSTNUM_C

#define PT_EXPR_INFO_INSTNUM_C `4   /* compatible with inst_num() */`

define PT_EXPR_INFO_INSTNUM_NC

#define PT_EXPR_INFO_INSTNUM_NC `8  /* not compatible with inst_num() */`

define PT_EXPR_INFO_IS_FLAGED

#define PT_EXPR_INFO_IS_FLAGED (
    e,
    f
) `(( e )->info.expr.flag & ( int ) (f))`

define PT_EXPR_INFO_LEFT_OUTER

#define PT_EXPR_INFO_LEFT_OUTER `128    /* Oracle 's left outer join operator */`

define PT_EXPR_INFO_ORDERBYNUM_C

#define PT_EXPR_INFO_ORDERBYNUM_C `PT_EXPR_INFO_INSTNUM_C /* compatible with orderby_num () */`

define PT_EXPR_INFO_ORDERBYNUM_NC

#define PT_EXPR_INFO_ORDERBYNUM_NC `PT_EXPR_INFO_INSTNUM_NC /* not compatible with orderby_num () */`

define PT_EXPR_INFO_REMOVABLE

#define PT_EXPR_INFO_REMOVABLE `1048576 /* 0x100000, expression is  removable */`

define PT_EXPR_INFO_RIGHT_OUTER

#define PT_EXPR_INFO_RIGHT_OUTER `256   /* Oracle 's right outer join operator */`

define PT_EXPR_INFO_ROWNUM_ONLY

#define PT_EXPR_INFO_ROWNUM_ONLY `262144    /* 0x40000, rownum  only  predicate */`

define PT_EXPR_INFO_SET_FLAG

#define PT_EXPR_INFO_SET_FLAG (
    e,
    f
) `( e )->info.expr.flag |= ( int ) (f)`

define PT_EXPR_INFO_SP_NUMERIC

#define PT_EXPR_INFO_SP_NUMERIC `524288 /* 0x80000, CAST  as  NUMERIC  for  SP */`

define PT_EXPR_INFO_TRANSITIVE

#define PT_EXPR_INFO_TRANSITIVE `64 /* always  true  transitive join term ? */`

define PT_EXPR_OP

#define PT_EXPR_OP (
    n
) `( PT_EXPR_ASSERT ((n)), (n)->info.expr.op)`

define PT_GET_COLLATION_MODIFIER

#define PT_GET_COLLATION_MODIFIER (
    p
) `/* multi line expression */`

define PT_GET_RESERVED_NAME_FIRST_AND_LAST

#define PT_GET_RESERVED_NAME_FIRST_AND_LAST (
    type,
    first,
    last
) `/* multi line expression */`

define PT_GET_RESERVED_NAME_TYPE

#define PT_GET_RESERVED_NAME_TYPE (
    reserved_id
) `/* multi line expression */`

define PT_HAS_COLLATION

#define PT_HAS_COLLATION (
    t
) `/* multi line expression */`

define PT_HAS_COLLATION_MODIFIER

#define PT_HAS_COLLATION_MODIFIER (
    p
) `( PT_GET_COLLATION_MODIFIER (( p )) != -1)`

define PT_HAS_DATE_PART

#define PT_HAS_DATE_PART (
    t
) `/* multi line expression */`

define PT_HAS_TIME_PART

#define PT_HAS_TIME_PART (
    t
) `/* multi line expression */`

define PT_HINT_INDEX_LS

#define PT_HINT_INDEX_LS `(1 ULL << 27) /* enable  loose index scan */`

define PT_HINT_INDEX_SS

#define PT_HINT_INDEX_SS `(1 ULL <<  2) /* enable index skip scan */`

define PT_HINT_INLINE_CTE

#define PT_HINT_INLINE_CTE `(1 ULL << 42)   /* inline  CTE */`

define PT_HINT_INSERT_MODE

#define PT_HINT_INSERT_MODE `(1 ULL << 18)  /* set insert_executeion_mode */`

define PT_HINT_JDBC_CACHE

#define PT_HINT_JDBC_CACHE `(1 ULL << 14)   /* jdbc_cache */`

define PT_HINT_LEADING

#define PT_HINT_LEADING `(1 ULL << 37)  /* force specific table to join left-to-right */`

define PT_HINT_LK_TIMEOUT

#define PT_HINT_LK_TIMEOUT `(1 ULL <<  9)   /* lock_timeout */`

define PT_HINT_MATERIALIZE_CTE

#define PT_HINT_MATERIALIZE_CTE `(1 ULL << 43)  /* materialize  CTE */`

define PT_HINT_NLJ_KEEP_HEAP_PAGE_PINNED

#define PT_HINT_NLJ_KEEP_HEAP_PAGE_PINNED `(1 ULL << 46)    /* keep page fixed on  nl join first table heap scan */`

define PT_HINT_NONE

#define PT_HINT_NONE `(0ULL      )  /* no hint */`

define PT_HINT_NO_COVERING_IDX

#define PT_HINT_NO_COVERING_IDX `(1 ULL << 17)  /* do  not use covering index scan */`

define PT_HINT_NO_ELIMINATE_JOIN

#define PT_HINT_NO_ELIMINATE_JOIN `(1 ULL << 35)    /* do  not  eliminate join */`

define PT_HINT_NO_HASH_AGGREGATE

#define PT_HINT_NO_HASH_AGGREGATE `(1 ULL << 24)    /* no hash aggregate  evaluation */`

define PT_HINT_NO_HASH_LIST_SCAN

#define PT_HINT_NO_HASH_LIST_SCAN `(1 ULL << 11)    /* no hash list scan */`

define PT_HINT_NO_IDX_DESC

#define PT_HINT_NO_IDX_DESC `(1 ULL << 19)  /* do  not use descending index scan */`

define PT_HINT_NO_INDEX_LS

#define PT_HINT_NO_INDEX_LS `(1 ULL << 26)  /* disable  loose index scan */`

define PT_HINT_NO_INDEX_SS

#define PT_HINT_NO_INDEX_SS `(1 ULL <<  1)  /* disable index skip scan */`

define PT_HINT_NO_LOGGING

#define PT_HINT_NO_LOGGING `(1 ULL << 10)   /* no_logging */`

define PT_HINT_NO_MERGE

#define PT_HINT_NO_MERGE `(1 ULL << 34) /* do  not merge view  or in-line view */`

define PT_HINT_NO_MULTI_RANGE_OPT

#define PT_HINT_NO_MULTI_RANGE_OPT `(1 ULL << 20)   /* do  not use multi range optimization */`

define PT_HINT_NO_PARALLEL_HASH_JOIN

#define PT_HINT_NO_PARALLEL_HASH_JOIN `(1 ULL << 45)    /* disable parallel hash join */`

define PT_HINT_NO_PARALLEL_HEAP_SCAN

#define PT_HINT_NO_PARALLEL_HEAP_SCAN `(1 ULL << 40)    /* disable parallel heap scan */`

define PT_HINT_NO_PARALLEL_SUBQUERY

#define PT_HINT_NO_PARALLEL_SUBQUERY `(1 ULL << 44) /* disable parallel subquery */`

define PT_HINT_NO_PUSH_PRED

#define PT_HINT_NO_PUSH_PRED `(1 ULL << 33) /* do  not push predicates */`

define PT_HINT_NO_SORT_LIMIT

#define PT_HINT_NO_SORT_LIMIT `(1 ULL << 23)`

define PT_HINT_NO_SUBQUERY_CACHE

#define PT_HINT_NO_SUBQUERY_CACHE `(1 ULL << 38)    /* don ' t use the subquery result cache */`

define PT_HINT_NO_SUPPLEMENTAL_LOG

#define PT_HINT_NO_SUPPLEMENTAL_LOG `(1 ULL << 28)  /* Used in DML ( only  for update delete  currently ) to avoid  adding  DML  supplemental  logs  that  may  be  duplicated  by  DDL */`

define PT_HINT_NO_USE_HASH

#define PT_HINT_NO_USE_HASH `(1 ULL << 39)  /* disable hash-join */`

define PT_HINT_ORDERED

#define PT_HINT_ORDERED `(1 ULL <<  0)  /* force join left-to-right */`

define PT_HINT_PARALLEL

#define PT_HINT_PARALLEL `(1 ULL << 41) /* parallel query execution  threads */`

define PT_HINT_QUERY_CACHE

#define PT_HINT_QUERY_CACHE `(1 ULL << 12)  /* query_cache */`

define PT_HINT_QUERY_NO_CACHE

#define PT_HINT_QUERY_NO_CACHE `(1 ULL << 32)   /* don ' t use the query cache (unused) */`

define PT_HINT_RECOMPILE

#define PT_HINT_RECOMPILE `(1 ULL <<  8)    /* recompile */`

define PT_HINT_REEXECUTE

#define PT_HINT_REEXECUTE `(1 ULL << 13)    /* reexecute */`

define PT_HINT_SAMPLING_SCAN

#define PT_HINT_SAMPLING_SCAN `(1 ULL << 36)    /* SELECT sampling data instead  of  full data */`

define PT_HINT_SELECT_BTREE_NODE_INFO

#define PT_HINT_SELECT_BTREE_NODE_INFO `(1 ULL <<  3)   /* SELECT b-tree node information */`

define PT_HINT_SELECT_KEY_INFO

#define PT_HINT_SELECT_KEY_INFO `(1 ULL << 31)  /* SELECT key information from index b-tree instead  of table record data */`

define PT_HINT_SELECT_PAGE_INFO

#define PT_HINT_SELECT_PAGE_INFO `(1 ULL << 30) /* SELECT page header information from heap file instead  of record data */`

define PT_HINT_SELECT_RECORD_INFO

#define PT_HINT_SELECT_RECORD_INFO `(1 ULL << 29)   /* SELECT record info from tuple header instead  of data */`

define PT_HINT_SKIP_UPDATE_NULL

#define PT_HINT_SKIP_UPDATE_NULL `(1 ULL << 25)`

define PT_HINT_USE_HASH

#define PT_HINT_USE_HASH `(1 ULL <<  7) /* force hash-join */`

define PT_HINT_USE_IDX

#define PT_HINT_USE_IDX `(1 ULL <<  5)  /* force idx-join */`

define PT_HINT_USE_IDX_DESC

#define PT_HINT_USE_IDX_DESC `(1 ULL << 16) /* descending index scan */`

define PT_HINT_USE_INSERT_IDX

#define PT_HINT_USE_INSERT_IDX `(1 ULL << 22)   /* do  not  generate SORT- LIMIT plan */`

define PT_HINT_USE_MERGE

#define PT_HINT_USE_MERGE `(1 ULL <<  6)    /* force m-join */`

define PT_HINT_USE_NL

#define PT_HINT_USE_NL `(1 ULL <<  4)   /* force nl -join */`

define PT_HINT_USE_SBR

#define PT_HINT_USE_SBR `(1 ULL << 15)  /* statement based  replication */`

define PT_HINT_USE_UPDATE_IDX

#define PT_HINT_USE_UPDATE_IDX `(1 ULL << 21)   /* use index for merge update */`

define PT_IDX_HINT_ORDER

#define PT_IDX_HINT_ORDER (
    hint_node
) `/* multi line expression */`

define PT_INTERNAL_ERROR

#define PT_INTERNAL_ERROR (
    parser,
    what
) `pt_internal_error (( parser ), __FILE__ , __LINE__ , ( what ))`

define PT_IS_ANALYTIC_NODE

#define PT_IS_ANALYTIC_NODE (
    n
) `/* multi line expression */`

define PT_IS_ASSIGN_NODE

#define PT_IS_ASSIGN_NODE (
    n
) `( (n) && ((n)->node_type == PT_EXPR && (n)->info.expr.op == PT_ASSIGN ) )`

define PT_IS_BIT_STRING_TYPE

#define PT_IS_BIT_STRING_TYPE (
    t
) `/* multi line expression */`

define PT_IS_CAST_CONST_INPUT_HOSTVAR

#define PT_IS_CAST_CONST_INPUT_HOSTVAR (
    n
) `/* multi line expression */`

define PT_IS_CHAR_STRING_TYPE

#define PT_IS_CHAR_STRING_TYPE (
    t
) `/* multi line expression */`

define PT_IS_CLASSOID_NAME

#define PT_IS_CLASSOID_NAME (
    x
) `(  ( x )->info.name.meta_class == PT_CLASSOID_ATTR )`

define PT_IS_CLASS_METHOD

#define PT_IS_CLASS_METHOD (
    n
) `/* multi line expression */`

define PT_IS_COLLECTION_TYPE

#define PT_IS_COLLECTION_TYPE (
    t
) `/* multi line expression */`

define PT_IS_COMPLEX_TYPE

#define PT_IS_COMPLEX_TYPE (
    t
) `/* multi line expression */`

define PT_IS_CONST

#define PT_IS_CONST (
    n
) `/* multi line expression */`

define PT_IS_CONST_INPUT_HOSTVAR

#define PT_IS_CONST_INPUT_HOSTVAR (
    n
) `/* multi line expression */`

define PT_IS_CONST_NOT_HOSTVAR

#define PT_IS_CONST_NOT_HOSTVAR (
    n
) `/* multi line expression */`

define PT_IS_CORRELATED_SUBQUERY

#define PT_IS_CORRELATED_SUBQUERY (
    n
) `( PT_IS_QUERY ((n)) && ((n)->info.query.correlation_level > 0) )`

define PT_IS_COUNTER_TYPE

#define PT_IS_COUNTER_TYPE (
    t
) `PT_IS_DISCRETE_NUMBER_TYPE ( t )`

define PT_IS_DATE_TIME_TYPE

#define PT_IS_DATE_TIME_TYPE (
    t
) `/* multi line expression */`

define PT_IS_DATE_TIME_WITH_TZ_TYPE

#define PT_IS_DATE_TIME_WITH_TZ_TYPE (
    t
) `/* multi line expression */`

#define PT_IS_DBLINK_DML_QUERY (
    n
) `/* multi line expression */`

define PT_IS_DIFFERENCE

#define PT_IS_DIFFERENCE (
    n
) `( (n) && ((n)->node_type == PT_DIFFERENCE ) )`

define PT_IS_DISCRETE_NUMBER_TYPE

#define PT_IS_DISCRETE_NUMBER_TYPE (
    t
) `/* multi line expression */`

define PT_IS_DISTINCT

#define PT_IS_DISTINCT (
    n
) `( (n) && PT_IS_QUERY_NODE_TYPE ((n)->node_type) && (n)->info.query.all_distinct != PT_ALL )`

define PT_IS_DOT_NODE

#define PT_IS_DOT_NODE (
    n
) `( (n) && ((n)->node_type == PT_DOT_ ) )`

define PT_IS_EXPR_NODE

#define PT_IS_EXPR_NODE (
    n
) `( (n) && ((n)->node_type == PT_EXPR ) )`

define PT_IS_EXPR_NODE_WITH_COMP_OP

#define PT_IS_EXPR_NODE_WITH_COMP_OP (
    n
) `/* multi line expression */`

define PT_IS_EXPR_NODE_WITH_NON_PUSHABLE

#define PT_IS_EXPR_NODE_WITH_NON_PUSHABLE (
    n
) `/* multi line expression */`

define PT_IS_EXPR_NODE_WITH_OPERATOR

#define PT_IS_EXPR_NODE_WITH_OPERATOR (
    n,
    op_type
) `( ( PT_IS_EXPR_NODE (n)) && ((n)->info.expr.op == (op_type)) )`

define PT_IS_EXPR_WITH_PRIOR_ARG

#define PT_IS_EXPR_WITH_PRIOR_ARG (
    x
) `( PT_IS_EXPR_NODE ( x ) && \ PT_IS_EXPR_NODE_WITH_OPERATOR (( x )->info.expr.arg1, PT_PRIOR ))`

define PT_IS_FALSE_WHERE_VALUE

#define PT_IS_FALSE_WHERE_VALUE (
    node
) `/* multi line expression */`

define PT_IS_FOR_PL_COMPILE

#define PT_IS_FOR_PL_COMPILE (
    parser
) `(( parser )->flag.is_parsing_static_sql == 1)`

define PT_IS_FUNCTION

#define PT_IS_FUNCTION (
    n
) `( (n) && ((n)->node_type == PT_FUNCTION ) )`

define PT_IS_GROUPBYNUM

#define PT_IS_GROUPBYNUM (
    n
) `( (n) && ((n)->node_type == PT_FUNCTION && ((n)->info.function.function_type == PT_GROUPBY_NUM )) )`

define PT_IS_HINT_NODE

#define PT_IS_HINT_NODE (
    n
) `( (n) && ((n)->node_type == PT_NAME && (n)->info.name.meta_class == PT_HINT_NAME ) )`

define PT_IS_HOSTVAR

#define PT_IS_HOSTVAR (
    n
) `( (n) && ((n)->node_type == PT_HOST_VAR ) )`

define PT_IS_INPUT_HOSTVAR

#define PT_IS_INPUT_HOSTVAR (
    n
) `/* multi line expression */`

define PT_IS_INPUT_PARAMETER

#define PT_IS_INPUT_PARAMETER (
    n
) `/* multi line expression */`

define PT_IS_INSERT_VALUE_NODE

#define PT_IS_INSERT_VALUE_NODE (
    n
) `( (n) && ((n)->node_type == PT_INSERT_VALUE ) )`

define PT_IS_INSTANCE_METHOD

#define PT_IS_INSTANCE_METHOD (
    n
) `/* multi line expression */`

define PT_IS_INSTNUM

#define PT_IS_INSTNUM (
    n
) `/* multi line expression */`

define PT_IS_INTERSECTION

#define PT_IS_INTERSECTION (
    n
) `( (n) && ((n)->node_type == PT_INTERSECTION ) )`

define PT_IS_LOB_TYPE

#define PT_IS_LOB_TYPE (
    t
) `/* multi line expression */`

define PT_IS_LTZ_TYPE

#define PT_IS_LTZ_TYPE (
    t
) `(( t ) == PT_TYPE_TIMESTAMPLTZ || ( t ) == PT_TYPE_DATETIMELTZ )`

define PT_IS_META

#define PT_IS_META (
    n
) `/* multi line expression */`

define PT_IS_METHOD

#define PT_IS_METHOD (
    n
) `/* multi line expression */`

define PT_IS_MULTI_COL_TERM

#define PT_IS_MULTI_COL_TERM (
    n
) `/* multi line expression */`

define PT_IS_NAME_NODE

#define PT_IS_NAME_NODE (
    n
) `( (n) && ((n)->node_type == PT_NAME ) )`

define PT_IS_NULL_NODE

#define PT_IS_NULL_NODE (
    e
) `/* multi line expression */`

define PT_IS_NUMBERING_AFTER_EXECUTION

#define PT_IS_NUMBERING_AFTER_EXECUTION (
    op
) `/* multi line expression */`

define PT_IS_NUMERIC_TYPE

#define PT_IS_NUMERIC_TYPE (
    t
) `/* multi line expression */`

define PT_IS_N_COLUMN_UPDATE_EXPR

#define PT_IS_N_COLUMN_UPDATE_EXPR (
    n
) `/* multi line expression */`

define PT_IS_OID_NAME

#define PT_IS_OID_NAME (
    n
) `/* multi line expression */`

define PT_IS_ORDERBYNUM

#define PT_IS_ORDERBYNUM (
    n
) `( (n) && ((n)->node_type == PT_EXPR && ((n)->info.expr.op == PT_ORDERBY_NUM )) )`

define PT_IS_ORDER_DEPENDENT

#define PT_IS_ORDER_DEPENDENT (
    n
) `/* multi line expression */`

define PT_IS_OUTPUT_HOSTVAR

#define PT_IS_OUTPUT_HOSTVAR (
    n
) `/* multi line expression */`

define PT_IS_PARAMETER

#define PT_IS_PARAMETER (
    n
) `/* multi line expression */`

define PT_IS_PARAMETERIZED_TYPE

#define PT_IS_PARAMETERIZED_TYPE (
    t
) `/* multi line expression */`

define PT_IS_POINTER_REF_NODE

#define PT_IS_POINTER_REF_NODE (
    n
) `/* multi line expression */`

define PT_IS_PRIMITIVE_TYPE

#define PT_IS_PRIMITIVE_TYPE (
    t
) `( (( t ) != PT_TYPE_OBJECT ) && (( t ) != PT_TYPE_NONE ))`

define PT_IS_QUERY

#define PT_IS_QUERY (
    n
) `( (n) && ( PT_IS_QUERY_NODE_TYPE ((n)->node_type)) )`

define PT_IS_QUERY_NODE_TYPE

#define PT_IS_QUERY_NODE_TYPE (
    x
) `/* multi line expression */`

define PT_IS_SELECT

#define PT_IS_SELECT (
    n
) `( (n) && ((n)->node_type == PT_SELECT ) )`

define PT_IS_SERIAL

#define PT_IS_SERIAL (
    op
) `( (op) == PT_CURRENT_VALUE || (op) == PT_NEXT_VALUE )`

define PT_IS_SET_TYPE

#define PT_IS_SET_TYPE (
    n
) `/* multi line expression */`

define PT_IS_SIMPLE_CHAR_STRING_TYPE

#define PT_IS_SIMPLE_CHAR_STRING_TYPE (
    t
) `/* multi line expression */`

define PT_IS_SORT_SPEC_NODE

#define PT_IS_SORT_SPEC_NODE (
    n
) `( (n) && ((n)->node_type == PT_SORT_SPEC ) )`

define PT_IS_SP

#define PT_IS_SP (
    n
) `/* multi line expression */`

define PT_IS_SPEC_FLAG_SET

#define PT_IS_SPEC_FLAG_SET (
    spec_,
    flags_
) `((( spec_ )->info.spec.flag & ( flags_ )) != 0)`

define PT_IS_SPEC_REAL_TABLE

#define PT_IS_SPEC_REAL_TABLE (
    spec_
) `PT_SPEC_IS_ENTITY ( spec_ )`

define PT_IS_STRING_TYPE

#define PT_IS_STRING_TYPE (
    t
) `/* multi line expression */`

define PT_IS_UNARY

#define PT_IS_UNARY (
    op
) `/* multi line expression */`

define PT_IS_UNION

#define PT_IS_UNION (
    n
) `( (n) && ((n)->node_type == PT_UNION ) )`

define PT_IS_UPDATE_OBJECT

#define PT_IS_UPDATE_OBJECT (
    n
) `( (n) && (n)->node_type == PT_UPDATE && (n)->info.update.spec == NULL )`

define PT_IS_VACUUM_NODE

#define PT_IS_VACUUM_NODE (
    n
) `( (n) && (n)->node_type == PT_VACUUM )`

define PT_IS_VALUE_NODE

#define PT_IS_VALUE_NODE (
    n
) `( (n) && ((n)->node_type == PT_VALUE ) )`

define PT_IS_VALUE_QUERY

#define PT_IS_VALUE_QUERY (
    n
) `((n)->flag.is_value_query == 1)`

define PT_MERGE_INFO_HAS_UNIQUE

#define PT_MERGE_INFO_HAS_UNIQUE `1 /* has unique constraints */`

define PT_MERGE_INFO_INSERT_ONLY

#define PT_MERGE_INFO_INSERT_ONLY `4    /* merge condition always  false */`

define PT_MERGE_INFO_SERVER_OP

#define PT_MERGE_INFO_SERVER_OP `2  /* server side operation */`

define PT_METHOD_ARG_LIST

#define PT_METHOD_ARG_LIST (
    n
) `((n)->info.method_call.arg_list)`

define PT_METHOD_CALL_AUTH_ID

#define PT_METHOD_CALL_AUTH_ID (
    n
) `((n)->info.method_call.auth_id)`

define PT_METHOD_CALL_AUTH_NAME

#define PT_METHOD_CALL_AUTH_NAME (
    n
) `((n)->info.method_call.auth_name)`

define PT_METHOD_CALL_NAME

#define PT_METHOD_CALL_NAME (
    n
) `((n)->info.method_call.method_name)`

define PT_METHOD_CALL_ON_CALL_TARGET

#define PT_METHOD_CALL_ON_CALL_TARGET (
    n
) `((n)->info.method_call.on_call_target)`

define PT_NAME_ALLOW_REUSABLE_OID

#define PT_NAME_ALLOW_REUSABLE_OID `512 /* ignore the  REUSABLE_OID  restrictions  for  this name */`

define PT_NAME_ASSERT

#define PT_NAME_ASSERT (
    n
) `( PT_ASSERT_NODE_TYPE ((n), PT_NAME ))`

define PT_NAME_DB_OBJECT

#define PT_NAME_DB_OBJECT (
    n
) `( PT_NAME_ASSERT ((n)), (n)->info.name.db_object)`

define PT_NAME_DEFAULTF_ACCEPTS

#define PT_NAME_DEFAULTF_ACCEPTS `4096  /* name of table/column that  default function accepts:  real table's, cte's */`

define PT_NAME_FOR_UPDATE

#define PT_NAME_FOR_UPDATE `2048    /* Table name in FOR  UPDATE  clause */`

define PT_NAME_GENERATED_DERIVED_SPEC

#define PT_NAME_GENERATED_DERIVED_SPEC `1024    /* attribute generated from derived spec */`

define PT_NAME_INFO_CLEAR_FLAG

#define PT_NAME_INFO_CLEAR_FLAG (
    e,
    f
) `( e )->info.name.flag &= ( short ) ~(f)`

define PT_NAME_INFO_CONSTANT

#define PT_NAME_INFO_CONSTANT `16`

define PT_NAME_INFO_DESC

#define PT_NAME_INFO_DESC `64   /* DESC  on  an index column name */`

define PT_NAME_INFO_DOT_NAME

#define PT_NAME_INFO_DOT_NAME `2    /* z  of  x.y.z */`

define PT_NAME_INFO_DOT_SPEC

#define PT_NAME_INFO_DOT_SPEC `1    /* x , y  of  x.y.z */`

define PT_NAME_INFO_DOT_STAR

#define PT_NAME_INFO_DOT_STAR `8    /* classname.* */`

define PT_NAME_INFO_EXTERNAL

#define PT_NAME_INFO_EXTERNAL `32   /* in case  of  TEXT type at attr definition or attr.object at attr description */`

define PT_NAME_INFO_FILL_DEFAULT

#define PT_NAME_INFO_FILL_DEFAULT `128  /* whether default_value should  be  filled in */`

define PT_NAME_INFO_GENERATED_OID

#define PT_NAME_INFO_GENERATED_OID `256 /* set when  a  PT_NAME node that  maps to an  OID  is  generated  internally  for * statement processing  and  execution */`

define PT_NAME_INFO_IS_FLAGED

#define PT_NAME_INFO_IS_FLAGED (
    e,
    f
) `(( e )->info.name.flag & ( short ) (f))`

define PT_NAME_INFO_SERVER_SPECIFIED

#define PT_NAME_INFO_SERVER_SPECIFIED `16384    /* server name is  specified  for  dblink */`

define PT_NAME_INFO_SET_FLAG

#define PT_NAME_INFO_SET_FLAG (
    e,
    f
) `( e )->info.name.flag |= ( short ) (f)`

define PT_NAME_INFO_STAR

#define PT_NAME_INFO_STAR `4    /* * */`

define PT_NAME_INFO_USER_SPECIFIED

#define PT_NAME_INFO_USER_SPECIFIED `8192   /* resolved_name  is  added to original_name to make user_specified_name. */`

define PT_NAME_ORIGINAL

#define PT_NAME_ORIGINAL (
    n
) `( PT_NAME_ASSERT ((n)), (n)->info.name.original)`

define PT_NAME_RESOLVED

#define PT_NAME_RESOLVED (
    n
) `( PT_NAME_ASSERT ((n)), (n)->info.name.resolved)`

define PT_NAME_SPEC_ID

#define PT_NAME_SPEC_ID (
    n
) `( PT_NAME_ASSERT ((n)), (n)->info.name.spec_id)`

#define PT_NODE_COPY_NUMBER_OUTERLINK (
    t,
    s
) `/* multi line expression */`

define PT_NODE_DATA_TYPE

#define PT_NODE_DATA_TYPE (
    n
) `( (n) ? (n)->data_type : NULL )`

#define PT_NODE_INIT_OUTERLINK (
    n
) `/* multi line expression */`

define PT_NODE_IS_EXPR

#define PT_NODE_IS_EXPR (
    n
) `( PT_ASSERT_NOT_NULL ((n)), (n)->node_type == PT_EXPR )`

define PT_NODE_IS_NAME

#define PT_NODE_IS_NAME (
    n
) `( PT_ASSERT_NOT_NULL ((n)), (n)->node_type == PT_NAME )`

define PT_NODE_IS_SPEC

#define PT_NODE_IS_SPEC (
    n
) `( PT_ASSERT_NOT_NULL ((n)), (n)->node_type == PT_SPEC )`

define PT_NODE_IS_SYNONYM

#define PT_NODE_IS_SYNONYM (
    n
) `/* multi line expression */`

#define PT_NODE_MOVE_NUMBER_OUTERLINK (
    t,
    s
) `/* multi line expression */`

define PT_NODE_PRINT_TO_ALIAS

#define PT_NODE_PRINT_TO_ALIAS (
    p,
    n,
    c
) `/* multi line expression */`

define PT_NODE_PRINT_VALUE_TO_TEXT

#define PT_NODE_PRINT_VALUE_TO_TEXT (
    p,
    n
) `/* multi line expression */`

define PT_RENAME_ASSERT

#define PT_RENAME_ASSERT (
    n
) `( PT_ASSERT_NODE_TYPE ((n), PT_RENAME ))`

define PT_RENAME_NEW_NAME

#define PT_RENAME_NEW_NAME (
    n
) `( PT_RENAME_ASSERT ((n)), (n)->info.rename.new_name)`

define PT_REQUIRES_HIERARCHICAL_QUERY

#define PT_REQUIRES_HIERARCHICAL_QUERY (
    op
) `/* multi line expression */`

define PT_SELECT_FULL_INFO_COLS_SCHEMA

#define PT_SELECT_FULL_INFO_COLS_SCHEMA `0x0100 /* is  show columns query */`

define PT_SELECT_INFO_ANSI_JOIN

#define PT_SELECT_INFO_ANSI_JOIN `0x01  /* has  ANSI join? */`

define PT_SELECT_INFO_CLEAR_FLAG

#define PT_SELECT_INFO_CLEAR_FLAG (
    s,
    f
) `(s)->info.query.q.select.flag &= ~(f)`

define PT_SELECT_INFO_COLS_SCHEMA

#define PT_SELECT_INFO_COLS_SCHEMA `0x80    /* is  show columns query */`

define PT_SELECT_INFO_DISABLE_LOOSE_SCAN

#define PT_SELECT_INFO_DISABLE_LOOSE_SCAN `0x4000   /* loose scan not  possible  on query */`

define PT_SELECT_INFO_DUMMY

#define PT_SELECT_INFO_DUMMY `0x04  /* is dummy (i.e., ' SELECT * FROM  x ') ? */`

define PT_SELECT_INFO_FOR_UPDATE

#define PT_SELECT_INFO_FOR_UPDATE `0x2000   /* FOR  UPDATE  clause  is active */`

define PT_SELECT_INFO_HAS_AGG

#define PT_SELECT_INFO_HAS_AGG `0x08    /* has  any type of  aggregation ? */`

define PT_SELECT_INFO_HAS_ANALYTIC

#define PT_SELECT_INFO_HAS_ANALYTIC `0x10   /* has analytic functions */`

define PT_SELECT_INFO_IDX_SCHEMA

#define PT_SELECT_INFO_IDX_SCHEMA `0x40 /* is  show index query */`

define PT_SELECT_INFO_IS_FLAGED

#define PT_SELECT_INFO_IS_FLAGED (
    s,
    f
) `((s)->info.query.q.select.flag & (f))`

define PT_SELECT_INFO_IS_MERGE_QUERY

#define PT_SELECT_INFO_IS_MERGE_QUERY `0x0200   /* is  a query of  a merge stmt */`

define PT_SELECT_INFO_IS_UPD_DEL_QUERY

#define PT_SELECT_INFO_IS_UPD_DEL_QUERY `0x1000 /* set if select was  built  for  an  UPDATE  or  DELETE statement */`

define PT_SELECT_INFO_LIST_PUSHER

#define PT_SELECT_INFO_LIST_PUSHER `0x0400  /* dummy subquery that  pushes  a list file descriptor to be used at * server as its own result */`

define PT_SELECT_INFO_MULTI_UPDATE_AGG

#define PT_SELECT_INFO_MULTI_UPDATE_AGG `0x20   /* is query for  multi -table update using  aggregate */`

define PT_SELECT_INFO_MVCC_LOCK_NEEDED

#define PT_SELECT_INFO_MVCC_LOCK_NEEDED `0x8000 /* lock returned rows */`

define PT_SELECT_INFO_NO_STRICT_OID_CHECK

#define PT_SELECT_INFO_NO_STRICT_OID_CHECK `/* multi line expression */`

define PT_SELECT_INFO_ORACLE_OUTER

#define PT_SELECT_INFO_ORACLE_OUTER `0x02   /* has  Oracle 's outer join operator ? */`

define PT_SELECT_INFO_READ_ONLY

#define PT_SELECT_INFO_READ_ONLY `0x010000  /* read- only system generated queries like  show statement */`

define PT_SELECT_INFO_SET_FLAG

#define PT_SELECT_INFO_SET_FLAG (
    s,
    f
) `(s)->info.query.q.select.flag |= (f)`

define PT_SET_JMP_ENV

#define PT_SET_JMP_ENV (
    parser
) `/* multi line expression */`

define PT_SET_NODE_COLL_MODIFIER

#define PT_SET_NODE_COLL_MODIFIER (
    p,
    coll
) `/* multi line expression */`

define PT_SET_ORDER_DEPENDENT_FLAG

#define PT_SET_ORDER_DEPENDENT_FLAG (
    n,
    f
) `/* multi line expression */`

define PT_SET_VALUE_QUERY

#define PT_SET_VALUE_QUERY (
    n
) `((n)->flag.is_value_query = 1)`

define PT_SHOULD_BIND_RESERVED_NAME

#define PT_SHOULD_BIND_RESERVED_NAME (
    spec_
) `( PT_SPEC_GET_RESERVED_NAME_TYPE ( spec_ ) != RESERVED_NAME_INVALID )`

define PT_SPEC_ASSERT

#define PT_SPEC_ASSERT (
    n
) `( PT_ASSERT_NODE_TYPE ((n), PT_SPEC ))`

define PT_SPEC_CTE_POINTER

#define PT_SPEC_CTE_POINTER (
    n
) `( PT_SPEC_ASSERT ((n)), (n)->info.spec.cte_pointer)`

define PT_SPEC_DERIVED_TABLE

#define PT_SPEC_DERIVED_TABLE (
    n
) `( PT_SPEC_ASSERT ((n)), (n)->info.spec.derived_table)`

define PT_SPEC_ENTITY_NAME

#define PT_SPEC_ENTITY_NAME (
    n
) `( PT_SPEC_ASSERT ((n)), (n)->info.spec.entity_name)`

define PT_SPEC_FLAT_ENTITY_LIST

#define PT_SPEC_FLAT_ENTITY_LIST (
    n
) `( PT_SPEC_ASSERT ((n)), (n)->info.spec.flat_entity_list)`

define PT_SPEC_GET_DB_OBJECT

#define PT_SPEC_GET_DB_OBJECT (
    n,
    r
) `/* multi line expression */`

define PT_SPEC_GET_RESERVED_NAME_TYPE

#define PT_SPEC_GET_RESERVED_NAME_TYPE (
    spec_
) `/* multi line expression */`

define PT_SPEC_ID

#define PT_SPEC_ID (
    n
) `( PT_SPEC_ASSERT ((n)), (n)-> info.spec.id )`

define PT_SPEC_IS_ALL

#define PT_SPEC_IS_ALL (
    n
) `( PT_SPEC_ASSERT ((n)), (n)->info.spec.only_all == PT_ALL )`

define PT_SPEC_IS_CTE

#define PT_SPEC_IS_CTE (
    spec_
) `(( spec_ )->info.spec.cte_pointer != NULL )`

define PT_SPEC_IS_DERIVED

#define PT_SPEC_IS_DERIVED (
    spec_
) `(( spec_ )->info.spec.derived_table != NULL )`

define PT_SPEC_IS_ENTITY

#define PT_SPEC_IS_ENTITY (
    spec_
) `(( spec_ )->info.spec.entity_name != NULL )`

define PT_SPEC_IS_ONLY

#define PT_SPEC_IS_ONLY (
    n
) `( PT_SPEC_ASSERT ((n)), (n)->info.spec.only_all == PT_ONLY )`

define PT_SPEC_JOIN_TYPE

#define PT_SPEC_JOIN_TYPE (
    n
) `( PT_SPEC_ASSERT ((n)), (n)->info.spec.join_type)`

define PT_SPEC_SPECIAL_INDEX_SCAN

#define PT_SPEC_SPECIAL_INDEX_SCAN (
    spec_
) `/* multi line expression */`

define PT_SYNONYM_ACCESS_MODIFIER

#define PT_SYNONYM_ACCESS_MODIFIER (
    n
) `((n)->info.synonym.access_modifier)`

define PT_SYNONYM_COMMENT

#define PT_SYNONYM_COMMENT (
    n
) `((n)->info.synonym.comment)`

define PT_SYNONYM_COMMENT_BYTES

#define PT_SYNONYM_COMMENT_BYTES (
    n
) `((n)->info.synonym.comment->info.value.data_value.str->bytes)`

define PT_SYNONYM_COMMENT_STR

#define PT_SYNONYM_COMMENT_STR (
    n
) `((n)->info.synonym.comment->info.value.data_value.str)`

define PT_SYNONYM_IF_EXISTS

#define PT_SYNONYM_IF_EXISTS (
    n
) `((n)->info.synonym.if_exists)`

define PT_SYNONYM_IS_DBLINKED

#define PT_SYNONYM_IS_DBLINKED (
    n
) `((n)->info.synonym.is_dblinked)  /* for user.table@server */`

define PT_SYNONYM_NAME

#define PT_SYNONYM_NAME (
    n
) `((n)->info.synonym.synonym_name)`

define PT_SYNONYM_NEW_NAME

#define PT_SYNONYM_NEW_NAME (
    n
) `((n)->info.synonym.new_synonym_name)`

define PT_SYNONYM_NEW_OWNER_NAME

#define PT_SYNONYM_NEW_OWNER_NAME (
    n
) `((n)->info.synonym.new_synonym_owner_name)`

define PT_SYNONYM_OLD_NAME

#define PT_SYNONYM_OLD_NAME (
    n
) `((n)->info.synonym.old_synonym_name)`

define PT_SYNONYM_OLD_OWNER_NAME

#define PT_SYNONYM_OLD_OWNER_NAME (
    n
) `((n)->info.synonym.old_synonym_owner_name)`

define PT_SYNONYM_OR_REPLACE

#define PT_SYNONYM_OR_REPLACE (
    n
) `((n)->info.synonym.or_replace)`

define PT_SYNONYM_OWNER_NAME

#define PT_SYNONYM_OWNER_NAME (
    n
) `((n)->info.synonym.synonym_owner_name)`

define PT_SYNONYM_TARGET_NAME

#define PT_SYNONYM_TARGET_NAME (
    n
) `((n)->info.synonym.target_name)`

define PT_SYNONYM_TARGET_OWNER_NAME

#define PT_SYNONYM_TARGET_OWNER_NAME (
    n
) `((n)->info.synonym.target_owner_name)`

define PT_VALUE_GET_BYTES

#define PT_VALUE_GET_BYTES (
    node
) `/* multi line expression */`

define PT_WARNING

#define PT_WARNING (
    parser,
    node,
    msg
) `pt_frob_warning ( parser , node, msg)`

define PT_WARNINGc

#define PT_WARNINGc (
    parser,
    node,
    msg
) `pt_frob_warning ( parser , node, msg)`

define PT_WARNINGf

#define PT_WARNINGf (
    parser,
    node,
    msg,
    arg1
) `pt_cat_warning ( parser , node, msg, arg1)`

define PT_WARNINGf2

#define PT_WARNINGf2 (
    parser,
    node,
    msg,
    arg1,
    arg2
) `pt_cat_warning ( parser , node, msg, arg1, arg2)`

define PT_WARNINGf3

#define PT_WARNINGf3 (
    parser,
    node,
    msg,
    arg1,
    arg2,
    arg3
) `pt_cat_warning ( parser , node, msg, arg1, arg2, arg3)`

define PT_WARNINGm

#define PT_WARNINGm (
    parser,
    node,
    setNo,
    msgNo
) `pt_cat_warning ( parser , node, setNo , msgNo )`

define PT_WARNINGmf

#define PT_WARNINGmf (
    parser,
    node,
    setNo,
    msgNo,
    arg1
) `pt_cat_warning ( parser , node, setNo , msgNo , arg1)`

define PT_WARNINGmf2

#define PT_WARNINGmf2 (
    parser,
    node,
    setNo,
    msgNo,
    arg1,
    arg2
) `pt_cat_warning ( parser , node, setNo , msgNo , arg1, arg2)`

define PT_WARNINGmf3

#define PT_WARNINGmf3 (
    parser,
    node,
    setNo,
    msgNo,
    arg1,
    arg2,
    arg3
) `pt_cat_warning ( parser , node, setNo , msgNo , arg1, arg2, arg3)`

define pt_cat_error

#define pt_cat_error (
    parser,
    node,
    setNo,
    msgNo,
    ...
) `pt_frob_error ( parser , node, msgcat_message ( MSGCAT_CATALOG_CUBRID , setNo , msgNo ), ## __VA_ARGS__ )`

define pt_cat_warning

#define pt_cat_warning (
    parser,
    node,
    setNo,
    msgNo,
    ...
) `pt_frob_warning ( parser , node, msgcat_message ( MSGCAT_CATALOG_CUBRID , setNo , msgNo ), ## __VA_ARGS__ )`

define pt_is_cast_const_input_hostvar

#define pt_is_cast_const_input_hostvar (
    n
) `PT_IS_CAST_CONST_INPUT_HOSTVAR (n)`

define pt_is_const

#define pt_is_const (
    n
) `PT_IS_CONST (n)`

define pt_is_const_input_hostvar

#define pt_is_const_input_hostvar (
    n
) `PT_IS_CONST_INPUT_HOSTVAR (n)`

define pt_is_const_not_hostvar

#define pt_is_const_not_hostvar (
    n
) `PT_IS_CONST_NOT_HOSTVAR (n)`

define pt_is_correlated_subquery

#define pt_is_correlated_subquery (
    n
) `PT_IS_CORRELATED_SUBQUERY (n)`

define pt_is_difference

#define pt_is_difference (
    n
) `PT_IS_DIFFERENCE (n)`

define pt_is_distinct

#define pt_is_distinct (
    n
) `PT_IS_DISTINCT (n)`

define pt_is_dot_node

#define pt_is_dot_node (
    n
) `PT_IS_DOT_NODE (n)`

define pt_is_expr_node

#define pt_is_expr_node (
    n
) `PT_IS_EXPR_NODE (n)`

define pt_is_function

#define pt_is_function (
    n
) `PT_IS_FUNCTION (n)`

define pt_is_hostvar

#define pt_is_hostvar (
    n
) `PT_IS_HOSTVAR (n)`

define pt_is_input_hostvar

#define pt_is_input_hostvar (
    n
) `PT_IS_INPUT_HOSTVAR (n)`

define pt_is_input_parameter

#define pt_is_input_parameter (
    n
) `PT_IS_INPUT_PARAMETER (n)`

define pt_is_instnum

#define pt_is_instnum (
    n
) `PT_IS_INSTNUM (n)`

define pt_is_intersection

#define pt_is_intersection (
    n
) `PT_IS_INTERSECTION (n)`

define pt_is_meta

#define pt_is_meta (
    n
) `PT_IS_META (n)`

define pt_is_multi_col_term

#define pt_is_multi_col_term (
    n
) `PT_IS_MULTI_COL_TERM (n)`

define pt_is_name_node

#define pt_is_name_node (
    n
) `PT_IS_NAME_NODE (n)`

define pt_is_oid_name

#define pt_is_oid_name (
    n
) `PT_IS_OID_NAME (n)`

define pt_is_orderbynum

#define pt_is_orderbynum (
    n
) `PT_IS_ORDERBYNUM (n)`

define pt_is_output_hostvar

#define pt_is_output_hostvar (
    n
) `PT_IS_OUTPUT_HOSTVAR (n)`

define pt_is_parameter

#define pt_is_parameter (
    n
) `PT_IS_PARAMETER (n)`

define pt_is_query

#define pt_is_query (
    n
) `PT_IS_QUERY (n)`

define pt_is_select

#define pt_is_select (
    n
) `PT_IS_SELECT (n)`

define pt_is_set_type

#define pt_is_set_type (
    n
) `PT_IS_SET_TYPE (n)`

define pt_is_sp

#define pt_is_sp (
    n
) `PT_IS_SP (n)`

define pt_is_unary

#define pt_is_unary (
    op
) `PT_IS_UNARY (op)`

define pt_is_union

#define pt_is_union (
    n
) `PT_IS_UNION (n)`

define pt_is_update_object

#define pt_is_update_object (
    n
) `PT_IS_UPDATE_OBJECT (n)`

define pt_is_value_node

#define pt_is_value_node (
    n
) `PT_IS_VALUE_NODE (n)`


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