aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>1998-06-15 20:45:57 +0000
committerBruce Momjian <bruce@momjian.us>1998-06-15 20:45:57 +0000
commit56bdbe1f4cd87cfc788e1e786e7de8f6a0a0eacf (patch)
tree7d92eb466d585a3f0bf2efb124b66da823ec7d4e
parent6bd323c6b3f65b26273d5efb7ddd0ac04d039546 (diff)
downloadpostgresql-56bdbe1f4cd87cfc788e1e786e7de8f6a0a0eacf.tar.gz
postgresql-56bdbe1f4cd87cfc788e1e786e7de8f6a0a0eacf.zip
Add remove extra braces code to pgindent.
-rwxr-xr-xsrc/tools/pgindent/pgindent26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/tools/pgindent/pgindent b/src/tools/pgindent/pgindent
index 8b4be4ade1c..33b6e06072a 100755
--- a/src/tools/pgindent/pgindent
+++ b/src/tools/pgindent/pgindent
@@ -797,6 +797,32 @@ do
detab -t8 -qc |
entab -t4 -qc |
sed 's;^\([A-Za-z_][^ ]*\)[ ][ ]*\*$;\1 *;' | # move trailing * in function return type
+ awk ' { line3 = $0; /* remove un-needed braces around single statements */
+ if (skips > 0)
+ skips--;
+ if (line1 ~ " *{$" &&
+ line2 ~ " *[^;{}]*;$" &&
+ line3 ~ " *}$")
+ {
+ print line2;
+ line1 = "";
+ line2 = "";
+ line3 = "";
+ skips = 3;
+ }
+ else
+ if (skips == 0 && NR >= 3)
+ print line1;
+ line1 = line2;
+ line2 = line3;
+ line3 = "";
+ }
+ END {
+ if (skips <= 1)
+ print line1;
+ if (skips <= 2)
+ print line2;
+ }' |
cat >/tmp/$$ && cat /tmp/$$ >$FILE
done