> The "setof" part is documented in src/backend/utils/fmgr/README.
> There's no good documentation for returning tuples at the moment,
> but basically you return a pointer to a TupleTableSlot. (Re-use
> the same slot on each call to avoid memory leakage.) There's an
> example in src/backend/executor/functions.c --- look at the uses
> of funcSlot.
That was almost same as I guessed:-)
> One reason this isn't documented is that it's really ugly. It might
> be a good idea to change it before we start having lots of user-written
> code that depends on it ...
Sounds like a good idea.
--
Tatsuo Ishii