Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit f76bc9c

Browse files
committed
Reorder keyword token declarations alphabetically. Status of the keywords
in the various standards can be found in the documentation these days.
1 parent 13cd9eb commit f76bc9c

File tree

1 file changed

+69
-81
lines changed

1 file changed

+69
-81
lines changed

src/backend/parser/gram.y

Lines changed: 69 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
*
1212
*
1313
* IDENTIFICATION
14-
* $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 2.317 2002/05/17 18:32:52 petere Exp $
14+
* $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 2.318 2002/05/19 15:16:55 petere Exp $
1515
*
1616
* HISTORY
1717
* AUTHOR DATE MAJOR EVENT
@@ -308,89 +308,77 @@ static void doNegateFloat(Value *v);
308308

309309

310310
/*
311-
* If you make any token changes, remember to:
312-
* - use "yacc -d" and update parse.h
313-
* - update the keyword table in parser/keywords.c
314-
*/
315-
316-
/* Reserved word tokens
317-
* SQL92 syntax has many type-specific constructs.
318-
* So, go ahead and make these types reserved words,
319-
* and call-out the syntax explicitly.
320-
* This gets annoying when trying to also retain Postgres' nice
321-
* type-extensible features, but we don't really have a choice.
322-
* - thomas 1997-10-11
323-
* NOTE: don't forget to add new keywords to the appropriate one of
311+
* If you make any token changes, update the keyword table in
312+
* parser/keywords.c and add new keywords to the appropriate one of
324313
* the reserved-or-not-so-reserved keyword lists, below.
325314
*/
326315

