Seems pl_funcs didn't have support for plpgsql PERFORM statement.

This commit is contained in:
Tom Lane 2003-05-23 04:08:34 +00:00
parent e2bfe2dd00
commit 450d7e276e
1 changed files with 16 additions and 1 deletions

View File

@ -3,7 +3,7 @@
* procedural language * procedural language
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/pl/plpgsql/src/pl_funcs.c,v 1.25 2003/03/25 03:16:41 tgl Exp $ * $Header: /cvsroot/pgsql/src/pl/plpgsql/src/pl_funcs.c,v 1.26 2003/05/23 04:08:34 tgl Exp $
* *
* This software is copyrighted by Jan Wieck - Hamburg. * This software is copyrighted by Jan Wieck - Hamburg.
* *
@ -472,6 +472,8 @@ plpgsql_stmt_typename(PLpgSQL_stmt * stmt)
return "fetch"; return "fetch";
case PLPGSQL_STMT_CLOSE: case PLPGSQL_STMT_CLOSE:
return "close"; return "close";
case PLPGSQL_STMT_PERFORM:
return "perform";
} }
return "unknown"; return "unknown";
@ -504,6 +506,7 @@ static void dump_getdiag(PLpgSQL_stmt_getdiag * stmt);
static void dump_open(PLpgSQL_stmt_open * stmt); static void dump_open(PLpgSQL_stmt_open * stmt);
static void dump_fetch(PLpgSQL_stmt_fetch * stmt); static void dump_fetch(PLpgSQL_stmt_fetch * stmt);
static void dump_close(PLpgSQL_stmt_close * stmt); static void dump_close(PLpgSQL_stmt_close * stmt);
static void dump_perform(PLpgSQL_stmt_perform * stmt);
static void dump_expr(PLpgSQL_expr * expr); static void dump_expr(PLpgSQL_expr * expr);
@ -579,6 +582,9 @@ dump_stmt(PLpgSQL_stmt * stmt)
case PLPGSQL_STMT_CLOSE: case PLPGSQL_STMT_CLOSE:
dump_close((PLpgSQL_stmt_close *) stmt); dump_close((PLpgSQL_stmt_close *) stmt);
break; break;
case PLPGSQL_STMT_PERFORM:
dump_perform((PLpgSQL_stmt_perform *) stmt);
break;
default: default:
elog(ERROR, "plpgsql_dump: unknown cmd_type %d\n", stmt->cmd_type); elog(ERROR, "plpgsql_dump: unknown cmd_type %d\n", stmt->cmd_type);
break; break;
@ -808,6 +814,15 @@ dump_close(PLpgSQL_stmt_close * stmt)
printf("CLOSE curvar=%d\n", stmt->curvar); printf("CLOSE curvar=%d\n", stmt->curvar);
} }
static void
dump_perform(PLpgSQL_stmt_perform * stmt)
{
dump_ind();
printf("PERFORM expr = ");
dump_expr(stmt->expr);
printf("\n");
}
static void static void
dump_exit(PLpgSQL_stmt_exit * stmt) dump_exit(PLpgSQL_stmt_exit * stmt)
{ {