Hi!
I am studying how to program extensions for PostgreSQL in C language.
In the example to return to return Composite-type Arguments, from the PostgreSQL 9.6 documentation, I could not make the cash from a cstring to the HeapTupleHeader type.
That is, instead of the function receive as a parameter a table:
CREATE FUNCTION c_overpaid (emp, integer) RETURNS boolean
AS DIRECTORY
SELECT name, c_overpaid (emp, 1500) AS overpaid
From emp
WHERE name = 'Bill' OR name = 'Sam';
And in the code in C receive the argument as:
HeapTupleHeader t = PG_GETARG_HEAPTUPLEHEADER (0);
The sql function would be defined as:
CREATE FUNCTION c_overpaid (cstring, integer) RETURNS boolean
AS 'DIRECTORY / funcs', 'c_overpaid'
LANGUAGE C STRICT;
But how would I receive this argument, for example:
Char * str = PG_GETARG_CSTRING (0),
And do the conversion to the HeapTupleHeader type?
What do you guys suggest?
Thanks in advance