327-
/* Keywords (in SQL92 reserved words) */
328-
%token <keyword> ABSOLUTE, ACTION, ADD, ALL, ALTER, AND, ANY, AS, ASC, AT,
329-
AUTHORIZATION, BEGIN_TRANS, BETWEEN, BOTH, BY,
330-
CASCADE, CASE, CAST, CHAR, CHARACTER, CHECK, CLOSE,
331-
COALESCE, COLLATE, COLUMN, COMMIT,
332-
CONSTRAINT, CONSTRAINTS, CREATE, CROSS, CURRENT_DATE,
333-
CURRENT_TIME, CURRENT_TIMESTAMP, CURRENT_USER, CURSOR,
334-
DAY_P, DEC, DECIMAL, DECLARE, DEFAULT, DELETE, DESC,
335-
DISTINCT, DOUBLE, DROP,
336-
ELSE, ENCRYPTED, END_TRANS, ESCAPE, EXCEPT, EXECUTE, EXISTS, EXTRACT,
337-
FALSE_P, FETCH, FLOAT, FOR, FOREIGN, FROM, FULL,
338-
GLOBAL, GRANT, GROUP, HAVING, HOUR_P,
339-
IN, INNER_P, INSENSITIVE, INSERT, INT, INTEGER, INTERSECT, INTERVAL,
340-
INTO, IS, ISOLATION,
341-
JOIN, KEY, LANGUAGE, LEADING, LEFT, LEVEL, LIKE, LOCAL,
342-
MATCH, MINUTE_P, MONTH_P, NAMES,
343-
NATIONAL, NATURAL, NCHAR, NEXT, NO, NOT, NULLIF, NULL_P, NUMERIC,
344-
OF, OLD, ON, ONLY, OPTION, OR, ORDER, OUTER_P, OVERLAPS,
345-
PARTIAL, POSITION, PRECISION, PRIMARY, PRIOR, PRIVILEGES, PROCEDURE,
346-
READ, REAL, REFERENCES, RELATIVE, REVOKE, RIGHT, ROLLBACK,
347-
SCHEMA, SCROLL, SECOND_P, SELECT, SESSION, SESSION_USER, SET,
348-
SMALLINT, SOME, SUBSTRING,
349-
TABLE, TEMPORARY, THEN, TIME, TIMESTAMP,
350-
TO, TRAILING, TRANSACTION, TRIM, TRUE_P,
351-
UNENCRYPTED, UNION, UNIQUE, UNKNOWN, UPDATE, USAGE, USER, USING,
352-
VALUES, VARCHAR, VARYING, VIEW,
353-
WHEN, WHERE, WITH, WORK, YEAR_P, ZONE
354-
355-
/* Keywords (in SQL99 reserved words) */
356-
%token <keyword> ASSERTION, BINARY, BIT, BOOLEAN,
357-
CHAIN, CHARACTERISTICS,
358-
DEFERRABLE, DEFERRED,
359-
IMMEDIATE, INITIALLY, INOUT,
360-
OFF, OUT,
361-
PATH_P, PENDANT,
362-
REPLACE, RESTRICT,
363-
TRIGGER,
364-
WITHOUT
365-
366-
/* Keywords (in SQL92 non-reserved words) */
367-
%token <keyword> COMMITTED, SERIALIZABLE, TYPE_P, DOMAIN_P
368-
369-
/* Keywords for Postgres support (not in SQL92 reserved words)
370-
*
371-
* The CREATEDB and CREATEUSER tokens should go away
372-
* when some sort of pg_privileges relation is introduced.
373-
* - Todd A. Brandys 1998-01-01?
374-
*/
375-
%token <keyword> ABORT_TRANS, ACCESS, AFTER, AGGREGATE, ANALYSE, ANALYZE,
376-
BACKWARD, BEFORE, BIGINT,
377-
CACHE, CHECKPOINT, CLUSTER, COMMENT, COPY, CREATEDB, CREATEUSER, CYCLE,
378-
DATABASE, DELIMITERS, DO,
379-
EACH, ENCODING, EXCLUSIVE, EXPLAIN,
380-
FORCE, FORWARD, FREEZE, FUNCTION, HANDLER,
381-
ILIKE, INCREMENT, INDEX, INHERITS, INSTEAD, ISNULL,
382-
LANCOMPILER, LIMIT, LISTEN, LOAD, LOCATION, LOCK_P,
383-
MAXVALUE, MINVALUE, MODE, MOVE,
384-
NEW, NOCREATEDB, NOCREATEUSER, NONE, NOTHING, NOTIFY, NOTNULL,
385-
OFFSET, OIDS, OPERATOR, OWNER, PASSWORD, PROCEDURAL,
386-
REINDEX, RENAME, RESET, RETURNS, ROW, RULE,
387-
SEQUENCE, SETOF, SHARE, SHOW, START, STATEMENT,
388-
STATISTICS, STDIN, STDOUT, STORAGE, SYSID,
389-
TEMP, TEMPLATE, TOAST, TRUNCATE, TRUSTED,
390-
UNLISTEN, UNTIL, VACUUM, VALID, VERBOSE, VERSION
391-
392-
%token <keyword> CALLED, DEFINER, EXTERNAL, IMMUTABLE, IMPLICIT, INPUT,
393-
INVOKER, SECURITY, STABLE, STRICT, VOLATILE
316+
/* ordinary key words in alphabetical order */
317+
%token <keyword> ABORT_TRANS, ABSOLUTE, ACCESS, ACTION, ADD, AFTER,
318+
AGGREGATE, ALL, ALTER, ANALYSE, ANALYZE, AND, ANY, AS, ASC, ASSERTION,
319+
AT, AUTHORIZATION,
320+
321+
BACKWARD, BEFORE, BEGIN_TRANS, BETWEEN, BIGINT, BINARY, BIT, BOTH,
322+
BOOLEAN, BY,
323+
324+
CACHE, CALLED, CASCADE, CASE, CAST, CHAIN, CHAR, CHARACTER,
325+
CHARACTERISTICS, CHECK, CHECKPOINT, CLOSE, CLUSTER, COALESCE, COLLATE,
326+
COLUMN, COMMENT, COMMIT, COMMITTED, CONSTRAINT, CONSTRAINTS, COPY,
327+
CREATE, CREATEDB, CREATEUSER, CROSS, CURRENT_DATE, CURRENT_TIME,
328+
CURRENT_TIMESTAMP, CURRENT_USER, CURSOR, CYCLE,
329+
330+
DATABASE, DAY_P, DEC, DECIMAL, DECLARE, DEFAULT, DEFERRABLE, DEFERRED,
331+
DEFINER, DELETE, DELIMITERS, DESC, DISTINCT, DO, DOMAIN_P, DOUBLE, DROP,
332+
333+
EACH, ELSE, ENCODING, ENCRYPTED, END_TRANS, ESCAPE, EXCEPT, EXCLUSIVE,
334+
EXECUTE, EXISTS, EXPLAIN, EXTERNAL, EXTRACT,
335+
336+
FALSE_P, FETCH, FLOAT, FOR, FORCE, FOREIGN, FORWARD, FREEZE, FROM,
337+
FULL, FUNCTION,
338+
339+
GLOBAL, GRANT, GROUP,
340+
HANDLER, HAVING, HOUR_P,
341+
342+
ILIKE, IMMEDIATE, IMMUTABLE, IMPLICIT, IN, INCREMENT, INDEX, INHERITS,
343+
INITIALLY, INNER_P, INOUT, INPUT, INSENSITIVE, INSERT, INSTEAD, INT,
344+
INTEGER, INTERSECT, INTERVAL, INTO, INVOKER, IS, ISNULL, ISOLATION,
345+
346+
JOIN,
347+
KEY,
348+
349+
LANCOMPILER, LANGUAGE, LEADING, LEFT, LEVEL, LIKE, LIMIT, LISTEN,
350+
LOAD, LOCAL, LOCATION, LOCK_P,
351+
352+
MATCH, MAXVALUE, MINUTE_P, MINVALUE, MODE, MONTH_P, MOVE,
353+
354+
NAMES, NATIONAL, NATURAL, NCHAR, NEW, NEXT, NO, NOCREATEDB,
355+
NOCREATEUSER, NONE, NOT, NOTHING, NOTIFY, NOTNULL, NULL_P, NULLIF,
356+
NUMERIC,
357+
358+
OF, OFF, OFFSET, OIDS, OLD, ON, ONLY, OPERATOR, OPTION, OR, ORDER,
359+
OUT, OUTER_P, OVERLAPS, OWNER,
360+
361+
PARTIAL, PASSWORD, PATH_P, PENDANT, POSITION, PRECISION, PRIMARY,
362+
PRIOR, PRIVILEGES, PROCEDURE, PROCEDURAL,
363+
364+
READ, REAL, REFERENCES, REINDEX, RELATIVE, RENAME, REPLACE, RESET,
365+
RESTRICT, RETURNS, REVOKE, RIGHT, ROLLBACK, ROW, RULE,
366+
367+
SCHEMA, SCROLL, SECOND_P, SECURITY, SELECT, SEQUENCE, SERIALIZABLE,
368+
SESSION, SESSION_USER, SET, SETOF, SHARE, SHOW, SMALLINT, SOME,
369+
STABLE, START, STATEMENT, STATISTICS, STDIN, STDOUT, STORAGE, STRICT,
370+
SUBSTRING, SYSID,
371+
372+
TABLE, TEMP, TEMPLATE, TEMPORARY, THEN, TIME, TIMESTAMP, TO, TOAST,
373+
TRAILING, TRANSACTION, TRIGGER, TRIM, TRUE_P, TRUNCATE, TRUSTED, TYPE_P,
374+
375+
UNENCRYPTED, UNION, UNIQUE, UNKNOWN, UNLISTEN, UNTIL, UPDATE, USAGE,
376+
USER, USING,
377+
378+
VACUUM, VALID, VALUES, VARCHAR, VARYING, VERBOSE, VERSION, VIEW, VOLATILE,
379+
WHEN, WHERE, WITH, WITHOUT, WORK,
380+
YEAR_P,
381+
ZONE
394382

395383
/* The grammar thinks these are keywords, but they are not in the keywords.c
396384
* list and so can never be entered directly. The filter in parser.c

0 commit comments

Comments
 (0)