Files
openGauss-server/src/include/parser/parse_merge.h
2022-09-03 16:22:35 +08:00

26 lines
998 B
C

/* ---------------------------------------------------------------------------------------
*
* parse_merge.h
* handle merge-stmt in parser
*
* Portions Copyright (c) 1996-2018, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
* src/include/parser/parse_merge.h
*
* ---------------------------------------------------------------------------------------
*/
#ifndef PARSE_MERGE_H
#define PARSE_MERGE_H
#include "parser/parse_node.h"
extern bool contain_subquery_walker(Node* node, void* context);
extern Query* transformMergeStmt(ParseState* pstate, MergeStmt* stmt);
extern List* expandTargetTL(List* te_list, Query* parsetree);
extern List* expandActionTL(List* te_list, Query* parsetree);
extern List* expandQualTL(List* te_list, Query* parsetree);
extern bool check_unique_constraint(List*& index_list);
extern void setExtraUpdatedCols(RangeTblEntry* target_rte, TupleDesc tupdesc);
#endif