[FEAT MERGE]4_1_sql_feature

Co-authored-by: leslieyuchen <leslieyuchen@gmail.com>
Co-authored-by: Charles0429 <xiezhenjiang@gmail.com>
Co-authored-by: raywill <hustos@gmail.com>
This commit is contained in:
obdev
2023-01-28 16:01:26 +08:00
committed by ob-robot
parent 3080f2b66f
commit 2d19a9d8f5
846 changed files with 161957 additions and 116661 deletions

View File

@ -0,0 +1,41 @@
// (C) Copyright 2015-2016 Alibaba Inc. All Rights Reserved.
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// version 2 as published by the Free Software Foundation.
// Version: $Id$
// Authors:
// yebangyu <bangyu.yby@alibaba-inc.com>
// Normalizer:
// yebangyu <bangyu.yby@alipay.com>
// This file is for declaration of func get_user_var
#ifndef _OCEANBASE_SQL_OB_EXPR_NAME_CONST_H_
#define _OCEANBASE_SQL_OB_EXPR_NAME_CONST_H_
#include "lib/ob_name_def.h"
#include "sql/engine/expr/ob_expr_operator.h"
#include "sql/session/ob_sql_session_info.h"
namespace oceanbase
{
namespace sql
{
class ObExprNameConst : public ObFuncExprOperator
{
public:
explicit ObExprNameConst(common::ObIAllocator &alloc);
virtual ~ObExprNameConst();
virtual int calc_result_type2(ObExprResType &type,
ObExprResType &type1,
ObExprResType &type2,
common::ObExprTypeCtx &type_ctx) const;
virtual int cg_expr(ObExprCGCtx &expr_cg_ctx, const ObRawExpr &raw_expr,
ObExpr &expr) const override;
static int eval_name_const(const ObExpr &expr, ObEvalCtx &ctx, ObDatum &res);
private:
// disallow copy
DISALLOW_COPY_AND_ASSIGN(ObExprNameConst);
};
} //sql
} //oceanbase
#endif //_OCEANBASE_SQL_OB_EXPR_NAME_CONST_H_