From 254637604717fa926a0c655f3ec680f9dd1fbe2e Mon Sep 17 00:00:00 2001 From: reshke kirill Date: Thu, 7 Nov 2024 11:30:18 +0000 Subject: [PATCH v4 2/4] Add CASCADE/RESRTICT to ALTER TYPE patterns DROP/ADD/RENAME ATTRIBUTE ... will be completed with CASCADE/RESRTICT where appropriate --- src/bin/psql/tab-complete.in.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/bin/psql/tab-complete.in.c b/src/bin/psql/tab-complete.in.c index a420666542..15f16c994c 100644 --- a/src/bin/psql/tab-complete.in.c +++ b/src/bin/psql/tab-complete.in.c @@ -2992,6 +2992,9 @@ match_previous_words(int pattern_id, /* ALTER TYPE xxx RENAME (ATTRIBUTE|VALUE) yyy */ else if (Matches("ALTER", "TYPE", MatchAny, "RENAME", "ATTRIBUTE|VALUE", MatchAny)) COMPLETE_WITH("TO"); + /* ALTER TYPE xxx RENAME (ATTRIBUTE|VALUE) yyy TO zzz */ + else if (Matches("ALTER", "TYPE", MatchAny, "RENAME", "ATTRIBUTE|VALUE", MatchAny, "TO", MatchAny)) + COMPLETE_WITH("CASCADE", "RESTRICT"); /* * If we have ALTER TYPE ALTER/DROP/RENAME ATTRIBUTE, provide list @@ -3002,6 +3005,12 @@ match_previous_words(int pattern_id, /* complete ALTER TYPE ADD ATTRIBUTE with list of types */ else if (Matches("ALTER", "TYPE", MatchAny, "ADD", "ATTRIBUTE", MatchAny)) COMPLETE_WITH_SCHEMA_QUERY(Query_for_list_of_datatypes); + /* complete ALTER TYPE ADD ATTRIBUTE with CASCADE/RESTRICT */ + else if (Matches("ALTER", "TYPE", MatchAny, "ADD", "ATTRIBUTE", MatchAny, MatchAny)) + COMPLETE_WITH("CASCADE", "RESTRICT"); + /* complete ALTER TYPE DROP ATTRIBUTE with CASCADE/RESTRICT */ + else if (Matches("ALTER", "TYPE", MatchAny, "DROP", "ATTRIBUTE", MatchAny)) + COMPLETE_WITH("CASCADE", "RESTRICT"); /* ALTER TYPE ALTER ATTRIBUTE */ else if (Matches("ALTER", "TYPE", MatchAny, "ALTER", "ATTRIBUTE", MatchAny)) COMPLETE_WITH("TYPE"); -- 2.34.1