1997-11-26 16:36:00 +01:00
|
|
|
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
|
1997-11-27 03:23:02 +01:00
|
|
|
analyze.c handle post-parse processing for each query type
|
1997-11-26 16:36:00 +01:00
|
|
|
parse_clause.c handle clauses like WHERE, ORDER BY, GROUP BY, ...
|
1998-08-23 16:43:46 +02:00
|
|
|
parse_coerce.c used for coercing expressions of different types
|
1997-11-26 16:36:00 +01:00
|
|
|
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), ...
|
1998-01-20 23:12:17 +01:00
|
|
|
parse_func.c handle functions, table.column and column identifiers
|
1997-11-26 16:36:00 +01:00
|
|
|
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
|