summaryrefslogtreecommitdiff
path: root/src/backend/parser/README
Commit message (Collapse)AuthorAgeFilesLines
* Update src/backend/parser/READMEAlvaro Herrera2022-07-221-0/+3
| | | | | New files have been added to this directory, but not listed here. Repair.
* Move keywords.c/kwlookup.c into src/common/.Tom Lane2016-03-231-2/+4
| | | | | | | | | | | | | | | | | | | Now that we have src/common/ for code shared between frontend and backend, we can get rid of (most of) the klugy ways that the keyword table and keyword lookup code were formerly shared between different uses. This is a first step towards a more general plan of getting rid of special-purpose kluges for sharing code in src/bin/. I chose to merge kwlookup.c back into keywords.c, as it once was, and always has been so far as keywords.h is concerned. We could have kept them separate, but there is noplace that uses ScanKeywordLookup without also wanting access to the backend's keyword list, so there seems little point. ecpg is still a bit weird, but at least now the trickiness is documented. I think that the MSVC build script should require no adjustments beyond what's done here ... but we'll soon find out.
* Revise collation derivation method and expression-tree representation.Tom Lane2011-03-191-0/+1
| | | | | | | | | | | | | | | | | | | All expression nodes now have an explicit output-collation field, unless they are known to only return a noncollatable data type (such as boolean or record). Also, nodes that can invoke collation-aware functions store a separate field that is the collation value to pass to the function. This avoids confusion that arises when a function has collatable inputs and noncollatable output type, or vice versa. Also, replace the parser's on-the-fly collation assignment method with a post-pass over the completed expression tree. This allows us to use a more complex (and hopefully more nearly spec-compliant) assignment rule without paying for it in extra storage in every expression node. Fix assorted bugs in the planner's handling of collations by making collation one of the defining properties of an EquivalenceClass and by converting CollateExprs into discardable RelabelType nodes during expression preprocessing.
* Remove cvs keywords from all files.Magnus Hagander2010-09-201-1/+1
|
* Implement parser hooks for processing ColumnRef and ParamRef nodes, as per myTom Lane2009-10-311-6/+9
| | | | | | | | | | | | | recent proposal. As proof of concept, remove knowledge of Params from the core parser, arranging for them to be handled entirely by parser hook functions. It turns out we need an additional hook for that --- I had forgotten about the code that handles inferring a parameter's type from context. This is a preliminary step towards letting plpgsql handle its variables through parser hooks. Additional work remains to be done to expose the facility through SPI, but I think this is all the changes needed in the core parser.
* Small wording improvements for source code READMEs.Bruce Momjian2008-04-091-3/+3
|
* Revert README cleanups.Bruce Momjian2008-04-091-3/+3
|
* Revert sentence removal from nickname in FAQ.Bruce Momjian2008-04-091-3/+3
|
* More README src cleanups.Bruce Momjian2008-03-211-2/+2
|
* Make source code READMEs more consistent. Add CVS tags to all README files.Bruce Momjian2008-03-201-0/+5
|
* Separate parse-analysis for utility commands out of parser/analyze.cTom Lane2007-06-231-5/+6
| | | | | | | | | | | | | | | | | (which now deals only in optimizable statements), and put that code into a new file parser/parse_utilcmd.c. This helps clarify and enforce the design rule that utility statements shouldn't be processed during the regular parse analysis phase; all interpretation of their meaning should happen after they are given to ProcessUtility to execute. (We need this because we don't retain any locks for a utility statement that's in a plan cache, nor have any way to detect that it's stale.) We are also able to simplify the API for parse_analyze() and related routines, because they will now always return exactly one Query structure. In passing, fix bug #3403 concerning trying to add a serial column to an existing temp table (this is largely Heikki's work, but we needed all that restructuring to make it safe).
* cleanupBruce Momjian1998-08-231-1/+1
|
* Add Var.varlevelup to code. More parser cleanup.Bruce Momjian1998-01-201-1/+1
|
* Cleaups of comments.Bruce Momjian1997-11-271-1/+1
|
* Add README for parser directoryBruce Momjian1997-11-261-0/+20