You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
postgres/src/backend/parser
Tom Lane c15a4c2aef Replace planner's representation of relation sets, per pghackers discussion. 23 years ago
..
.cvsignore Add .cvsignore file so cvs doesn't complain if you have lex/yacc 27 years ago
Makefile Tweak bison build rules so that we get the same error messages from 23 years ago
README cleanup 28 years ago
analyze.c Fix parse_agg.c to detect ungrouped Vars in sub-SELECTs; remove code 23 years ago
gram.y Allow qualified type names in CREATE CAST, DROP CAST. Also allow the 23 years ago
keywords.c Change MOVE LAST to MOVE ALL. 23 years ago
parse_agg.c Fix parse_agg.c to detect ungrouped Vars in sub-SELECTs; remove code 23 years ago
parse_clause.c Replace planner's representation of relation sets, per pghackers discussion. 23 years ago
parse_coerce.c Determine the set of constraints applied to a domain at executor 23 years ago
parse_expr.c Determine the set of constraints applied to a domain at executor 23 years ago
parse_func.c Phase 2 of read-only-plans project: restructure expression-tree nodes 23 years ago
parse_node.c Preliminary code review for domain CHECK constraints patch: add documentation, 23 years ago
parse_oper.c Tighten selection of equality and ordering operators for grouping 23 years ago
parse_relation.c Phase 2 of read-only-plans project: restructure expression-tree nodes 23 years ago
parse_target.c Preliminary code review for domain CHECK constraints patch: add documentation, 23 years ago
parse_type.c pgindent run. 24 years ago
parser.c pgindent run. 24 years ago
scan.l Add cast to suppress compile warning on Alphas. 24 years ago
scansup.c Be careful to include postgres.h *before* any system headers, to ensure 24 years ago

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