postgresql/src/backend/parser
Peter Eisentraut 94bdc4855c Extend syntax of CREATE FUNCTION to resemble SQL99. 2002-05-17 18:32:52 +00:00
..
.cvsignore Add .cvsignore file so cvs doesn't complain if you have lex/yacc 1999-03-21 02:43:58 +00:00
Makefile Scanner performance improvements 2002-04-20 21:56:15 +00:00
README cleanup 1998-08-23 14:43:46 +00:00
analyze.c First pass at set-returning-functions in FROM, by Joe Conway with 2002-05-12 20:10:05 +00:00
gram.y Extend syntax of CREATE FUNCTION to resemble SQL99. 2002-05-17 18:32:52 +00:00
keywords.c Extend syntax of CREATE FUNCTION to resemble SQL99. 2002-05-17 18:32:52 +00:00
parse_agg.c Restructure representation of aggregate functions so that they have pg_proc 2002-04-11 20:00:18 +00:00
parse_clause.c Get rid of long-since-vestigial Iter node type, in favor of adding a 2002-05-12 23:43:04 +00:00
parse_coerce.c Get rid of long-since-vestigial Iter node type, in favor of adding a 2002-05-12 23:43:04 +00:00
parse_expr.c Get rid of long-since-vestigial Iter node type, in favor of adding a 2002-05-12 23:43:04 +00:00
parse_func.c Get rid of long-since-vestigial Iter node type, in favor of adding a 2002-05-12 23:43:04 +00:00
parse_node.c Get rid of long-since-vestigial Iter node type, in favor of adding a 2002-05-12 23:43:04 +00:00
parse_oper.c Give left_oper() and right_oper() noError parameters like oper() (the 2002-05-01 19:26:08 +00:00
parse_relation.c First pass at set-returning-functions in FROM, by Joe Conway with 2002-05-12 20:10:05 +00:00
parse_target.c Restructure representation of aggregate functions so that they have pg_proc 2002-04-11 20:00:18 +00:00
parse_type.c First pass at set-returning-functions in FROM, by Joe Conway with 2002-05-12 20:10:05 +00:00
parser.c Scanner performance improvements 2002-04-20 21:56:15 +00:00
scan.l Tweak scanner/grammar interface so that the keyword-as-identifier rules 2002-05-02 18:44:11 +00:00
scansup.c pgindent run on all C files. Java run to follow. initdb/regression 2001-10-25 05:50:21 +00:00

README

This directory does more than tokenize and parse SQL queries.  It also
creates Query structures for the various complex queries that is passed
to the optimizer and then executor.

parser.c	things start here
scan.l		break query into tokens
scansup.c	handle escapes in input
keywords.c	turn keywords into specific tokens
gram.y		parse the tokens and fill query-type-specific structures
analyze.c	handle post-parse processing for each query type
parse_clause.c	handle clauses like WHERE, ORDER BY, GROUP BY, ...
parse_coerce.c	used for coercing expressions of different types
parse_expr.c	handle expressions like col, col + 3, x = 3 or x = 4
parse_oper.c	handle operations in expressions
parse_agg.c	handle aggregates, like SUM(col1),  AVG(col2), ...
parse_func.c	handle functions, table.column and column identifiers
parse_node.c	create nodes for various structures
parse_target.c	handle the result list of the query
parse_relation.c support routines for tables and column handling
parse_type.c	support routines for type handling