Search Postgresql Archives

unary operators, precedence, grouping

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I defined a function, count_nonnull, to return 1 if not null, 0 otherwise. Then I defined a corresponding unary operator <~~. I wanted it for expressions like <~~ item_1 + <~~ item_2. But because precedence of user-defined ops is pretty low, I had to rewrite this as <~~(item_1) + <~~(item_2), which is already no more efficient in use of parentheses than count_nonnull.

Even worse, however, it turns out that _more_ parentheses were needed: (<~~(item_1)) + (<~~(item_2)).

Why wouldn't <~~(item_1) + <~~(item_2) be parsed as (<~~(item_1)) + (<~~(item_2))?





[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux