RE: [HACKERS] Interesting behaviour !
От | Hiroshi Inoue |
---|---|
Тема | RE: [HACKERS] Interesting behaviour ! |
Дата | |
Msg-id | 000c01becf25$e8047b60$2801007e@cadzone.tpf.co.jp обсуждение исходный текст |
Ответ на | Re: [HACKERS] Interesting behaviour ! (Thomas Lockhart <lockhart@alumni.caltech.edu>) |
Ответы |
RE: [HACKERS] Interesting behaviour !
|
Список | pgsql-hackers |
> > > Each type has a typeinput(char * => type ) proc and a typeoutput( > > type -> char *) proc. > > Doesn't int2in(int4out()) convert int4 to int2 ? > > However,typeinput proc causes elog(ERROR) in most cases if it > > couldn't convert correctly. > > Conversion using an intermediate string is possible, but not the > preferred technique. > Every type of PostgreSQL must have typeinput/typeoutput procs. So this technique doesn't need new procs/operators any more. Isn't it an advantage ? > The "automatic type coersion" code, used earlier in the parser, uses > the convention that any single-argument function taking the source > type as input and with the same name as the target type can be used > for type conversion. For example, the function int4(int2) would > convert int2 to int4. There are now routines in the parser for > choosing conversion strategies and for finding candidates, and these > could be reused for similar purposes when trying to match index > arguments. > It seems reasonable. But I'm afraid that the defintion of new type requires many functions of type conversion. Regards. Hiroshi Inoue Inoue@tpf.co.jp
В списке pgsql-hackers по дате отправления: