aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>1997-11-26 15:36:00 +0000
committerBruce Momjian <bruce@momjian.us>1997-11-26 15:36:00 +0000
commitbac80c218eea921941a6f56f65a611e852536b53 (patch)
tree716b0049161943050c34ad164dba8ff4ac2afd8d
parentd79b9a1b7a451747241b3c7a31e25f00322bfa84 (diff)
downloadpostgresql-bac80c218eea921941a6f56f65a611e852536b53.tar.gz
postgresql-bac80c218eea921941a6f56f65a611e852536b53.zip
Add README for parser directory
-rw-r--r--src/backend/parser/README20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/backend/parser/README b/src/backend/parser/README
new file mode 100644
index 00000000000..ddbcb6f63d8
--- /dev/null
+++ b/src/backend/parser/README
@@ -0,0 +1,20 @@
+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 one function for every complex query type like SELECT, INSERT...
+parse_clause.c handle clauses like WHERE, ORDER BY, GROUP BY, ...
+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 like date_part(col3), trim(col4), ...
+
+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