Search Postgresql Archives

Defining input function for new datatype

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

 



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’

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

Thanks
Nick

[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