CUBRID Engine  latest
func_type.cpp File Reference
#include "func_type.hpp"
#include "message_catalog.h"
#include "object_primitive.h"
#include "parse_tree.h"
#include "parser.h"
#include "parser_message.h"
#include <algorithm>
Include dependency graph for func_type.cpp:

Go to the source code of this file.

Namespaces

 func_type
 

Functions

func_all_signaturesget_signatures (FUNC_TYPE ft)
 
bool func_type::sig_has_json_args (const func_signature &sig)
 
bool func_type::is_type_with_collation (PT_TYPE_ENUM type)
 
bool func_type::can_signature_have_collation (const pt_arg_type &arg_sig)
 
bool func_type::cmp_types_equivalent (const pt_arg_type &type, pt_type_enum type_enum)
 
bool func_type::cmp_types_castable (const pt_arg_type &type, pt_type_enum type_enum)
 
bool pt_are_equivalent_types (const PT_ARG_TYPE def_type, const PT_TYPE_ENUM op_type)
 
PT_TYPE_ENUM pt_get_equivalent_type (const PT_ARG_TYPE def_type, const PT_TYPE_ENUM arg_type)
 

Variables

func_all_signatures sig_ret_int_no_arg
 
func_all_signatures sig_ret_int_arg_any
 
func_all_signatures sig_ret_int_arg_doc
 
func_all_signatures sig_ret_int_arg_str
 
func_all_signatures sig_ret_bigint
 
func_all_signatures sig_of_percentile_cont
 
func_all_signatures sig_of_percentile_disc
 
func_all_signatures sig_ret_bigint_arg_discrete
 
func_all_signatures sig_of_avg
 
func_all_signatures sig_ret_double_arg_number
 
func_all_signatures sig_of_count_star
 
func_all_signatures sig_of_count
 
func_all_signatures sig_of_sum
 
func_all_signatures sig_ret_double_arg_r_any
 
func_all_signatures sig_of_ntile
 
func_all_signatures sig_of_median
 
func_all_signatures sig_ret_type0_arg_scalar
 
func_all_signatures sig_ret_type0_arg_nr_or_str_discrete
 
func_all_signatures sig_of_group_concat
 
func_all_signatures sig_of_lead_lag
 
func_all_signatures sig_of_elt
 
func_all_signatures sig_of_insert_substring
 
func_all_signatures sig_ret_json_arg_r_jkey_jval_or_empty
 
func_all_signatures sig_json_arg_r_jval_or_empty
 
func_all_signatures sig_ret_json_arg_jdoc
 
func_all_signatures sig_ret_json_arg_jdoc_r_jdoc
 
func_all_signatures sig_ret_json_arg_jdoc_jpath
 
func_all_signatures sig_ret_json_arg_jdoc_r_jpath
 
func_all_signatures sig_ret_json_arg_jdoc_str_r_jpath
 
func_all_signatures sig_ret_json_arg_jdoc_r_jpath_jval
 
func_all_signatures sig_of_json_contains
 
func_all_signatures sig_of_json_contains_path
 
func_all_signatures sig_of_json_keys
 
func_all_signatures sig_of_json_length
 
func_all_signatures sig_of_json_search
 
func_all_signatures sig_of_json_arrayagg
 
func_all_signatures sig_of_json_objectagg
 
func_all_signatures sig_ret_set_arg_r_any
 
func_all_signatures sig_ret_multiset_arg_r_any
 
func_all_signatures sig_ret_sequence_arg_r_any
 
func_all_signatures sig_of_generic
 
func_all_signatures sig_ret_string_arg_jdoc
 
func_all_signatures sig_ret_type0_arg_str
 
func_all_signatures sig_of_benchmark
 
func_all_signatures sig_of_regexp_count
 
func_all_signatures sig_of_regexp_instr
 
func_all_signatures sig_of_regexp_like
 
func_all_signatures sig_of_regexp_replace
 
func_all_signatures sig_of_regexp_substr
 

Function Documentation

func_all_signatures* get_signatures ( FUNC_TYPE  ft)

Definition at line 392 of file func_type.cpp.

