postgres.git / summary / log / commit / refs
commit cc8a71e93084487e2b7796483ef0b71c1ba79678
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: Sun Aug 30 20:03:20 2020 +0000
First released in: 14.0, 9.5.24, 9.6.20, 10.15, 11.10, 12.5, 13.0
Mark factorial operator, and postfix operators in general, as deprecated.
Back-patch key parts of 4c5cf5431 and 6ca547cf7 into stable branches.
I didn't touch pg_description entries here, so it's purely a docs
change; and I didn't fool with any examples either. The main point
is so that anyone who's wondering if factorial() exists in the stable
branches will be reassured.
Mark Dilger and John Naylor, with some adjustments by me
Discussion: https://postgr.es/m/BE2DF53D-251A-4E26-972F-930E523580E9@enterprisedb.com
doc/src/sgml/func.sgml | 19 +++++++++++++++++--
doc/src/sgml/ref/create_operator.sgml | 9 ++++++++-
2 files changed, 25 insertions(+), 3 deletions(-)
diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml
index 094b0df7fc4..9d34bc0282c 100644
--- a/doc/src/sgml/func.sgml
+++ b/doc/src/sgml/func.sgml
@@ -524,14 +524,16 @@
<row>
<entry> <literal>!</literal> </entry>
- <entry>factorial</entry>
+ <entry>factorial
+ (deprecated, use <function>factorial()</function> instead)</entry>
<entry><literal>5 !</literal></entry>
<entry><literal>120</literal></entry>
</row>
<row>
<entry> <literal>!!</literal> </entry>
- <entry>factorial (prefix operator)</entry>
+ <entry>factorial as a prefix operator
+ (deprecated, use <function>factorial()</function> instead)</entry>
<entry><literal>!! 5</literal></entry>
<entry><literal>120</literal></entry>
</row>
@@ -714,6 +716,19 @@
<entry><literal>2.71828182845905</literal></entry>
</row>
+ <row>
+ <entry>
+ <indexterm>
+ <primary>factorial</primary>
+ </indexterm>
+ <literal><function>factorial(<type>bigint</type>)</function></literal>
+ </entry>
+ <entry><type>numeric</type></entry>
+ <entry>factorial</entry>
+ <entry><literal>factorial(5)</literal></entry>
+ <entry><literal>120</literal></entry>
+ </row>
+
<row>
<entry>
<indexterm>
diff --git a/doc/src/sgml/ref/create_operator.sgml b/doc/src/sgml/ref/create_operator.sgml
index 818e3a2315a..73ccac7fecf 100644
--- a/doc/src/sgml/ref/create_operator.sgml
+++ b/doc/src/sgml/ref/create_operator.sgml
@@ -87,11 +87,18 @@ CREATE OPERATOR <replaceable>name</replaceable> (
<para>
At least one of <literal>LEFTARG</> and <literal>RIGHTARG</> must be defined. For
- binary operators, both must be defined. For right unary
+ binary operators, both must be defined. For right unary
operators, only <literal>LEFTARG</> should be defined, while for left
unary operators only <literal>RIGHTARG</> should be defined.
</para>
+ <note>
+ <para>
+ Right unary, also called postfix, operators are deprecated and will be
+ removed in <productname>PostgreSQL</productname> version 14.
+ </para>
+ </note>
+
<para>
The <replaceable class="parameter">function_name</replaceable>
procedure must have been previously defined using <command>CREATE
[parent: fabd2f9c9443]