postgres/src/include/parser/parse_agg.h

38 lines
1.1 KiB
C
Raw Normal View History

/*-------------------------------------------------------------------------
*
* parse_agg.h
* handle aggregates and window functions in parser
*
2011-01-01 13:18:15 -05:00
* Portions Copyright (c) 1996-2011, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
2010-09-20 22:08:53 +02:00
* src/include/parser/parse_agg.h
*
*-------------------------------------------------------------------------
*/
#ifndef PARSE_AGG_H
#define PARSE_AGG_H
#include "parser/parse_node.h"
extern void transformAggregateCall(ParseState *pstate, Aggref *agg,
List *args, List *aggorder,
2010-02-26 02:01:40 +00:00
bool agg_distinct);
extern void transformWindowFuncCall(ParseState *pstate, WindowFunc *wfunc,
WindowDef *windef);
extern void parseCheckAggregates(ParseState *pstate, Query *qry);
extern void parseCheckWindowFuncs(ParseState *pstate, Query *qry);
extern void build_aggregate_fnexprs(Oid *agg_input_types,
int agg_num_inputs,
2003-08-04 00:43:34 +00:00
Oid agg_state_type,
Oid agg_result_type,
Oid transfn_oid,
Oid finalfn_oid,
Oid collation,
2003-08-04 00:43:34 +00:00
Expr **transfnexpr,
Expr **finalfnexpr);
#endif /* PARSE_AGG_H */