Remove cmake warning configuration (August)
This commit is contained in:
committed by
wangzelin.wzl
parent
0d7efce19a
commit
a6a56e21f4
@ -60,7 +60,7 @@ public:
|
||||
explicit ObExprCalcPartitionId(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprCalcPartitionId();
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* types_array, int64_t param_num, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType* types_array, int64_t param_num, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_no_partition_location(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& res_datum);
|
||||
static int calc_partition_level_one(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& res_datum);
|
||||
|
||||
@ -22,11 +22,11 @@ public:
|
||||
explicit ObExprCalcURowID(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprCalcURowID();
|
||||
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* types_statck, int64_t param_num, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result_typeN(ObExprResType& type, ObExprResType* types_statck, int64_t param_num,
|
||||
common::ObExprTypeCtx& type_ctx) const override;
|
||||
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* obj_stack, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_resultN(common::ObObj& result, const common::ObObj* obj_stack, int64_t param_num,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
|
||||
virtual int cg_expr(ObExprCGCtx& cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
|
||||
@ -23,9 +23,9 @@ public:
|
||||
virtual ~ObExprConcat();
|
||||
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const override;
|
||||
static int calc(common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2,
|
||||
common::ObIAllocator* allocator, const common::ObObjType result_type, bool is_oracle_mode);
|
||||
// Check result length with %max_result_len (if %max_result_len greater than zero)
|
||||
|
||||
@ -22,9 +22,9 @@ public:
|
||||
explicit ObExprConcatWs(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprConcatWs();
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const override;
|
||||
// connect two strings by separator
|
||||
static int concat_ws(
|
||||
const common::ObString obj1, const common::ObString obj2, const int64_t buf_len, char** string_buf, int64_t& pos);
|
||||
|
||||
@ -24,9 +24,9 @@ public:
|
||||
virtual ~ObExprDiv()
|
||||
{}
|
||||
virtual int calc_result_type2(
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result2(
|
||||
common::ObObj& result, const common::ObObj& left, const common::ObObj& right, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj& left, const common::ObObj& right, common::ObExprCtx& expr_ctx) const override;
|
||||
static int calc(common::ObObj& res, const common::ObObj& obj1, const common::ObObj& obj2,
|
||||
common::ObIAllocator* allocator, common::ObScale calc_scale);
|
||||
static int calc_for_avg(common::ObObj& res, const common::ObObj& obj1, const common::ObObj& obj2,
|
||||
|
||||
@ -38,9 +38,9 @@ public:
|
||||
explicit ObExprFormat(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprFormat();
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs_array, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_resultN(common::ObObj& result, const common::ObObj* objs_array, int64_t param_num,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_format_expr(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& res_datum);
|
||||
|
||||
|
||||
@ -22,10 +22,10 @@ public:
|
||||
ObExprGreaterEqual();
|
||||
explicit ObExprGreaterEqual(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprGreaterEqual(){};
|
||||
virtual int calc_result2(
|
||||
common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs_stack, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result2(common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int calc_resultN(common::ObObj& result, const common::ObObj* objs_stack, int64_t param_num,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override
|
||||
{
|
||||
|
||||
@ -24,10 +24,10 @@ public:
|
||||
ObExprGreaterThan();
|
||||
explicit ObExprGreaterThan(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprGreaterThan(){};
|
||||
virtual int calc_result2(
|
||||
common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs_stack, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result2(common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int calc_resultN(common::ObObj& result, const common::ObObj* objs_stack, int64_t param_num,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override
|
||||
{
|
||||
|
||||
@ -21,9 +21,9 @@ class ObExprHex : public ObStringExprOperator {
|
||||
public:
|
||||
explicit ObExprHex(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprHex();
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& text, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& text, common::ObExprTypeCtx& type_ctx) const override;
|
||||
static int calc(common::ObObj& result, const common::ObObj& text, common::ObCastCtx& cast_ctx);
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& text, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& text, common::ObExprCtx& expr_ctx) const override;
|
||||
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
|
||||
@ -22,8 +22,10 @@ class ObExprInitcap : public ObStringExprOperator {
|
||||
public:
|
||||
explicit ObExprInitcap(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprInitcap();
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& text, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& text_obj, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result_type1(
|
||||
ObExprResType& type, ObExprResType& text, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result1(
|
||||
common::ObObj& result, const common::ObObj& text_obj, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int initcap_string(const common::ObString& text, const common::ObCollationType cs_type,
|
||||
common::ObIAllocator* allocator, common::ObString& res_str);
|
||||
|
||||
@ -21,9 +21,9 @@ class ObExprInt2ip : public ObStringExprOperator {
|
||||
public:
|
||||
explicit ObExprInt2ip(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprInt2ip();
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& text, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& text, common::ObExprTypeCtx& type_ctx) const override;
|
||||
static int calc(common::ObObj& result, const common::ObObj& text, common::ObExprStringBuf& string_buf);
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& text, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& text, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int int2ip_varchar(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
|
||||
|
||||
@ -21,9 +21,9 @@ public:
|
||||
explicit ObExprIntDiv(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprIntDiv(){};
|
||||
virtual int calc_result_type2(
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result2(
|
||||
common::ObObj& res, const common::ObObj& ojb1, const common::ObObj& obj2, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& res, const common::ObObj& ojb1, const common::ObObj& obj2, common::ObExprCtx& expr_ctx) const override;
|
||||
static int calc(common::ObObj& res, const common::ObObj& ojb1, const common::ObObj& obj2,
|
||||
common::ObIAllocator* allocator, common::ObScale scale);
|
||||
static int div_int_int(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
|
||||
@ -30,7 +30,7 @@ public:
|
||||
virtual ~ObExprInterval()
|
||||
{}
|
||||
|
||||
virtual int assign(const ObExprOperator& other);
|
||||
virtual int assign(const ObExprOperator& other) override;
|
||||
|
||||
OB_INLINE void set_use_binary_search(bool use_binary_search)
|
||||
{
|
||||
|
||||
@ -21,9 +21,9 @@ class ObExprIp2int : public ObFuncExprOperator {
|
||||
public:
|
||||
explicit ObExprIp2int(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprIp2int();
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& text, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& text, common::ObExprTypeCtx& type_ctx) const override;
|
||||
static int calc(common::ObObj& result, const common::ObObj& text, common::ObExprCtx& expr_ctx);
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& text, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& text, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int ip2int_varchar(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
|
||||
|
||||
@ -59,9 +59,9 @@ public:
|
||||
virtual ~ObExprIs(){};
|
||||
|
||||
virtual int calc_with_null(common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2,
|
||||
const common::ObObj& obj3, common::ObCastCtx& cast_ctx) const;
|
||||
const common::ObObj& obj3, common::ObCastCtx& cast_ctx) const override;
|
||||
virtual int calc_with_int(
|
||||
common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2, common::ObCastCtx& cast_ctx) const;
|
||||
common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2, common::ObCastCtx& cast_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_is_date_int_null(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
static int calc_is_null(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
@ -89,9 +89,9 @@ public:
|
||||
virtual ~ObExprIsNot(){};
|
||||
|
||||
virtual int calc_with_null(common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2,
|
||||
const common::ObObj& obj3, common::ObCastCtx& cast_ctx) const;
|
||||
const common::ObObj& obj3, common::ObCastCtx& cast_ctx) const override;
|
||||
virtual int calc_with_int(
|
||||
common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2, common::ObCastCtx& cast_ctx) const;
|
||||
common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2, common::ObCastCtx& cast_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_is_not_null(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
static int int_is_not_true(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
|
||||
@ -23,9 +23,9 @@ public:
|
||||
virtual ~ObExprIsServingTenant();
|
||||
|
||||
virtual int calc_result_type3(ObExprResType& type, ObExprResType& type1, ObExprResType& type2, ObExprResType& type3,
|
||||
common::ObExprTypeCtx& type_ctx) const;
|
||||
common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result3(common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2,
|
||||
const common::ObObj& obj3, common::ObExprCtx& expr_ctx) const;
|
||||
const common::ObObj& obj3, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
static int eval_is_serving_tenant(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
|
||||
@ -19,8 +19,8 @@ class ObExprLastExecId : public ObStringExprOperator {
|
||||
public:
|
||||
explicit ObExprLastExecId(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprLastExecId();
|
||||
virtual int calc_result_type0(ObExprResType& type, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result0(common::ObObj& result, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result_type0(ObExprResType& type, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result0(common::ObObj& result, common::ObExprCtx& expr_ctx) const override;
|
||||
static int eval_last_exec_id(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
|
||||
@ -23,9 +23,9 @@ public:
|
||||
explicit ObExprLastInsertID(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprLastInsertID();
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* types_array, int64_t param_num, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType* types_array, int64_t param_num, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs_array, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj* objs_array, int64_t param_num, common::ObExprCtx& expr_ctx) const override;
|
||||
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
|
||||
@ -21,8 +21,8 @@ class ObExprLastTraceId : public ObStringExprOperator {
|
||||
public:
|
||||
explicit ObExprLastTraceId(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprLastTraceId();
|
||||
virtual int calc_result_type0(ObExprResType& type, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result0(common::ObObj& result, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result_type0(ObExprResType& type, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result0(common::ObObj& result, common::ObExprCtx& expr_ctx) const override;
|
||||
static int eval_last_trace_id(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
|
||||
@ -40,9 +40,9 @@ public:
|
||||
const char* name = N_LEAST);
|
||||
virtual ~ObExprBaseLeast();
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* types_stack, int64_t param_num, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType* types_stack, int64_t param_num, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs_stack, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj* objs_stack, int64_t param_num, common::ObExprCtx& expr_ctx) const override;
|
||||
static int calc(common::ObObj& result, const common::ObObj* objs_stack, int64_t param_num,
|
||||
const ObExprResType& expected_type, common::ObExprCtx& expr_ctx);
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
@ -21,9 +21,9 @@ class ObExprLength : public ObFuncExprOperator {
|
||||
public:
|
||||
explicit ObExprLength(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprLength();
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& text, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& text, common::ObExprTypeCtx& type_ctx) const override;
|
||||
static int calc(common::ObObj& result, const common::ObObj& text, common::ObExprCtx& expr_ctx);
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& text, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& text, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_null(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
static int calc_oracle_mode(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
|
||||
@ -24,9 +24,9 @@ class ObExprLengthb : public ObFuncExprOperator {
|
||||
public:
|
||||
explicit ObExprLengthb(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprLengthb();
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& text, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& text, common::ObExprTypeCtx& type_ctx) const override;
|
||||
static int calc(common::ObObj& result, const common::ObObj& text, common::ObExprCtx& expr_ctx);
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& text, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& text, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_lengthb_expr(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& res_datum);
|
||||
|
||||
|
||||
@ -23,9 +23,9 @@ public:
|
||||
explicit ObExprLessEqual(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprLessEqual(){};
|
||||
virtual int calc_result2(
|
||||
common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs_stack, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj* objs_stack, int64_t param_num, common::ObExprCtx& expr_ctx) const override;
|
||||
static int calc(common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2,
|
||||
const common::ObCompareCtx& cmp_ctx, common::ObCastCtx& cast_ctx);
|
||||
static int calc_nocast(
|
||||
|
||||
@ -25,9 +25,9 @@ public:
|
||||
explicit ObExprLessThan(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprLessThan(){};
|
||||
virtual int calc_result2(
|
||||
common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs_stack, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj* objs_stack, int64_t param_num, common::ObExprCtx& expr_ctx) const override;
|
||||
static int calc(common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2,
|
||||
const common::ObCompareCtx& cmp_ctx, common::ObCastCtx& cast_ctx);
|
||||
static int calc_nocast(
|
||||
|
||||
@ -95,9 +95,9 @@ public:
|
||||
explicit ObExprLike(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprLike();
|
||||
virtual int calc_result_type3(ObExprResType& type, ObExprResType& type1, ObExprResType& type2, ObExprResType& type3,
|
||||
common::ObExprTypeCtx& type_ctx) const;
|
||||
common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result3(common::ObObj& result, const common::ObObj& obj, const common::ObObj& pattern,
|
||||
const common::ObObj& escape, common::ObExprCtx& expr_ctx) const;
|
||||
const common::ObObj& escape, common::ObExprCtx& expr_ctx) const override;
|
||||
static int calc(common::ObObj& result, common::ObCollationType coll_type, const common::ObObj& obj,
|
||||
const common::ObObj& pattern, const common::ObObj& escape, common::ObExprCtx& expr_ctx,
|
||||
const bool is_going_optimization, const uint64_t like_id, const bool check_optimization);
|
||||
@ -105,7 +105,7 @@ public:
|
||||
static int calc_with_non_instr_mode(T& result, const common::ObCollationType coll_type,
|
||||
const common::ObCollationType escape_coll, const common::ObString& text_val, const common::ObString& pattern_val,
|
||||
const common::ObString& escape_val);
|
||||
int assign(const ObExprOperator& other);
|
||||
int assign(const ObExprOperator& other) override;
|
||||
OB_INLINE bool is_pattern_literal() const
|
||||
{
|
||||
return is_pattern_literal_;
|
||||
|
||||
@ -21,8 +21,8 @@ class ObExprFuncLnnvl : public ObFuncExprOperator {
|
||||
public:
|
||||
explicit ObExprFuncLnnvl(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprFuncLnnvl();
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& input, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& type1, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& input, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& type1, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
static int eval_lnnvl(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
|
||||
@ -21,8 +21,8 @@ class ObExprLog10 : public ObFuncExprOperator {
|
||||
public:
|
||||
explicit ObExprLog10(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprLog10();
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& type1, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& obj, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& type1, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& obj, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
private:
|
||||
|
||||
@ -21,8 +21,8 @@ class ObExprLog2 : public ObFuncExprOperator {
|
||||
public:
|
||||
explicit ObExprLog2(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprLog2();
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& type1, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& obj, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& type1, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& obj, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
private:
|
||||
|
||||
@ -55,8 +55,8 @@ public:
|
||||
virtual ~ObExprLower()
|
||||
{}
|
||||
virtual int calc(const common::ObCollationType cs_type, char* src, int32_t src_len, char* dest, int32_t det_len,
|
||||
int32_t& out_len) const;
|
||||
virtual int32_t get_case_mutiply(const common::ObCollationType cs_type) const;
|
||||
int32_t& out_len) const override;
|
||||
virtual int32_t get_case_mutiply(const common::ObCollationType cs_type) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_lower(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
|
||||
@ -70,8 +70,8 @@ public:
|
||||
virtual ~ObExprUpper()
|
||||
{}
|
||||
virtual int calc(const common::ObCollationType cs_type, char* src, int32_t src_len, char* dest, int32_t det_len,
|
||||
int32_t& out_len) const;
|
||||
virtual int32_t get_case_mutiply(const common::ObCollationType cs_type) const;
|
||||
int32_t& out_len) const override;
|
||||
virtual int32_t get_case_mutiply(const common::ObCollationType cs_type) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_upper(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
|
||||
@ -85,8 +85,8 @@ public:
|
||||
virtual ~ObExprNlsLower()
|
||||
{}
|
||||
virtual int calc(const common::ObCollationType cs_type, char* src, int32_t src_len, char* dest, int32_t det_len,
|
||||
int32_t& out_len) const;
|
||||
virtual int32_t get_case_mutiply(const common::ObCollationType cs_type) const;
|
||||
int32_t& out_len) const override;
|
||||
virtual int32_t get_case_mutiply(const common::ObCollationType cs_type) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_lower(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
|
||||
@ -100,8 +100,8 @@ public:
|
||||
virtual ~ObExprNlsUpper()
|
||||
{}
|
||||
virtual int calc(const common::ObCollationType cs_type, char* src, int32_t src_len, char* dest, int32_t det_len,
|
||||
int32_t& out_len) const;
|
||||
virtual int32_t get_case_mutiply(const common::ObCollationType cs_type) const;
|
||||
int32_t& out_len) const override;
|
||||
virtual int32_t get_case_mutiply(const common::ObCollationType cs_type) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_upper(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
|
||||
|
||||
@ -100,7 +100,7 @@ public:
|
||||
virtual int calc_result3(common::ObObj& result, const common::ObObj& text, const common::ObObj& len,
|
||||
const common::ObObj& pad_text, common::ObExprCtx& expr_ctx) const override;
|
||||
// for engine 3.0
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const;
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_mysql_rpad_expr(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& res);
|
||||
|
||||
private:
|
||||
@ -118,7 +118,7 @@ public:
|
||||
virtual int calc_resultN(common::ObObj& result, const common::ObObj* objs_array, int64_t param_num,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
// for engine 3.0
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const;
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_oracle_lpad_expr(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& res);
|
||||
|
||||
private:
|
||||
@ -136,7 +136,7 @@ public:
|
||||
virtual int calc_resultN(common::ObObj& result, const common::ObObj* objs_array, int64_t param_num,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
// for engine 3.0
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const;
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_oracle_rpad_expr(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& res);
|
||||
|
||||
private:
|
||||
|
||||
@ -24,8 +24,8 @@ public:
|
||||
virtual ~ObExprMd5();
|
||||
|
||||
public:
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& str, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& str_obj, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& str, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& str_obj, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_md5(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
|
||||
|
||||
@ -23,9 +23,9 @@ public:
|
||||
explicit ObExprMinus(common::ObIAllocator& alloc, ObExprOperatorType type = T_OP_MINUS);
|
||||
virtual ~ObExprMinus(){};
|
||||
virtual int calc_result_type2(
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result2(
|
||||
common::ObObj& result, const common::ObObj& left, const common::ObObj& right, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj& left, const common::ObObj& right, common::ObExprCtx& expr_ctx) const override;
|
||||
static int calc(common::ObObj& res, const common::ObObj& ojb1, const common::ObObj& obj2,
|
||||
common::ObIAllocator* allocator, common::ObScale scale);
|
||||
static int calc(common::ObObj& res, const common::ObObj& ojb1, const common::ObObj& obj2, common::ObExprCtx& expr_ctx,
|
||||
|
||||
@ -23,9 +23,9 @@ public:
|
||||
explicit ObExprMod(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprMod(){};
|
||||
virtual int calc_result_type2(
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result2(
|
||||
common::ObObj& res, const common::ObObj& ojb1, const common::ObObj& obj2, common::ObExprCtx& expr_ctx) const;
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result2(common::ObObj& res, const common::ObObj& ojb1, const common::ObObj& obj2,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
static int calc(common::ObObj& res, const common::ObObj& ojb1, const common::ObObj& obj2,
|
||||
common::ObIAllocator* allocator, common::ObScale scale);
|
||||
|
||||
|
||||
@ -23,9 +23,9 @@ public:
|
||||
explicit ObExprMul(common::ObIAllocator& alloc, ObExprOperatorType type = T_OP_MUL);
|
||||
virtual ~ObExprMul(){};
|
||||
virtual int calc_result_type2(
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result2(
|
||||
common::ObObj& result, const common::ObObj& left, const common::ObObj& right, common::ObExprCtx& expr_ctx) const;
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result2(common::ObObj& result, const common::ObObj& left, const common::ObObj& right,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
static int calc(common::ObObj& res, const common::ObObj& ojb1, const common::ObObj& obj2,
|
||||
common::ObIAllocator* allocator, common::ObScale scale);
|
||||
static int calc(common::ObObj& res, const common::ObObj& ojb1, const common::ObObj& obj2, common::ObExprCtx& expr_ctx,
|
||||
|
||||
@ -24,15 +24,15 @@ public:
|
||||
ObExprNotEqual();
|
||||
explicit ObExprNotEqual(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprNotEqual(){};
|
||||
virtual int calc_result2(
|
||||
common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs_stack, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result2(common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int calc_resultN(common::ObObj& result, const common::ObObj* objs_stack, int64_t param_num,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
static int calc(common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2,
|
||||
const common::ObCompareCtx& cmp_ctx, common::ObCastCtx& cast_ctx);
|
||||
|
||||
virtual int calc_result_type2(
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const override;
|
||||
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override
|
||||
{
|
||||
|
||||
@ -36,9 +36,9 @@ public:
|
||||
explicit ObExprRandom(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprRandom();
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const override;
|
||||
inline void set_seed_const(bool is_seed_const);
|
||||
|
||||
// engine 3.0
|
||||
|
||||
@ -25,12 +25,12 @@ public:
|
||||
explicit ObExprRegexp(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprRegexp();
|
||||
|
||||
virtual int assign(const ObExprOperator& other);
|
||||
virtual int assign(const ObExprOperator& other) override;
|
||||
|
||||
virtual int calc_result_type2(
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result2(
|
||||
common::ObObj& result, const common::ObObj& obj, const common::ObObj& pattern, common::ObExprCtx& expr_ctx) const;
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result2(common::ObObj& result, const common::ObObj& obj, const common::ObObj& pattern,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
virtual inline void reset()
|
||||
{
|
||||
regexp_idx_ = common::OB_COMPACT_INVALID_INDEX;
|
||||
|
||||
@ -23,9 +23,9 @@ public:
|
||||
explicit ObExprRegexpCount(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprRegexpCount();
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const override;
|
||||
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
|
||||
@ -23,9 +23,9 @@ public:
|
||||
explicit ObExprRegexpInstr(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprRegexpInstr();
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
static int eval_regexp_instr(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
|
||||
@ -23,9 +23,9 @@ public:
|
||||
explicit ObExprRegexpLike(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprRegexpLike();
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const override;
|
||||
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
|
||||
@ -24,9 +24,9 @@ public:
|
||||
explicit ObExprRegexpReplace(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprRegexpReplace();
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const override;
|
||||
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
|
||||
@ -23,9 +23,9 @@ public:
|
||||
explicit ObExprRegexpSubstr(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprRegexpSubstr();
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const override;
|
||||
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
|
||||
@ -22,7 +22,7 @@ public:
|
||||
explicit ObExprRepeat(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprRepeat();
|
||||
virtual int calc_result_type2(
|
||||
ObExprResType& type, ObExprResType& text, ObExprResType& count, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType& text, ObExprResType& count, common::ObExprTypeCtx& type_ctx) const override;
|
||||
///@brief call function calc(), implementation of ObExprOperator::calc_result2()
|
||||
///
|
||||
///@param [out] result result of RPEAT(str, count)
|
||||
@ -31,7 +31,7 @@ public:
|
||||
///@param [in] allocator:ObExprStringBuf
|
||||
///@return OB_SUCCESS success, others failure
|
||||
virtual int calc_result2(
|
||||
common::ObObj& result, const common::ObObj& text, const common::ObObj& count, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj& text, const common::ObObj& count, common::ObExprCtx& expr_ctx) const override;
|
||||
static int calc(common::ObObj& result, const common::ObObj& text, const common::ObObj& count,
|
||||
common::ObIAllocator* allocator, const common::ObObjType res_type, const int64_t max_result_size);
|
||||
static int calc(common::ObObj& result, const common::ObObjType type, const common::ObString& text,
|
||||
|
||||
@ -24,7 +24,7 @@ public:
|
||||
explicit ObExprReplace(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprReplace();
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* types_array, int64_t param_num, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType* types_array, int64_t param_num, common::ObExprTypeCtx& type_ctx) const override;
|
||||
|
||||
static int calc(common::ObObj& result, const common::ObObj& text, const common::ObObj& from, const common::ObObj& to,
|
||||
common::ObExprStringBuf& string_buf);
|
||||
|
||||
@ -20,8 +20,9 @@ class ObExprSinh : public ObFuncExprOperator {
|
||||
public:
|
||||
explicit ObExprSinh(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprSinh();
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& type1, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& obj, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result_type1(
|
||||
ObExprResType& type, ObExprResType& type1, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& obj, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
private:
|
||||
|
||||
@ -20,8 +20,8 @@ class ObExprSqrt : public ObFuncExprOperator {
|
||||
public:
|
||||
explicit ObExprSqrt(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprSqrt();
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& type1, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& obj, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& type1, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& obj, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
private:
|
||||
|
||||
@ -23,9 +23,9 @@ public:
|
||||
explicit ObExprStrToDate(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprStrToDate();
|
||||
virtual int calc_result_type2(
|
||||
ObExprResType& type, ObExprResType& date, ObExprResType& format, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result2(
|
||||
common::ObObj& result, const common::ObObj& date, const common::ObObj& format, common::ObExprCtx& expr_ctx) const;
|
||||
ObExprResType& type, ObExprResType& date, ObExprResType& format, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result2(common::ObObj& result, const common::ObObj& date, const common::ObObj& format,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
private:
|
||||
|
||||
@ -23,9 +23,9 @@ public:
|
||||
explicit ObExprStrcmp(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprStrcmp(){};
|
||||
virtual int calc_result_type2(
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result2(
|
||||
common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2, common::ObExprCtx& expr_ctx) const;
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result2(common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override
|
||||
{
|
||||
|
||||
@ -30,7 +30,7 @@ public:
|
||||
|
||||
private:
|
||||
virtual int compare_single_row(const common::ObNewRow& left_row, const common::ObNewRow& right_row,
|
||||
common::ObExprCtx& expr_ctx, common::ObObj& result) const;
|
||||
common::ObExprCtx& expr_ctx, common::ObObj& result) const override;
|
||||
|
||||
private:
|
||||
DISALLOW_COPY_AND_ASSIGN(ObExprSubQueryGreaterEqual);
|
||||
|
||||
@ -30,7 +30,7 @@ public:
|
||||
|
||||
private:
|
||||
virtual int compare_single_row(const common::ObNewRow& left_row, const common::ObNewRow& right_row,
|
||||
common::ObExprCtx& expr_ctx, common::ObObj& result) const;
|
||||
common::ObExprCtx& expr_ctx, common::ObObj& result) const override;
|
||||
|
||||
private:
|
||||
DISALLOW_COPY_AND_ASSIGN(ObExprSubQueryGreaterThan);
|
||||
|
||||
@ -30,7 +30,7 @@ public:
|
||||
|
||||
private:
|
||||
virtual int compare_single_row(const common::ObNewRow& left_row, const common::ObNewRow& right_row,
|
||||
common::ObExprCtx& expr_ctx, common::ObObj& result) const;
|
||||
common::ObExprCtx& expr_ctx, common::ObObj& result) const override;
|
||||
|
||||
private:
|
||||
DISALLOW_COPY_AND_ASSIGN(ObExprSubQueryLessEqual);
|
||||
|
||||
@ -30,7 +30,7 @@ public:
|
||||
|
||||
private:
|
||||
virtual int compare_single_row(const common::ObNewRow& left_row, const common::ObNewRow& right_row,
|
||||
common::ObExprCtx& expr_ctx, common::ObObj& result) const;
|
||||
common::ObExprCtx& expr_ctx, common::ObObj& result) const override;
|
||||
|
||||
private:
|
||||
DISALLOW_COPY_AND_ASSIGN(ObExprSubQueryLessThan);
|
||||
|
||||
@ -28,7 +28,7 @@ public:
|
||||
|
||||
private:
|
||||
virtual int compare_single_row(const common::ObNewRow& left_row, const common::ObNewRow& right_row,
|
||||
common::ObExprCtx& expr_ctx, common::ObObj& result) const;
|
||||
common::ObExprCtx& expr_ctx, common::ObObj& result) const override;
|
||||
|
||||
private:
|
||||
DISALLOW_COPY_AND_ASSIGN(ObExprSubQueryNotEqual);
|
||||
|
||||
@ -28,7 +28,7 @@ public:
|
||||
|
||||
private:
|
||||
virtual int compare_single_row(const common::ObNewRow& left_row, const common::ObNewRow& right_row,
|
||||
common::ObExprCtx& expr_ctx, common::ObObj& result) const;
|
||||
common::ObExprCtx& expr_ctx, common::ObObj& result) const override;
|
||||
DISALLOW_COPY_AND_ASSIGN(ObExprSubQueryNSEqual);
|
||||
};
|
||||
} // namespace sql
|
||||
|
||||
@ -46,11 +46,11 @@ public:
|
||||
explicit ObExprSubQueryRef(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprSubQueryRef();
|
||||
|
||||
virtual int assign(const ObExprOperator& other);
|
||||
virtual int assign(const ObExprOperator& other) override;
|
||||
|
||||
virtual void reset();
|
||||
virtual int calc_result_type0(ObExprResType& type, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result0(common::ObObj& result, common::ObExprCtx& expr_ctx) const;
|
||||
virtual void reset() override;
|
||||
virtual int calc_result_type0(ObExprResType& type, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result0(common::ObObj& result, common::ObExprCtx& expr_ctx) const override;
|
||||
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int expr_eval(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
|
||||
@ -23,13 +23,13 @@ public:
|
||||
explicit ObExprSubstr(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprSubstr();
|
||||
virtual int calc_result2(common::ObObj& result, const common::ObObj& text, const common::ObObj& start_pos,
|
||||
common::ObExprCtx& expr_ctx) const;
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int calc_result3(common::ObObj& result, const common::ObObj& text, const common::ObObj& start_pos,
|
||||
const common::ObObj& length, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* types_stack, int64_t param_num, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs_array, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
const common::ObObj& length, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int calc_result_typeN(ObExprResType& type, ObExprResType* types_stack, int64_t param_num,
|
||||
common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_resultN(common::ObObj& result, const common::ObObj* objs_array, int64_t param_num,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
|
||||
static int substr(common::ObString& output, const common::ObString& input, const int64_t pos, const int64_t len,
|
||||
common::ObCollationType cs_type);
|
||||
|
||||
@ -23,9 +23,9 @@ public:
|
||||
explicit ObExprSubstringIndex(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprSubstringIndex();
|
||||
virtual int calc_result_type3(ObExprResType& type, ObExprResType& str, ObExprResType& delim, ObExprResType& count,
|
||||
common::ObExprTypeCtx& type_ctx) const;
|
||||
common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result3(common::ObObj& result, const common::ObObj& str, const common::ObObj& delim,
|
||||
const common::ObObj& count, common::ObExprCtx& expr_ctx) const;
|
||||
const common::ObObj& count, common::ObExprCtx& expr_ctx) const override;
|
||||
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
|
||||
@ -24,9 +24,9 @@ public:
|
||||
virtual ~ObExprSysConnectByPath()
|
||||
{}
|
||||
virtual int calc_result_type2(
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result2(
|
||||
common::ObObj& result, const common::ObObj& left, const common::ObObj& right, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj& left, const common::ObObj& right, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_sys_path(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
static int eval_sys_connect_by_path(
|
||||
|
||||
@ -20,11 +20,11 @@ public:
|
||||
explicit ObExprSysPrivilegeCheck(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprSysPrivilegeCheck();
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const override;
|
||||
|
||||
/// obj_array(level, tenant, db, table)
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* obj_array, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj* obj_array, int64_t param_num, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int eval_sys_privilege_check(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
|
||||
|
||||
@ -22,10 +22,10 @@ public:
|
||||
explicit ObExprTimeStampDiff(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprTimeStampDiff();
|
||||
virtual int calc_result_type3(ObExprResType& type, ObExprResType& unit, ObExprResType& left, ObExprResType& right,
|
||||
common::ObExprTypeCtx& type_ctx) const;
|
||||
common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result3(common::ObObj& result, const common::ObObj& unit, const common::ObObj& left,
|
||||
const common::ObObj& right, common::ObExprCtx& expr_ctx) const;
|
||||
virtual common::ObCastMode get_cast_mode() const
|
||||
const common::ObObj& right, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual common::ObCastMode get_cast_mode() const override
|
||||
{
|
||||
return CM_NULL_ON_WARN;
|
||||
}
|
||||
|
||||
@ -22,9 +22,9 @@ public:
|
||||
explicit ObExprTimestampNvl(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprTimestampNvl();
|
||||
virtual int calc_result_type2(
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result2(
|
||||
common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_timestampnvl(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
|
||||
|
||||
@ -21,8 +21,9 @@ public:
|
||||
ObExprToDays();
|
||||
explicit ObExprToDays(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprToDays();
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& date, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& date, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result_type1(
|
||||
ObExprResType& type, ObExprResType& date, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& date, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
private:
|
||||
|
||||
@ -21,8 +21,8 @@ class ObExprToYMInterval : public ObFuncExprOperator {
|
||||
public:
|
||||
explicit ObExprToYMInterval(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprToYMInterval();
|
||||
int calc_result_type1(ObExprResType& type, ObExprResType& type1, common::ObExprTypeCtx& type_ctx) const;
|
||||
int calc_result1(common::ObObj& result, const common::ObObj& obj, common::ObExprCtx& expr_ctx) const;
|
||||
int calc_result_type1(ObExprResType& type, ObExprResType& type1, common::ObExprTypeCtx& type_ctx) const override;
|
||||
int calc_result1(common::ObObj& result, const common::ObObj& obj, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_to_yminterval(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
|
||||
@ -34,8 +34,8 @@ class ObExprToDSInterval : public ObFuncExprOperator {
|
||||
public:
|
||||
explicit ObExprToDSInterval(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprToDSInterval();
|
||||
int calc_result_type1(ObExprResType& type, ObExprResType& type1, common::ObExprTypeCtx& type_ctx) const;
|
||||
int calc_result1(common::ObObj& result, const common::ObObj& obj, common::ObExprCtx& expr_ctx) const;
|
||||
int calc_result_type1(ObExprResType& type, ObExprResType& type1, common::ObExprTypeCtx& type_ctx) const override;
|
||||
int calc_result1(common::ObObj& result, const common::ObObj& obj, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_to_dsinterval(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
|
||||
@ -48,9 +48,9 @@ public:
|
||||
explicit ObExprNumToYMInterval(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprNumToYMInterval();
|
||||
int calc_result_type2(
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const;
|
||||
int calc_result2(
|
||||
common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2, common::ObExprCtx& expr_ctx) const;
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const override;
|
||||
int calc_result2(common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
template <class T>
|
||||
static int calc_result_common(
|
||||
const T& obj1, const T& obj2, common::ObIAllocator& calc_buf, common::ObIntervalYMValue& ym_value);
|
||||
@ -66,9 +66,9 @@ public:
|
||||
explicit ObExprNumToDSInterval(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprNumToDSInterval();
|
||||
int calc_result_type2(
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const;
|
||||
int calc_result2(
|
||||
common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2, common::ObExprCtx& expr_ctx) const;
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const override;
|
||||
int calc_result2(common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
template <class R, class T>
|
||||
static int calc_result_common(R& result, const T& obj1, const T& obj2, common::ObIAllocator& calc_buf);
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
@ -38,7 +38,7 @@ public:
|
||||
virtual ~ObExprToNumber();
|
||||
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_(const ObString& in_str, const ObString& in_fmt_str, ObIAllocator& alloc, number::ObNumber& res_nmb);
|
||||
// for engine 3.0
|
||||
@ -54,9 +54,9 @@ public:
|
||||
virtual ~ObExprToBinaryFloat();
|
||||
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_(const ObString& in_str, const ObString& in_fmt_str, ObIAllocator& alloc, number::ObNumber& res_nmb);
|
||||
static int calc_to_binaryfloat_expr(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& res_datum);
|
||||
@ -71,9 +71,9 @@ public:
|
||||
virtual ~ObExprToBinaryDouble();
|
||||
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj* objs, int64_t param_num, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_to_binarydouble_expr(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& res_datum);
|
||||
|
||||
|
||||
@ -23,10 +23,10 @@ public:
|
||||
explicit ObExprToTemporalBase(common::ObIAllocator& alloc, ObExprOperatorType type, const char* name);
|
||||
virtual ~ObExprToTemporalBase()
|
||||
{}
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* types_array, int64_t param_num, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs_array, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result_typeN(ObExprResType& type, ObExprResType* types_array, int64_t param_num,
|
||||
common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_resultN(common::ObObj& result, const common::ObObj* objs_array, int64_t param_num,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int set_my_result_from_ob_time(
|
||||
common::ObExprCtx& expr_ctx, common::ObTime& ob_time, common::ObObj& result) const = 0;
|
||||
virtual common::ObObjType get_my_target_obj_type() const = 0;
|
||||
|
||||
@ -41,7 +41,7 @@ public:
|
||||
const common::ObFixedArray<size_t, common::ObIAllocator>&);
|
||||
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const override
|
||||
{
|
||||
return deduce_result_type(type, types, param_num, type_ctx);
|
||||
}
|
||||
@ -49,8 +49,8 @@ public:
|
||||
static int deduce_result_type(
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx);
|
||||
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs_array, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_resultN(common::ObObj& result, const common::ObObj* objs_array, int64_t param_num,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
@ -84,10 +84,11 @@ public:
|
||||
explicit ObExprLtrim(common::ObIAllocator& alloc, ObExprOperatorType type, const char* name, int32_t param_num);
|
||||
virtual ~ObExprLtrim();
|
||||
|
||||
virtual int calc_result_type1(ObExprResType& res_type, ObExprResType& type1, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result_type1(
|
||||
ObExprResType& res_type, ObExprResType& type1, common::ObExprTypeCtx& type_ctx) const override;
|
||||
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx) const override
|
||||
{
|
||||
return deduce_result_type(type, types, param_num, type_ctx);
|
||||
}
|
||||
@ -95,12 +96,13 @@ public:
|
||||
static int deduce_result_type(
|
||||
ObExprResType& type, ObExprResType* types, int64_t param_num, common::ObExprTypeCtx& type_ctx);
|
||||
|
||||
virtual int calc_result1(common::ObObj& res_obj, const common::ObObj& obj1, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result1(
|
||||
common::ObObj& res_obj, const common::ObObj& obj1, common::ObExprCtx& expr_ctx) const override;
|
||||
|
||||
int calc(common::ObObj& res_obj, const common::ObObj& obj1, common::ObExprCtx& expr_ctx, int64_t trim_type_val) const;
|
||||
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* objs_array, int64_t param_num, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_resultN(common::ObObj& result, const common::ObObj* objs_array, int64_t param_num,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
|
||||
static int calc_oracle_mode(common::ObObj& result, const int64_t trim_type, const common::ObString& pattern,
|
||||
const common::ObString& text, const common::ObObjType& res_type, common::ObExprCtx& expr_ctx,
|
||||
|
||||
@ -27,7 +27,7 @@ public:
|
||||
|
||||
virtual int calc_result2(common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const;
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int set_trunc_val(
|
||||
common::ObObj& result, common::number::ObNumber& nmb, common::ObExprCtx& expr_ctx, common::ObObjType res_type);
|
||||
|
||||
|
||||
@ -105,8 +105,8 @@ class ObExprSetToStr : public ObExprTypeToStr {
|
||||
public:
|
||||
explicit ObExprSetToStr(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprSetToStr();
|
||||
virtual int calc(
|
||||
common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc(common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_to_str_expr(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& res_datum);
|
||||
|
||||
@ -119,8 +119,8 @@ class ObExprEnumToStr : public ObExprTypeToStr {
|
||||
public:
|
||||
explicit ObExprEnumToStr(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprEnumToStr();
|
||||
virtual int calc(
|
||||
common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc(common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_to_str_expr(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& res_datum);
|
||||
|
||||
@ -134,9 +134,9 @@ public:
|
||||
explicit ObExprSetToInnerType(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprSetToInnerType();
|
||||
virtual int calc_result_type2(
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc(
|
||||
common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2, common::ObExprCtx& expr_ctx) const;
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc(common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_to_inner_expr(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& res_datum);
|
||||
|
||||
@ -150,9 +150,9 @@ public:
|
||||
explicit ObExprEnumToInnerType(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprEnumToInnerType();
|
||||
virtual int calc_result_type2(
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc(
|
||||
common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2, common::ObExprCtx& expr_ctx) const;
|
||||
ObExprResType& type, ObExprResType& type1, ObExprResType& type2, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc(common::ObObj& result, const common::ObObj& obj1, const common::ObObj& obj2,
|
||||
common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int calc_to_inner_expr(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& res_datum);
|
||||
|
||||
|
||||
@ -21,8 +21,8 @@ class ObExprUid : public ObFuncExprOperator {
|
||||
public:
|
||||
explicit ObExprUid(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprUid();
|
||||
virtual int calc_result_type0(ObExprResType& type, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result0(common::ObObj& result, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result_type0(ObExprResType& type, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result0(common::ObObj& result, common::ObExprCtx& expr_ctx) const override;
|
||||
static int eval_uid(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
|
||||
@ -21,10 +21,11 @@ class ObExprUnhex : public ObStringExprOperator {
|
||||
public:
|
||||
explicit ObExprUnhex(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprUnhex();
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& text, common::ObExprTypeCtx& type_ctx) const;
|
||||
static int calc(
|
||||
common::ObObj& result, const common::ObObj& text, common::ObCastCtx& cast_ctx, common::ObExprCtx& expr_ctx);
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& text, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result_type1(
|
||||
ObExprResType& type, ObExprResType& text, common::ObExprTypeCtx& type_ctx) const override;
|
||||
static int calc(common::ObObj& result, const common::ObObj& text, common::ObCastCtx& cast_ctx, common::ObExprCtx& expr_ctx);
|
||||
virtual int calc_result1(
|
||||
common::ObObj& result, const common::ObObj& text, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
static int eval_unhex(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& res_datum);
|
||||
|
||||
|
||||
@ -22,9 +22,9 @@ public:
|
||||
explicit ObExprUnixTimestamp(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprUnixTimestamp();
|
||||
virtual int calc_result_typeN(
|
||||
ObExprResType& type, ObExprResType* type_array, int64_t param, common::ObExprTypeCtx& type_ctx) const;
|
||||
ObExprResType& type, ObExprResType* type_array, int64_t param, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_resultN(
|
||||
common::ObObj& result, const common::ObObj* date_param, int64_t param, common::ObExprCtx& expr_ctx) const;
|
||||
common::ObObj& result, const common::ObObj* date_param, int64_t param, common::ObExprCtx& expr_ctx) const override;
|
||||
static int calc(
|
||||
common::ObObj& result, const common::ObObj& dt_date, const ObExprResType& res_type, common::ObCastCtx& cast_ctx);
|
||||
static int eval_unix_timestamp(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& res);
|
||||
|
||||
@ -20,8 +20,10 @@ class ObExprUsecToTime : public ObFuncExprOperator {
|
||||
public:
|
||||
explicit ObExprUsecToTime(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprUsecToTime();
|
||||
virtual int calc_result_type1(ObExprResType& type, ObExprResType& usec, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result1(common::ObObj& result, const common::ObObj& usec, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result_type1(
|
||||
ObExprResType& type, ObExprResType& usec, common::ObExprTypeCtx& type_ctx) const override;
|
||||
virtual int calc_result1(
|
||||
common::ObObj& result, const common::ObObj& usec, common::ObExprCtx& expr_ctx) const override;
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
private:
|
||||
|
||||
@ -22,7 +22,7 @@ public:
|
||||
explicit ObExprUser(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprUser();
|
||||
virtual int calc_result_type0(ObExprResType& type, common::ObExprTypeCtx& type_ctx) const;
|
||||
virtual int calc_result0(common::ObObj& result, common::ObExprCtx& expr_ctx) const;
|
||||
virtual int calc_result0(common::ObObj& result, common::ObExprCtx& expr_ctx) const override;
|
||||
static int eval_user(const ObExpr& expr, ObEvalCtx& ctx, ObDatum& expr_datum);
|
||||
virtual int cg_expr(ObExprCGCtx& op_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
|
||||
@ -25,10 +25,10 @@ public:
|
||||
explicit ObExprUserCanAccessObj(common::ObIAllocator& alloc);
|
||||
virtual ~ObExprUserCanAccessObj();
|
||||
virtual int calc_result_type3(ObExprResType& type, ObExprResType& arg1, ObExprResType& arg2, ObExprResType& arg3,
|
||||
common::ObExprTypeCtx& type_ctx) const;
|
||||
common::ObExprTypeCtx& type_ctx) const override;
|
||||
|
||||
virtual int calc_result3(common::ObObj& result, const common::ObObj& arg1, const common::ObObj& arg2,
|
||||
const common::ObObj& arg3, common::ObExprCtx& expr_ctx) const;
|
||||
const common::ObObj& arg3, common::ObExprCtx& expr_ctx) const override;
|
||||
|
||||
virtual int cg_expr(ObExprCGCtx& expr_cg_ctx, const ObRawExpr& raw_expr, ObExpr& rt_expr) const override;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user