Make PROCEDURAL optional in CREATE/DROP LANGUAGE.

This commit is contained in:
Bruce Momjian 2000-11-04 21:04:56 +00:00
parent 90c63942c4
commit 4b71943bb2
4 changed files with 20 additions and 11 deletions

View File

@ -1,5 +1,5 @@
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/ref/create_language.sgml,v 1.12 2000/10/05 19:48:17 momjian Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/ref/create_language.sgml,v 1.13 2000/11/04 21:04:54 momjian Exp $
Postgres documentation
-->
@ -23,7 +23,7 @@ Postgres documentation
<date>1999-07-20</date>
</refsynopsisdivinfo>
<synopsis>
CREATE [ TRUSTED ] PROCEDURAL LANGUAGE '<replaceable class="parameter">langname</replaceable>'
CREATE [ TRUSTED ] [ PROCEDURAL ] LANGUAGE '<replaceable class="parameter">langname</replaceable>'
HANDLER <replaceable class="parameter">call_handler</replaceable>
LANCOMPILER '<replaceable class="parameter">comment</replaceable>'
</synopsis>

View File

@ -1,5 +1,5 @@
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/ref/drop_language.sgml,v 1.7 1999/07/22 15:09:10 thomas Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/ref/drop_language.sgml,v 1.8 2000/11/04 21:04:54 momjian Exp $
Postgres documentation
-->
@ -23,7 +23,7 @@ Postgres documentation
<date>1999-07-20</date>
</refsynopsisdivinfo>
<synopsis>
DROP PROCEDURAL LANGUAGE '<replaceable class="PARAMETER">name</replaceable>'
DROP [ PROCEDURAL ] LANGUAGE '<replaceable class="PARAMETER">name</replaceable>'
</synopsis>
<refsect2 id="R2-SQL-DROPLANGUAGE-1">

View File

@ -11,7 +11,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 2.202 2000/10/31 10:22:10 petere Exp $
* $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 2.203 2000/11/04 21:04:55 momjian Exp $
*
* HISTORY
* AUTHOR DATE MAJOR EVENT
@ -154,7 +154,7 @@ static void doNegateFloat(Value *v);
%type <str> user_valid_clause
%type <list> user_list, user_group_clause, users_in_new_group_clause
%type <boolean> TriggerActionTime, TriggerForSpec, PLangTrusted
%type <boolean> TriggerActionTime, TriggerForSpec, PLangTrusted, opt_procedural
%type <str> OptConstrFromTable
@ -1654,7 +1654,7 @@ IntegerOnly: Iconst
*
*****************************************************************************/
CreatePLangStmt: CREATE PLangTrusted PROCEDURAL LANGUAGE Sconst
CreatePLangStmt: CREATE PLangTrusted opt_procedural LANGUAGE Sconst
HANDLER def_name LANCOMPILER Sconst
{
CreatePLangStmt *n = makeNode(CreatePLangStmt);
@ -1668,8 +1668,9 @@ CreatePLangStmt: CREATE PLangTrusted PROCEDURAL LANGUAGE Sconst
PLangTrusted: TRUSTED { $$ = TRUE; }
| /*EMPTY*/ { $$ = FALSE; }
;
DropPLangStmt: DROP PROCEDURAL LANGUAGE Sconst
DropPLangStmt: DROP opt_procedural LANGUAGE Sconst
{
DropPLangStmt *n = makeNode(DropPLangStmt);
n->plname = $4;
@ -1677,6 +1678,10 @@ DropPLangStmt: DROP PROCEDURAL LANGUAGE Sconst
}
;
opt_procedural: PROCEDURAL { $$ = TRUE; }
| /*EMPTY*/ { $$ = TRUE; }
;
/*****************************************************************************
*
* QUERIES :

View File

@ -8,8 +8,10 @@
# cvs log -d '>1999-06-14 00:00:00 GMT' . > log
#
# pre and post-branch logs:
# find . -name CVS -type d -exec touch '{}/Entries.Static' \;
# cvs log -d'2000-05-08 00:00:00 GMT<2000-05-29 00:00:00 GMT'
# cvs log -d'>2000-05-29 00:00:00 GMT' -rREL7_0_PATCHES
# find . -name CVS -type d -exec rm '{}/Entries.Static' \;
#
cat "$@" |
@ -18,7 +20,7 @@ cat "$@" |
# we don't print anything from the -- or == line and the date:
awk '
$0 ~ /^Working file:/ {workingfile = $0}
$0 ~ /^Working file:/ {workingfile = "/" $3}
($0 ~ /^====*$/ || $0 ~ /^----*$/) && skip == "N" \
{
@ -27,7 +29,7 @@ awk '
{
printf ("%s| %10d|%s\n", datetime, NR, "");
printf ("%s| %10d|%s\n", datetime, NR, "---");
printf ("%s| %10d|%s\n", datetime, NR+1, "");
/* printf ("%s| %10d|%s\n", datetime, NR+1, "");*/
}
}
@ -46,6 +48,8 @@ awk '
datetime=$2"-"$3
if (workingfile != "" && skip == "N")
{
gsub(";", "", $5);
printf ("%s| %10d| %70s\n", datetime, NR-2, $5);
printf ("%s| %10d|%s\n", datetime, NR-1, workingfile);
printf ("%s| %10d|%s\n", datetime, NR, $0);
printf ("%s| %10d|%s\n", datetime, NR+1, "");
@ -59,7 +63,7 @@ sort | cut -d'|' -f3 | cat |
# collect duplicate narratives
awk ' BEGIN { slot = 0;}
{
if ($0 ~ /^Working file:/)
if ($0 ~ /^\//)
{
if (slot != oldslot)
same = 0;