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 be3b265c94 Improve SELECT DISTINCT to consider hash aggregation, as well as sort/uniq, 18 years ago
..
.cvsignore Add .cvsignore file so cvs doesn't complain if you have lex/yacc 27 years ago
Makefile Refactor backend makefiles to remove lots of duplicate code 18 years ago
README Small wording improvements for source code READMEs. 18 years ago
analyze.c Rearrange the querytree representation of ORDER BY/GROUP BY/DISTINCT items 18 years ago
gram.y Implement SQL-spec RETURNS TABLE syntax for functions. 18 years ago
keywords.c Support "variadic" functions, which can accept a variable number of arguments 18 years ago
parse_agg.c Rearrange the querytree representation of ORDER BY/GROUP BY/DISTINCT items 18 years ago
parse_clause.c Improve SELECT DISTINCT to consider hash aggregation, as well as sort/uniq, 18 years ago
parse_coerce.c Allow I/O conversion casts to be applied to or from any type that is a member 18 years ago
parse_expr.c Support "variadic" functions, which can accept a variable number of arguments 18 years ago
parse_func.c Replace the hard-wired type knowledge in TypeCategory() and IsPreferredType() 18 years ago
parse_node.c Allow float8, int8, and related datatypes to be passed by value on machines 18 years ago
parse_oper.c Rearrange the querytree representation of ORDER BY/GROUP BY/DISTINCT items 18 years ago
parse_relation.c Restructure some header files a bit, in particular heapam.h, by removing some 18 years ago
parse_target.c Remove typename from A_Const. 18 years ago
parse_type.c Some minor further cleanup around A_Const. Don't attach a typecast in 18 years ago
parse_utilcmd.c Support "variadic" functions, which can accept a variable number of arguments 18 years ago
parser.c Update copyrights in source tree to 2008. 18 years ago
scan.l Add "%option noinput" to the scanners to avoid compiler warnings. GCC 4.3 18 years ago
scansup.c Update copyrights in source tree to 2008. 18 years ago

README

$PostgreSQL: pgsql/src/backend/parser/README,v 1.10 2008/04/09 01:00:46 momjian Exp $

Parser
======

This directory does more than tokenize and parse SQL queries. It also
creates Query structures for the various complex queries that are passed
to the optimizer and then executor.

parser.c things start here
scan.l break query into tokens
scansup.c handle escapes in input strings
keywords.c turn keywords into specific tokens
gram.y parse the tokens and fill query-type-specific structures
analyze.c top level of parse analysis for optimizable queries
parse_clause.c handle clauses like WHERE, ORDER BY, GROUP BY, ...
parse_coerce.c handle coercing expressions to different data types
parse_expr.c handle expressions like col, col + 3, x = 3 or x = 4
parse_oper.c handle operators 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 data type handling
parse_utilcmd.c parse analysis for utility commands (done at execution time)