Calling a SQL function inside a C function - Mailing list pgsql-general

From Eric Zhu
Subject Calling a SQL function inside a C function
Date
Msg-id CAF0GwR2V_0dca3P7sq60-d4okgM_S36kYc9_=r795DhttHcp+Q@mail.gmail.com
Whole thread Raw
Responses Re: Calling a SQL function inside a C function
List pgsql-general
How do I call a function defined using CREATE FUNCTION in SQL inside a C function in an extension? I feel this should be possible as the query parser is able to resolve the function names and arguments in a raw string query. I want to know if there is a standard way to look up for user-defined functions in the backend.

For example, I have a function defined in SQL:

```
CREATE FUNCTION times_two(x integer)
RETURNS integer AS $$
SELECT x*2
$$ LANGUAGE SQL;
```

Now I wish to call `times_two()` in a C extension similar to:

```
// Look up for the user-defined function times_two()
// ...

// Use the function.
Datum ret = DirectFunctionCall(times_two, Int32GetDatum(13));
```

Best,
Eric

pgsql-general by date:

Previous
From: Aleš Zelený
Date:
Subject: Database cluster binary compatibility accross CPU platforms
Next
From: Tom Lane
Date:
Subject: Re: Database cluster binary compatibility accross CPU platforms