Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 8f11ef8

Browse files
committed
psql: Tab completion for ALTER TYPE ... CASCADE/RESTRICT
Updates table completion for ALTER TYPE to offer CASCADE/RESTRICT for a number of actions on attributes: ALTER TYPE ... ADD/DROP/RENAME ATTRIBUTE ... [CASCADE|RESTRICT] ALTER TYPE ... TYPE ... [CASCADE|RESTRICT] Author: Kirill Reshke Reviewed-By: Karina Litskevich Discussion: https://postgr.es/m/CALdSSPhVELkvutquqrDB=Ujfq_Pjz=6jn-kzh+291KPNViLTfw@mail.gmail.com
1 parent e0275c3 commit 8f11ef8

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

src/bin/psql/tab-complete.in.c

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2992,6 +2992,9 @@ match_previous_words(int pattern_id,
29922992
/* ALTER TYPE xxx RENAME (ATTRIBUTE|VALUE) yyy */
29932993
else if (Matches("ALTER", "TYPE", MatchAny, "RENAME", "ATTRIBUTE|VALUE", MatchAny))
29942994
COMPLETE_WITH("TO");
2995+
/* ALTER TYPE xxx RENAME ATTRIBUTE yyy TO zzz */
2996+
else if (Matches("ALTER", "TYPE", MatchAny, "RENAME", "ATTRIBUTE", MatchAny, "TO", MatchAny))
2997+
COMPLETE_WITH("CASCADE", "RESTRICT");
29952998

29962999
/*
29973000
* If we have ALTER TYPE <sth> ALTER/DROP/RENAME ATTRIBUTE, provide list
@@ -3002,9 +3005,18 @@ match_previous_words(int pattern_id,
30023005
/* complete ALTER TYPE ADD ATTRIBUTE <foo> with list of types */
30033006
else if (Matches("ALTER", "TYPE", MatchAny, "ADD", "ATTRIBUTE", MatchAny))
30043007
COMPLETE_WITH_SCHEMA_QUERY(Query_for_list_of_datatypes);
3008+
/* complete ALTER TYPE ADD ATTRIBUTE <foo> <footype> with CASCADE/RESTRICT */
3009+
else if (Matches("ALTER", "TYPE", MatchAny, "ADD", "ATTRIBUTE", MatchAny, MatchAny))
3010+
COMPLETE_WITH("CASCADE", "RESTRICT");
3011+
/* complete ALTER TYPE DROP ATTRIBUTE <foo> with CASCADE/RESTRICT */
3012+
else if (Matches("ALTER", "TYPE", MatchAny, "DROP", "ATTRIBUTE", MatchAny))
3013+
COMPLETE_WITH("CASCADE", "RESTRICT");
30053014
/* ALTER TYPE ALTER ATTRIBUTE <foo> */
30063015
else if (Matches("ALTER", "TYPE", MatchAny, "ALTER", "ATTRIBUTE", MatchAny))
30073016
COMPLETE_WITH("TYPE");
3017+
/* ALTER TYPE ALTER ATTRIBUTE <foo> TYPE <footype> */
3018+
else if (Matches("ALTER", "TYPE", MatchAny, "ALTER", "ATTRIBUTE", MatchAny, "TYPE", MatchAny))
3019+
COMPLETE_WITH("CASCADE", "RESTRICT");
30083020
/* complete ALTER TYPE <sth> RENAME VALUE with list of enum values */
30093021
else if (Matches("ALTER", "TYPE", MatchAny, "RENAME", "VALUE"))
30103022
COMPLETE_WITH_ENUM_VALUE(prev3_wd);

0 commit comments

Comments
 (0)