Re: Defining input function for new datatype

Поиск
Список
Период
Сортировка
От Pavel Stehule
Тема Re: Defining input function for new datatype
Дата
Msg-id BANLkTimc8EcJjLf_wv5KfyOFo8nqnuwhzw@mail.gmail.com
обсуждение исходный текст
Ответ на Defining input function for new datatype  (Nick Raj <nickrajjain@gmail.com>)
Список pgsql-hackers
Hello

2011/4/21 Nick Raj <nickrajjain@gmail.com>:
> Hi,
> I am defining a new data type called mpoint
> i.e.
> typedef struct mpoint
> {
>     Point p;
>     Timestamp t;
> } mpoint;
>
> For defining input/output function
>
> 1     Datum mpoint_in(PG_FUNCTION_ARGS)
> 2     {
> 3
> 4        mpoint *result;
> 5        char *pnt=(char *)malloc (sizeof (20));
> 6        char *ts=(char *)malloc (sizeof (20));
> 7        result= (mpoint *) palloc(sizeof(mpoint));
> 8        char *st = PG_GETARG_CSTRING(0);
> 9        mpoint_decode(st,pnt,ts);
> // st breaks down into pnt that corresponds to Point and ts corresponds to
> Timestamp
> 10
> 11      result->p = point_in(PointerGetDatum(pnt));                //
> point_in (input function for point that assigns x, y into point)
> 12      result-> t = timestamp_in(PointerGetDatum(ts));         // similar
> for timestamp
> 13
> 14      PG_RETURN_MPOINT_P(result);
> 15   }
>
> line no 11 warning: passing argument 1 of ‘point_in’ makes pointer from
> integer without a cast
>                      ../../../include/utils/geo_decls.h:191: note: expected
> ‘FunctionCallInfo’ but argument is of type ‘unsigned int’
> line no 11 error: incompatible types when assigning to type ‘Point’ from
> type ‘Datum’
> line no 12 warning: passing argument 1 of ‘timestamp_in’ makes pointer from
> integer without a cast
>                      ../../../include/utils/timestamp.h:205: note: expected
> ‘FunctionCallInfo’ but argument is of type ‘unsigned int’
>

you are missing a important header files.

> Can anybody figure out what kind of mistake i am doing?
> Also, why it got related to 'FunctionCallInfo' ?

see on definition of PG_FUNCTION_ARGS macro

Regards

Pavel Stehule

>
> Thanks
> Nick
>

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Nick Raj
Дата:
Сообщение: Defining input function for new datatype
Следующее
От: Simon Riggs
Дата:
Сообщение: Re: Formatting Curmudgeons WAS: MMAP Buffers