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
Neil Conway c069655441 Allow ALTER FUNCTION to change a function's strictness, volatility, and 21 years ago
..
.cvsignore
Makefile $Header: -> $PostgreSQL Changes ... 22 years ago
README
analyze.c Make the behavior of HAVING without GROUP BY conform to the SQL spec. 21 years ago
gram.y Allow ALTER FUNCTION to change a function's strictness, volatility, and 21 years ago
keywords.c Tag appropriate files for rc3 21 years ago
parse_agg.c Make the behavior of HAVING without GROUP BY conform to the SQL spec. 21 years ago
parse_clause.c Tag appropriate files for rc3 21 years ago
parse_coerce.c Tag appropriate files for rc3 21 years ago
parse_expr.c Refactor transformExpr() by creating separate functions for most of the 21 years ago
parse_func.c Tag appropriate files for rc3 21 years ago
parse_node.c Tag appropriate files for rc3 21 years ago
parse_oper.c Tag appropriate files for rc3 21 years ago
parse_relation.c Tag appropriate files for rc3 21 years ago
parse_target.c get_names_for_var didn't do recursion for unnamed JOIN vars quite right; 21 years ago
parse_type.c Tag appropriate files for rc3 21 years ago
parser.c Tag appropriate files for rc3 21 years ago
scan.l Add fprintf() custom version to libpgport. 21 years ago
scansup.c Tag appropriate files for rc3 21 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