diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2003-02-03 21:15:45 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2003-02-03 21:15:45 +0000 |
commit | 3752e85bad45e98383ea1c9e7e7dbaf13f41da7e (patch) | |
tree | ce6735a837cf169d82744b7877630494d35ce65a /src/backend/parser/parse_expr.c | |
parent | 464598b637cfabde01695a27a32ed8f133d127d7 (diff) | |
download | postgresql-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.c | 22 |
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; } |