From 6b603e67dcd1a93a56f3c6b5f36fd8f08e2ee35d Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Fri, 15 Nov 2002 02:50:21 +0000 Subject: Add DOMAIN check constraints. Rod Taylor --- src/backend/nodes/outfuncs.c | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) (limited to 'src/backend/nodes/outfuncs.c') diff --git a/src/backend/nodes/outfuncs.c b/src/backend/nodes/outfuncs.c index c5b5a493583..2d1f2236c9b 100644 --- a/src/backend/nodes/outfuncs.c +++ b/src/backend/nodes/outfuncs.c @@ -5,7 +5,7 @@ * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $Header: /cvsroot/pgsql/src/backend/nodes/outfuncs.c,v 1.179 2002/11/11 22:19:22 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/nodes/outfuncs.c,v 1.180 2002/11/15 02:50:07 momjian Exp $ * * NOTES * Every (plan) node in POSTGRES has an associated "out" routine which @@ -1525,10 +1525,32 @@ _outConstraintTest(StringInfo str, ConstraintTest *node) appendStringInfo(str, " :testtype %d :name ", (int) node->testtype); _outToken(str, node->name); + appendStringInfo(str, " :domain "); + _outToken(str, node->domname); appendStringInfo(str, " :check_expr "); _outNode(str, node->check_expr); } +/* + * ConstraintTestValue + */ +static void +_outConstraintTestValue(StringInfo str, ConstraintTestValue *node) +{ + appendStringInfo(str, " CONSTRAINTTESTVALUE :typeid %u :typemod %d ", + node->typeId, + node->typeMod); +} + +/* + * DomainConstraintValue + */ +static void +_outDomainConstraintValue(StringInfo str, DomainConstraintValue *node) +{ + appendStringInfo(str, " DOMAINCONSTRAINTVALUE "); +} + /* * _outNode - * converts a Node into ascii string and append it to 'str' @@ -1796,9 +1818,15 @@ _outNode(StringInfo str, void *obj) case T_ConstraintTest: _outConstraintTest(str, obj); break; + case T_ConstraintTestValue: + _outConstraintTestValue(str, obj); + break; case T_FuncCall: _outFuncCall(str, obj); break; + case T_DomainConstraintValue: + _outDomainConstraintValue(str, obj); + break; default: elog(WARNING, "_outNode: don't know how to print type %d ", -- cgit v1.2.3