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
Bruce Momjian 089003fb46 pgindent run. 22 years ago
..
.cvsignore Add .cvsignore file so cvs doesn't complain if you have lex/yacc 27 years ago
Makefile Adopt latest bison's spelling of 'syntax error' rather than 'parse error' 23 years ago
README cleanup 27 years ago
analyze.c pgindent run. 22 years ago
gram.y Another round of error message editing, covering backend/parser/. 22 years ago
keywords.c Includes: 23 years ago
parse_agg.c pgindent run. 22 years ago
parse_clause.c pgindent run. 22 years ago
parse_coerce.c pgindent run. 22 years ago
parse_expr.c pgindent run. 22 years ago
parse_func.c pgindent run. 22 years ago
parse_node.c pgindent run. 22 years ago
parse_oper.c pgindent run. 22 years ago
parse_relation.c pgindent run. 22 years ago
parse_target.c pgindent run. 22 years ago
parse_type.c pgindent run. 22 years ago
parser.c Not sure why parser() was still doing clearerr(stdin) ... but it's 23 years ago
scan.l First bits of work on error message editing. 22 years ago
scansup.c Be careful to include postgres.h *before* any system headers, to ensure 23 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