From d1ee6ce4c9ff5f5b1cc890f573ce836c0a1fd043 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Sun, 30 Aug 2020 16:03:19 -0400 Subject: [PATCH] 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 1c42e39311a..8b9aab82d55 100644 --- a/doc/src/sgml/func.sgml +++ b/doc/src/sgml/func.sgml @@ -666,14 +666,16 @@ ! - factorial + factorial + (deprecated, use factorial() instead) 5 ! 120 !! - factorial (prefix operator) + factorial as a prefix operator + (deprecated, use factorial() instead) !! 5 120 @@ -856,6 +858,19 @@ 2.71828182845905 + + + + factorial + + factorial(bigint) + + numeric + factorial + factorial(5) + 120 + + diff --git a/doc/src/sgml/ref/create_operator.sgml b/doc/src/sgml/ref/create_operator.sgml index d5c385c087f..66c34e0072f 100644 --- a/doc/src/sgml/ref/create_operator.sgml +++ b/doc/src/sgml/ref/create_operator.sgml @@ -87,11 +87,18 @@ CREATE OPERATOR name ( At least one of LEFTARG and 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 LEFTARG should be defined, while for left unary operators only RIGHTARG should be defined. + + + Right unary, also called postfix, operators are deprecated and will be + removed in PostgreSQL version 14. + + + The function_name function must have been previously defined using CREATE