postgresql/src/backend/parser
Peter Eisentraut 97377048b4 pg_cast table, and standards-compliant CREATE/DROP CAST commands, plus
extension to create binary compatible casts.  Includes dependency tracking
as well.

pg_proc.proimplicit is now defunct, but will be removed in a separate
commit.

pg_dump provides a migration path from the previous scheme to declare
casts.  Dumping binary compatible casts is currently impossible, though.
2002-07-18 23:11:32 +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 Add more dependency insertions --- this completes the basic pg_depend 2002-07-16 22:12:20 +00:00
gram.y pg_cast table, and standards-compliant CREATE/DROP CAST commands, plus 2002-07-18 23:11:32 +00:00
keywords.c pg_cast table, and standards-compliant CREATE/DROP CAST commands, plus 2002-07-18 23:11:32 +00:00
parse_agg.c Update copyright to 2002. 2002-06-20 20:29:54 +00:00
parse_clause.c Update copyright to 2002. 2002-06-20 20:29:54 +00:00
parse_coerce.c pg_cast table, and standards-compliant CREATE/DROP CAST commands, plus 2002-07-18 23:11:32 +00:00
parse_expr.c Back out BETWEEN node patch, was causing initdb failure. 2002-07-18 17:14:20 +00:00
parse_func.c Update copyright to 2002. 2002-06-20 20:29:54 +00:00
parse_node.c Update copyright to 2002. 2002-06-20 20:29:54 +00:00
parse_oper.c Update copyright to 2002. 2002-06-20 20:29:54 +00:00
parse_relation.c Update copyright to 2002. 2002-06-20 20:29:54 +00:00
parse_target.c Update copyright to 2002. 2002-06-20 20:29:54 +00:00
parse_type.c I've fixed up the way domain constraints (not null and type length) 2002-07-06 20:16:36 +00:00
parser.c Update copyright to 2002. 2002-06-20 20:29:54 +00:00
scan.l Implement SQL99 CREATE CAST and DROP CAST statements. 2002-06-22 02:04:55 +00:00
scansup.c Update copyright to 2002. 2002-06-20 20:29:54 +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