|
10 | 10 | *
|
11 | 11 | *
|
12 | 12 | * IDENTIFICATION
|
13 |
| - * $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 2.100 1999/09/2804:34:44 momjian Exp $ |
| 13 | + * $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 2.101 1999/09/2814:31:19 momjian Exp $ |
14 | 14 | *
|
15 | 15 | * HISTORY
|
16 | 16 | * AUTHORDATEMAJOR EVENT
|
@@ -977,6 +977,8 @@ default_expr: AexprConst
|
977 | 977 | {$$ = nconc( $1, lcons( makeString( "*"), $3)); }
|
978 | 978 | | default_expr '^' default_expr
|
979 | 979 | {$$ = nconc( $1, lcons( makeString( "^"), $3)); }
|
| 980 | +| default_expr '|' default_expr |
| 981 | +{$$ = nconc( $1, lcons( makeString( "|"), $3)); } |
980 | 982 | | default_expr '=' default_expr
|
981 | 983 | {elog(ERROR,"boolean expressions not supported in DEFAULT"); }
|
982 | 984 | | default_expr '<' default_expr
|
@@ -1127,6 +1129,8 @@ constraint_expr: AexprConst
|
1127 | 1129 | {$$ = nconc( $1, lcons( makeString( "*"), $3)); }
|
1128 | 1130 | | constraint_expr '^' constraint_expr
|
1129 | 1131 | {$$ = nconc( $1, lcons( makeString( "^"), $3)); }
|
| 1132 | +| constraint_expr '|' constraint_expr |
| 1133 | +{$$ = nconc( $1, lcons( makeString( "|"), $3)); } |
1130 | 1134 | | constraint_expr '=' constraint_expr
|
1131 | 1135 | {$$ = nconc( $1, lcons( makeString( "="), $3)); }
|
1132 | 1136 | | constraint_expr '<' constraint_expr
|
@@ -2042,6 +2046,8 @@ MathOp:'+'{ $$ = "+"; }
|
2042 | 2046 | | '*'{ $$ = "*"; }
|
2043 | 2047 | | '/'{ $$ = "/"; }
|
2044 | 2048 | | '%'{ $$ = "%"; }
|
| 2049 | +| '^'{ $$ = "^"; } |
| 2050 | +| '|'{ $$ = "|"; } |
2045 | 2051 | | '<'{ $$ = "<"; }
|
2046 | 2052 | | '>'{ $$ = ">"; }
|
2047 | 2053 | | '='{ $$ = "="; }
|
@@ -3638,6 +3644,8 @@ row_op: Op{ $$ = $1; }
|
3638 | 3644 | | '*'{ $$ = "*"; }
|
3639 | 3645 | | '/'{ $$ = "/"; }
|
3640 | 3646 | | '%'{ $$ = "%"; }
|
| 3647 | +| '^'{ $$ = "^"; } |
| 3648 | +| '|'{ $$ = "|"; } |
3641 | 3649 | ;
|
3642 | 3650 |
|
3643 | 3651 | sub_type: ANY{ $$ = ANY_SUBLINK; }
|
@@ -3672,22 +3680,28 @@ a_expr: attr
|
3672 | 3680 | {$$ = makeA_Expr(OP, "%", NULL, $2); }
|
3673 | 3681 | | '^' a_expr
|
3674 | 3682 | {$$ = makeA_Expr(OP, "^", NULL, $2); }
|
| 3683 | +| '|' a_expr |
| 3684 | +{$$ = makeA_Expr(OP, "|", NULL, $2); } |
3675 | 3685 | | a_expr '%'
|
3676 | 3686 | {$$ = makeA_Expr(OP, "%", $1, NULL); }
|
3677 | 3687 | | a_expr '^'
|
3678 | 3688 | {$$ = makeA_Expr(OP, "^", $1, NULL); }
|
| 3689 | +| a_expr '|' |
| 3690 | +{$$ = makeA_Expr(OP, "|", $1, NULL); } |
3679 | 3691 | | a_expr '+' a_expr
|
3680 | 3692 | {$$ = makeA_Expr(OP, "+", $1, $3); }
|
3681 | 3693 | | a_expr '-' a_expr
|
3682 | 3694 | {$$ = makeA_Expr(OP, "-", $1, $3); }
|
| 3695 | +| a_expr '*' a_expr |
| 3696 | +{$$ = makeA_Expr(OP, "*", $1, $3); } |
3683 | 3697 | | a_expr '/' a_expr
|
3684 | 3698 | {$$ = makeA_Expr(OP, "/", $1, $3); }
|
3685 | 3699 | | a_expr '%' a_expr
|
3686 | 3700 | {$$ = makeA_Expr(OP, "%", $1, $3); }
|
3687 |
| -| a_expr '*' a_expr |
3688 |
| -{$$ = makeA_Expr(OP, "*", $1, $3); } |
3689 | 3701 | | a_expr '^' a_expr
|
3690 | 3702 | {$$ = makeA_Expr(OP, "^", $1, $3); }
|
| 3703 | +| a_expr '|' a_expr |
| 3704 | +{$$ = makeA_Expr(OP, "|", $1, $3); } |
3691 | 3705 | | a_expr '<' a_expr
|
3692 | 3706 | {$$ = makeA_Expr(OP, "<", $1, $3); }
|
3693 | 3707 | | a_expr '>' a_expr
|
@@ -4363,22 +4377,28 @@ b_expr: attr
|
4363 | 4377 | {$$ = makeA_Expr(OP, "%", NULL, $2); }
|
4364 | 4378 | | '^' b_expr
|
4365 | 4379 | {$$ = makeA_Expr(OP, "^", NULL, $2); }
|
| 4380 | +| '|' b_expr |
| 4381 | +{$$ = makeA_Expr(OP, "|", NULL, $2); } |
4366 | 4382 | | b_expr '%'
|
4367 | 4383 | {$$ = makeA_Expr(OP, "%", $1, NULL); }
|
4368 | 4384 | | b_expr '^'
|
4369 | 4385 | {$$ = makeA_Expr(OP, "^", $1, NULL); }
|
| 4386 | +| b_expr '|' |
| 4387 | +{$$ = makeA_Expr(OP, "|", $1, NULL); } |
4370 | 4388 | | b_expr '+' b_expr
|
4371 | 4389 | {$$ = makeA_Expr(OP, "+", $1, $3); }
|
4372 | 4390 | | b_expr '-' b_expr
|
4373 | 4391 | {$$ = makeA_Expr(OP, "-", $1, $3); }
|
| 4392 | +| b_expr '*' b_expr |
| 4393 | +{$$ = makeA_Expr(OP, "*", $1, $3); } |
4374 | 4394 | | b_expr '/' b_expr
|
4375 | 4395 | {$$ = makeA_Expr(OP, "/", $1, $3); }
|
4376 | 4396 | | b_expr '%' b_expr
|
4377 | 4397 | {$$ = makeA_Expr(OP, "%", $1, $3); }
|
4378 |
| -| b_expr '*' b_expr |
4379 |
| -{$$ = makeA_Expr(OP, "*", $1, $3); } |
4380 | 4398 | | b_expr '^' b_expr
|
4381 | 4399 | {$$ = makeA_Expr(OP, "^", $1, $3); }
|
| 4400 | +| b_expr '|' b_expr |
| 4401 | +{$$ = makeA_Expr(OP, "|", $1, $3); } |
4382 | 4402 | | ':' b_expr
|
4383 | 4403 | {$$ = makeA_Expr(OP, ":", NULL, $2); }
|
4384 | 4404 | | ';' b_expr
|
|