1 /*-------------------------------------------------------------------------
4 * handle aggregates and window functions in parser
6 * Portions Copyright (c) 1996-2014, PostgreSQL Global Development Group
7 * Portions Copyright (c) 1994, Regents of the University of California
9 * src/include/parser/parse_agg.h
11 *-------------------------------------------------------------------------
16 #include "parser/parse_node.h"
18 extern void transformAggregateCall(ParseState *pstate, Aggref *agg,
19 List *args, List *aggorder,
21 extern void transformWindowFuncCall(ParseState *pstate, WindowFunc *wfunc,
24 extern void parseCheckAggregates(ParseState *pstate, Query *qry);
26 extern int get_aggregate_argtypes(Aggref *aggref, Oid *inputTypes);
28 extern Oid resolve_aggregate_transtype(Oid aggfuncid,
33 extern void build_aggregate_fnexprs(Oid *agg_input_types,
35 int agg_num_direct_inputs,
40 Oid agg_input_collation,
45 Expr **invtransfnexpr,
48 #endif /* PARSE_AGG_H */