aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/adt/ruleutils.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/utils/adt/ruleutils.c')
-rw-r--r--src/backend/utils/adt/ruleutils.c17
1 files changed, 16 insertions, 1 deletions
diff --git a/src/backend/utils/adt/ruleutils.c b/src/backend/utils/adt/ruleutils.c
index 2c15bf916b9..bcdfe313b6b 100644
--- a/src/backend/utils/adt/ruleutils.c
+++ b/src/backend/utils/adt/ruleutils.c
@@ -3,7 +3,7 @@
* back to source text
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/ruleutils.c,v 1.108 2002/06/13 03:40:49 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/ruleutils.c,v 1.109 2002/07/04 15:24:07 thomas Exp $
*
* This software is copyrighted by Jan Wieck - Hamburg.
*
@@ -1626,6 +1626,21 @@ get_rule_expr(Node *node, deparse_context *context)
get_oper_expr(expr, context);
break;
+ case DISTINCT_EXPR:
+ appendStringInfoChar(buf, '(');
+ Assert(length(args) == 2);
+ {
+ /* binary operator */
+ Node *arg1 = (Node *) lfirst(args);
+ Node *arg2 = (Node *) lsecond(args);
+
+ get_rule_expr(arg1, context);
+ appendStringInfo(buf, " IS DISTINCT FROM ");
+ get_rule_expr(arg2, context);
+ }
+ appendStringInfoChar(buf, ')');
+ break;
+
case FUNC_EXPR:
get_func_expr(expr, context);
break;