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 15e4d1e2a7 Tweak the backend scanner (and psqlscan.l, which must track the backend 21 years ago
..
.cvsignore
Makefile $Header: -> $PostgreSQL Changes ... 22 years ago
README
analyze.c Implement sharable row-level locks, and use them for foreign key references 21 years ago
gram.y Add COPY WITH CVS HEADER to allow a heading line as the first line in 21 years ago
keywords.c Add COPY WITH CVS HEADER to allow a heading line as the first line in 21 years ago
parse_agg.c Convert oidvector and int2vector into variable-length arrays. This 21 years ago
parse_clause.c Change addRangeTableEntryForRelation() to take a Relation pointer instead 21 years ago
parse_coerce.c Allow implicit cast from any named composite type to RECORD. At the 21 years ago
parse_expr.c Inserting 5 characters into char(10) does not produce 5 padding spaces 21 years ago
parse_func.c Remove useless argtype_inherit() code, and make consequent simplifications. 21 years ago
parse_node.c Allow -2147483648 to be treated as an INT4 rather than INT8 constant. 21 years ago
parse_oper.c Tag appropriate files for rc3 21 years ago
parse_relation.c Implement sharable row-level locks, and use them for foreign key references 21 years ago
parse_target.c On further experimentation, there were still a couple of bugs in 21 years ago
parse_type.c Implement sharable row-level locks, and use them for foreign key references 21 years ago
parser.c Tag appropriate files for rc3 21 years ago
scan.l Tweak the backend scanner (and psqlscan.l, which must track the backend 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