1997-11-25 17:07:18 -05:00
|
|
|
/*-------------------------------------------------------------------------
|
|
|
|
|
*
|
|
|
|
|
* parse_agg.h
|
2003-01-16 22:25:04 -05:00
|
|
|
* handle aggregates in parser
|
1997-11-25 17:07:18 -05:00
|
|
|
*
|
2003-08-03 22:40:20 -04:00
|
|
|
* Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
|
2000-01-26 00:58:53 -05:00
|
|
|
* Portions Copyright (c) 1994, Regents of the University of California
|
1997-11-25 17:07:18 -05:00
|
|
|
*
|
2003-11-29 17:41:33 -05:00
|
|
|
* $PostgreSQL: pgsql/src/include/parser/parse_agg.h,v 1.30 2003/11/29 22:41:09 pgsql Exp $
|
1997-11-25 17:07:18 -05:00
|
|
|
*
|
|
|
|
|
*-------------------------------------------------------------------------
|
|
|
|
|
*/
|
|
|
|
|
#ifndef PARSE_AGG_H
|
|
|
|
|
#define PARSE_AGG_H
|
|
|
|
|
|
1999-07-15 19:04:24 -04:00
|
|
|
#include "parser/parse_node.h"
|
1997-11-25 17:07:18 -05:00
|
|
|
|
2003-06-06 11:04:03 -04:00
|
|
|
extern void transformAggregateCall(ParseState *pstate, Aggref *agg);
|
|
|
|
|
|
2003-01-16 22:25:04 -05:00
|
|
|
extern void parseCheckAggregates(ParseState *pstate, Query *qry);
|
2001-10-28 01:26:15 -05:00
|
|
|
|
2003-07-01 15:10:53 -04:00
|
|
|
extern void build_aggregate_fnexprs(Oid agg_input_type,
|
2003-08-03 20:43:34 -04:00
|
|
|
Oid agg_state_type,
|
|
|
|
|
Oid agg_result_type,
|
|
|
|
|
Oid transfn_oid,
|
|
|
|
|
Oid finalfn_oid,
|
|
|
|
|
Expr **transfnexpr,
|
|
|
|
|
Expr **finalfnexpr);
|
2003-07-01 15:10:53 -04:00
|
|
|
|
2001-11-05 12:46:40 -05:00
|
|
|
#endif /* PARSE_AGG_H */
|