Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef PARSE_AGG_H
00014 #define PARSE_AGG_H
00015
00016 #include "parser/parse_node.h"
00017
00018 extern void transformAggregateCall(ParseState *pstate, Aggref *agg,
00019 List *args, List *aggorder,
00020 bool agg_distinct);
00021 extern void transformWindowFuncCall(ParseState *pstate, WindowFunc *wfunc,
00022 WindowDef *windef);
00023
00024 extern void parseCheckAggregates(ParseState *pstate, Query *qry);
00025
00026 extern void build_aggregate_fnexprs(Oid *agg_input_types,
00027 int agg_num_inputs,
00028 Oid agg_state_type,
00029 Oid agg_result_type,
00030 Oid agg_input_collation,
00031 Oid transfn_oid,
00032 Oid finalfn_oid,
00033 Expr **transfnexpr,
00034 Expr **finalfnexpr);
00035
00036 #endif