diff options
author | Andrew Dunstan <andrew@dunslane.net> | 2010-01-09 02:40:50 +0000 |
---|---|---|
committer | Andrew Dunstan <andrew@dunslane.net> | 2010-01-09 02:40:50 +0000 |
commit | a2b34b16bed5699aa3ba407d9a412df65f448323 (patch) | |
tree | 64c75100cc76919946e78b40e1bb41d08deef710 /doc/src | |
parent | 369494e41fe408f103884032f477555ba134a0a8 (diff) |
Tidy up and refactor plperl.c.
- Changed MULTIPLICITY check from runtime to compiletime.
No loads the large Config module.
- Changed plperl_init_interp() to return new interp
and not alter the global interp_state
- Moved plperl_safe_init() call into check_interp().
- Removed plperl_safe_init_done state variable
as interp_state now covers that role.
- Changed plperl_create_sub() to take a plperl_proc_desc argument.
- Simplified return value handling in plperl_create_sub.
- Changed perl.com link in the docs to perl.org and tweaked
wording to clarify that require, not use, is what's blocked.
- Moved perl code in large multi-line C string literal macros
out to plc_*.pl files.
- Added a test2macro.pl utility to convert the plc_*.pl files to
macros in a perlchunks.h file which is #included
- Simplifed plperl_safe_init() slightly
- Optimized pg_verifymbstr calls to avoid unneeded strlen()s.
Patch from Tim Bunce, with minor editing from me.
Diffstat (limited to 'doc/src')
-rw-r--r-- | doc/src/sgml/plperl.sgml | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/doc/src/sgml/plperl.sgml b/doc/src/sgml/plperl.sgml index 9211693d3d9..2db97aa9015 100644 --- a/doc/src/sgml/plperl.sgml +++ b/doc/src/sgml/plperl.sgml @@ -1,4 +1,4 @@ -<!-- $PostgreSQL: pgsql/doc/src/sgml/plperl.sgml,v 2.71 2009/11/29 03:02:27 tgl Exp $ --> +<!-- $PostgreSQL: pgsql/doc/src/sgml/plperl.sgml,v 2.72 2010/01/09 02:40:50 adunstan Exp $ --> <chapter id="plperl"> <title>PL/Perl - Perl Procedural Language</title> @@ -14,7 +14,7 @@ <para> PL/Perl is a loadable procedural language that enables you to write <productname>PostgreSQL</productname> functions in the - <ulink url="http://www.perl.com">Perl programming language</ulink>. + <ulink url="http://www.perl.org">Perl programming language</ulink>. </para> <para> @@ -313,7 +313,8 @@ SELECT * FROM perl_set(); use strict; </programlisting> in the function body. But this only works in <application>PL/PerlU</> - functions, since <literal>use</> is not a trusted operation. In + functions, since the <literal>use</> triggers a <literal>require</> + which is not a trusted operation. In <application>PL/Perl</> functions you can instead do: <programlisting> BEGIN { strict->import(); } |