23 #ifndef _FUNC_TYPE_HPP_ 24 #define _FUNC_TYPE_HPP_ 113 void invalid_arg_count_error (std::size_t arg_count,
const func_signature &func_sgn);
parser_context * m_parser
bool can_signature_have_collation(const pt_arg_type &arg_sig)
bool cmp_types_equivalent(const pt_arg_type &type, pt_type_enum type_enum)
std::vector< func_signature > func_all_signatures
enum pt_type_enum PT_TYPE_ENUM
bool cmp_types_castable(const pt_arg_type &type, pt_type_enum type_enum)
type_compatibility m_compat
pt_coll_infer m_coll_infer
bool pt_are_equivalent_types(const PT_ARG_TYPE def_type, const PT_TYPE_ENUM op_type)
signature_compatibility m_best_signature
std::vector< argument_resolve > m_args_resolve
pt_coll_infer m_common_collation
void to_string_buffer(string_buffer &sb) const
TP_DOMAIN_COLL_ACTION m_collation_action
PT_TYPE_ENUM pt_get_equivalent_type(const PT_ARG_TYPE def_type, const PT_TYPE_ENUM arg_type)
std::vector< pt_arg_type > pt_group_arg_type
const func_signature * m_signature
Node(parser_context *parser, parser_node *node)
bool is_type_with_collation(PT_TYPE_ENUM type)
bool sig_has_json_args(const func_signature &sig)