summaryrefslogtreecommitdiff
path: root/src/backend/parser
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/parser')
-rw-r--r--src/backend/parser/gram.y10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y
index d711f9a7368..28f62de97e5 100644
--- a/src/backend/parser/gram.y
+++ b/src/backend/parser/gram.y
@@ -309,6 +309,7 @@ static Node *makeRecursiveViewSelect(char *relname, List *aliases, Node *query);
%type <str> vac_analyze_option_name
%type <defelt> vac_analyze_option_elem
%type <list> vac_analyze_option_list
+%type <node> vac_analyze_option_arg
%type <boolean> opt_or_replace
opt_grant_grant_option opt_grant_admin_option
opt_nowait opt_if_exists opt_with_data
@@ -10543,9 +10544,9 @@ analyze_keyword:
;
vac_analyze_option_elem:
- vac_analyze_option_name
+ vac_analyze_option_name vac_analyze_option_arg
{
- $$ = makeDefElem($1, NULL, @1);
+ $$ = makeDefElem($1, $2, @1);
}
;
@@ -10554,6 +10555,11 @@ vac_analyze_option_name:
| analyze_keyword { $$ = "analyze"; }
;
+vac_analyze_option_arg:
+ opt_boolean_or_string { $$ = (Node *) makeString($1); }
+ | /* EMPTY */ { $$ = NULL; }
+ ;
+
opt_analyze:
analyze_keyword { $$ = true; }
| /*EMPTY*/ { $$ = false; }