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
Peter Eisentraut 7852a35515 Add support for casting bit string constants. 25 years ago
..
.cvsignore Add .cvsignore file so cvs doesn't complain if you have lex/yacc 27 years ago
Makefile Add support for VPATH builds, that is, building somewhere else than in the 25 years ago
README cleanup 27 years ago
analyze.c Make DROP TABLE rollback-able: postpone physical file delete until commit. 25 years ago
gram.y Extend CREATE DATABASE to allow selection of a template database to be 25 years ago
keywords.c Extend CREATE DATABASE to allow selection of a template database to be 25 years ago
parse_agg.c Subselects in FROM clause, per ISO syntax: FROM (SELECT ...) [AS] alias. 25 years ago
parse_clause.c Restructure handling of inheritance queries so that they work with outer 25 years ago
parse_coerce.c Arrange for CASE or UNION with only untyped literal constants as input 25 years ago
parse_expr.c Add support for casting bit string constants. 25 years ago
parse_func.c Fix bug in recent improvement to type resolution code. Forgot to retain 25 years ago
parse_node.c Change the parser to convert SQL "position" and "substring" syntax to 25 years ago
parse_oper.c Fix bug in recent improvement to type resolution code. Forgot to retain 25 years ago
parse_relation.c Make DROP TABLE rollback-able: postpone physical file delete until commit. 25 years ago
parse_target.c Subselects in FROM clause, per ISO syntax: FROM (SELECT ...) [AS] alias. 25 years ago
parse_type.c Mark functions as static and ifdef NOT_USED as appropriate. 26 years ago
parser.c Arrange that no database accesses are attempted during parser() --- this 25 years ago
scan.l Peter forgot to fix {operator} rule to match modified definition of 25 years ago
scansup.c Ye-old pgindent run. Same 4-space tabs. 26 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