summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSébastien Aperghis-Tramoni <sebastien@aperghis.net>2005-10-19 00:22:57 +0200
committerRafael Garcia-Suarez <rgarciasuarez@gmail.com>2005-10-19 07:52:20 +0000
commitd8c40edcf7b2eca3075e6c3cd36c64193c41e123 (patch)
treef5a81e98ce9d3d6c495b643c7dba702d5c44ff75
parente886094b26c01a71243f931e1dd54d48122d46f1 (diff)
downloadperl-d8c40edcf7b2eca3075e6c3cd36c64193c41e123.tar.gz
Adding documentation index to perlapi.pod and perlintern.pod
Message-ID: <1129666977.435559a10cb95@imp5-g19.free.fr> (tweaked to remove trailing whitespace to doc entries) Plus, regenerate doc and headers p4raw-id: //depot/perl@25802
-rw-r--r--autodoc.pl5
-rw-r--r--embed.h2
-rw-r--r--pod/perlapi.pod513
-rw-r--r--pod/perlintern.pod98
-rw-r--r--proto.h2
5 files changed, 601 insertions, 19 deletions
diff --git a/autodoc.pl b/autodoc.pl
index d347e4c95e..6a2e28bfe8 100644
--- a/autodoc.pl
+++ b/autodoc.pl
@@ -120,13 +120,14 @@ DOC:
sub docout ($$$) { # output the docs for one function
my($fh, $name, $docref) = @_;
my($flags, $docs, $ret, $file, @args) = @$docref;
+ $name =~ s/\s*$//;
$docs .= "NOTE: this function is experimental and may change or be
removed without notice.\n\n" if $flags =~ /x/;
$docs .= "NOTE: the perl_ form of this function is deprecated.\n\n"
if $flags =~ /p/;
- print $fh "=item $name\n$docs";
+ print $fh "=item $name\nX<$name>\n$docs";
if ($flags =~ /U/) { # no usage
# nothing
@@ -200,6 +201,7 @@ print DOC <<'_EOB_';
perlapi - autogenerated documentation for the perl public API
=head1 DESCRIPTION
+X<Perl API> X<API> X<api>
This file contains the documentation of the perl public API generated by
embed.pl, specifically a listing of functions, macros, flags, and variables
@@ -264,6 +266,7 @@ perlintern - autogenerated documentation of purely B<internal>
Perl functions
=head1 DESCRIPTION
+X<internal Perl functions> X<interpreter functions>
This file is the autogenerated documentation of functions in the
Perl interpreter that are documented using Perl's internal documentation
diff --git a/embed.h b/embed.h
index 81720fc6da..adcf1fd897 100644
--- a/embed.h
+++ b/embed.h
@@ -2166,7 +2166,7 @@
#define do_eof(a) Perl_do_eof(aTHX_ a)
#define do_exec(a) Perl_do_exec(aTHX_ a)
#endif
-#if defined(WIN32) || defined(SYMBIAN)
+#if defined(WIN32) || defined(__SYMBIAN32__)
#define do_aspawn(a,b,c) Perl_do_aspawn(aTHX_ a,b,c)
#define do_spawn(a) Perl_do_spawn(aTHX_ a)
#define do_spawn_nowait(a) Perl_do_spawn_nowait(aTHX_ a)
diff --git a/pod/perlapi.pod b/pod/perlapi.pod
index b26011e4ba..2bee300d89 100644
--- a/pod/perlapi.pod
+++ b/pod/perlapi.pod
@@ -3,6 +3,7 @@
perlapi - autogenerated documentation for the perl public API
=head1 DESCRIPTION
+X<Perl API> X<API> X<api>
This file contains the documentation of the perl public API generated by
embed.pl, specifically a listing of functions, macros, flags, and variables
@@ -23,6 +24,7 @@ The listing is alphabetical, case insensitive.
=over 8
=item GIMME
+X<GIMME>
A backward-compatible version of C<GIMME_V> which can only return
C<G_SCALAR> or C<G_ARRAY>; in a void context, it returns C<G_SCALAR>.
@@ -34,6 +36,7 @@ Deprecated. Use C<GIMME_V> instead.
Found in file op.h
=item GIMME_V
+X<GIMME_V>
The XSUB-writer's equivalent to Perl's C<wantarray>. Returns C<G_VOID>,
C<G_SCALAR> or C<G_ARRAY> for void, scalar or list context,
@@ -45,6 +48,7 @@ respectively.
Found in file op.h
=item G_ARRAY
+X<G_ARRAY>
Used to indicate list context. See C<GIMME_V>, C<GIMME> and
L<perlcall>.
@@ -53,6 +57,7 @@ L<perlcall>.
Found in file cop.h
=item G_DISCARD
+X<G_DISCARD>
Indicates that arguments returned from a callback should be discarded. See
L<perlcall>.
@@ -61,6 +66,7 @@ L<perlcall>.
Found in file cop.h
=item G_EVAL
+X<G_EVAL>
Used to force a Perl C<eval> wrapper around a callback. See
L<perlcall>.
@@ -69,6 +75,7 @@ L<perlcall>.
Found in file cop.h
=item G_NOARGS
+X<G_NOARGS>
Indicates that no arguments are being sent to a callback. See
L<perlcall>.
@@ -77,6 +84,7 @@ L<perlcall>.
Found in file cop.h
=item G_SCALAR
+X<G_SCALAR>
Used to indicate scalar context. See C<GIMME_V>, C<GIMME>, and
L<perlcall>.
@@ -85,6 +93,7 @@ L<perlcall>.
Found in file cop.h
=item G_VOID
+X<G_VOID>
Used to indicate void context. See C<GIMME_V> and L<perlcall>.
@@ -99,6 +108,7 @@ Found in file cop.h
=over 8
=item AvFILL
+X<AvFILL>
Same as C<av_len()>. Deprecated, use C<av_len()> instead.
@@ -108,6 +118,7 @@ Same as C<av_len()>. Deprecated, use C<av_len()> instead.
Found in file av.h
=item av_clear
+X<av_clear>
Clears an array, making it empty. Does not free the memory used by the
array itself.
@@ -118,6 +129,7 @@ array itself.
Found in file av.c
=item av_delete
+X<av_delete>
Deletes the element indexed by C<key> from the array. Returns the
deleted element. If C<flags> equals C<G_DISCARD>, the element is freed
@@ -129,6 +141,7 @@ and null is returned.
Found in file av.c
=item av_exists
+X<av_exists>
Returns true if the element indexed by C<key> has been initialized.
@@ -141,6 +154,7 @@ C<&PL_sv_undef>.
Found in file av.c
=item av_extend
+X<av_extend>
Pre-extend an array. The C<key> is the index to which the array should be
extended.
@@ -151,6 +165,7 @@ extended.
Found in file av.c
=item av_fetch
+X<av_fetch>
Returns the SV at the specified index in the array. The C<key> is the
index. If C<lval> is set then the fetch will be part of a store. Check
@@ -165,6 +180,7 @@ more information on how to use this function on tied arrays.
Found in file av.c
=item av_fill
+X<av_fill>
Ensure than an array has a given number of elements, equivalent to
Perl's C<$#array = $fill;>.
@@ -175,6 +191,7 @@ Perl's C<$#array = $fill;>.
Found in file av.c
=item av_len
+X<av_len>
Returns the highest index in the array. Returns -1 if the array is
empty.
@@ -185,6 +202,7 @@ empty.
Found in file av.c
=item av_make
+X<av_make>
Creates a new AV and populates it with a list of SVs. The SVs are copied
into the array, so they may be freed after the call to av_make. The new AV
@@ -196,6 +214,7 @@ will have a reference count of 1.
Found in file av.c
=item av_pop
+X<av_pop>
Pops an SV off the end of the array. Returns C<&PL_sv_undef> if the array
is empty.
@@ -206,6 +225,7 @@ is empty.
Found in file av.c
=item av_push
+X<av_push>
Pushes an SV onto the end of the array. The array will grow automatically
to accommodate the addition.
@@ -216,6 +236,7 @@ to accommodate the addition.
Found in file av.c
=item av_shift
+X<av_shift>
Shifts an SV off the beginning of the array.
@@ -225,6 +246,7 @@ Shifts an SV off the beginning of the array.
Found in file av.c
=item av_store
+X<av_store>
Stores an SV in an array. The array index is specified as C<key>. The
return value will be NULL if the operation failed or if the value did not
@@ -243,6 +265,7 @@ more information on how to use this function on tied arrays.
Found in file av.c
=item av_undef
+X<av_undef>
Undefines the array. Frees the memory used by the array itself.
@@ -252,6 +275,7 @@ Undefines the array. Frees the memory used by the array itself.
Found in file av.c
=item av_unshift
+X<av_unshift>
Unshift the given number of C<undef> values onto the beginning of the
array. The array will grow automatically to accommodate the addition. You
@@ -263,6 +287,7 @@ must then use C<av_store> to assign values to these new elements.
Found in file av.c
=item get_av
+X<get_av>
Returns the AV of the specified Perl array. If C<create> is set and the
Perl variable does not exist then it will be created. If C<create> is not
@@ -276,6 +301,7 @@ NOTE: the perl_ form of this function is deprecated.
Found in file perl.c
=item newAV
+X<newAV>
Creates a new AV. The reference count is set to 1.
@@ -285,6 +311,7 @@ Creates a new AV. The reference count is set to 1.
Found in file av.c
=item sortsv
+X<sortsv>
Sort an array. Here is an example:
@@ -305,6 +332,7 @@ Found in file pp_sort.c
=over 8
=item call_argv
+X<call_argv>
Performs a callback to the specified Perl sub. See L<perlcall>.
@@ -316,6 +344,7 @@ NOTE: the perl_ form of this function is deprecated.
Found in file perl.c
=item call_method
+X<call_method>
Performs a callback to the specified Perl method. The blessed object must
be on the stack. See L<perlcall>.
@@ -328,6 +357,7 @@ NOTE: the perl_ form of this function is deprecated.
Found in file perl.c
=item call_pv
+X<call_pv>
Performs a callback to the specified Perl sub. See L<perlcall>.
@@ -339,6 +369,7 @@ NOTE: the perl_ form of this function is deprecated.
Found in file perl.c
=item call_sv
+X<call_sv>
Performs a callback to the Perl sub whose name is in the SV. See
L<perlcall>.
@@ -351,6 +382,7 @@ NOTE: the perl_ form of this function is deprecated.
Found in file perl.c
=item ENTER
+X<ENTER>
Opening bracket on a callback. See C<LEAVE> and L<perlcall>.
@@ -360,6 +392,7 @@ Opening bracket on a callback. See C<LEAVE> and L<perlcall>.
Found in file scope.h
=item eval_pv
+X<eval_pv>
Tells Perl to C<eval> the given string and return an SV* result.
@@ -371,6 +404,7 @@ NOTE: the perl_ form of this function is deprecated.
Found in file perl.c
=item eval_sv
+X<eval_sv>
Tells Perl to C<eval> the string in the SV.
@@ -382,6 +416,7 @@ NOTE: the perl_ form of this function is deprecated.
Found in file perl.c
=item FREETMPS
+X<FREETMPS>
Closing bracket for temporaries on a callback. See C<SAVETMPS> and
L<perlcall>.
@@ -392,6 +427,7 @@ L<perlcall>.
Found in file scope.h
=item LEAVE
+X<LEAVE>
Closing bracket on a callback. See C<ENTER> and L<perlcall>.
@@ -401,6 +437,7 @@ Closing bracket on a callback. See C<ENTER> and L<perlcall>.
Found in file scope.h
=item SAVETMPS
+X<SAVETMPS>
Opening bracket for temporaries on a callback. See C<FREETMPS> and
L<perlcall>.
@@ -418,6 +455,7 @@ Found in file scope.h
=over 8
=item isALNUM
+X<isALNUM>
Returns a boolean indicating whether the C C<char> is an ASCII alphanumeric
character (including underscore) or digit.
@@ -428,6 +466,7 @@ character (including underscore) or digit.
Found in file handy.h
=item isALPHA
+X<isALPHA>
Returns a boolean indicating whether the C C<char> is an ASCII alphabetic
character.
@@ -438,6 +477,7 @@ character.
Found in file handy.h
=item isDIGIT
+X<isDIGIT>
Returns a boolean indicating whether the C C<char> is an ASCII
digit.
@@ -448,6 +488,7 @@ digit.
Found in file handy.h
=item isLOWER
+X<isLOWER>
Returns a boolean indicating whether the C C<char> is a lowercase
character.
@@ -458,6 +499,7 @@ character.
Found in file handy.h
=item isSPACE
+X<isSPACE>
Returns a boolean indicating whether the C C<char> is whitespace.
@@ -467,6 +509,7 @@ Returns a boolean indicating whether the C C<char> is whitespace.
Found in file handy.h
=item isUPPER
+X<isUPPER>
Returns a boolean indicating whether the C C<char> is an uppercase
character.
@@ -477,6 +520,7 @@ character.
Found in file handy.h
=item toLOWER
+X<toLOWER>
Converts the specified character to lowercase.
@@ -486,6 +530,7 @@ Converts the specified character to lowercase.
Found in file handy.h
=item toUPPER
+X<toUPPER>
Converts the specified character to uppercase.
@@ -502,6 +547,7 @@ Found in file handy.h
=over 8
=item perl_clone
+X<perl_clone>
Create and return a new interpreter by cloning the current one.
@@ -547,6 +593,7 @@ Found in file sv.c
=over 8
=item CvSTASH
+X<CvSTASH>
Returns the stash of the CV.
@@ -556,6 +603,7 @@ Returns the stash of the CV.
Found in file cv.h
=item get_cv
+X<get_cv>
Returns the CV of the specified Perl subroutine. If C<create> is set and
the Perl subroutine does not exist then it will be declared (which has the
@@ -577,6 +625,7 @@ Found in file perl.c
=over 8
=item cv_undef
+X<cv_undef>
Clear out all the active components of a CV. This can happen either
by an explicit C<undef &foo>, or by the reference count going to zero.
@@ -589,6 +638,7 @@ children can still follow the full lexical scope chain.
Found in file op.c
=item load_module
+X<load_module>
Loads the module whose name is pointed to by the string part of name.
Note that the actual module name, not its filename, should be given.
@@ -605,6 +655,7 @@ method, similar to C<use Foo::Bar VERSION LIST>.
Found in file op.c
=item nothreadhook
+X<nothreadhook>
Stub that provides thread hook for perl_destruct when there are
no threads.
@@ -615,6 +666,7 @@ no threads.
Found in file perl.c
=item perl_alloc
+X<perl_alloc>
Allocates a new Perl interpreter. See L<perlembed>.
@@ -624,6 +676,7 @@ Allocates a new Perl interpreter. See L<perlembed>.
Found in file perl.c
=item perl_construct
+X<perl_construct>
Initializes a new Perl interpreter. See L<perlembed>.
@@ -633,6 +686,7 @@ Initializes a new Perl interpreter. See L<perlembed>.
Found in file perl.c
=item perl_destruct
+X<perl_destruct>
Shuts down a Perl interpreter. See L<perlembed>.
@@ -642,6 +696,7 @@ Shuts down a Perl interpreter. See L<perlembed>.
Found in file perl.c
=item perl_free
+X<perl_free>
Releases a Perl interpreter. See L<perlembed>.
@@ -651,6 +706,7 @@ Releases a Perl interpreter. See L<perlembed>.
Found in file perl.c
=item perl_parse
+X<perl_parse>
Tells a Perl interpreter to parse a Perl script. See L<perlembed>.
@@ -660,6 +716,7 @@ Tells a Perl interpreter to parse a Perl script. See L<perlembed>.
Found in file perl.c
=item perl_run
+X<perl_run>
Tells a Perl interpreter to run. See L<perlembed>.
@@ -669,6 +726,7 @@ Tells a Perl interpreter to run. See L<perlembed>.
Found in file perl.c
=item require_pv
+X<require_pv>
Tells Perl to C<require> the file named by the string argument. It is
analogous to the Perl code C<eval "require '$file'">. It's even
@@ -690,6 +748,7 @@ Found in file perl.c
=over 8
=item packlist
+X<packlist>
The engine implementing pack() Perl function.
@@ -699,6 +758,7 @@ The engine implementing pack() Perl function.
Found in file pp_pack.c
=item pack_cat
+X<pack_cat>
The engine implementing pack() Perl function. Note: parameters next_in_list and
flags are not used. This call should not be used; use packlist instead.
@@ -709,6 +769,7 @@ flags are not used. This call should not be used; use packlist instead.
Found in file pp_pack.c
=item unpackstring
+X<unpackstring>
The engine implementing unpack() Perl function. C<unpackstring> puts the
extracted list items on the stack and returns the number of elements.
@@ -720,6 +781,7 @@ Issue C<PUTBACK> before and C<SPAGAIN> after the call to this function.
Found in file pp_pack.c
=item unpack_str
+X<unpack_str>
The engine implementing unpack() Perl function. Note: parameters strbeg, new_s
and ocnt are not used. This call should not be used, use unpackstring instead.
@@ -737,6 +799,7 @@ Found in file pp_pack.c
=over 8
=item PL_modglobal
+X<PL_modglobal>
C<PL_modglobal> is a general purpose, interpreter global HV for use by
extensions that need to keep information on a per-interpreter basis.
@@ -750,6 +813,7 @@ prefixed by the package name of the extension that owns the data.
Found in file intrpvar.h
=item PL_na
+X<PL_na>
A convenience variable which is typically used with C<SvPV> when one
doesn't care about the length of the string. It is usually more efficient
@@ -762,6 +826,7 @@ C<SvPV_nolen> macro.
Found in file thrdvar.h
=item PL_sv_no
+X<PL_sv_no>
This is the C<false> SV. See C<PL_sv_yes>. Always refer to this as
C<&PL_sv_no>.
@@ -772,6 +837,7 @@ C<&PL_sv_no>.
Found in file intrpvar.h
=item PL_sv_undef
+X<PL_sv_undef>
This is the C<undef> SV. Always refer to this as C<&PL_sv_undef>.
@@ -781,6 +847,7 @@ This is the C<undef> SV. Always refer to this as C<&PL_sv_undef>.
Found in file intrpvar.h
=item PL_sv_yes
+X<PL_sv_yes>
This is the C<true> SV. See C<PL_sv_no>. Always refer to this as
C<&PL_sv_yes>.
@@ -798,6 +865,7 @@ Found in file intrpvar.h
=over 8
=item GvSV
+X<GvSV>
Return the SV from the GV.
@@ -807,6 +875,7 @@ Return the SV from the GV.
Found in file gv.h
=item gv_fetchmeth
+X<gv_fetchmeth>
Returns the glob with the given C<name> and a defined subroutine or
C<NULL>. The glob lives in the given C<stash>, or in the stashes
@@ -829,6 +898,7 @@ obtained from the GV with the C<GvCV> macro.
Found in file gv.c
=item gv_fetchmethod
+X<gv_fetchmethod>
See L<gv_fetchmethod_autoload>.
@@ -838,6 +908,7 @@ See L<gv_fetchmethod_autoload>.
Found in file gv.c
=item gv_fetchmethod_autoload
+X<gv_fetchmethod_autoload>
Returns the glob which contains the subroutine to call to invoke the method
on the C<stash>. In fact in the presence of autoloading this may be the
@@ -867,6 +938,7 @@ C<call_sv> apply equally to these functions.
Found in file gv.c
=item gv_fetchmeth_autoload
+X<gv_fetchmeth_autoload>
Same as gv_fetchmeth(), but looks for autoloaded subroutines too.
Returns a glob for the subroutine.
@@ -881,6 +953,7 @@ of the result may be zero.
Found in file gv.c
=item gv_stashpv
+X<gv_stashpv>
Returns a pointer to the stash for a specified package. C<name> should
be a valid UTF-8 string and must be null-terminated. If C<create> is set
@@ -893,6 +966,7 @@ is not set and the package does not exist then NULL is returned.
Found in file gv.c
=item gv_stashpvn
+X<gv_stashpvn>
Returns a pointer to the stash for a specified package. C<name> should
be a valid UTF-8 string. The C<namelen> parameter indicates the length of
@@ -906,6 +980,7 @@ package does not exist then NULL is returned.
Found in file gv.c
=item gv_stashsv
+X<gv_stashsv>
Returns a pointer to the stash for a specified package, which must be a
valid UTF-8 string. See C<gv_stashpv>.
@@ -923,6 +998,7 @@ Found in file gv.c
=over 8
=item Nullav
+X<Nullav>
Null AV pointer.
@@ -930,6 +1006,7 @@ Null AV pointer.
Found in file av.h
=item Nullch
+X<Nullch>
Null character pointer.
@@ -937,6 +1014,7 @@ Null character pointer.
Found in file handy.h
=item Nullcv
+X<Nullcv>
Null CV pointer.
@@ -944,6 +1022,7 @@ Null CV pointer.
Found in file cv.h
=item Nullhv
+X<Nullhv>
Null HV pointer.
@@ -951,6 +1030,7 @@ Null HV pointer.
Found in file hv.h
=item Nullsv
+X<Nullsv>
Null SV pointer.
@@ -965,6 +1045,7 @@ Found in file handy.h
=over 8
=item get_hv
+X<get_hv>
Returns the HV of the specified Perl hash. If C<create> is set and the
Perl variable does not exist then it will be created. If C<create> is not
@@ -978,6 +1059,7 @@ NOTE: the perl_ form of this function is deprecated.
Found in file perl.c
=item HEf_SVKEY
+X<HEf_SVKEY>
This flag, used in the length slot of hash entries and magic structures,
specifies the structure contains an C<SV*> pointer where a C<char*> pointer
@@ -987,6 +1069,7 @@ is to be expected. (For information only--not to be used).
Found in file hv.h
=item HeHASH
+X<HeHASH>
Returns the computed hash stored in the hash entry.
@@ -996,6 +1079,7 @@ Returns the computed hash stored in the hash entry.
Found in file hv.h
=item HeKEY
+X<HeKEY>
Returns the actual pointer stored in the key slot of the hash entry. The
pointer may be either C<char*> or C<SV*>, depending on the value of
@@ -1008,6 +1092,7 @@ usually preferable for finding the value of a key.
Found in file hv.h
=item HeKLEN
+X<HeKLEN>
If this is negative, and amounts to C<HEf_SVKEY>, it indicates the entry
holds an C<SV*> key. Otherwise, holds the actual length of the key. Can
@@ -1020,6 +1105,7 @@ lengths.
Found in file hv.h
=item HePV
+X<HePV>
Returns the key slot of the hash entry as a C<char*> value, doing any
necessary dereferencing of possibly C<SV*> keys. The length of the string
@@ -1037,6 +1123,7 @@ described elsewhere in this document.
Found in file hv.h
=item HeSVKEY
+X<HeSVKEY>
Returns the key as an C<SV*>, or C<Nullsv> if the hash entry does not
contain an C<SV*> key.
@@ -1047,6 +1134,7 @@ contain an C<SV*> key.
Found in file hv.h
=item HeSVKEY_force
+X<HeSVKEY_force>
Returns the key as an C<SV*>. Will create and return a temporary mortal
C<SV*> if the hash entry contains only a C<char*> key.
@@ -1057,6 +1145,7 @@ C<SV*> if the hash entry contains only a C<char*> key.
Found in file hv.h
=item HeSVKEY_set
+X<HeSVKEY_set>
Sets the key to a given C<SV*>, taking care to set the appropriate flags to
indicate the presence of an C<SV*> key, and returns the same
@@ -1068,6 +1157,7 @@ C<SV*>.
Found in file hv.h
=item HeVAL
+X<HeVAL>
Returns the value slot (type C<SV*>) stored in the hash entry.
@@ -1077,6 +1167,7 @@ Returns the value slot (type C<SV*>) stored in the hash entry.
Found in file hv.h
=item HvNAME
+X<HvNAME>
Returns the package name of a stash, or NULL if C<stash> isn't a stash.
See C<SvSTASH>, C<CvSTASH>.
@@ -1087,6 +1178,7 @@ See C<SvSTASH>, C<CvSTASH>.
Found in file hv.h
=item hv_assert
+X<hv_assert>
Check that a hash is in an internally consistent state.
@@ -1096,6 +1188,7 @@ Check that a hash is in an internally consistent state.
Found in file hv.c
=item hv_clear
+X<hv_clear>
Clears a hash, making it empty.
@@ -1105,6 +1198,7 @@ Clears a hash, making it empty.
Found in file hv.c
=item hv_clear_placeholders
+X<hv_clear_placeholders>
Clears any placeholders from a hash. If a restricted hash has any of its keys
marked as readonly and the key is subsequently deleted, the key is not actually
@@ -1120,6 +1214,7 @@ See Hash::Util::lock_keys() for an example of its use.
Found in file hv.c
=item hv_delete
+X<hv_delete>
Deletes a key/value pair in the hash. The value SV is removed from the
hash and returned to the caller. The C<klen> is the length of the key.
@@ -1132,6 +1227,7 @@ will be returned.
Found in file hv.c
=item hv_delete_ent
+X<hv_delete_ent>
Deletes a key/value pair in the hash. The value SV is removed from the
hash and returned to the caller. The C<flags> value will normally be zero;
@@ -1144,6 +1240,7 @@ precomputed hash value, or 0 to ask for it to be computed.
Found in file hv.c
=item hv_exists
+X<hv_exists>
Returns a boolean indicating whether the specified hash key exists. The
C<klen> is the length of the key.
@@ -1154,6 +1251,7 @@ C<klen> is the length of the key.
Found in file hv.c
=item hv_exists_ent
+X<hv_exists_ent>
Returns a boolean indicating whether the specified hash key exists. C<hash>
can be a valid precomputed hash value, or 0 to ask for it to be
@@ -1165,6 +1263,7 @@ computed.
Found in file hv.c
=item hv_fetch
+X<hv_fetch>
Returns the SV which corresponds to the specified key in the hash. The
C<klen> is the length of the key. If C<lval> is set then the fetch will be
@@ -1180,6 +1279,7 @@ information on how to use this function on tied hashes.
Found in file hv.c
=item hv_fetch_ent
+X<hv_fetch_ent>
Returns the hash entry which corresponds to the specified key in the hash.
C<hash> must be a valid precomputed hash number for the given C<key>, or 0
@@ -1198,6 +1298,7 @@ information on how to use this function on tied hashes.
Found in file hv.c
=item hv_iterinit
+X<hv_iterinit>
Prepares a starting point to traverse a hash table. Returns the number of
keys in the hash (i.e. the same as C<HvKEYS(tb)>). The return value is
@@ -1214,6 +1315,7 @@ value, you can get it through the macro C<HvFILL(tb)>.
Found in file hv.c
=item hv_iterkey
+X<hv_iterkey>
Returns the key from the current position of the hash iterator. See
C<hv_iterinit>.
@@ -1224,6 +1326,7 @@ C<hv_iterinit>.
Found in file hv.c
=item hv_iterkeysv
+X<hv_iterkeysv>
Returns the key as an C<SV*> from the current position of the hash
iterator. The return value will always be a mortal copy of the key. Also
@@ -1235,6 +1338,7 @@ see C<hv_iterinit>.
Found in file hv.c
=item hv_iternext
+X<hv_iternext>
Returns entries from a hash iterator. See C<hv_iterinit>.
@@ -1252,6 +1356,7 @@ trigger the resource deallocation.
Found in file hv.c
=item hv_iternextsv
+X<hv_iternextsv>
Performs an C<hv_iternext>, C<hv_iterkey>, and C<hv_iterval> in one
operation.
@@ -1262,6 +1367,7 @@ operation.
Found in file hv.c
=item hv_iternext_flags
+X<hv_iternext_flags>
Returns entries from a hash iterator. See C<hv_iterinit> and C<hv_iternext>.
The C<flags> value will normally be zero; if HV_ITERNEXT_WANTPLACEHOLDERS is
@@ -1281,6 +1387,7 @@ removed without notice.
Found in file hv.c
=item hv_iterval
+X<hv_iterval>
Returns the value from the current position of the hash iterator. See
C<hv_iterkey>.
@@ -1291,6 +1398,7 @@ C<hv_iterkey>.
Found in file hv.c
=item hv_magic
+X<hv_magic>
Adds magic to a hash. See C<sv_magic>.
@@ -1300,6 +1408,7 @@ Adds magic to a hash. See C<sv_magic>.
Found in file hv.c
=item hv_scalar
+X<hv_scalar>
Evaluates the hash in scalar context and returns the result. Handles magic when the hash is tied.
@@ -1309,6 +1418,7 @@ Evaluates the hash in scalar context and returns the result. Handles magic when
Found in file hv.c
=item hv_store
+X<hv_store>
Stores an SV in a hash. The hash key is specified as C<key> and C<klen> is
the length of the key. The C<hash> parameter is the precomputed hash
@@ -1336,6 +1446,7 @@ information on how to use this function on tied hashes.
Found in file hv.c
=item hv_store_ent
+X<hv_store_ent>
Stores C<val> in a hash. The hash key is specified as C<key>. The C<hash>
parameter is the precomputed hash value; if it is zero then Perl will
@@ -1366,6 +1477,7 @@ information on how to use this function on tied hashes.
Found in file hv.c
=item hv_undef
+X<hv_undef>
Undefines the hash.
@@ -1375,6 +1487,7 @@ Undefines the hash.
Found in file hv.c
=item newHV
+X<newHV>
Creates a new HV. The reference count is set to 1.
@@ -1391,6 +1504,7 @@ Found in file hv.c
=over 8
=item mg_clear
+X<mg_clear>
Clear something magical that the SV represents. See C<sv_magic>.
@@ -1400,6 +1514,7 @@ Clear something magical that the SV represents. See C<sv_magic>.
Found in file mg.c
=item mg_copy
+X<mg_copy>
Copies the magic from one SV to another. See C<sv_magic>.
@@ -1409,6 +1524,7 @@ Copies the magic from one SV to another. See C<sv_magic>.
Found in file mg.c
=item mg_find
+X<mg_find>
Finds the magic pointer for type matching the SV. See C<sv_magic>.
@@ -1418,6 +1534,7 @@ Finds the magic pointer for type matching the SV. See C<sv_magic>.
Found in file mg.c
=item mg_free
+X<mg_free>
Free any magic storage used by the SV. See C<sv_magic>.
@@ -1427,6 +1544,7 @@ Free any magic storage used by the SV. See C<sv_magic>.
Found in file mg.c
=item mg_get
+X<mg_get>
Do magic after a value is retrieved from the SV. See C<sv_magic>.
@@ -1436,6 +1554,7 @@ Do magic after a value is retrieved from the SV. See C<sv_magic>.
Found in file mg.c
=item mg_length
+X<mg_length>
Report on the SV's length. See C<sv_magic>.
@@ -1445,6 +1564,7 @@ Report on the SV's length. See C<sv_magic>.
Found in file mg.c
=item mg_magical
+X<mg_magical>
Turns on the magical status of an SV. See C<sv_magic>.
@@ -1454,6 +1574,7 @@ Turns on the magical status of an SV. See C<sv_magic>.
Found in file mg.c
=item mg_set
+X<mg_set>
Do magic after a value is assigned to the SV. See C<sv_magic>.
@@ -1463,6 +1584,7 @@ Do magic after a value is assigned to the SV. See C<sv_magic>.
Found in file mg.c
=item SvGETMAGIC
+X<SvGETMAGIC>
Invokes C<mg_get> on an SV if it has 'get' magic. This macro evaluates its
argument more than once.
@@ -1473,6 +1595,7 @@ argument more than once.
Found in file sv.h
=item SvLOCK
+X<SvLOCK>
Arranges for a mutual exclusion lock to be obtained on sv if a suitable module
has been loaded.
@@ -1483,6 +1606,7 @@ has been loaded.
Found in file sv.h
=item SvSETMAGIC
+X<SvSETMAGIC>
Invokes C<mg_set> on an SV if it has 'set' magic. This macro evaluates its
argument more than once.
@@ -1493,6 +1617,7 @@ argument more than once.
Found in file sv.h
=item SvSetMagicSV
+X<SvSetMagicSV>
Like C<SvSetSV>, but does any set magic required afterwards.
@@ -1502,6 +1627,7 @@ Like C<SvSetSV>, but does any set magic required afterwards.
Found in file sv.h
=item SvSetMagicSV_nosteal
+X<SvSetMagicSV_nosteal>
Like C<SvSetSV_nosteal>, but does any set magic required afterwards.
@@ -1511,6 +1637,7 @@ Like C<SvSetSV_nosteal>, but does any set magic required afterwards.
Found in file sv.h
=item SvSetSV
+X<SvSetSV>
Calls C<sv_setsv> if dsv is not the same as ssv. May evaluate arguments
more than once.
@@ -1521,6 +1648,7 @@ more than once.
Found in file sv.h
=item SvSetSV_nosteal
+X<SvSetSV_nosteal>
Calls a non-destructive version of C<sv_setsv> if dsv is not the same as
ssv. May evaluate arguments more than once.
@@ -1531,6 +1659,7 @@ ssv. May evaluate arguments more than once.
Found in file sv.h
=item SvSHARE
+X<SvSHARE>
Arranges for sv to be shared between threads if a suitable module
has been loaded.
@@ -1541,6 +1670,7 @@ has been loaded.
Found in file sv.h
=item SvUNLOCK
+X<SvUNLOCK>
Releases a mutual exclusion lock on sv if a suitable module
has been loaded.
@@ -1558,6 +1688,7 @@ Found in file sv.h
=over 8
=item Copy
+X<Copy>
The XSUB-writer's interface to the C C<memcpy> function. The C<src> is the
source, C<dest> is the destination, C<nitems> is the number of items, and C<type> is
@@ -1569,6 +1700,7 @@ the type. May fail on overlapping copies. See also C<Move>.
Found in file handy.h
=item CopyD
+X<CopyD>
Like C<Copy> but returns dest. Useful for encouraging compilers to tail-call
optimise.
@@ -1579,6 +1711,7 @@ optimise.
Found in file handy.h
=item Move
+X<Move>
The XSUB-writer's interface to the C C<memmove> function. The C<src> is the
source, C<dest> is the destination, C<nitems> is the number of items, and C<type> is
@@ -1590,6 +1723,7 @@ the type. Can do overlapping moves. See also C<Copy>.
Found in file handy.h
=item MoveD
+X<MoveD>
Like C<Move> but returns dest. Useful for encouraging compilers to tail-call
optimise.
@@ -1600,6 +1734,7 @@ optimise.
Found in file handy.h
=item Newx
+X<Newx>
The XSUB-writer's interface to the C C<malloc> function.
@@ -1615,6 +1750,7 @@ there for use in XS modules supporting older perls.
Found in file handy.h
=item Newxc
+X<Newxc>
The XSUB-writer's interface to the C C<malloc> function, with
cast. See also C<Newx>.
@@ -1625,6 +1761,7 @@ cast. See also C<Newx>.
Found in file handy.h
=item Newxz
+X<Newxz>
The XSUB-writer's interface to the C C<malloc> function. The allocated
memory is zeroed with C<memzero>. See also C<Newx>.
@@ -1635,6 +1772,7 @@ memory is zeroed with C<memzero>. See also C<Newx>.
Found in file handy.h
=item Poison
+X<Poison>
Fill up memory with a pattern (byte 0xAB over and over again) that
hopefully catches attempts to access uninitialized memory.
@@ -1645,6 +1783,7 @@ hopefully catches attempts to access uninitialized memory.
Found in file handy.h
=item Renew
+X<Renew>
The XSUB-writer's interface to the C C<realloc> function.
@@ -1654,6 +1793,7 @@ The XSUB-writer's interface to the C C<realloc> function.
Found in file handy.h
=item Renewc
+X<Renewc>
The XSUB-writer's interface to the C C<realloc> function, with
cast.
@@ -1664,6 +1804,7 @@ cast.
Found in file handy.h
=item Safefree
+X<Safefree>
The XSUB-writer's interface to the C C<free> function.
@@ -1673,6 +1814,7 @@ The XSUB-writer's interface to the C C<free> function.
Found in file handy.h
=item savepv
+X<savepv>
Perl's version of C<strdup()>. Returns a pointer to a newly allocated
string which is a duplicate of C<pv>. The size of the string is
@@ -1685,6 +1827,7 @@ be freed with the C<Safefree()> function.
Found in file util.c
=item savepvn
+X<savepvn>
Perl's version of what C<strndup()> would be if it existed. Returns a
pointer to a newly allocated string which is a duplicate of the first
@@ -1697,6 +1840,7 @@ freed with the C<Safefree()> function.
Found in file util.c
=item savesharedpv
+X<savesharedpv>
A version of C<savepv()> which allocates the duplicate string in memory
which is shared between threads.
@@ -1707,6 +1851,7 @@ which is shared between threads.
Found in file util.c
=item savesvpv
+X<savesvpv>
A version of C<savepv()>/C<savepvn()> which gets the string to duplicate from
the passed in SV using C<SvPV()>
@@ -1717,6 +1862,7 @@ the passed in SV using C<SvPV()>
Found in file util.c
=item StructCopy
+X<StructCopy>
This is an architecture-independent macro to copy one structure to another.
@@ -1726,6 +1872,7 @@ This is an architecture-independent macro to copy one structure to another.
Found in file handy.h
=item Zero
+X<Zero>
The XSUB-writer's interface to the C C<memzero> function. The C<dest> is the
destination, C<nitems> is the number of items, and C<type> is the type.
@@ -1736,6 +1883,7 @@ destination, C<nitems> is the number of items, and C<type> is the type.
Found in file handy.h
=item ZeroD
+X<ZeroD>
Like C<Zero> but returns dest. Useful for encouraging compilers to tail-call
optimise.
@@ -1753,6 +1901,7 @@ Found in file handy.h
=over 8
=item fbm_compile
+X<fbm_compile>
Analyses the string in order to make fast searches on it using fbm_instr()
-- the Boyer-Moore algorithm.
@@ -1763,6 +1912,7 @@ Analyses the string in order to make fast searches on it using fbm_instr()
Found in file util.c
=item fbm_instr
+X<fbm_instr>
Returns the location of the SV in the string delimited by C<str> and
C<strend>. It returns C<Nullch> if the string can't be found. The C<sv>
@@ -1775,6 +1925,7 @@ then.
Found in file util.c
=item form
+X<form>
Takes a sprintf-style format pattern and conventional
(non-SV) arguments and returns the formatted string.
@@ -1795,6 +1946,7 @@ are done).
Found in file util.c
=item getcwd_sv
+X<getcwd_sv>
Fill the sv with current working directory
@@ -1804,6 +1956,7 @@ Fill the sv with current working directory
Found in file util.c
=item new_version
+X<new_version>
Returns a new version object based on the passed in SV:
@@ -1818,6 +1971,7 @@ want to upgrade the SV.
Found in file util.c
=item scan_version
+X<scan_version>
Returns a pointer to the next character after the parsed
version string, as well as upgrading the passed in SV to
@@ -1841,6 +1995,7 @@ it doesn't.
Found in file util.c
=item strEQ
+X<strEQ>
Test two strings to see if they are equal. Returns true or false.
@@ -1850,6 +2005,7 @@ Test two strings to see if they are equal. Returns true or false.
Found in file handy.h
=item strGE
+X<strGE>
Test two strings to see if the first, C<s1>, is greater than or equal to
the second, C<s2>. Returns true or false.
@@ -1860,6 +2016,7 @@ the second, C<s2>. Returns true or false.
Found in file handy.h
=item strGT
+X<strGT>
Test two strings to see if the first, C<s1>, is greater than the second,
C<s2>. Returns true or false.
@@ -1870,6 +2027,7 @@ C<s2>. Returns true or false.
Found in file handy.h
=item strLE
+X<strLE>
Test two strings to see if the first, C<s1>, is less than or equal to the
second, C<s2>. Returns true or false.
@@ -1880,6 +2038,7 @@ second, C<s2>. Returns true or false.
Found in file handy.h
=item strLT
+X<strLT>
Test two strings to see if the first, C<s1>, is less than the second,
C<s2>. Returns true or false.
@@ -1890,6 +2049,7 @@ C<s2>. Returns true or false.
Found in file handy.h
=item strNE
+X<strNE>
Test two strings to see if they are different. Returns true or
false.
@@ -1900,6 +2060,7 @@ false.
Found in file handy.h
=item strnEQ
+X<strnEQ>
Test two strings to see if they are equal. The C<len> parameter indicates
the number of bytes to compare. Returns true or false. (A wrapper for
@@ -1911,6 +2072,7 @@ C<strncmp>).
Found in file handy.h
=item strnNE
+X<strnNE>
Test two strings to see if they are different. The C<len> parameter
indicates the number of bytes to compare. Returns true or false. (A
@@ -1922,6 +2084,7 @@ wrapper for C<strncmp>).
Found in file handy.h
=item sv_nolocking
+X<sv_nolocking>
Dummy routine which "locks" an SV when there is no locking module present.
Exists to avoid test for a NULL function pointer and because it could potentially warn under
@@ -1933,6 +2096,7 @@ some level of strict-ness.
Found in file util.c
=item sv_nosharing
+X<sv_nosharing>
Dummy routine which "shares" an SV when there is no sharing module present.
Exists to avoid test for a NULL function pointer and because it could potentially warn under
@@ -1944,6 +2108,7 @@ some level of strict-ness.
Found in file util.c
=item sv_nounlocking
+X<sv_nounlocking>
Dummy routine which "unlocks" an SV when there is no locking module present.
Exists to avoid test for a NULL function pointer and because it could potentially warn under
@@ -1955,6 +2120,7 @@ some level of strict-ness.
Found in file util.c
=item upg_version
+X<upg_version>
In-place upgrade of the supplied SV to a version object.
@@ -1968,6 +2134,7 @@ Returns a pointer to the upgraded SV.
Found in file util.c
=item vcmp
+X<vcmp>
Version object aware cmp. Both operands must already have been
converted into version objects.
@@ -1978,6 +2145,7 @@ converted into version objects.
Found in file util.c
=item vnormal
+X<vnormal>
Accepts a version object and returns the normalized string
representation. Call like:
@@ -1993,6 +2161,7 @@ contained within the RV.
Found in file util.c
=item vnumify
+X<vnumify>
Accepts a version object and returns the normalized floating
point representation. Call like:
@@ -2008,6 +2177,7 @@ contained within the RV.
Found in file util.c
=item vstringify
+X<vstringify>
In order to maintain maximum compatibility with earlier versions
of Perl, this function will return either the floating point
@@ -2020,6 +2190,7 @@ the original version contained 1 or more dots, respectively
Found in file util.c
=item vverify
+X<vverify>
Validates that the SV contains a valid version object.
@@ -2041,6 +2212,7 @@ Found in file util.c
=over 8
=item grok_bin
+X<grok_bin>
converts a string representing a binary number to numeric form.
@@ -2069,6 +2241,7 @@ number may use '_' characters to separate digits.
Found in file numeric.c
=item grok_hex
+X<grok_hex>
converts a string representing a hex number to numeric form.
@@ -2097,6 +2270,7 @@ number may use '_' characters to separate digits.
Found in file numeric.c
=item grok_number
+X<grok_number>
Recognise (or not) a number. The type of the number is returned
(0 if unrecognised), otherwise it is a bit-ORed combination of
@@ -2122,6 +2296,7 @@ number is larger than a UV.
Found in file numeric.c
=item grok_numeric_radix
+X<grok_numeric_radix>
Scan and skip for a numeric decimal separator (radix).
@@ -2131,6 +2306,7 @@ Scan and skip for a numeric decimal separator (radix).
Found in file numeric.c
=item grok_oct
+X<grok_oct>
converts a string representing an octal number to numeric form.
@@ -2157,6 +2333,7 @@ number may use '_' characters to separate digits.
Found in file numeric.c
=item scan_bin
+X<scan_bin>
For backwards compatibility. Use C<grok_bin> instead.
@@ -2166,6 +2343,7 @@ For backwards compatibility. Use C<grok_bin> instead.
Found in file numeric.c
=item scan_hex
+X<scan_hex>
For backwards compatibility. Use C<grok_hex> instead.
@@ -2175,6 +2353,7 @@ For backwards compatibility. Use C<grok_hex> instead.
Found in file numeric.c
=item scan_oct
+X<scan_oct>
For backwards compatibility. Use C<grok_oct> instead.
@@ -2191,6 +2370,7 @@ Found in file numeric.c
=over 8
=item cv_const_sv
+X<cv_const_sv>
If C<cv> is a constant sub eligible for inlining. returns the constant
value returned by the sub. Otherwise, returns NULL.
@@ -2204,6 +2384,7 @@ L<perlsub/"Constant Functions">.
Found in file op.c
=item newCONSTSUB
+X<newCONSTSUB>
Creates a constant sub equivalent to Perl C<sub FOO () { 123 }> which is
eligible for inlining at compile-time.
@@ -2214,6 +2395,7 @@ eligible for inlining at compile-time.
Found in file op.c
=item newXS
+X<newXS>
Used by C<xsubpp> to hook up XSUBs as Perl subs.
@@ -2228,6 +2410,7 @@ Found in file op.c
=over 8
=item pad_sv
+X<pad_sv>
Get the value at offset po in the current pad.
Use macro PAD_SV instead of calling this function directly.
@@ -2245,6 +2428,7 @@ Found in file pad.c
=over 8
=item dXCPT
+X<dXCPT>
Set up necessary local variables for exception handling.
See L<perlguts/"Exception Handling">.
@@ -2255,6 +2439,7 @@ See L<perlguts/"Exception Handling">.
Found in file XSUB.h
=item XCPT_CATCH
+X<XCPT_CATCH>
Introduces a catch block. See L<perlguts/"Exception Handling">.
@@ -2262,6 +2447,7 @@ Introduces a catch block. See L<perlguts/"Exception Handling">.
Found in file XSUB.h
=item XCPT_RETHROW
+X<XCPT_RETHROW>
Rethrows a previously caught exception. See L<perlguts/"Exception Handling">.
@@ -2271,6 +2457,7 @@ Rethrows a previously caught exception. See L<perlguts/"Exception Handling">.
Found in file XSUB.h
=item XCPT_TRY_END
+X<XCPT_TRY_END>
Ends a try block. See L<perlguts/"Exception Handling">.
@@ -2278,6 +2465,7 @@ Ends a try block. See L<perlguts/"Exception Handling">.
Found in file XSUB.h
=item XCPT_TRY_START
+X<XCPT_TRY_START>
Starts a try block. See L<perlguts/"Exception Handling">.
@@ -2292,6 +2480,7 @@ Found in file XSUB.h
=over 8
=item dMARK
+X<dMARK>
Declare a stack marker variable, C<mark>, for the XSUB. See C<MARK> and
C<dORIGMARK>.
@@ -2302,6 +2491,7 @@ C<dORIGMARK>.
Found in file pp.h
=item dORIGMARK
+X<dORIGMARK>
Saves the original stack mark for the XSUB. See C<ORIGMARK>.
@@ -2311,6 +2501,7 @@ Saves the original stack mark for the XSUB. See C<ORIGMARK>.
Found in file pp.h
=item dSP
+X<dSP>
Declares a local copy of perl's stack pointer for the XSUB, available via
the C<SP> macro. See C<SP>.
@@ -2321,6 +2512,7 @@ the C<SP> macro. See C<SP>.
Found in file pp.h
=item EXTEND
+X<EXTEND>
Used to extend the argument stack for an XSUB's return values. Once
used, guarantees that there is room for at least C<nitems> to be pushed
@@ -2332,6 +2524,7 @@ onto the stack.
Found in file pp.h
=item MARK
+X<MARK>
Stack marker variable for the XSUB. See C<dMARK>.
@@ -2339,6 +2532,7 @@ Stack marker variable for the XSUB. See C<dMARK>.
Found in file pp.h
=item mPUSHi
+X<mPUSHi>
Push an integer onto the stack. The stack must have room for this element.
Handles 'set' magic. Does not use C<TARG>. See also C<PUSHi>, C<mXPUSHi>
@@ -2350,6 +2544,7 @@ and C<XPUSHi>.
Found in file pp.h
=item mPUSHn
+X<mPUSHn>
Push a double onto the stack. The stack must have room for this element.
Handles 'set' magic. Does not use C<TARG>. See also C<PUSHn>, C<mXPUSHn>
@@ -2361,6 +2556,7 @@ and C<XPUSHn>.
Found in file pp.h
=item mPUSHp
+X<mPUSHp>
Push a string onto the stack. The stack must have room for this element.
The C<len> indicates the length of the string. Handles 'set' magic. Does
@@ -2372,6 +2568,7 @@ not use C<TARG>. See also C<PUSHp>, C<mXPUSHp> and C<XPUSHp>.
Found in file pp.h
=item mPUSHu
+X<mPUSHu>
Push an unsigned integer onto the stack. The stack must have room for this
element. Handles 'set' magic. Does not use C<TARG>. See also C<PUSHu>,
@@ -2383,6 +2580,7 @@ C<mXPUSHu> and C<XPUSHu>.
Found in file pp.h
=item mXPUSHi
+X<mXPUSHi>
Push an integer onto the stack, extending the stack if necessary. Handles
'set' magic. Does not use C<TARG>. See also C<XPUSHi>, C<mPUSHi> and
@@ -2394,6 +2592,7 @@ C<PUSHi>.
Found in file pp.h
=item mXPUSHn
+X<mXPUSHn>
Push a double onto the stack, extending the stack if necessary. Handles
'set' magic. Does not use C<TARG>. See also C<XPUSHn>, C<mPUSHn> and
@@ -2405,6 +2604,7 @@ C<PUSHn>.
Found in file pp.h
=item mXPUSHp
+X<mXPUSHp>
Push a string onto the stack, extending the stack if necessary. The C<len>
indicates the length of the string. Handles 'set' magic. Does not use
@@ -2416,6 +2616,7 @@ C<TARG>. See also C<XPUSHp>, C<mPUSHp> and C<PUSHp>.
Found in file pp.h
=item mXPUSHu
+X<mXPUSHu>
Push an unsigned integer onto the stack, extending the stack if necessary.
Handles 'set' magic. Does not use C<TARG>. See also C<XPUSHu>, C<mPUSHu>
@@ -2427,6 +2628,7 @@ and C<PUSHu>.
Found in file pp.h
=item ORIGMARK
+X<ORIGMARK>
The original stack mark for the XSUB. See C<dORIGMARK>.
@@ -2434,6 +2636,7 @@ The original stack mark for the XSUB. See C<dORIGMARK>.
Found in file pp.h
=item POPi
+X<POPi>
Pops an integer off the stack.
@@ -2443,6 +2646,7 @@ Pops an integer off the stack.
Found in file pp.h
=item POPl
+X<POPl>
Pops a long off the stack.
@@ -2452,6 +2656,7 @@ Pops a long off the stack.
Found in file pp.h
=item POPn
+X<POPn>
Pops a double off the stack.
@@ -2461,6 +2666,7 @@ Pops a double off the stack.
Found in file pp.h
=item POPp
+X<POPp>
Pops a string off the stack. Deprecated. New code should use POPpx.
@@ -2470,6 +2676,7 @@ Pops a string off the stack. Deprecated. New code should use POPpx.
Found in file pp.h
=item POPpbytex
+X<POPpbytex>
Pops a string off the stack which must consist of bytes i.e. characters < 256.
@@ -2479,6 +2686,7 @@ Pops a string off the stack which must consist of bytes i.e. characters < 256.
Found in file pp.h
=item POPpx
+X<POPpx>
Pops a string off the stack.
@@ -2488,6 +2696,7 @@ Pops a string off the stack.
Found in file pp.h
=item POPs
+X<POPs>
Pops an SV off the stack.
@@ -2497,6 +2706,7 @@ Pops an SV off the stack.
Found in file pp.h
=item PUSHi
+X<PUSHi>
Push an integer onto the stack. The stack must have room for this element.
Handles 'set' magic. Uses C<TARG>, so C<dTARGET> or C<dXSTARG> should be
@@ -2510,6 +2720,7 @@ C<mXPUSHi>.
Found in file pp.h
=item PUSHMARK
+X<PUSHMARK>
Opening bracket for arguments on a callback. See C<PUTBACK> and
L<perlcall>.
@@ -2520,6 +2731,7 @@ L<perlcall>.
Found in file pp.h
=item PUSHmortal
+X<PUSHmortal>
Push a new mortal SV onto the stack. The stack must have room for this
element. Does not handle 'set' magic. Does not use C<TARG>. See also
@@ -2531,6 +2743,7 @@ C<PUSHs>, C<XPUSHmortal> and C<XPUSHs>.
Found in file pp.h
=item PUSHn
+X<PUSHn>
Push a double onto the stack. The stack must have room for this element.
Handles 'set' magic. Uses C<TARG>, so C<dTARGET> or C<dXSTARG> should be
@@ -2544,6 +2757,7 @@ C<mXPUSHn>.
Found in file pp.h
=item PUSHp
+X<PUSHp>
Push a string onto the stack. The stack must have room for this element.
The C<len> indicates the length of the string. Handles 'set' magic. Uses
@@ -2557,6 +2771,7 @@ C<mPUSHp> instead. See also C<XPUSHp> and C<mXPUSHp>.
Found in file pp.h
=item PUSHs
+X<PUSHs>
Push an SV onto the stack. The stack must have room for this element.
Does not handle 'set' magic. Does not use C<TARG>. See also C<PUSHmortal>,
@@ -2568,6 +2783,7 @@ C<XPUSHs> and C<XPUSHmortal>.
Found in file pp.h
=item PUSHu
+X<PUSHu>
Push an unsigned integer onto the stack. The stack must have room for this
element. Handles 'set' magic. Uses C<TARG>, so C<dTARGET> or C<dXSTARG>
@@ -2581,6 +2797,7 @@ C<XPUSHu> and C<mXPUSHu>.
Found in file pp.h
=item PUTBACK
+X<PUTBACK>
Closing bracket for XSUB arguments. This is usually handled by C<xsubpp>.
See C<PUSHMARK> and L<perlcall> for other uses.
@@ -2591,6 +2808,7 @@ See C<PUSHMARK> and L<perlcall> for other uses.
Found in file pp.h
=item SP
+X<SP>
Stack pointer. This is usually handled by C<xsubpp>. See C<dSP> and
C<SPAGAIN>.
@@ -2599,6 +2817,7 @@ C<SPAGAIN>.
Found in file pp.h
=item SPAGAIN
+X<SPAGAIN>
Refetch the stack pointer. Used after a callback. See L<perlcall>.
@@ -2608,6 +2827,7 @@ Refetch the stack pointer. Used after a callback. See L<perlcall>.
Found in file pp.h
=item XPUSHi
+X<XPUSHi>
Push an integer onto the stack, extending the stack if necessary. Handles
'set' magic. Uses C<TARG>, so C<dTARGET> or C<dXSTARG> should be called to
@@ -2620,6 +2840,7 @@ from XSUB's - see C<mXPUSHi> instead. See also C<PUSHi> and C<mPUSHi>.
Found in file pp.h
=item XPUSHmortal
+X<XPUSHmortal>
Push a new mortal SV onto the stack, extending the stack if necessary. Does
not handle 'set' magic. Does not use C<TARG>. See also C<XPUSHs>,
@@ -2631,6 +2852,7 @@ C<PUSHmortal> and C<PUSHs>.
Found in file pp.h
=item XPUSHn
+X<XPUSHn>
Push a double onto the stack, extending the stack if necessary. Handles
'set' magic. Uses C<TARG>, so C<dTARGET> or C<dXSTARG> should be called to
@@ -2643,6 +2865,7 @@ from XSUB's - see C<mXPUSHn> instead. See also C<PUSHn> and C<mPUSHn>.
Found in file pp.h
=item XPUSHp
+X<XPUSHp>
Push a string onto the stack, extending the stack if necessary. The C<len>
indicates the length of the string. Handles 'set' magic. Uses C<TARG>, so
@@ -2656,6 +2879,7 @@ C<mXPUSHp> instead. See also C<PUSHp> and C<mPUSHp>.
Found in file pp.h
=item XPUSHs
+X<XPUSHs>
Push an SV onto the stack, extending the stack if necessary. Does not
handle 'set' magic. Does not use C<TARG>. See also C<XPUSHmortal>,
@@ -2667,6 +2891,7 @@ C<PUSHs> and C<PUSHmortal>.
Found in file pp.h
=item XPUSHu
+X<XPUSHu>
Push an unsigned integer onto the stack, extending the stack if necessary.
Handles 'set' magic. Uses C<TARG>, so C<dTARGET> or C<dXSTARG> should be
@@ -2680,6 +2905,7 @@ C<mPUSHu>.
Found in file pp.h
=item XSRETURN
+X<XSRETURN>
Return from XSUB, indicating number of items on the stack. This is usually
handled by C<xsubpp>.
@@ -2690,6 +2916,7 @@ handled by C<xsubpp>.
Found in file XSUB.h
=item XSRETURN_EMPTY
+X<XSRETURN_EMPTY>
Return an empty list from an XSUB immediately.
@@ -2699,6 +2926,7 @@ Return an empty list from an XSUB immediately.
Found in file XSUB.h
=item XSRETURN_IV
+X<XSRETURN_IV>
Return an integer from an XSUB immediately. Uses C<XST_mIV>.
@@ -2708,6 +2936,7 @@ Return an integer from an XSUB immediately. Uses C<XST_mIV>.
Found in file XSUB.h
=item XSRETURN_NO
+X<XSRETURN_NO>
Return C<&PL_sv_no> from an XSUB immediately. Uses C<XST_mNO>.
@@ -2717,6 +2946,7 @@ Return C<&PL_sv_no> from an XSUB immediately. Uses C<XST_mNO>.
Found in file XSUB.h
=item XSRETURN_NV
+X<XSRETURN_NV>
Return a double from an XSUB immediately. Uses C<XST_mNV>.
@@ -2726,6 +2956,7 @@ Return a double from an XSUB immediately. Uses C<XST_mNV>.
Found in file XSUB.h
=item XSRETURN_PV
+X<XSRETURN_PV>
Return a copy of a string from an XSUB immediately. Uses C<XST_mPV>.
@@ -2735,6 +2966,7 @@ Return a copy of a string from an XSUB immediately. Uses C<XST_mPV>.
Found in file XSUB.h
=item XSRETURN_UNDEF
+X<XSRETURN_UNDEF>
Return C<&PL_sv_undef> from an XSUB immediately. Uses C<XST_mUNDEF>.
@@ -2744,6 +2976,7 @@ Return C<&PL_sv_undef> from an XSUB immediately. Uses C<XST_mUNDEF>.
Found in file XSUB.h
=item XSRETURN_UV
+X<XSRETURN_UV>
Return an integer from an XSUB immediately. Uses C<XST_mUV>.
@@ -2753,6 +2986,7 @@ Return an integer from an XSUB immediately. Uses C<XST_mUV>.
Found in file XSUB.h
=item XSRETURN_YES
+X<XSRETURN_YES>
Return C<&PL_sv_yes> from an XSUB immediately. Uses C<XST_mYES>.
@@ -2762,6 +2996,7 @@ Return C<&PL_sv_yes> from an XSUB immediately. Uses C<XST_mYES>.
Found in file XSUB.h
=item XST_mIV
+X<XST_mIV>
Place an integer into the specified position C<pos> on the stack. The
value is stored in a new mortal SV.
@@ -2772,6 +3007,7 @@ value is stored in a new mortal SV.
Found in file XSUB.h
=item XST_mNO
+X<XST_mNO>
Place C<&PL_sv_no> into the specified position C<pos> on the
stack.
@@ -2782,6 +3018,7 @@ stack.
Found in file XSUB.h
=item XST_mNV
+X<XST_mNV>
Place a double into the specified position C<pos> on the stack. The value
is stored in a new mortal SV.
@@ -2792,6 +3029,7 @@ is stored in a new mortal SV.
Found in file XSUB.h
=item XST_mPV
+X<XST_mPV>
Place a copy of a string into the specified position C<pos> on the stack.
The value is stored in a new mortal SV.
@@ -2802,6 +3040,7 @@ The value is stored in a new mortal SV.
Found in file XSUB.h
=item XST_mUNDEF
+X<XST_mUNDEF>
Place C<&PL_sv_undef> into the specified position C<pos> on the
stack.
@@ -2812,6 +3051,7 @@ stack.
Found in file XSUB.h
=item XST_mYES
+X<XST_mYES>
Place C<&PL_sv_yes> into the specified position C<pos> on the
stack.
@@ -2829,6 +3069,7 @@ Found in file XSUB.h
=over 8
=item svtype
+X<svtype>
An enum of flags for Perl types. These are found in the file B<sv.h>
in the C<svtype> enum. Test these flags with the C<SvTYPE> macro.
@@ -2837,6 +3078,7 @@ in the C<svtype> enum. Test these flags with the C<SvTYPE> macro.
Found in file sv.h
=item SVt_IV
+X<SVt_IV>
Integer type flag for scalars. See C<svtype>.
@@ -2844,6 +3086,7 @@ Integer type flag for scalars. See C<svtype>.
Found in file sv.h
=item SVt_NV
+X<SVt_NV>
Double type flag for scalars. See C<svtype>.
@@ -2851,6 +3094,7 @@ Double type flag for scalars. See C<svtype>.
Found in file sv.h
=item SVt_PV
+X<SVt_PV>
Pointer type flag for scalars. See C<svtype>.
@@ -2858,6 +3102,7 @@ Pointer type flag for scalars. See C<svtype>.
Found in file sv.h
=item SVt_PVAV
+X<SVt_PVAV>
Type flag for arrays. See C<svtype>.
@@ -2865,6 +3110,7 @@ Type flag for arrays. See C<svtype>.
Found in file sv.h
=item SVt_PVCV
+X<SVt_PVCV>
Type flag for code refs. See C<svtype>.
@@ -2872,6 +3118,7 @@ Type flag for code refs. See C<svtype>.
Found in file sv.h
=item SVt_PVHV
+X<SVt_PVHV>
Type flag for hashes. See C<svtype>.
@@ -2879,6 +3126,7 @@ Type flag for hashes. See C<svtype>.
Found in file sv.h
=item SVt_PVMG
+X<SVt_PVMG>
Type flag for blessed scalars. See C<svtype>.
@@ -2893,6 +3141,7 @@ Found in file sv.h
=over 8
=item get_sv
+X<get_sv>
Returns the SV of the specified Perl scalar. If C<create> is set and the
Perl variable does not exist then it will be created. If C<create> is not
@@ -2906,6 +3155,7 @@ NOTE: the perl_ form of this function is deprecated.
Found in file perl.c
=item looks_like_number
+X<looks_like_number>
Test if the content of an SV looks like a number (or is a number).
C<Inf> and C<Infinity> are treated as numbers (so will not issue a
@@ -2917,6 +3167,7 @@ non-numeric warning), even if your atof() doesn't grok them.
Found in file sv.c
=item newRV_inc
+X<newRV_inc>
Creates an RV wrapper for an SV. The reference count for the original SV is
incremented.
@@ -2927,6 +3178,7 @@ incremented.
Found in file sv.h
=item newRV_noinc
+X<newRV_noinc>
Creates an RV wrapper for an SV. The reference count for the original
SV is B<not> incremented.
@@ -2937,6 +3189,7 @@ SV is B<not> incremented.
Found in file sv.c
=item NEWSV
+X<NEWSV>
Creates a new SV. A non-zero C<len> parameter indicates the number of
bytes of preallocated string space the SV should have. An extra byte for a
@@ -2950,6 +3203,7 @@ C<id> is an integer id between 0 and 1299 (used to identify leaks).
Found in file handy.h
=item newSV
+X<newSV>
Create a new null SV, or if len > 0, create a new empty SVt_PV type SV
with an initial PV allocation of len+1. Normally accessed via the C<NEWSV>
@@ -2961,6 +3215,7 @@ macro.
Found in file sv.c
=item newSVhek
+X<newSVhek>
Creates a new SV from the hash key structure. It will generate scalars that
point to the shared string table where possible. Returns a new (undefined)
@@ -2972,6 +3227,7 @@ SV if the hek is NULL.
Found in file sv.c
=item newSViv
+X<newSViv>
Creates a new SV and copies an integer into it. The reference count for the
SV is set to 1.
@@ -2982,6 +3238,7 @@ SV is set to 1.
Found in file sv.c
=item newSVnv
+X<newSVnv>
Creates a new SV and copies a floating point value into it.
The reference count for the SV is set to 1.
@@ -2992,6 +3249,7 @@ The reference count for the SV is set to 1.
Found in file sv.c
=item newSVpv
+X<newSVpv>
Creates a new SV and copies a string into it. The reference count for the
SV is set to 1. If C<len> is zero, Perl will compute the length using
@@ -3003,6 +3261,7 @@ strlen(). For efficiency, consider using C<newSVpvn> instead.
Found in file sv.c
=item newSVpvf
+X<newSVpvf>
Creates a new SV and initializes it with the string formatted like
C<sprintf>.
@@ -3013,6 +3272,7 @@ C<sprintf>.
Found in file sv.c
=item newSVpvn
+X<newSVpvn>
Creates a new SV and copies a string into it. The reference count for the
SV is set to 1. Note that if C<len> is zero, Perl will create a zero length
@@ -3025,6 +3285,7 @@ C<len> bytes long. If the C<s> argument is NULL the new SV will be undefined.
Found in file sv.c
=item newSVpvn_share
+X<newSVpvn_share>
Creates a new SV with its SvPVX_const pointing to a shared string in the string
table. If the string does not already exist in the table, it is created
@@ -3040,6 +3301,7 @@ hash lookup will avoid string compare.
Found in file sv.c
=item newSVrv
+X<newSVrv>
Creates a new SV for the RV, C<rv>, to point to. If C<rv> is not an RV then
it will be upgraded to one. If C<classname> is non-null then the new SV will
@@ -3052,6 +3314,7 @@ reference count is 1.
Found in file sv.c
=item newSVsv
+X<newSVsv>
Creates a new SV which is an exact duplicate of the original SV.
(Uses C<sv_setsv>).
@@ -3062,6 +3325,7 @@ Creates a new SV which is an exact duplicate of the original SV.
Found in file sv.c
=item newSVuv
+X<newSVuv>
Creates a new SV and copies an unsigned integer into it.
The reference count for the SV is set to 1.
@@ -3072,6 +3336,7 @@ The reference count for the SV is set to 1.
Found in file sv.c
=item SvCUR
+X<SvCUR>
Returns the length of the string which is in the SV. See C<SvLEN>.
@@ -3081,6 +3346,7 @@ Returns the length of the string which is in the SV. See C<SvLEN>.
Found in file sv.h
=item SvCUR_set
+X<SvCUR_set>
Set the current length of the string which is in the SV. See C<SvCUR>
and C<SvIV_set>.
@@ -3091,6 +3357,7 @@ and C<SvIV_set>.
Found in file sv.h
=item SvEND
+X<SvEND>
Returns a pointer to the last character in the string which is in the SV.
See C<SvCUR>. Access the character as *(SvEND(sv)).
@@ -3101,6 +3368,7 @@ See C<SvCUR>. Access the character as *(SvEND(sv)).
Found in file sv.h
=item SvGROW
+X<SvGROW>
Expands the character buffer in the SV so that it has room for the
indicated number of bytes (remember to reserve space for an extra trailing
@@ -3113,6 +3381,7 @@ Returns a pointer to the character buffer.
Found in file sv.h
=item SvIOK
+X<SvIOK>
Returns a boolean indicating whether the SV contains an integer.
@@ -3122,6 +3391,7 @@ Returns a boolean indicating whether the SV contains an integer.
Found in file sv.h
=item SvIOKp
+X<SvIOKp>
Returns a boolean indicating whether the SV contains an integer. Checks
the B<private> setting. Use C<SvIOK>.
@@ -3132,6 +3402,7 @@ the B<private> setting. Use C<SvIOK>.
Found in file sv.h
=item SvIOK_notUV
+X<SvIOK_notUV>
Returns a boolean indicating whether the SV contains a signed integer.
@@ -3141,6 +3412,7 @@ Returns a boolean indicating whether the SV contains a signed integer.
Found in file sv.h
=item SvIOK_off
+X<SvIOK_off>
Unsets the IV status of an SV.
@@ -3150,6 +3422,7 @@ Unsets the IV status of an SV.
Found in file sv.h
=item SvIOK_on
+X<SvIOK_on>
Tells an SV that it is an integer.
@@ -3159,6 +3432,7 @@ Tells an SV that it is an integer.
Found in file sv.h
=item SvIOK_only
+X<SvIOK_only>
Tells an SV that it is an integer and disables all other OK bits.
@@ -3168,6 +3442,7 @@ Tells an SV that it is an integer and disables all other OK bits.
Found in file sv.h
=item SvIOK_only_UV
+X<SvIOK_only_UV>
Tells and SV that it is an unsigned integer and disables all other OK bits.
@@ -3177,6 +3452,7 @@ Tells and SV that it is an unsigned integer and disables all other OK bits.
Found in file sv.h
=item SvIOK_UV
+X<SvIOK_UV>
Returns a boolean indicating whether the SV contains an unsigned integer.
@@ -3186,6 +3462,7 @@ Returns a boolean indicating whether the SV contains an unsigned integer.
Found in file sv.h
=item SvIsCOW
+X<SvIsCOW>
Returns a boolean indicating whether the SV is Copy-On-Write. (either shared
hash key scalars, or full Copy On Write scalars if 5.9.0 is configured for
@@ -3197,6 +3474,7 @@ COW)
Found in file sv.h
=item SvIsCOW_shared_hash
+X<SvIsCOW_shared_hash>
Returns a boolean indicating whether the SV is Copy-On-Write shared hash key
scalar.
@@ -3207,6 +3485,7 @@ scalar.
Found in file sv.h
=item SvIV
+X<SvIV>
Coerces the given SV to an integer and returns it. See C<SvIVx> for a
version which guarantees to evaluate sv only once.
@@ -3217,6 +3496,7 @@ version which guarantees to evaluate sv only once.
Found in file sv.h
=item SvIVX
+X<SvIVX>
Returns the raw value in the SV's IV slot, without checks or conversions.
Only use when you are sure SvIOK is true. See also C<SvIV()>.
@@ -3227,6 +3507,7 @@ Only use when you are sure SvIOK is true. See also C<SvIV()>.
Found in file sv.h
=item SvIVx
+X<SvIVx>
Coerces the given SV to an integer and returns it. Guarantees to evaluate
sv only once. Use the more efficient C<SvIV> otherwise.
@@ -3237,6 +3518,7 @@ sv only once. Use the more efficient C<SvIV> otherwise.
Found in file sv.h
=item SvIV_nomg
+X<SvIV_nomg>
Like C<SvIV> but doesn't process magic.
@@ -3246,6 +3528,7 @@ Like C<SvIV> but doesn't process magic.
Found in file sv.h
=item SvIV_set
+X<SvIV_set>
Set the value of the IV pointer in sv to val. It is possible to perform
the same function of this macro with an lvalue assignment to C<SvIVX>.
@@ -3258,6 +3541,7 @@ C<SvIV_set> instead of the lvalue assignment to C<SvIVX>.
Found in file sv.h
=item SvLEN
+X<SvLEN>
Returns the size of the string buffer in the SV, not including any part
attributable to C<SvOOK>. See C<SvCUR>.
@@ -3268,6 +3552,7 @@ attributable to C<SvOOK>. See C<SvCUR>.
Found in file sv.h
=item SvLEN_set
+X<SvLEN_set>
Set the actual length of the string which is in the SV. See C<SvIV_set>.
@@ -3277,6 +3562,7 @@ Set the actual length of the string which is in the SV. See C<SvIV_set>.
Found in file sv.h
=item SvMAGIC_set
+X<SvMAGIC_set>
Set the value of the MAGIC pointer in sv to val. See C<SvIV_set>.
@@ -3286,6 +3572,7 @@ Set the value of the MAGIC pointer in sv to val. See C<SvIV_set>.
Found in file sv.h
=item SvNIOK
+X<SvNIOK>
Returns a boolean indicating whether the SV contains a number, integer or
double.
@@ -3296,6 +3583,7 @@ double.
Found in file sv.h
=item SvNIOKp
+X<SvNIOKp>
Returns a boolean indicating whether the SV contains a number, integer or
double. Checks the B<private> setting. Use C<SvNIOK>.
@@ -3306,6 +3594,7 @@ double. Checks the B<private> setting. Use C<SvNIOK>.
Found in file sv.h
=item SvNIOK_off
+X<SvNIOK_off>
Unsets the NV/IV status of an SV.
@@ -3315,6 +3604,7 @@ Unsets the NV/IV status of an SV.
Found in file sv.h
=item SvNOK
+X<SvNOK>
Returns a boolean indicating whether the SV contains a double.
@@ -3324,6 +3614,7 @@ Returns a boolean indicating whether the SV contains a double.
Found in file sv.h
=item SvNOKp
+X<SvNOKp>
Returns a boolean indicating whether the SV contains a double. Checks the
B<private> setting. Use C<SvNOK>.
@@ -3334,6 +3625,7 @@ B<private> setting. Use C<SvNOK>.
Found in file sv.h
=item SvNOK_off
+X<SvNOK_off>
Unsets the NV status of an SV.
@@ -3343,6 +3635,7 @@ Unsets the NV status of an SV.
Found in file sv.h
=item SvNOK_on
+X<SvNOK_on>
Tells an SV that it is a double.
@@ -3352,6 +3645,7 @@ Tells an SV that it is a double.
Found in file sv.h
=item SvNOK_only
+X<SvNOK_only>
Tells an SV that it is a double and disables all other OK bits.
@@ -3361,6 +3655,7 @@ Tells an SV that it is a double and disables all other OK bits.
Found in file sv.h
=item SvNV
+X<SvNV>
Coerce the given SV to a double and return it. See C<SvNVx> for a version
which guarantees to evaluate sv only once.
@@ -3371,6 +3666,7 @@ which guarantees to evaluate sv only once.
Found in file sv.h
=item SvNVX
+X<SvNVX>
Returns the raw value in the SV's NV slot, without checks or conversions.
Only use when you are sure SvNOK is true. See also C<SvNV()>.
@@ -3381,6 +3677,7 @@ Only use when you are sure SvNOK is true. See also C<SvNV()>.
Found in file sv.h
=item SvNVx
+X<SvNVx>
Coerces the given SV to a double and returns it. Guarantees to evaluate
sv only once. Use the more efficient C<SvNV> otherwise.
@@ -3391,6 +3688,7 @@ sv only once. Use the more efficient C<SvNV> otherwise.
Found in file sv.h
=item SvNV_set
+X<SvNV_set>
Set the value of the NV pointer in sv to val. See C<SvIV_set>.
@@ -3400,6 +3698,7 @@ Set the value of the NV pointer in sv to val. See C<SvIV_set>.
Found in file sv.h
=item SvOK
+X<SvOK>
Returns a boolean indicating whether the value is an SV. It also tells
whether the value is defined or not.
@@ -3410,6 +3709,7 @@ whether the value is defined or not.
Found in file sv.h
=item SvOOK
+X<SvOOK>
Returns a boolean indicating whether the SvIVX is a valid offset value for
the SvPVX. This hack is used internally to speed up removal of characters
@@ -3422,6 +3722,7 @@ allocated string buffer is really (SvPVX - SvIVX).
Found in file sv.h
=item SvPOK
+X<SvPOK>
Returns a boolean indicating whether the SV contains a character
string.
@@ -3432,6 +3733,7 @@ string.
Found in file sv.h
=item SvPOKp
+X<SvPOKp>
Returns a boolean indicating whether the SV contains a character string.
Checks the B<private> setting. Use C<SvPOK>.
@@ -3442,6 +3744,7 @@ Checks the B<private> setting. Use C<SvPOK>.
Found in file sv.h
=item SvPOK_off
+X<SvPOK_off>
Unsets the PV status of an SV.
@@ -3451,6 +3754,7 @@ Unsets the PV status of an SV.
Found in file sv.h
=item SvPOK_on
+X<SvPOK_on>
Tells an SV that it is a string.
@@ -3460,6 +3764,7 @@ Tells an SV that it is a string.
Found in file sv.h
=item SvPOK_only
+X<SvPOK_only>
Tells an SV that it is a string and disables all other OK bits.
Will also turn off the UTF-8 status.
@@ -3470,6 +3775,7 @@ Will also turn off the UTF-8 status.
Found in file sv.h
=item SvPOK_only_UTF8
+X<SvPOK_only_UTF8>
Tells an SV that it is a string and disables all other OK bits,
and leaves the UTF-8 status as it was.
@@ -3480,6 +3786,7 @@ and leaves the UTF-8 status as it was.
Found in file sv.h
=item SvPV
+X<SvPV>
Returns a pointer to the string in the SV, or a stringified form of
the SV if the SV does not contain a string. The SV may cache the
@@ -3492,6 +3799,7 @@ C<SvPVx> for a version which guarantees to evaluate sv only once.
Found in file sv.h
=item SvPVbyte
+X<SvPVbyte>
Like C<SvPV>, but converts sv to byte representation first if necessary.
@@ -3501,6 +3809,7 @@ Like C<SvPV>, but converts sv to byte representation first if necessary.
Found in file sv.h
=item SvPVbytex
+X<SvPVbytex>
Like C<SvPV>, but converts sv to byte representation first if necessary.
Guarantees to evaluate sv only once; use the more efficient C<SvPVbyte>
@@ -3512,6 +3821,7 @@ otherwise.
Found in file sv.h
=item SvPVbytex_force
+X<SvPVbytex_force>
Like C<SvPV_force>, but converts sv to byte representation first if necessary.
Guarantees to evaluate sv only once; use the more efficient C<SvPVbyte_force>
@@ -3523,6 +3833,7 @@ otherwise.
Found in file sv.h
=item SvPVbyte_force
+X<SvPVbyte_force>
Like C<SvPV_force>, but converts sv to byte representation first if necessary.
@@ -3532,6 +3843,7 @@ Like C<SvPV_force>, but converts sv to byte representation first if necessary.
Found in file sv.h
=item SvPVbyte_nolen
+X<SvPVbyte_nolen>
Like C<SvPV_nolen>, but converts sv to byte representation first if necessary.
@@ -3541,6 +3853,7 @@ Like C<SvPV_nolen>, but converts sv to byte representation first if necessary.
Found in file sv.h
=item SvPVutf8
+X<SvPVutf8>
Like C<SvPV>, but converts sv to utf8 first if necessary.
@@ -3550,6 +3863,7 @@ Like C<SvPV>, but converts sv to utf8 first if necessary.
Found in file sv.h
=item SvPVutf8x
+X<SvPVutf8x>
Like C<SvPV>, but converts sv to utf8 first if necessary.
Guarantees to evaluate sv only once; use the more efficient C<SvPVutf8>
@@ -3561,6 +3875,7 @@ otherwise.
Found in file sv.h
=item SvPVutf8x_force
+X<SvPVutf8x_force>
Like C<SvPV_force>, but converts sv to utf8 first if necessary.
Guarantees to evaluate sv only once; use the more efficient C<SvPVutf8_force>
@@ -3572,6 +3887,7 @@ otherwise.
Found in file sv.h
=item SvPVutf8_force
+X<SvPVutf8_force>
Like C<SvPV_force>, but converts sv to utf8 first if necessary.
@@ -3581,6 +3897,7 @@ Like C<SvPV_force>, but converts sv to utf8 first if necessary.
Found in file sv.h
=item SvPVutf8_nolen
+X<SvPVutf8_nolen>
Like C<SvPV_nolen>, but converts sv to utf8 first if necessary.
@@ -3590,6 +3907,7 @@ Like C<SvPV_nolen>, but converts sv to utf8 first if necessary.
Found in file sv.h
=item SvPVX
+X<SvPVX>
Returns a pointer to the physical string in the SV. The SV must contain a
string.
@@ -3600,6 +3918,7 @@ string.
Found in file sv.h
=item SvPVx
+X<SvPVx>
A version of C<SvPV> which guarantees to evaluate sv only once.
@@ -3609,6 +3928,7 @@ A version of C<SvPV> which guarantees to evaluate sv only once.
Found in file sv.h
=item SvPV_force
+X<SvPV_force>
Like C<SvPV> but will force the SV into containing just a string
(C<SvPOK_only>). You want force if you are going to update the C<SvPVX>
@@ -3620,6 +3940,7 @@ directly.
Found in file sv.h
=item SvPV_force_nomg
+X<SvPV_force_nomg>
Like C<SvPV> but will force the SV into containing just a string
(C<SvPOK_only>). You want force if you are going to update the C<SvPVX>
@@ -3631,6 +3952,7 @@ directly. Doesn't process magic.
Found in file sv.h
=item SvPV_nolen
+X<SvPV_nolen>
Returns a pointer to the string in the SV, or a stringified form of
the SV if the SV does not contain a string. The SV may cache the
@@ -3642,6 +3964,7 @@ stringified form becoming C<SvPOK>. Handles 'get' magic.
Found in file sv.h
=item SvPV_nomg
+X<SvPV_nomg>
Like C<SvPV> but doesn't process magic.
@@ -3651,6 +3974,7 @@ Like C<SvPV> but doesn't process magic.
Found in file sv.h
=item SvPV_set
+X<SvPV_set>
Set the value of the PV pointer in sv to val. See C<SvIV_set>.
@@ -3660,6 +3984,7 @@ Set the value of the PV pointer in sv to val. See C<SvIV_set>.
Found in file sv.h
=item SvREFCNT
+X<SvREFCNT>
Returns the value of the object's reference count.
@@ -3669,6 +3994,7 @@ Returns the value of the object's reference count.
Found in file sv.h
=item SvREFCNT_dec
+X<SvREFCNT_dec>
Decrements the reference count of the given SV.
@@ -3678,6 +4004,7 @@ Decrements the reference count of the given SV.
Found in file sv.h
=item SvREFCNT_inc
+X<SvREFCNT_inc>
Increments the reference count of the given SV.
@@ -3687,6 +4014,7 @@ Increments the reference count of the given SV.
Found in file sv.h
=item SvROK
+X<SvROK>
Tests if the SV is an RV.
@@ -3696,6 +4024,7 @@ Tests if the SV is an RV.
Found in file sv.h
=item SvROK_off
+X<SvROK_off>
Unsets the RV status of an SV.
@@ -3705,6 +4034,7 @@ Unsets the RV status of an SV.
Found in file sv.h
=item SvROK_on
+X<SvROK_on>
Tells an SV that it is an RV.
@@ -3714,6 +4044,7 @@ Tells an SV that it is an RV.
Found in file sv.h
=item SvRV
+X<SvRV>
Dereferences an RV to return the SV.
@@ -3723,6 +4054,7 @@ Dereferences an RV to return the SV.
Found in file sv.h
=item SvRV_set
+X<SvRV_set>
Set the value of the RV pointer in sv to val. See C<SvIV_set>.
@@ -3732,6 +4064,7 @@ Set the value of the RV pointer in sv to val. See C<SvIV_set>.
Found in file sv.h
=item SvSTASH
+X<SvSTASH>
Returns the stash of the SV.
@@ -3741,6 +4074,7 @@ Returns the stash of the SV.
Found in file sv.h
=item SvSTASH_set
+X<SvSTASH_set>
Set the value of the STASH pointer in sv to val. See C<SvIV_set>.
@@ -3750,6 +4084,7 @@ Set the value of the STASH pointer in sv to val. See C<SvIV_set>.
Found in file sv.h
=item SvTAINT
+X<SvTAINT>
Taints an SV if tainting is enabled.
@@ -3759,6 +4094,7 @@ Taints an SV if tainting is enabled.
Found in file sv.h
=item SvTAINTED
+X<SvTAINTED>
Checks to see if an SV is tainted. Returns TRUE if it is, FALSE if
not.
@@ -3769,6 +4105,7 @@ not.
Found in file sv.h
=item SvTAINTED_off
+X<SvTAINTED_off>
Untaints an SV. Be I<very> careful with this routine, as it short-circuits
some of Perl's fundamental security features. XS module authors should not
@@ -3783,6 +4120,7 @@ untainting variables.
Found in file sv.h
=item SvTAINTED_on
+X<SvTAINTED_on>
Marks an SV as tainted if tainting is enabled.
@@ -3792,6 +4130,7 @@ Marks an SV as tainted if tainting is enabled.
Found in file sv.h
=item SvTRUE
+X<SvTRUE>
Returns a boolean indicating whether Perl would evaluate the SV as true or
false, defined or undefined. Does not handle 'get' magic.
@@ -3802,6 +4141,7 @@ false, defined or undefined. Does not handle 'get' magic.
Found in file sv.h
=item SvTYPE
+X<SvTYPE>
Returns the type of the SV. See C<svtype>.
@@ -3811,6 +4151,7 @@ Returns the type of the SV. See C<svtype>.
Found in file sv.h
=item SvUOK
+X<SvUOK>
Returns a boolean indicating whether the SV contains an unsigned integer.
@@ -3820,6 +4161,7 @@ Returns a boolean indicating whether the SV contains an unsigned integer.
Found in file sv.h
=item SvUPGRADE
+X<SvUPGRADE>
Used to upgrade an SV to a more complex form. Uses C<sv_upgrade> to
perform the upgrade if necessary. See C<svtype>.
@@ -3830,6 +4172,7 @@ perform the upgrade if necessary. See C<svtype>.
Found in file sv.h
=item SvUTF8
+X<SvUTF8>
Returns a boolean indicating whether the SV contains UTF-8 encoded data.
@@ -3839,6 +4182,7 @@ Returns a boolean indicating whether the SV contains UTF-8 encoded data.
Found in file sv.h
=item SvUTF8_off
+X<SvUTF8_off>
Unsets the UTF-8 status of an SV.
@@ -3848,6 +4192,7 @@ Unsets the UTF-8 status of an SV.
Found in file sv.h
=item SvUTF8_on
+X<SvUTF8_on>
Turn on the UTF-8 status of an SV (the data is not changed, just the flag).
Do not use frivolously.
@@ -3858,6 +4203,7 @@ Do not use frivolously.
Found in file sv.h
=item SvUV
+X<SvUV>
Coerces the given SV to an unsigned integer and returns it. See C<SvUVx>
for a version which guarantees to evaluate sv only once.
@@ -3868,6 +4214,7 @@ for a version which guarantees to evaluate sv only once.
Found in file sv.h
=item SvUVX
+X<SvUVX>
Returns the raw value in the SV's UV slot, without checks or conversions.
Only use when you are sure SvIOK is true. See also C<SvUV()>.
@@ -3878,6 +4225,7 @@ Only use when you are sure SvIOK is true. See also C<SvUV()>.
Found in file sv.h
=item SvUVx
+X<SvUVx>
Coerces the given SV to an unsigned integer and returns it. Guarantees to
evaluate sv only once. Use the more efficient C<SvUV> otherwise.
@@ -3888,6 +4236,7 @@ evaluate sv only once. Use the more efficient C<SvUV> otherwise.
Found in file sv.h
=item SvUV_nomg
+X<SvUV_nomg>
Like C<SvUV> but doesn't process magic.
@@ -3897,6 +4246,7 @@ Like C<SvUV> but doesn't process magic.
Found in file sv.h
=item SvUV_set
+X<SvUV_set>
Set the value of the UV pointer in sv to val. See C<SvIV_set>.
@@ -3906,6 +4256,7 @@ Set the value of the UV pointer in sv to val. See C<SvIV_set>.
Found in file sv.h
=item SvVOK
+X<SvVOK>
Returns a boolean indicating whether the SV contains a v-string.
@@ -3915,6 +4266,7 @@ Returns a boolean indicating whether the SV contains a v-string.
Found in file sv.h
=item sv_2bool
+X<sv_2bool>
This function is only called on magical items, and is only used by
sv_true() or its macro equivalent.
@@ -3925,6 +4277,7 @@ sv_true() or its macro equivalent.
Found in file sv.c
=item sv_2cv
+X<sv_2cv>
Using various gambits, try to get a CV from an SV; in addition, try if
possible to set C<*st> and C<*gvp> to the stash and GV associated with it.
@@ -3935,6 +4288,7 @@ possible to set C<*st> and C<*gvp> to the stash and GV associated with it.
Found in file sv.c
=item sv_2io
+X<sv_2io>
Using various gambits, try to get an IO from an SV: the IO slot if its a
GV; or the recursive result if we're an RV; or the IO slot of the symbol
@@ -3946,6 +4300,7 @@ named after the PV if we're a string.
Found in file sv.c
=item sv_2iv_flags
+X<sv_2iv_flags>
Return the integer value of an SV, doing any necessary string
conversion. If flags includes SV_GMAGIC, does an mg_get() first.
@@ -3957,6 +4312,7 @@ Normally used via the C<SvIV(sv)> and C<SvIVx(sv)> macros.
Found in file sv.c
=item sv_2mortal
+X<sv_2mortal>
Marks an existing SV as mortal. The SV will be destroyed "soon", either
by an explicit call to FREETMPS, or by an implicit call at places such as
@@ -3970,6 +4326,7 @@ and C<sv_mortalcopy>.
Found in file sv.c
=item sv_2nv
+X<sv_2nv>
Return the num value of an SV, doing any necessary string or integer
conversion, magic etc. Normally used via the C<SvNV(sv)> and C<SvNVx(sv)>
@@ -3981,6 +4338,7 @@ macros.
Found in file sv.c
=item sv_2pvbyte
+X<sv_2pvbyte>
Return a pointer to the byte-encoded representation of the SV, and set *lp
to its length. May cause the SV to be downgraded from UTF-8 as a
@@ -3994,6 +4352,7 @@ Usually accessed via the C<SvPVbyte> macro.
Found in file sv.c
=item sv_2pvbyte_nolen
+X<sv_2pvbyte_nolen>
Return a pointer to the byte-encoded representation of the SV.
May cause the SV to be downgraded from UTF-8 as a side-effect.
@@ -4006,6 +4365,7 @@ Usually accessed via the C<SvPVbyte_nolen> macro.
Found in file sv.c
=item sv_2pvutf8
+X<sv_2pvutf8>
Return a pointer to the UTF-8-encoded representation of the SV, and set *lp
to its length. May cause the SV to be upgraded to UTF-8 as a side-effect.
@@ -4018,6 +4378,7 @@ Usually accessed via the C<SvPVutf8> macro.
Found in file sv.c
=item sv_2pvutf8_nolen
+X<sv_2pvutf8_nolen>
Return a pointer to the UTF-8-encoded representation of the SV.
May cause the SV to be upgraded to UTF-8 as a side-effect.
@@ -4030,6 +4391,7 @@ Usually accessed via the C<SvPVutf8_nolen> macro.
Found in file sv.c
=item sv_2pv_flags
+X<sv_2pv_flags>
Returns a pointer to the string value of an SV, and sets *lp to its length.
If flags includes SV_GMAGIC, does an mg_get() first. Coerces sv to a string
@@ -4043,6 +4405,7 @@ usually end up here too.
Found in file sv.c
=item sv_2pv_nolen
+X<sv_2pv_nolen>
Like C<sv_2pv()>, but doesn't return the length too. You should usually
use the macro wrapper C<SvPV_nolen(sv)> instead.
@@ -4052,6 +4415,7 @@ use the macro wrapper C<SvPV_nolen(sv)> instead.
Found in file sv.c
=item sv_2uv_flags
+X<sv_2uv_flags>
Return the unsigned integer value of an SV, doing any necessary string
conversion. If flags includes SV_GMAGIC, does an mg_get() first.
@@ -4063,6 +4427,7 @@ Normally used via the C<SvUV(sv)> and C<SvUVx(sv)> macros.
Found in file sv.c
=item sv_backoff
+X<sv_backoff>
Remove any string offset. You should normally use the C<SvOOK_off> macro
wrapper instead.
@@ -4073,6 +4438,7 @@ wrapper instead.
Found in file sv.c
=item sv_bless
+X<sv_bless>
Blesses an SV into a specified package. The SV must be an RV. The package
must be designated by its stash (see C<gv_stashpv()>). The reference count
@@ -4084,6 +4450,7 @@ of the SV is unaffected.
Found in file sv.c
=item sv_catpv
+X<sv_catpv>
Concatenates the string onto the end of the string which is in the SV.
If the SV has the UTF-8 status set, then the bytes appended should be
@@ -4095,6 +4462,7 @@ valid UTF-8. Handles 'get' magic, but not 'set' magic. See C<sv_catpv_mg>.
Found in file sv.c
=item sv_catpvf
+X<sv_catpvf>
Processes its arguments like C<sprintf> and appends the formatted
output to an SV. If the appended data contains "wide" characters
@@ -4110,6 +4478,7 @@ valid UTF-8; if the original SV was bytes, the pattern should be too.
Found in file sv.c
=item sv_catpvf_mg
+X<sv_catpvf_mg>
Like C<sv_catpvf>, but also handles 'set' magic.
@@ -4119,6 +4488,7 @@ Like C<sv_catpvf>, but also handles 'set' magic.
Found in file sv.c
=item sv_catpvn
+X<sv_catpvn>
Concatenates the string onto the end of the string which is in the SV. The
C<len> indicates number of bytes to copy. If the SV has the UTF-8
@@ -4131,6 +4501,7 @@ Handles 'get' magic, but not 'set' magic. See C<sv_catpvn_mg>.
Found in file sv.c
=item sv_catpvn_flags
+X<sv_catpvn_flags>
Concatenates the string onto the end of the string which is in the SV. The
C<len> indicates number of bytes to copy. If the SV has the UTF-8
@@ -4145,6 +4516,7 @@ in terms of this function.
Found in file sv.c
=item sv_catpvn_mg
+X<sv_catpvn_mg>
Like C<sv_catpvn>, but also handles 'set' magic.
@@ -4154,6 +4526,7 @@ Like C<sv_catpvn>, but also handles 'set' magic.
Found in file sv.c
=item sv_catpvn_nomg
+X<sv_catpvn_nomg>
Like C<sv_catpvn> but doesn't process magic.
@@ -4163,6 +4536,7 @@ Like C<sv_catpvn> but doesn't process magic.
Found in file sv.h
=item sv_catpv_mg
+X<sv_catpv_mg>
Like C<sv_catpv>, but also handles 'set' magic.
@@ -4172,6 +4546,7 @@ Like C<sv_catpv>, but also handles 'set' magic.
Found in file sv.c
=item sv_catsv
+X<sv_catsv>
Concatenates the string from SV C<ssv> onto the end of the string in
SV C<dsv>. Modifies C<dsv> but not C<ssv>. Handles 'get' magic, but
@@ -4183,6 +4558,7 @@ not 'set' magic. See C<sv_catsv_mg>.
Found in file sv.c
=item sv_catsv_flags
+X<sv_catsv_flags>
Concatenates the string from SV C<ssv> onto the end of the string in
SV C<dsv>. Modifies C<dsv> but not C<ssv>. If C<flags> has C<SV_GMAGIC>
@@ -4195,6 +4571,7 @@ and C<sv_catsv_nomg> are implemented in terms of this function.
Found in file sv.c
=item sv_catsv_mg
+X<sv_catsv_mg>
Like C<sv_catsv>, but also handles 'set' magic.
@@ -4204,6 +4581,7 @@ Like C<sv_catsv>, but also handles 'set' magic.
Found in file sv.c
=item sv_catsv_nomg
+X<sv_catsv_nomg>
Like C<sv_catsv> but doesn't process magic.
@@ -4213,6 +4591,7 @@ Like C<sv_catsv> but doesn't process magic.
Found in file sv.h
=item sv_chop
+X<sv_chop>
Efficient removal of characters from the beginning of the string buffer.
SvPOK(sv) must be true and the C<ptr> must be a pointer to somewhere inside
@@ -4227,6 +4606,7 @@ refer to the same chunk of data.
Found in file sv.c
=item sv_clear
+X<sv_clear>
Clear an SV: call any destructors, free up any memory used by the body,
and free the body itself. The SV's head is I<not> freed, although
@@ -4242,6 +4622,7 @@ instead.
Found in file sv.c
=item sv_cmp
+X<sv_cmp>
Compares the strings in two SVs. Returns -1, 0, or 1 indicating whether the
string in C<sv1> is less than, equal to, or greater than the string in
@@ -4254,6 +4635,7 @@ coerce its args to strings if necessary. See also C<sv_cmp_locale>.
Found in file sv.c
=item sv_cmp_locale
+X<sv_cmp_locale>
Compares the strings in two SVs in a locale-aware manner. Is UTF-8 and
'use bytes' aware, handles get magic, and will coerce its args to strings
@@ -4265,6 +4647,7 @@ if necessary. See also C<sv_cmp_locale>. See also C<sv_cmp>.
Found in file sv.c
=item sv_collxfrm
+X<sv_collxfrm>
Add Collate Transform magic to an SV if it doesn't already have it.
@@ -4279,6 +4662,7 @@ settings.
Found in file sv.c
=item sv_copypv
+X<sv_copypv>
Copies a stringified representation of the source SV into the
destination SV. Automatically performs any necessary mg_get and
@@ -4294,6 +4678,7 @@ would lose the UTF-8'ness of the PV.
Found in file sv.c
=item sv_dec
+X<sv_dec>
Auto-decrement of the value in the SV, doing string to numeric conversion
if necessary. Handles 'get' magic.
@@ -4304,6 +4689,7 @@ if necessary. Handles 'get' magic.
Found in file sv.c
=item sv_derived_from
+X<sv_derived_from>
Returns a boolean indicating whether the SV is derived from the specified
class. This is the function that implements C<UNIVERSAL::isa>. It works
@@ -4315,6 +4701,7 @@ for class names as well as for objects.
Found in file universal.c
=item sv_eq
+X<sv_eq>
Returns a boolean indicating whether the strings in the two SVs are
identical. Is UTF-8 and 'use bytes' aware, handles get magic, and will
@@ -4326,6 +4713,7 @@ coerce its args to strings if necessary.
Found in file sv.c
=item sv_force_normal
+X<sv_force_normal>
Undo various types of fakery on an SV: if the PV is a shared string, make
a private copy; if we're a ref, stop refing; if we're a glob, downgrade to
@@ -4337,6 +4725,7 @@ an xpvmg. See also C<sv_force_normal_flags>.
Found in file sv.c
=item sv_force_normal_flags
+X<sv_force_normal_flags>
Undo various types of fakery on an SV: if the PV is a shared string, make
a private copy; if we're a ref, stop refing; if we're a glob, downgrade to
@@ -4354,6 +4743,7 @@ with flags set to 0.
Found in file sv.c
=item sv_free
+X<sv_free>
Decrement an SV's reference count, and if it drops to zero, call
C<sv_clear> to invoke destructors and free up any memory used by
@@ -4366,6 +4756,7 @@ Normally called via a wrapper macro C<SvREFCNT_dec>.
Found in file sv.c
=item sv_gets
+X<sv_gets>
Get a line from the filehandle and store it into the SV, optionally
appending to the currently-stored string.
@@ -4376,6 +4767,7 @@ appending to the currently-stored string.
Found in file sv.c
=item sv_grow
+X<sv_grow>
Expands the character buffer in the SV. If necessary, uses C<sv_unref> and
upgrades the SV to C<SVt_PV>. Returns a pointer to the character buffer.
@@ -4387,6 +4779,7 @@ Use the C<SvGROW> wrapper instead.
Found in file sv.c
=item sv_inc
+X<sv_inc>
Auto-increment of the value in the SV, doing string to numeric conversion
if necessary. Handles 'get' magic.
@@ -4397,6 +4790,7 @@ if necessary. Handles 'get' magic.
Found in file sv.c
=item sv_insert
+X<sv_insert>
Inserts a string at the specified offset/length within the SV. Similar to
the Perl substr() function.
@@ -4407,6 +4801,7 @@ the Perl substr() function.
Found in file sv.c
=item sv_isa
+X<sv_isa>
Returns a boolean indicating whether the SV is blessed into the specified
class. This does not check for subtypes; use C<sv_derived_from> to verify
@@ -4418,6 +4813,7 @@ an inheritance relationship.
Found in file sv.c
=item sv_isobject
+X<sv_isobject>
Returns a boolean indicating whether the SV is an RV pointing to a blessed
object. If the SV is not an RV, or if the object is not blessed, then this
@@ -4429,6 +4825,7 @@ will return false.
Found in file sv.c
=item sv_iv
+X<sv_iv>
A private implementation of the C<SvIVx> macro for compilers which can't
cope with complex macro expressions. Always use the macro instead.
@@ -4439,6 +4836,7 @@ cope with complex macro expressions. Always use the macro instead.
Found in file sv.c
=item sv_len
+X<sv_len>
Returns the length of the string in the SV. Handles magic and type
coercion. See also C<SvCUR>, which gives raw access to the xpv_cur slot.
@@ -4449,6 +4847,7 @@ coercion. See also C<SvCUR>, which gives raw access to the xpv_cur slot.
Found in file sv.c
=item sv_len_utf8
+X<sv_len_utf8>
Returns the number of characters in the string in an SV, counting wide
UTF-8 bytes as a single character. Handles magic and type coercion.
@@ -4459,6 +4858,7 @@ UTF-8 bytes as a single character. Handles magic and type coercion.
Found in file sv.c
=item sv_magic
+X<sv_magic>
Adds magic to an SV. First upgrades C<sv> to type C<SVt_PVMG> if necessary,
then adds a new magic item of type C<how> to the head of the magic list.
@@ -4475,6 +4875,7 @@ to add more than one instance of the same 'how'.
Found in file sv.c
=item sv_magicext
+X<sv_magicext>
Adds magic to an SV, upgrading it if necessary. Applies the
supplied vtable and returns a pointer to the magic added.
@@ -4496,6 +4897,7 @@ to contain an C<SV*> and is stored as-is with its REFCNT incremented.
Found in file sv.c
=item sv_mortalcopy
+X<sv_mortalcopy>
Creates a new SV which is a copy of the original SV (using C<sv_setsv>).
The new SV is marked as mortal. It will be destroyed "soon", either by an
@@ -4508,6 +4910,7 @@ statement boundaries. See also C<sv_newmortal> and C<sv_2mortal>.
Found in file sv.c
=item sv_newmortal
+X<sv_newmortal>
Creates a new null SV which is mortal. The reference count of the SV is
set to 1. It will be destroyed "soon", either by an explicit call to
@@ -4520,6 +4923,7 @@ See also C<sv_mortalcopy> and C<sv_2mortal>.
Found in file sv.c
=item sv_newref
+X<sv_newref>
Increment an SV's reference count. Use the C<SvREFCNT_inc()> wrapper
instead.
@@ -4530,6 +4934,7 @@ instead.
Found in file sv.c
=item sv_nv
+X<sv_nv>
A private implementation of the C<SvNVx> macro for compilers which can't
cope with complex macro expressions. Always use the macro instead.
@@ -4540,6 +4945,7 @@ cope with complex macro expressions. Always use the macro instead.
Found in file sv.c
=item sv_pos_b2u
+X<sv_pos_b2u>
Converts the value pointed to by offsetp from a count of bytes from the
start of the string, to a count of the equivalent number of UTF-8 chars.
@@ -4551,6 +4957,7 @@ Handles magic and type coercion.
Found in file sv.c
=item sv_pos_u2b
+X<sv_pos_u2b>
Converts the value pointed to by offsetp from a count of UTF-8 chars from
the start of the string, to a count of the equivalent number of bytes; if
@@ -4564,6 +4971,7 @@ type coercion.
Found in file sv.c
=item sv_pv
+X<sv_pv>
Use the C<SvPV_nolen> macro instead
@@ -4573,6 +4981,7 @@ Use the C<SvPV_nolen> macro instead
Found in file sv.c
=item sv_pvbyte
+X<sv_pvbyte>
Use C<SvPVbyte_nolen> instead.
@@ -4582,6 +4991,7 @@ Use C<SvPVbyte_nolen> instead.
Found in file sv.c
=item sv_pvbyten
+X<sv_pvbyten>
A private implementation of the C<SvPVbyte> macro for compilers
which can't cope with complex macro expressions. Always use the macro
@@ -4593,6 +5003,7 @@ instead.
Found in file sv.c
=item sv_pvbyten_force
+X<sv_pvbyten_force>
A private implementation of the C<SvPVbytex_force> macro for compilers
which can't cope with complex macro expressions. Always use the macro
@@ -4604,6 +5015,7 @@ instead.
Found in file sv.c
=item sv_pvn
+X<sv_pvn>
A private implementation of the C<SvPV> macro for compilers which can't
cope with complex macro expressions. Always use the macro instead.
@@ -4614,6 +5026,7 @@ cope with complex macro expressions. Always use the macro instead.
Found in file sv.c
=item sv_pvn_force
+X<sv_pvn_force>
Get a sensible string out of the SV somehow.
A private implementation of the C<SvPV_force> macro for compilers which
@@ -4625,6 +5038,7 @@ can't cope with complex macro expressions. Always use the macro instead.
Found in file sv.c
=item sv_pvn_force_flags
+X<sv_pvn_force_flags>
Get a sensible string out of the SV somehow.
If C<flags> has C<SV_GMAGIC> bit set, will C<mg_get> on C<sv> if
@@ -4639,6 +5053,7 @@ C<SvPV_force> and C<SvPV_force_nomg>
Found in file sv.c
=item sv_pvutf8
+X<sv_pvutf8>
Use the C<SvPVutf8_nolen> macro instead
@@ -4648,6 +5063,7 @@ Use the C<SvPVutf8_nolen> macro instead
Found in file sv.c
=item sv_pvutf8n
+X<sv_pvutf8n>
A private implementation of the C<SvPVutf8> macro for compilers
which can't cope with complex macro expressions. Always use the macro
@@ -4659,6 +5075,7 @@ instead.
Found in file sv.c
=item sv_pvutf8n_force
+X<sv_pvutf8n_force>
A private implementation of the C<SvPVutf8_force> macro for compilers
which can't cope with complex macro expressions. Always use the macro
@@ -4670,6 +5087,7 @@ instead.
Found in file sv.c
=item sv_reftype
+X<sv_reftype>
Returns a string describing what the SV is a reference to.
@@ -4679,6 +5097,7 @@ Returns a string describing what the SV is a reference to.
Found in file sv.c
=item sv_replace
+X<sv_replace>
Make the first argument a copy of the second, then delete the original.
The target SV physically takes over ownership of the body of the source SV
@@ -4693,6 +5112,7 @@ time you'll want to use C<sv_setsv> or one of its many macro front-ends.
Found in file sv.c
=item sv_report_used
+X<sv_report_used>
Dump the contents of all SVs not yet freed. (Debugging aid).
@@ -4702,6 +5122,7 @@ Dump the contents of all SVs not yet freed. (Debugging aid).
Found in file sv.c
=item sv_reset
+X<sv_reset>
Underlying implementation for the C<reset> Perl function.
Note that the perl-level function is vaguely deprecated.
@@ -4712,6 +5133,7 @@ Note that the perl-level function is vaguely deprecated.
Found in file sv.c
=item sv_rvweaken
+X<sv_rvweaken>
Weaken a reference: set the C<SvWEAKREF> flag on this RV; give the
referred-to SV C<PERL_MAGIC_backref> magic if it hasn't already; and
@@ -4724,6 +5146,7 @@ associated with that magic.
Found in file sv.c
=item sv_setiv
+X<sv_setiv>
Copies an integer into the given SV, upgrading first if necessary.
Does not handle 'set' magic. See also C<sv_setiv_mg>.
@@ -4734,6 +5157,7 @@ Does not handle 'set' magic. See also C<sv_setiv_mg>.
Found in file sv.c
=item sv_setiv_mg
+X<sv_setiv_mg>
Like C<sv_setiv>, but also handles 'set' magic.
@@ -4743,6 +5167,7 @@ Like C<sv_setiv>, but also handles 'set' magic.
Found in file sv.c
=item sv_setnv
+X<sv_setnv>
Copies a double into the given SV, upgrading first if necessary.
Does not handle 'set' magic. See also C<sv_setnv_mg>.
@@ -4753,6 +5178,7 @@ Does not handle 'set' magic. See also C<sv_setnv_mg>.
Found in file sv.c
=item sv_setnv_mg
+X<sv_setnv_mg>
Like C<sv_setnv>, but also handles 'set' magic.
@@ -4762,6 +5188,7 @@ Like C<sv_setnv>, but also handles 'set' magic.
Found in file sv.c
=item sv_setpv
+X<sv_setpv>
Copies a string into an SV. The string must be null-terminated. Does not
handle 'set' magic. See C<sv_setpv_mg>.
@@ -4772,6 +5199,7 @@ handle 'set' magic. See C<sv_setpv_mg>.
Found in file sv.c
=item sv_setpvf
+X<sv_setpvf>
Works like C<sv_catpvf> but copies the text into the SV instead of
appending it. Does not handle 'set' magic. See C<sv_setpvf_mg>.
@@ -4782,6 +5210,7 @@ appending it. Does not handle 'set' magic. See C<sv_setpvf_mg>.
Found in file sv.c
=item sv_setpvf_mg
+X<sv_setpvf_mg>
Like C<sv_setpvf>, but also handles 'set' magic.
@@ -4791,6 +5220,7 @@ Like C<sv_setpvf>, but also handles 'set' magic.
Found in file sv.c
=item sv_setpviv
+X<sv_setpviv>
Copies an integer into the given SV, also updating its string value.
Does not handle 'set' magic. See C<sv_setpviv_mg>.
@@ -4801,6 +5231,7 @@ Does not handle 'set' magic. See C<sv_setpviv_mg>.
Found in file sv.c
=item sv_setpviv_mg
+X<sv_setpviv_mg>
Like C<sv_setpviv>, but also handles 'set' magic.
@@ -4810,6 +5241,7 @@ Like C<sv_setpviv>, but also handles 'set' magic.
Found in file sv.c
=item sv_setpvn
+X<sv_setpvn>
Copies a string into an SV. The C<len> parameter indicates the number of
bytes to be copied. If the C<ptr> argument is NULL the SV will become
@@ -4821,6 +5253,7 @@ undefined. Does not handle 'set' magic. See C<sv_setpvn_mg>.
Found in file sv.c
=item sv_setpvn_mg
+X<sv_setpvn_mg>
Like C<sv_setpvn>, but also handles 'set' magic.
@@ -4830,6 +5263,7 @@ Like C<sv_setpvn>, but also handles 'set' magic.
Found in file sv.c
=item sv_setpv_mg
+X<sv_setpv_mg>
Like C<sv_setpv>, but also handles 'set' magic.
@@ -4839,6 +5273,7 @@ Like C<sv_setpv>, but also handles 'set' magic.
Found in file sv.c
=item sv_setref_iv
+X<sv_setref_iv>
Copies an integer into a new SV, optionally blessing the SV. The C<rv>
argument will be upgraded to an RV. That RV will be modified to point to
@@ -4852,6 +5287,7 @@ will have a reference count of 1, and the RV will be returned.
Found in file sv.c
=item sv_setref_nv
+X<sv_setref_nv>
Copies a double into a new SV, optionally blessing the SV. The C<rv>
argument will be upgraded to an RV. That RV will be modified to point to
@@ -4865,6 +5301,7 @@ will have a reference count of 1, and the RV will be returned.
Found in file sv.c
=item sv_setref_pv
+X<sv_setref_pv>
Copies a pointer into a new SV, optionally blessing the SV. The C<rv>
argument will be upgraded to an RV. That RV will be modified to point to
@@ -4884,6 +5321,7 @@ Note that C<sv_setref_pvn> copies the string while this copies the pointer.
Found in file sv.c
=item sv_setref_pvn
+X<sv_setref_pvn>
Copies a string into a new SV, optionally blessing the SV. The length of the
string must be specified with C<n>. The C<rv> argument will be upgraded to
@@ -4900,6 +5338,7 @@ Note that C<sv_setref_pv> copies the pointer while this copies the string.
Found in file sv.c
=item sv_setref_uv
+X<sv_setref_uv>
Copies an unsigned integer into a new SV, optionally blessing the SV. The C<rv>
argument will be upgraded to an RV. That RV will be modified to point to
@@ -4913,6 +5352,7 @@ will have a reference count of 1, and the RV will be returned.
Found in file sv.c
=item sv_setsv
+X<sv_setsv>
Copies the contents of the source SV C<ssv> into the destination SV
C<dsv>. The source SV may be destroyed if it is mortal, so don't use this
@@ -4930,6 +5370,7 @@ C<SvSetMagicSV_nosteal>.
Found in file sv.c
=item sv_setsv_flags
+X<sv_setsv_flags>
Copies the contents of the source SV C<ssv> into the destination SV
C<dsv>. The source SV may be destroyed if it is mortal, so don't use this
@@ -4954,6 +5395,7 @@ copy-ish functions and macros use this underneath.
Found in file sv.c
=item sv_setsv_mg
+X<sv_setsv_mg>
Like C<sv_setsv>, but also handles 'set' magic.
@@ -4963,6 +5405,7 @@ Like C<sv_setsv>, but also handles 'set' magic.
Found in file sv.c
=item sv_setsv_nomg
+X<sv_setsv_nomg>
Like C<sv_setsv> but doesn't process magic.
@@ -4972,6 +5415,7 @@ Like C<sv_setsv> but doesn't process magic.
Found in file sv.h
=item sv_setuv
+X<sv_setuv>
Copies an unsigned integer into the given SV, upgrading first if necessary.
Does not handle 'set' magic. See also C<sv_setuv_mg>.
@@ -4982,6 +5426,7 @@ Does not handle 'set' magic. See also C<sv_setuv_mg>.
Found in file sv.c
=item sv_setuv_mg
+X<sv_setuv_mg>
Like C<sv_setuv>, but also handles 'set' magic.
@@ -4991,6 +5436,7 @@ Like C<sv_setuv>, but also handles 'set' magic.
Found in file sv.c
=item sv_taint
+X<sv_taint>
Taint an SV. Use C<SvTAINTED_on> instead.
void sv_taint(SV* sv)
@@ -4999,6 +5445,7 @@ Taint an SV. Use C<SvTAINTED_on> instead.
Found in file sv.c
=item sv_tainted
+X<sv_tainted>
Test an SV for taintedness. Use C<SvTAINTED> instead.
bool sv_tainted(SV* sv)
@@ -5007,6 +5454,7 @@ Test an SV for taintedness. Use C<SvTAINTED> instead.
Found in file sv.c
=item sv_true
+X<sv_true>
Returns true if the SV has a true value by Perl's rules.
Use the C<SvTRUE> macro instead, which may call C<sv_true()> or may
@@ -5018,6 +5466,7 @@ instead use an in-line version.
Found in file sv.c
=item sv_unmagic
+X<sv_unmagic>
Removes all magic of type C<type> from an SV.
@@ -5027,6 +5476,7 @@ Removes all magic of type C<type> from an SV.
Found in file sv.c
=item sv_unref
+X<sv_unref>
Unsets the RV status of the SV, and decrements the reference count of
whatever was being referenced by the RV. This can almost be thought of
@@ -5039,6 +5489,7 @@ being zero. See C<SvROK_off>.
Found in file sv.c
=item sv_unref_flags
+X<sv_unref_flags>
Unsets the RV status of the SV, and decrements the reference count of
whatever was being referenced by the RV. This can almost be thought of
@@ -5054,6 +5505,7 @@ See C<SvROK_off>.
Found in file sv.c
=item sv_untaint
+X<sv_untaint>
Untaint an SV. Use C<SvTAINTED_off> instead.
void sv_untaint(SV* sv)
@@ -5062,6 +5514,7 @@ Untaint an SV. Use C<SvTAINTED_off> instead.
Found in file sv.c
=item sv_upgrade
+X<sv_upgrade>
Upgrade an SV to a more complex form. Generally adds a new body type to the
SV, then copies across as much information as possible from the old body.
@@ -5073,6 +5526,7 @@ You generally want to use the C<SvUPGRADE> macro wrapper. See also C<svtype>.
Found in file sv.c
=item sv_usepvn
+X<sv_usepvn>
Tells an SV to use C<ptr> to find its string value. Normally the string is
stored inside the SV but sv_usepvn allows the SV to use an outside string.
@@ -5088,6 +5542,7 @@ See C<sv_usepvn_mg>.
Found in file sv.c
=item sv_usepvn_mg
+X<sv_usepvn_mg>
Like C<sv_usepvn>, but also handles 'set' magic.
@@ -5097,6 +5552,7 @@ Like C<sv_usepvn>, but also handles 'set' magic.
Found in file sv.c
=item sv_utf8_decode
+X<sv_utf8_decode>
If the PV of the SV is an octet sequence in UTF-8
and contains a multiple-byte character, the C<SvUTF8> flag is turned on
@@ -5113,6 +5569,7 @@ removed without notice.
Found in file sv.c
=item sv_utf8_downgrade
+X<sv_utf8_downgrade>
Attempts to convert the PV of an SV from characters to bytes.
If the PV contains a character beyond byte, this conversion will fail;
@@ -5131,6 +5588,7 @@ removed without notice.
Found in file sv.c
=item sv_utf8_encode
+X<sv_utf8_encode>
Converts the PV of an SV to UTF-8, but then turns the C<SvUTF8>
flag off so that it looks like octets again.
@@ -5141,6 +5599,7 @@ flag off so that it looks like octets again.
Found in file sv.c
=item sv_utf8_upgrade
+X<sv_utf8_upgrade>
Converts the PV of an SV to its UTF-8-encoded form.
Forces the SV to string form if it is not already.
@@ -5156,6 +5615,7 @@ use the Encode extension for that.
Found in file sv.c
=item sv_utf8_upgrade_flags
+X<sv_utf8_upgrade_flags>
Converts the PV of an SV to its UTF-8-encoded form.
Forces the SV to string form if it is not already.
@@ -5173,6 +5633,7 @@ use the Encode extension for that.
Found in file sv.c
=item sv_uv
+X<sv_uv>
A private implementation of the C<SvUVx> macro for compilers which can't
cope with complex macro expressions. Always use the macro instead.
@@ -5183,6 +5644,7 @@ cope with complex macro expressions. Always use the macro instead.
Found in file sv.c
=item sv_vcatpvf
+X<sv_vcatpvf>
Processes its arguments like C<vsprintf> and appends the formatted output
to an SV. Does not handle 'set' magic. See C<sv_vcatpvf_mg>.
@@ -5195,6 +5657,7 @@ Usually used via its frontend C<sv_catpvf>.
Found in file sv.c
=item sv_vcatpvfn
+X<sv_vcatpvfn>
Processes its arguments like C<vsprintf> and appends the formatted output
to an SV. Uses an array of SVs if the C style variable argument list is
@@ -5210,6 +5673,7 @@ Usually used via one of its frontends C<sv_vcatpvf> and C<sv_vcatpvf_mg>.
Found in file sv.c
=item sv_vcatpvf_mg
+X<sv_vcatpvf_mg>
Like C<sv_vcatpvf>, but also handles 'set' magic.
@@ -5221,6 +5685,7 @@ Usually used via its frontend C<sv_catpvf_mg>.
Found in file sv.c
=item sv_vsetpvf
+X<sv_vsetpvf>
Works like C<sv_vcatpvf> but copies the text into the SV instead of
appending it. Does not handle 'set' magic. See C<sv_vsetpvf_mg>.
@@ -5233,6 +5698,7 @@ Usually used via its frontend C<sv_setpvf>.
Found in file sv.c
=item sv_vsetpvfn
+X<sv_vsetpvfn>
Works like C<sv_vcatpvfn> but copies the text into the SV instead of
appending it.
@@ -5245,6 +5711,7 @@ Usually used via one of its frontends C<sv_vsetpvf> and C<sv_vsetpvf_mg>.
Found in file sv.c
=item sv_vsetpvf_mg
+X<sv_vsetpvf_mg>
Like C<sv_vsetpvf>, but also handles 'set' magic.
@@ -5263,6 +5730,7 @@ Found in file sv.c
=over 8
=item bytes_from_utf8
+X<bytes_from_utf8>
Converts a string C<s> of length C<len> from UTF-8 into byte encoding.
Unlike C<utf8_to_bytes> but like C<bytes_to_utf8>, returns a pointer to
@@ -5280,6 +5748,7 @@ removed without notice.
Found in file utf8.c
=item bytes_to_utf8
+X<bytes_to_utf8>
Converts a string C<s> of length C<len> from ASCII into UTF-8 encoding.
Returns a pointer to the newly-created string, and sets C<len> to
@@ -5297,6 +5766,7 @@ removed without notice.
Found in file utf8.c
=item ibcmp_utf8
+X<ibcmp_utf8>
Return true if the strings s1 and s2 differ case-insensitively, false
if not (if they are equal case-insensitively). If u1 is true, the
@@ -5325,6 +5795,7 @@ http://www.unicode.org/unicode/reports/tr21/ (Case Mappings).
Found in file utf8.c
=item is_utf8_char
+X<is_utf8_char>
Tests if some arbitrary number of bytes begins in a valid UTF-8
character. Note that an INVARIANT (i.e. ASCII) character is a valid
@@ -5337,6 +5808,7 @@ will be returned if it is valid, otherwise 0.
Found in file utf8.c
=item is_utf8_string
+X<is_utf8_string>
Returns true if first C<len> bytes of the given string form a valid
UTF-8 string, false otherwise. Note that 'a valid UTF-8 string' does
@@ -5351,6 +5823,7 @@ See also is_utf8_string_loclen() and is_utf8_string_loc().
Found in file utf8.c
=item is_utf8_string_loc
+X<is_utf8_string_loc>
Like is_ut8_string() but stores the location of the failure (in the
case of "utf8ness failure") or the location s+len (in the case of
@@ -5364,6 +5837,7 @@ See also is_utf8_string_loclen() and is_utf8_string().
Found in file utf8.c
=item is_utf8_string_loclen
+X<is_utf8_string_loclen>
Like is_ut8_string() but stores the location of the failure (in the
case of "utf8ness failure") or the location s+len (in the case of
@@ -5378,6 +5852,7 @@ See also is_utf8_string_loc() and is_utf8_string().
Found in file utf8.c
=item pv_uni_display
+X<pv_uni_display>
Build to the scalar dsv a displayable version of the string spv,
length len, the displayable version being at most pvlim bytes long
@@ -5398,6 +5873,7 @@ The pointer to the PV of the dsv is returned.
Found in file utf8.c
=item sv_cat_decode
+X<sv_cat_decode>
The encoding is assumed to be an Encode object, the PV of the ssv is
assumed to be octets in that encoding and decoding the input starts
@@ -5415,6 +5891,7 @@ Returns TRUE if the terminator was found, else returns FALSE.
Found in file sv.c
=item sv_recode_to_utf8
+X<sv_recode_to_utf8>
The encoding is assumed to be an Encode object, on entry the PV
of the sv is assumed to be octets in that encoding, and the sv
@@ -5433,6 +5910,7 @@ The PV of the sv is returned.
Found in file sv.c
=item sv_uni_display
+X<sv_uni_display>
Build to the scalar dsv a displayable version of the scalar sv,
the displayable version being at most pvlim bytes long
@@ -5448,6 +5926,7 @@ The pointer to the PV of the dsv is returned.
Found in file utf8.c
=item to_utf8_case
+X<to_utf8_case>
The "p" contains the pointer to the UTF-8 string encoding
the character that is being converted.
@@ -5475,6 +5954,7 @@ The "normal" is a string like "ToLower" which means the swash
Found in file utf8.c
=item to_utf8_fold
+X<to_utf8_fold>
Convert the UTF-8 encoded character at p to its foldcase version and
store that in UTF-8 in ustrp and its length in bytes in lenp. Note
@@ -5491,6 +5971,7 @@ The first character of the foldcased version is returned
Found in file utf8.c
=item to_utf8_lower
+X<to_utf8_lower>
Convert the UTF-8 encoded character at p to its lowercase version and
store that in UTF-8 in ustrp and its length in bytes in lenp. Note
@@ -5506,6 +5987,7 @@ The first character of the lowercased version is returned
Found in file utf8.c
=item to_utf8_title
+X<to_utf8_title>
Convert the UTF-8 encoded character at p to its titlecase version and
store that in UTF-8 in ustrp and its length in bytes in lenp. Note
@@ -5521,6 +6003,7 @@ The first character of the titlecased version is returned
Found in file utf8.c
=item to_utf8_upper
+X<to_utf8_upper>
Convert the UTF-8 encoded character at p to its uppercase version and
store that in UTF-8 in ustrp and its length in bytes in lenp. Note
@@ -5536,6 +6019,7 @@ The first character of the uppercased version is returned
Found in file utf8.c
=item utf8n_to_uvchr
+X<utf8n_to_uvchr>
Returns the native character value of the first character in the string C<s>
which is assumed to be in UTF-8 encoding; C<retlen> will be set to the
@@ -5549,6 +6033,7 @@ Allows length and flags to be passed to low level routine.
Found in file utf8.c
=item utf8n_to_uvuni
+X<utf8n_to_uvuni>
Bottom level UTF-8 decode routine.
Returns the unicode code point value of the first character in the string C<s>
@@ -5574,6 +6059,7 @@ Most code should use utf8_to_uvchr() rather than call this directly.
Found in file utf8.c
=item utf8_distance
+X<utf8_distance>
Returns the number of UTF-8 characters between the UTF-8 pointers C<a>
and C<b>.
@@ -5587,6 +6073,7 @@ same UTF-8 buffer.
Found in file utf8.c
=item utf8_hop
+X<utf8_hop>
Return the UTF-8 pointer C<s> displaced by C<off> characters, either
forward or backward.
@@ -5601,6 +6088,7 @@ on the first byte of character or just after the last byte of a character.
Found in file utf8.c
=item utf8_length
+X<utf8_length>
Return the length of the UTF-8 char encoded string C<s> in characters.
Stops at C<e> (inclusive). If C<e E<lt> s> or if the scan would end
@@ -5612,6 +6100,7 @@ up past C<e>, croaks.
Found in file utf8.c
=item utf8_to_bytes
+X<utf8_to_bytes>
Converts a string C<s> of length C<len> from UTF-8 into byte encoding.
Unlike C<bytes_to_utf8>, this over-writes the original string, and
@@ -5627,6 +6116,7 @@ removed without notice.
Found in file utf8.c
=item utf8_to_uvchr
+X<utf8_to_uvchr>
Returns the native character value of the first character in the string C<s>
which is assumed to be in UTF-8 encoding; C<retlen> will be set to the
@@ -5641,6 +6131,7 @@ returned and retlen is set, if possible, to -1.
Found in file utf8.c
=item utf8_to_uvuni
+X<utf8_to_uvuni>
Returns the Unicode code point of the first character in the string C<s>
which is assumed to be in UTF-8 encoding; C<retlen> will be set to the
@@ -5658,6 +6149,7 @@ returned and retlen is set, if possible, to -1.
Found in file utf8.c
=item uvchr_to_utf8
+X<uvchr_to_utf8>
Adds the UTF-8 representation of the Native codepoint C<uv> to the end
of the string C<d>; C<d> should be have at least C<UTF8_MAXBYTES+1> free
@@ -5676,6 +6168,7 @@ is the recommended wide native character-aware way of saying
Found in file utf8.c
=item uvuni_to_utf8_flags
+X<uvuni_to_utf8_flags>
Adds the UTF-8 representation of the Unicode codepoint C<uv> to the end
of the string C<d>; C<d> should be have at least C<UTF8_MAXBYTES+1> free
@@ -5709,6 +6202,7 @@ Found in file utf8.c
=over 8
=item ax
+X<ax>
Variable which is setup by C<xsubpp> to indicate the stack base offset,
used by the C<ST>, C<XSprePUSH> and C<XSRETURN> macros. The C<dMARK> macro
@@ -5720,6 +6214,7 @@ must be called prior to setup the C<MARK> variable.
Found in file XSUB.h
=item CLASS
+X<CLASS>
Variable which is setup by C<xsubpp> to indicate the
class name for a C++ XS constructor. This is always a C<char*>. See C<THIS>.
@@ -5730,6 +6225,7 @@ class name for a C++ XS constructor. This is always a C<char*>. See C<THIS>.
Found in file XSUB.h
=item dAX
+X<dAX>
Sets up the C<ax> variable.
This is usually handled automatically by C<xsubpp> by calling C<dXSARGS>.
@@ -5740,6 +6236,7 @@ This is usually handled automatically by C<xsubpp> by calling C<dXSARGS>.
Found in file XSUB.h
=item dAXMARK
+X<dAXMARK>
Sets up the C<ax> variable and stack marker variable C<mark>.
This is usually handled automatically by C<xsubpp> by calling C<dXSARGS>.
@@ -5750,6 +6247,7 @@ This is usually handled automatically by C<xsubpp> by calling C<dXSARGS>.
Found in file XSUB.h
=item dITEMS
+X<dITEMS>
Sets up the C<items> variable.
This is usually handled automatically by C<xsubpp> by calling C<dXSARGS>.
@@ -5760,6 +6258,7 @@ This is usually handled automatically by C<xsubpp> by calling C<dXSARGS>.
Found in file XSUB.h
=item dUNDERBAR
+X<dUNDERBAR>
Sets up the C<padoff_du> variable for an XSUB that wishes to use
C<UNDERBAR>.
@@ -5770,6 +6269,7 @@ C<UNDERBAR>.
Found in file XSUB.h
=item dXSARGS
+X<dXSARGS>
Sets up stack and mark pointers for an XSUB, calling dSP and dMARK.
Sets up the C<ax> and C<items> variables by calling C<dAX> and C<dITEMS>.
@@ -5781,6 +6281,7 @@ This is usually handled automatically by C<xsubpp>.
Found in file XSUB.h
=item dXSI32
+X<dXSI32>
Sets up the C<ix> variable for an XSUB which has aliases. This is usually
handled automatically by C<xsubpp>.
@@ -5791,6 +6292,7 @@ handled automatically by C<xsubpp>.
Found in file XSUB.h
=item items
+X<items>
Variable which is setup by C<xsubpp> to indicate the number of
items on the stack. See L<perlxs/"Variable-length Parameter Lists">.
@@ -5801,6 +6303,7 @@ items on the stack. See L<perlxs/"Variable-length Parameter Lists">.
Found in file XSUB.h
=item ix
+X<ix>
Variable which is setup by C<xsubpp> to indicate which of an
XSUB's aliases was used to invoke it. See L<perlxs/"The ALIAS: Keyword">.
@@ -5811,6 +6314,7 @@ XSUB's aliases was used to invoke it. See L<perlxs/"The ALIAS: Keyword">.
Found in file XSUB.h
=item newXSproto
+X<newXSproto>
Used by C<xsubpp> to hook up XSUBs as Perl subs. Adds Perl prototypes to
the subs.
@@ -5819,6 +6323,7 @@ the subs.
Found in file XSUB.h
=item RETVAL
+X<RETVAL>
Variable which is setup by C<xsubpp> to hold the return value for an
XSUB. This is always the proper type for the XSUB. See
@@ -5830,6 +6335,7 @@ L<perlxs/"The RETVAL Variable">.
Found in file XSUB.h
=item ST
+X<ST>
Used to access elements on the XSUB's stack.
@@ -5839,6 +6345,7 @@ Used to access elements on the XSUB's stack.
Found in file XSUB.h
=item THIS
+X<THIS>
Variable which is setup by C<xsubpp> to designate the object in a C++
XSUB. This is always the proper type for the C++ object. See C<CLASS> and
@@ -5850,6 +6357,7 @@ L<perlxs/"Using XS With C++">.
Found in file XSUB.h
=item UNDERBAR
+X<UNDERBAR>
The SV* corresponding to the $_ variable. Works even if there
is a lexical $_ in scope.
@@ -5858,6 +6366,7 @@ is a lexical $_ in scope.
Found in file XSUB.h
=item XS
+X<XS>
Macro to declare an XSUB and its C parameter list. This is handled by
C<xsubpp>.
@@ -5866,6 +6375,7 @@ C<xsubpp>.
Found in file XSUB.h
=item XS_VERSION
+X<XS_VERSION>
The version identifier for an XS module. This is usually
handled automatically by C<ExtUtils::MakeMaker>. See C<XS_VERSION_BOOTCHECK>.
@@ -5874,6 +6384,7 @@ handled automatically by C<ExtUtils::MakeMaker>. See C<XS_VERSION_BOOTCHECK>.
Found in file XSUB.h
=item XS_VERSION_BOOTCHECK
+X<XS_VERSION_BOOTCHECK>
Macro to verify that a PM module's $VERSION variable matches the XS
module's C<XS_VERSION> variable. This is usually handled automatically by
@@ -5892,6 +6403,7 @@ Found in file XSUB.h
=over 8
=item croak
+X<croak>
This is the XSUB-writer's interface to Perl's C<die> function.
Normally call this function the same way you call the C C<printf>
@@ -5911,6 +6423,7 @@ C<$@> and then pass C<Nullch> to croak():
Found in file util.c
=item warn
+X<warn>
This is the XSUB-writer's interface to Perl's C<warn> function. Call this
function the same way you call the C C<printf> function. See C<croak>.
diff --git a/pod/perlintern.pod b/pod/perlintern.pod
index e71e3a373b..ee9de89269 100644
--- a/pod/perlintern.pod
+++ b/pod/perlintern.pod
@@ -4,6 +4,7 @@ perlintern - autogenerated documentation of purely B<internal>
Perl functions
=head1 DESCRIPTION
+X<internal Perl functions> X<interpreter functions>
This file is the autogenerated documentation of functions in the
Perl interpreter that are documented using Perl's internal documentation
@@ -16,6 +17,7 @@ B<they are not for use in extensions>!
=over 8
=item CvWEAKOUTSIDE
+X<CvWEAKOUTSIDE>
Each CV has a pointer, C<CvOUTSIDE()>, to its lexically enclosing
CV (if any). Because pointers to anonymous sub prototypes are
@@ -78,6 +80,7 @@ Found in file cv.h
=over 8
=item CX_CURPAD_SAVE
+X<CX_CURPAD_SAVE>
Save the current pad in the given context block structure.
@@ -87,6 +90,7 @@ Save the current pad in the given context block structure.
Found in file pad.h
=item CX_CURPAD_SV
+X<CX_CURPAD_SV>
Access the SV at offset po in the saved current pad in the given
context block structure (can be used as an lvalue).
@@ -96,16 +100,18 @@ context block structure (can be used as an lvalue).
=for hackers
Found in file pad.h
-=item PAD_BASE_SV
+=item PAD_BASE_SV
+X<PAD_BASE_SV>
Get the value from slot C<po> in the base (DEPTH=1) pad of a padlist
- SV * PAD_BASE_SV (PADLIST padlist, PADOFFSET po)
+ SV * PAD_BASE_SV(PADLIST padlist, PADOFFSET po)
=for hackers
Found in file pad.h
=item PAD_CLONE_VARS
+X<PAD_CLONE_VARS>
|CLONE_PARAMS* param
Clone the state variables associated with running and compiling pads.
@@ -116,6 +122,7 @@ Clone the state variables associated with running and compiling pads.
Found in file pad.h
=item PAD_COMPNAME_FLAGS
+X<PAD_COMPNAME_FLAGS>
Return the flags for the current compiling pad name
at offset C<po>. Assumes a valid slot entry.
@@ -126,6 +133,7 @@ at offset C<po>. Assumes a valid slot entry.
Found in file pad.h
=item PAD_COMPNAME_GEN
+X<PAD_COMPNAME_GEN>
The generation number of the name at offset C<po> in the current
compiling pad (lvalue). Note that C<SvCUR> is hijacked for this purpose.
@@ -136,6 +144,7 @@ compiling pad (lvalue). Note that C<SvCUR> is hijacked for this purpose.
Found in file pad.h
=item PAD_COMPNAME_GEN_set
+X<PAD_COMPNAME_GEN_set>
Sets the generation number of the name at offset C<po> in the current
ling pad (lvalue) to C<gen>. Note that C<SvCUR_set> is hijacked for this purpose.
@@ -146,6 +155,7 @@ ling pad (lvalue) to C<gen>. Note that C<SvCUR_set> is hijacked for this purpos
Found in file pad.h
=item PAD_COMPNAME_OURSTASH
+X<PAD_COMPNAME_OURSTASH>
Return the stash associated with an C<our> variable.
Assumes the slot entry is a valid C<our> lexical.
@@ -156,6 +166,7 @@ Assumes the slot entry is a valid C<our> lexical.
Found in file pad.h
=item PAD_COMPNAME_PV
+X<PAD_COMPNAME_PV>
Return the name of the current compiling pad name
at offset C<po>. Assumes a valid slot entry.
@@ -166,6 +177,7 @@ at offset C<po>. Assumes a valid slot entry.
Found in file pad.h
=item PAD_COMPNAME_TYPE
+X<PAD_COMPNAME_TYPE>
Return the type (stash) of the current compiling pad name at offset
C<po>. Must be a valid name. Returns null if not typed.
@@ -176,6 +188,7 @@ C<po>. Must be a valid name. Returns null if not typed.
Found in file pad.h
=item PAD_DUP
+X<PAD_DUP>
Clone a padlist.
@@ -185,6 +198,7 @@ Clone a padlist.
Found in file pad.h
=item PAD_RESTORE_LOCAL
+X<PAD_RESTORE_LOCAL>
Restore the old pad saved into the local variable opad by PAD_SAVE_LOCAL()
@@ -194,6 +208,7 @@ Restore the old pad saved into the local variable opad by PAD_SAVE_LOCAL()
Found in file pad.h
=item PAD_SAVE_LOCAL
+X<PAD_SAVE_LOCAL>
Save the current pad to the local variable opad, then make the
current pad equal to npad
@@ -204,6 +219,7 @@ current pad equal to npad
Found in file pad.h
=item PAD_SAVE_SETNULLPAD
+X<PAD_SAVE_SETNULLPAD>
Save the current pad then set it to null.
@@ -212,16 +228,18 @@ Save the current pad then set it to null.
=for hackers
Found in file pad.h
-=item PAD_SETSV
+=item PAD_SETSV
+X<PAD_SETSV>
Set the slot at offset C<po> in the current pad to C<sv>
- SV * PAD_SETSV (PADOFFSET po, SV* sv)
+ SV * PAD_SETSV(PADOFFSET po, SV* sv)
=for hackers
Found in file pad.h
-=item PAD_SET_CUR
+=item PAD_SET_CUR
+X<PAD_SET_CUR>
Set the current pad to be pad C<n> in the padlist, saving
the previous current pad. NB currently this macro expands to a string too
@@ -231,51 +249,56 @@ long for some compilers, so it's best to replace it with
PAD_SET_CUR_NOSAVE(padlist,n);
- void PAD_SET_CUR (PADLIST padlist, I32 n)
+ void PAD_SET_CUR(PADLIST padlist, I32 n)
=for hackers
Found in file pad.h
-=item PAD_SET_CUR_NOSAVE
+=item PAD_SET_CUR_NOSAVE
+X<PAD_SET_CUR_NOSAVE>
like PAD_SET_CUR, but without the save
- void PAD_SET_CUR_NOSAVE (PADLIST padlist, I32 n)
+ void PAD_SET_CUR_NOSAVE(PADLIST padlist, I32 n)
=for hackers
Found in file pad.h
-=item PAD_SV
+=item PAD_SV
+X<PAD_SV>
Get the value at offset C<po> in the current pad
- void PAD_SV (PADOFFSET po)
+ void PAD_SV(PADOFFSET po)
=for hackers
Found in file pad.h
-=item PAD_SVl
+=item PAD_SVl
+X<PAD_SVl>
Lightweight and lvalue version of C<PAD_SV>.
Get or set the value at offset C<po> in the current pad.
Unlike C<PAD_SV>, does not print diagnostics with -DX.
For internal use only.
- SV * PAD_SVl (PADOFFSET po)
+ SV * PAD_SVl(PADOFFSET po)
=for hackers
Found in file pad.h
-=item SAVECLEARSV
+=item SAVECLEARSV
+X<SAVECLEARSV>
Clear the pointed to pad value on scope exit. (i.e. the runtime action of 'my')
- void SAVECLEARSV (SV **svp)
+ void SAVECLEARSV(SV **svp)
=for hackers
Found in file pad.h
=item SAVECOMPPAD
+X<SAVECOMPPAD>
save PL_comppad and PL_curpad
@@ -288,12 +311,13 @@ save PL_comppad and PL_curpad
=for hackers
Found in file pad.h
-=item SAVEPADSV
+=item SAVEPADSV
+X<SAVEPADSV>
Save a pad slot (used to restore after an iteration)
XXX DAPM it would make more sense to make the arg a PADOFFSET
- void SAVEPADSV (PADOFFSET po)
+ void SAVEPADSV(PADOFFSET po)
=for hackers
Found in file pad.h
@@ -307,6 +331,7 @@ Found in file pad.h
=over 8
=item find_runcv
+X<find_runcv>
Locate the CV corresponding to the currently executing sub or eval.
If db_seqp is non_null, skip CVs that are in the DB package and populate
@@ -327,6 +352,7 @@ Found in file pp_ctl.c
=over 8
=item PL_DBsingle
+X<PL_DBsingle>
When Perl is run in debugging mode, with the B<-d> switch, this SV is a
boolean which indicates whether subs are being single-stepped.
@@ -340,6 +366,7 @@ C<PL_DBsub>.
Found in file intrpvar.h
=item PL_DBsub
+X<PL_DBsub>
When Perl is run in debugging mode, with the B<-d> switch, this GV contains
the SV which holds the name of the sub being debugged. This is the C
@@ -352,6 +379,7 @@ C<PL_DBsingle>.
Found in file intrpvar.h
=item PL_DBtrace
+X<PL_DBtrace>
Trace variable used when Perl is run in debugging mode, with the B<-d>
switch. This is the C variable which corresponds to Perl's $DB::trace
@@ -363,6 +391,7 @@ variable. See C<PL_DBsingle>.
Found in file intrpvar.h
=item PL_dowarn
+X<PL_dowarn>
The C variable which corresponds to Perl's $^W warning variable.
@@ -372,6 +401,7 @@ The C variable which corresponds to Perl's $^W warning variable.
Found in file intrpvar.h
=item PL_last_in_gv
+X<PL_last_in_gv>
The GV which was last used for a filehandle input operation. (C<< <FH> >>)
@@ -381,6 +411,7 @@ The GV which was last used for a filehandle input operation. (C<< <FH> >>)
Found in file thrdvar.h
=item PL_ofs_sv
+X<PL_ofs_sv>
The output field separator - C<$,> in Perl space.
@@ -390,6 +421,7 @@ The output field separator - C<$,> in Perl space.
Found in file thrdvar.h
=item PL_rs
+X<PL_rs>
The input record separator - C<$/> in Perl space.
@@ -406,6 +438,7 @@ Found in file thrdvar.h
=over 8
=item is_gv_magical
+X<is_gv_magical>
Returns C<TRUE> if given the name of a magical GV.
@@ -425,6 +458,7 @@ pointers returned by SvPV.
Found in file gv.c
=item is_gv_magical_sv
+X<is_gv_magical_sv>
Returns C<TRUE> if given the name of a magical GV. Calls is_gv_magical.
@@ -441,6 +475,7 @@ Found in file gv.c
=over 8
=item start_glob
+X<start_glob>
Function called by C<do_readline> to spawn a glob (or do the glob inside
perl on VMS). This code used to be inline, but now perl uses C<File::Glob>
@@ -460,6 +495,7 @@ Found in file doio.c
=over 8
=item mg_localize
+X<mg_localize>
Copy some of the magic from an existing SV to new localized version of
that SV. Container magic (eg %ENV, $1, tie) gets copied, value magic
@@ -478,6 +514,7 @@ Found in file mg.c
=over 8
=item CvPADLIST
+X<CvPADLIST>
CV's can have CvPADLIST(cv) set to point to an AV.
@@ -559,6 +596,7 @@ to be generated in evals, such as
Found in file pad.c
=item cv_clone
+X<cv_clone>
Clone a CV: make a new CV which points to the same code etc, but which
has a newly-created pad built by copying the prototype pad and capturing
@@ -570,6 +608,7 @@ any outer lexicals.
Found in file pad.c
=item cv_dump
+X<cv_dump>
dump the contents of a CV
@@ -579,6 +618,7 @@ dump the contents of a CV
Found in file pad.c
=item do_dump_pad
+X<do_dump_pad>
Dump the contents of a padlist
@@ -588,6 +628,7 @@ Dump the contents of a padlist
Found in file pad.c
=item intro_my
+X<intro_my>
"Introduce" my variables to visible status.
@@ -597,6 +638,7 @@ Found in file pad.c
Found in file pad.c
=item pad_add_anon
+X<pad_add_anon>
Add an anon code entry to the current compiling pad
@@ -606,6 +648,7 @@ Add an anon code entry to the current compiling pad
Found in file pad.c
=item pad_add_name
+X<pad_add_name>
Create a new name and associated PADMY SV in the current pad; return the
offset.
@@ -622,6 +665,7 @@ If fake, it means we're cloning an existing entry
Found in file pad.c
=item pad_alloc
+X<pad_alloc>
Allocate a new my or tmp pad entry. For a my, simply push a null SV onto
the end of PL_comppad, but for a tmp, scan the pad from PL_padix upwards
@@ -633,6 +677,7 @@ for a slot which has no name and no active value.
Found in file pad.c
=item pad_block_start
+X<pad_block_start>
Update the pad compilation state variables on entry to a new block
@@ -642,6 +687,7 @@ Update the pad compilation state variables on entry to a new block
Found in file pad.c
=item pad_check_dup
+X<pad_check_dup>
Check for duplicate declarations: report any of:
* a my in the current scope with the same name;
@@ -655,6 +701,7 @@ C<is_our> indicates that the name to check is an 'our' declaration
Found in file pad.c
=item pad_findlex
+X<pad_findlex>
Find a named lexical anywhere in a chain of nested pads. Add fake entries
in the inner pads if it's found in an outer one.
@@ -679,6 +726,7 @@ the parent pad.
Found in file pad.c
=item pad_findmy
+X<pad_findmy>
Given a lexical name, try to find its offset, first in the current pad,
or failing that, in the pads of any lexically enclosing subs (including
@@ -692,6 +740,7 @@ Returns the offset in the current pad, or NOT_IN_PAD on failure.
Found in file pad.c
=item pad_fixup_inner_anons
+X<pad_fixup_inner_anons>
For any anon CVs in the pad, change CvOUTSIDE of that CV from
old_cv to new_cv if necessary. Needed when a newly-compiled CV has to be
@@ -703,6 +752,7 @@ moved to a pre-existing CV struct.
Found in file pad.c
=item pad_free
+X<pad_free>
Free the SV at offset po in the current pad.
@@ -712,6 +762,7 @@ Free the SV at offset po in the current pad.
Found in file pad.c
=item pad_leavemy
+X<pad_leavemy>
Cleanup at end of scope during compilation: set the max seq number for
lexicals in this scope and warn of any lexicals that never got introduced.
@@ -722,6 +773,7 @@ lexicals in this scope and warn of any lexicals that never got introduced.
Found in file pad.c
=item pad_new
+X<pad_new>
Create a new compiling padlist, saving and updating the various global
vars at the same time as creating the pad itself. The following flags
@@ -737,6 +789,7 @@ can be OR'ed together:
Found in file pad.c
=item pad_push
+X<pad_push>
Push a new pad frame onto the padlist, unless there's already a pad at
this depth, in which case don't bother creating a new one. Then give
@@ -748,6 +801,7 @@ the new pad an @_ in slot zero.
Found in file pad.c
=item pad_reset
+X<pad_reset>
Mark all the current temporaries for reuse
@@ -757,6 +811,7 @@ Mark all the current temporaries for reuse
Found in file pad.c
=item pad_setsv
+X<pad_setsv>
Set the entry at offset po in the current pad to sv.
Use the macro PAD_SETSV() rather than calling this function directly.
@@ -767,6 +822,7 @@ Use the macro PAD_SETSV() rather than calling this function directly.
Found in file pad.c
=item pad_swipe
+X<pad_swipe>
Abandon the tmp in the current pad at offset po and replace with a
new one.
@@ -777,6 +833,7 @@ new one.
Found in file pad.c
=item pad_tidy
+X<pad_tidy>
Tidy up a pad after we've finished compiling it:
* remove most stuff from the pads of anonsub prototypes;
@@ -789,6 +846,7 @@ Tidy up a pad after we've finished compiling it:
Found in file pad.c
=item pad_undef
+X<pad_undef>
Free the padlist associated with a CV.
If parts of it happen to be current, we null the relevant
@@ -812,6 +870,7 @@ Found in file pad.c
=over 8
=item djSP
+X<djSP>
Declare Just C<SP>. This is actually identical to C<dSP>, and declares
a local copy of perl's stack pointer, available via the C<SP> macro.
@@ -824,6 +883,7 @@ old (Perl 5.005) thread model.)
Found in file pp.h
=item LVRET
+X<LVRET>
True if this op will be the return value of an lvalue subroutine
@@ -838,6 +898,7 @@ Found in file pp.h
=over 8
=item find_uninit_var
+X<find_uninit_var>
Find the name of the undefined variable (if any) that caused the operator o
to issue a "Use of uninitialized value" warning.
@@ -859,6 +920,7 @@ PL_comppad/PL_curpad points to the currently executing pad.
Found in file sv.c
=item report_uninit
+X<report_uninit>
Print appropriate "Use of uninitialized variable" warning
@@ -868,6 +930,7 @@ Print appropriate "Use of uninitialized variable" warning
Found in file sv.c
=item sv_add_arena
+X<sv_add_arena>
Given a chunk of memory, link it to the head of the list of arenas,
and split it into a list of free SVs.
@@ -878,6 +941,7 @@ and split it into a list of free SVs.
Found in file sv.c
=item sv_clean_all
+X<sv_clean_all>
Decrement the refcnt of each remaining SV, possibly triggering a
cleanup. This function may have to be called multiple times to free
@@ -889,6 +953,7 @@ SVs which are in complex self-referential hierarchies.
Found in file sv.c
=item sv_clean_objs
+X<sv_clean_objs>
Attempt to destroy all objects not yet freed
@@ -898,6 +963,7 @@ Attempt to destroy all objects not yet freed
Found in file sv.c
=item sv_free_arenas
+X<sv_free_arenas>
Deallocate the memory used by all arenas. Note that all the individual SV
heads and bodies within the arenas must already have been freed.
diff --git a/proto.h b/proto.h
index 2dc1eaf4cf..191f596f86 100644
--- a/proto.h
+++ b/proto.h
@@ -392,7 +392,7 @@ PERL_CALLCONV bool Perl_do_eof(pTHX_ GV* gv)
PERL_CALLCONV bool Perl_do_exec(pTHX_ const char* cmd)
__attribute__nonnull__(pTHX_1);
-#if defined(WIN32) || defined(SYMBIAN)
+#if defined(WIN32) || defined(__SYMBIAN32__)
PERL_CALLCONV int Perl_do_aspawn(pTHX_ SV* really, SV** mark, SV** sp)
__attribute__nonnull__(pTHX_1)
__attribute__nonnull__(pTHX_2)