References assert, F_BENCHMARK, F_CLASS_OF, F_ELT, F_GENERIC, F_INSERT_SUBSTRING, F_JSON_ARRAY, F_JSON_ARRAY_APPEND, F_JSON_ARRAY_INSERT, F_JSON_CONTAINS, F_JSON_CONTAINS_PATH, F_JSON_DEPTH, F_JSON_EXTRACT, F_JSON_GET_ALL_PATHS, F_JSON_INSERT, F_JSON_KEYS, F_JSON_LENGTH, F_JSON_MERGE, F_JSON_MERGE_PATCH, F_JSON_OBJECT, F_JSON_PRETTY, F_JSON_QUOTE, F_JSON_REMOVE, F_JSON_REPLACE, F_JSON_SEARCH, F_JSON_SET, F_JSON_TYPE, F_JSON_UNQUOTE, F_JSON_VALID, F_MIDXKEY, F_MULTISET, F_REGEXP_COUNT, F_REGEXP_INSTR, F_REGEXP_LIKE, F_REGEXP_REPLACE, F_REGEXP_SUBSTR, F_SEQUENCE, F_SET, F_TABLE_MULTISET, F_TABLE_SEQUENCE, F_TABLE_SET, F_TOP_TABLE_FUNC, F_VID, PT_AGG_BIT_AND, PT_AGG_BIT_OR, PT_AGG_BIT_XOR, PT_AVG, PT_COUNT, PT_COUNT_STAR, PT_CUME_DIST, PT_DENSE_RANK, PT_FIRST_VALUE, PT_GENERIC, PT_GROUP_CONCAT, PT_GROUPBY_NUM, PT_JSON_ARRAYAGG, PT_JSON_OBJECTAGG, PT_LAG, PT_LAST_VALUE, PT_LEAD, PT_MAX, PT_MEDIAN, PT_MIN, PT_NTH_VALUE, PT_NTILE, PT_PERCENT_RANK, PT_PERCENTILE_CONT, PT_PERCENTILE_DISC, PT_RANK, PT_ROW_NUMBER, PT_STDDEV, PT_STDDEV_POP, PT_STDDEV_SAMP, PT_SUM, PT_TOP_AGG_FUNC, PT_VAR_POP, PT_VAR_SAMP, PT_VARIANCE, sig_json_arg_r_jval_or_empty, sig_of_avg, sig_of_benchmark, sig_of_count, sig_of_count_star, sig_of_elt, sig_of_generic, sig_of_group_concat, sig_of_insert_substring, sig_of_json_arrayagg, sig_of_json_contains, sig_of_json_contains_path, sig_of_json_keys, sig_of_json_length, sig_of_json_objectagg, sig_of_json_search, sig_of_lead_lag, sig_of_median, sig_of_ntile, sig_of_percentile_cont, sig_of_percentile_disc, sig_of_regexp_count, sig_of_regexp_instr, sig_of_regexp_like, sig_of_regexp_replace, sig_of_regexp_substr, sig_of_sum, sig_ret_bigint, sig_ret_bigint_arg_discrete, sig_ret_double_arg_number, sig_ret_double_arg_r_any, sig_ret_int_arg_any, sig_ret_int_arg_doc, sig_ret_int_no_arg, sig_ret_json_arg_jdoc, sig_ret_json_arg_jdoc_r_jdoc, sig_ret_json_arg_jdoc_r_jpath, sig_ret_json_arg_jdoc_r_jpath_jval, sig_ret_json_arg_r_jkey_jval_or_empty, sig_ret_multiset_arg_r_any, sig_ret_sequence_arg_r_any, sig_ret_set_arg_r_any, sig_ret_string_arg_jdoc, sig_ret_type0_arg_nr_or_str_discrete, sig_ret_type0_arg_scalar, and sig_ret_type0_arg_str.

Referenced by func_type::Node::type_checking().

Here is the caller graph for this function:

Variable Documentation

func_all_signatures sig_json_arg_r_jval_or_empty
Initial value:

Definition at line 221 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_of_avg
Initial value:

Definition at line 97 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_of_count
Initial value:

Definition at line 112 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_of_count_star
Initial value:

Definition at line 107 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_of_generic
Initial value:

Definition at line 320 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_of_json_arrayagg
Initial value:

Definition at line 295 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_of_json_contains_path
Initial value:

Definition at line 263 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_of_json_search
Initial value:

Definition at line 280 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_of_ntile
Initial value:

Definition at line 132 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_of_sum
Initial value:

Definition at line 117 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_ret_bigint
Initial value:

Definition at line 62 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_ret_bigint_arg_discrete
func_all_signatures sig_ret_double_arg_number
Initial value:

Definition at line 102 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_ret_double_arg_r_any
Initial value:

Definition at line 126 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_ret_int_arg_any
Initial value:

Definition at line 47 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_ret_int_arg_doc
Initial value:

Definition at line 52 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_ret_int_arg_str
Initial value:

Definition at line 57 of file func_type.cpp.

func_all_signatures sig_ret_int_no_arg
Initial value:

Definition at line 42 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_ret_json_arg_jdoc
Initial value:

Definition at line 227 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_ret_json_arg_jdoc_r_jdoc
func_all_signatures sig_ret_json_arg_jdoc_r_jpath
func_all_signatures sig_ret_json_arg_jdoc_str_r_jpath
Initial value:

Definition at line 247 of file func_type.cpp.

func_all_signatures sig_ret_json_arg_r_jkey_jval_or_empty
func_all_signatures sig_ret_multiset_arg_r_any
Initial value:

Definition at line 310 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_ret_sequence_arg_r_any
Initial value:

Definition at line 315 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_ret_set_arg_r_any
Initial value:

Definition at line 305 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_ret_string_arg_jdoc
Initial value:

Definition at line 325 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_ret_type0_arg_scalar
Initial value:

Definition at line 148 of file func_type.cpp.

Referenced by get_signatures().

func_all_signatures sig_ret_type0_arg_str
Initial value:

Definition at line 330 of file func_type.cpp.

Referenced by get_signatures().