Mop-up for removal of ':' and ';' operators ... like, say, actually
authorTom Lane
Sat, 12 Aug 2000 05:15:24 +0000 (05:15 +0000)
committerTom Lane
Sat, 12 Aug 2000 05:15:24 +0000 (05:15 +0000)
take 'em out of pg_operator.  Also remove from scan.l's set of legal
operator characters.  Update documentation.

doc/src/sgml/oper.sgml
doc/src/sgml/ref/create_operator.sgml
src/backend/parser/gram.y
src/backend/parser/scan.l
src/include/catalog/pg_operator.h

index aa42407bbda7aa70b00392cd63d5e5d244dcdbf4..e51deef0a9dddf317600522c527f04128a8913b1 100644 (file)
@@ -1,5 +1,5 @@
 
 
  
@@ -83,20 +83,10 @@ Operator Ordering (decreasing precedence)
 
 
 
-UNION
-
-
-left
-
-
-SQL select construct
-
-
-
-
 ::
 
 
+left
 
 
 Postgres typecasting
@@ -135,40 +125,26 @@ right
 unary minus
 
 
-
-
-
-:
-
-
-right
-
-
-exponentiation
+start of interval
 
 
 
 
-|
+^
 
 
 left
 
 
-start of interval
+power, exclusive or
 
 
 
@@ -228,6 +204,7 @@ test for NOT NULL
 (all other operators)
 
 
+left
 
 
 native and user-defined
@@ -265,7 +242,7 @@ time interval overlap
 
 
 
-LIKE
+LIKE ILIKE
 
 
 
@@ -486,19 +463,6 @@ logical union
    Division
    4 / 2
        
-       
-    : 
-   Natural Exponentiation
-   : 3.0
-       
-
        
     @ 
    Absolute value
@@ -523,17 +487,6 @@ Deprecated in v7.0, esp. since ln() is available as a generic function.
      
     
    
-
-   
-    
-     
-      Two operators, ":" and ";", are now deprecated and will be removed in
-      the next release.  Use the equivalent functions exp() and ln()
-      instead.
-     
-    
-   
-
   
 
   
index 30cf27b3974d78f5562c0044202317841e046633..cf6baf7fa5ecdaba42e531fa114888a05c8ff8d2 100644 (file)
@@ -1,5 +1,5 @@
 
 
@@ -177,15 +177,15 @@ CREATE
    is a sequence of up to NAMEDATALEN-1 (31 by default) characters
    from the following list:
    
-+ - * / < > = ~ ! @ # % ^ & | ` ? $ : 
++ - * / < > = ~ ! @ # % ^ & | ` ? $
    
 
    There are a few restrictions on your choice of name:
    
     
      
-     "$" and ":" cannot be defined as single-character operators,
-     although they can be part of a multi-character operator name.
+     "$" cannot be defined as a single-character operator,
+     although it can be part of a multi-character operator name.
      
     
     
@@ -199,7 +199,7 @@ CREATE
      A multi-character operator name cannot end in "+" or "-",
      unless the name also contains at least one of these characters:
      
-~ ! @ # % ^ & | ` ? $ : 
+~ ! @ # % ^ & | ` ? $
      
      For example, @- is an allowed operator name,
      but *- is not.
index 276afb8c52e56d9212b132541bf0cff415fe2e2c..4294a7bafa4356f1c6b72e6648b33df8a78c7ae0 100644 (file)
@@ -11,7 +11,7 @@
  *
  *
  * IDENTIFICATION
- *   $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 2.185 2000/08/11 23:45:27 tgl Exp $
+ *   $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 2.186 2000/08/12 05:15:21 tgl Exp $
  *
  * HISTORY
  *   AUTHOR            DATE            MAJOR EVENT
@@ -363,7 +363,8 @@ static void doNegateFloat(Value *v);
 /* these are not real. they are here so that they get generated as #define's*/
 %token         OP
 
