Обсуждение: можно ли модифицировать аргументы функции?

Поиск
Список
Период
Сортировка

можно ли модифицировать аргументы функции?

От
"Dmitry E. Oboukhov"
Дата:
Хочу создать GIST-индекс.

не хочу писать функции на C, хочу отладить их на языке высокого
уровня.

некоторые функции для GIST-индексов требуют модификации аргумента
функции.

например same

CREATE OR REPLACE FUNCTION my_same(internal, internal, internal)
RETURNS internal
AS 'MODULE_PATHNAME'
LANGUAGE C STRICT;


в документации написано что

For historical reasons, the same function doesn't just return a
Boolean result; instead it has to store the flag at the location
indicated by the third argument.


то есть получив $data1 и $data2 я должен не вернуть истину/ложь, а
положить результат в третий аргумент.

в перле можно написать $_[2] = 1;

вопрос оно так будет работать-то?

вопрос прежде всего касается PL/Perl, но
тот же вопрос по другим языкам постгрис.
--

. ''`.                               Dmitry E. Oboukhov
: :’  :   email: unera@debian.org jabber://UNera@uvw.ru
`. `~’              GPGKey: 1024D / F8E26537 2006-11-21
  `- 1B23 D4F8 8EC0 D902 0555  E438 AB8C 00CF F8E2 6537

Вложения