aboutsummaryrefslogtreecommitdiff
path: root/src/backend/parser/parse_expr.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2003-02-03 21:15:45 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2003-02-03 21:15:45 +0000
commit3752e85bad45e98383ea1c9e7e7dbaf13f41da7e (patch)
treece6735a837cf169d82744b7877630494d35ce65a /src/backend/parser/parse_expr.c
parent464598b637cfabde01695a27a32ed8f133d127d7 (diff)
downloadpostgresql-3752e85bad45e98383ea1c9e7e7dbaf13f41da7e.tar.gz
postgresql-3752e85bad45e98383ea1c9e7e7dbaf13f41da7e.zip
Determine the set of constraints applied to a domain at executor
startup, not in the parser; this allows ALTER DOMAIN to work correctly with domain constraint operations stored in rules. Rod Taylor; code review by Tom Lane.
Diffstat (limited to 'src/backend/parser/parse_expr.c')
-rw-r--r--src/backend/parser/parse_expr.c22
1 files changed, 11 insertions, 11 deletions
diff --git a/src/backend/parser/parse_expr.c b/src/backend/parser/parse_expr.c
index 5ee64cf38ee..95b3a6297ae 100644
--- a/src/backend/parser/parse_expr.c
+++ b/src/backend/parser/parse_expr.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/parser/parse_expr.c,v 1.141 2003/01/13 00:18:51 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/parser/parse_expr.c,v 1.142 2003/02/03 21:15:44 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -674,8 +674,8 @@ transformExpr(ParseState *pstate, Node *expr)
case T_ArrayRef:
case T_FieldSelect:
case T_RelabelType:
- case T_ConstraintTest:
- case T_ConstraintTestValue:
+ case T_CoerceToDomain:
+ case T_CoerceToDomainValue:
{
result = (Node *) expr;
break;
@@ -1017,11 +1017,11 @@ exprType(Node *expr)
case T_BooleanTest:
type = BOOLOID;
break;
- case T_ConstraintTest:
- type = exprType((Node *) ((ConstraintTest *) expr)->arg);
+ case T_CoerceToDomain:
+ type = ((CoerceToDomain *) expr)->resulttype;
break;
- case T_ConstraintTestValue:
- type = ((ConstraintTestValue *) expr)->typeId;
+ case T_CoerceToDomainValue:
+ type = ((CoerceToDomainValue *) expr)->typeId;
break;
case T_RangeVar:
/*
@@ -1117,10 +1117,10 @@ exprTypmod(Node *expr)
return typmod;
}
break;
- case T_ConstraintTest:
- return exprTypmod((Node *) ((ConstraintTest *) expr)->arg);
- case T_ConstraintTestValue:
- return ((ConstraintTestValue *) expr)->typeMod;
+ case T_CoerceToDomain:
+ return ((CoerceToDomain *) expr)->resulttypmod;
+ case T_CoerceToDomainValue:
+ return ((CoerceToDomainValue *) expr)->typeMod;
default:
break;
}