-/* precedence */
+/* precedence: lowest to highest */
+%left      UNION INTERSECT EXCEPT
 %left      OR
 %left      AND
 %right     NOT
@@ -381,15 +382,12 @@ static void doNegateFloat(Value *v);
 %left      '+' '-'
 %left      '*' '/' '%'
 %left      '^'
-%left      '|'             /* this is the relation union op, not logical or */
+%left      '|'             /* XXX Should this have such a high priority? */
 /* Unary Operators */
-%right     ':'             /* delimiter for array ranges */
-%left      ';'             /* end of statement */
 %right     UMINUS
 %left      '.'
 %left      '[' ']'
 %left      TYPECAST
-%left      UNION INTERSECT EXCEPT
 %left      ESCAPE
 %%
 
index eb71d08cbbd99dca70c1b069358ba6f7ec242971..2701479313c6c850436dc083cf669abd2a3017e1 100644 (file)
@@ -9,7 +9,7 @@
  *
  *
  * IDENTIFICATION
- *   $Header: /cvsroot/pgsql/src/backend/parser/scan.l,v 1.74 2000/08/06 17:50:38 thomas Exp $
+ *   $Header: /cvsroot/pgsql/src/backend/parser/scan.l,v 1.75 2000/08/12 05:15:21 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -181,7 +181,7 @@ typecast        "::"
  * rule for "operator"!
  */
 self           [,()\[\].;$\:\+\-\*\/\%\^\<\>\=\|]
-op_chars       [\~\!\@\#\^\&\|\`\?\$\:\+\-\*\/\%\<\>\=]
+op_chars       [\~\!\@\#\^\&\|\`\?\$\+\-\*\/\%\<\>\=]
 operator       {op_chars}+
 
 /* we no longer allow unary minus in numbers. 
@@ -402,7 +402,7 @@ other           .
 
                        for (ic = nchars-2; ic >= 0; ic--)
                        {
-                           if (strchr("~!@#&`?$:%^|", yytext[ic]))
+                           if (strchr("~!@#^&|`?$%", yytext[ic]))
                                break;
                        }
                        if (ic >= 0)
index a63b789989c1b97f074aed710d7307f933e5b627..3981059426b37660d7c74163ce2ce8745f68cd34 100644 (file)
@@ -8,7 +8,7 @@
  * Portions Copyright (c) 1996-2000, PostgreSQL, Inc
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $Id: pg_operator.h,v 1.79 2000/07/30 22:13:59 tgl Exp $
+ * $Id: pg_operator.h,v 1.80 2000/08/12 05:15:22 tgl Exp $
  *
  * NOTES
  *   the genbki.sh script reads this file and generates .bki
@@ -275,8 +275,6 @@ DATA(insert OID = 596 (  "|/"      PGUID 0 l t f   0 701 701   0   0   0   0 dsqrt
 DATA(insert OID = 597 (  "||/"    PGUID 0 l t f   0 701 701   0   0   0   0 dcbrt - - ));
 DATA(insert OID = 598 (  "%"      PGUID 0 l t f   0 701 701   0   0   0   0 dtrunc - - ));
 DATA(insert OID = 599 (  "%"      PGUID 0 r t f 701   0 701   0   0   0   0 dround - - ));
-DATA(insert OID = 1282 (  ":"     PGUID 0 l t f   0 701 701   0   0   0   0 dexp - - ));
-DATA(insert OID = 1283 (  ";"     PGUID 0 l t f   0 701 701   0   0   0   0 dlog1 - - ));
 DATA(insert OID = 1284 (  "|"     PGUID 0 l t f   0 704 702    0  0   0   0 tintervalstart - - ));
 DATA(insert OID = 606 (  "<#>"    PGUID 0 b t f 702 702 704    0  0   0   0 mktinterval - - ));
 DATA(insert OID = 607 (  "="      PGUID 0 b t t  26  26  16 607 608 609 609 oideq eqsel eqjoinsel ));