From 49eb0fd0972d14014dd3533b1f1bf8c94c899883 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Tue, 6 Sep 2016 12:00:00 -0400 Subject: Add location field to DefElem Add a location field to the DefElem struct, used to parse many utility commands. Update various error messages to supply error position information. To propogate the error position information in a more systematic way, create a ParseState in standard_ProcessUtility() and pass that to interested functions implementing the utility commands. This seems better than passing the query string and then reassembling a parse state ad hoc, which violates the encapsulation of the ParseState type. Reviewed-by: Pavel Stehule --- src/include/commands/explain.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/include/commands/explain.h') diff --git a/src/include/commands/explain.h b/src/include/commands/explain.h index 3d0a5abbc2f..8b3acab0f25 100644 --- a/src/include/commands/explain.h +++ b/src/include/commands/explain.h @@ -15,6 +15,7 @@ #include "executor/executor.h" #include "lib/stringinfo.h" +#include "parser/parse_node.h" typedef enum ExplainFormat { @@ -59,7 +60,7 @@ typedef const char *(*explain_get_index_name_hook_type) (Oid indexId); extern PGDLLIMPORT explain_get_index_name_hook_type explain_get_index_name_hook; -extern void ExplainQuery(ExplainStmt *stmt, const char *queryString, +extern void ExplainQuery(ParseState *pstate, ExplainStmt *stmt, const char *queryString, ParamListInfo params, DestReceiver *dest); extern ExplainState *NewExplainState(void); -- cgit v1.2.3