RE: [INTERFACES] Updated IDL with considerations for COSS
От | Taral |
---|---|
Тема | RE: [INTERFACES] Updated IDL with considerations for COSS |
Дата | |
Msg-id | 000801be1177$9b9a1760$8a14f7d0@taral.dobiecenter.com обсуждение исходный текст |
Ответ на | Re: [INTERFACES] Updated IDL with considerations for COSS (Michael Robinson <robinson@public.bta.net.cn>) |
Ответы |
RE: [INTERFACES] Updated IDL with considerations for COSS
|
Список | pgsql-interfaces |
> In the future, we will want to implement an Interface Repository to map > the PostgreSQL type tables to CORBA IDL. Since that involves an > indeterminate > number of user-defined types, I recommend carving out namespace for that > purpose at the beginning, e.g.: > > typedef short pgtype_int2; > typedef long pgtype_int4; Use of _ is discouraged since in the IDL-to-C mapping _ replaces ::. However we can do: module PostgreSQL { // Note we already separate our namespace module Types { typedef short int2; typedef short int4; // etc. } // Stuff } > > > struct int8type { > > long lsw; > > long msw; > > }; > > I would recommend that fixed-length PostgreSQL types be defined as little- > endian arrays of long or octet type, whichever is appropriate. E.g.: > > typedef long pgtype_int8[2]; > typedef long pgtype_int28[4]; > typedef octet pgtype_macaddr[6]; > typedef octet pgtype_filename[256]; > > Etc. It's more orthogonal that way. But again, if prevailing practice is > something else, we should look closely at that. Sign extension of multi- > long integral types is another problem that someone has presumably already > solved for us. No, you're quite right... I did most of my study of the CORBA 2.2 spec at 1am... IDL modified. Taral P.S. Would it be possible to make a pgsql/src/corba module and let me check this IDL file into it? That way I don't have to keep reposting it.
В списке pgsql-interfaces по дате отправления: