binary operators on integers
От | Marko Kreen |
---|---|
Тема | binary operators on integers |
Дата | |
Msg-id | 20000925092146.A12772@l-t.ee обсуждение исходный текст |
Ответы |
Re: binary operators on integers
Re: binary operators on integers |
Список | pgsql-patches |
Here is my next take on binary operators for integers. It implements the following operators for int2/int4/int8: ~ - not & - and ^ - xor | - or << - shift left >> - shift right Notes: * My original choice for xor was '#' because the '^' operator conflicts with power operator on floats but Tom Lane said: > Well, you *could* use '^' since there's no definition of it for integer > operands. But that would mean that something like '4^2', which was > formerly implicitly coerced to float and interpreted as floating > power function, would suddenly mean something different. Again a > serious risk of silently breaking applications. This doesn't apply to > '|' though, since it has no numeric interpretation at all right now. As the bit-string uses '^' too for xor-ing it would be nice to be consistent. I am quite unsure on this matter. The patch now seems otherwise sane to me, this is the only issue left. * On << and >> the second argument is always int32 as this seems to be the 'default' int type in PostgreSQL. * Oids used are 1874 - 1909. Comments? Patch is against current CVS. -- marko
Вложения
В списке pgsql-patches по дате отправления: