This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Fix Pod errors.
[perl5.git] / pod / perlapi.pod
index 88f5f79..106839d 100644 (file)
@@ -134,6 +134,35 @@ array itself.
 =for hackers
 Found in file av.c
 
+=item av_create_and_push
+X<av_create_and_push>
+
+Push an SV onto the end of the array, creating the array if necessary.
+A small internal helper function to remove a commonly duplicated idiom.
+
+NOTE: this function is experimental and may change or be
+removed without notice.
+
+       void    av_create_and_push(AV **const avp, SV *const val)
+
+=for hackers
+Found in file av.c
+
+=item av_create_and_unshift_one
+X<av_create_and_unshift_one>
+
+Unshifts an SV onto the beginning of the array, creating the array if
+necessary.
+A small internal helper function to remove a commonly duplicated idiom.
+
+NOTE: this function is experimental and may change or be
+removed without notice.
+
+       SV**    av_create_and_unshift_one(AV **const avp, SV *const val)
+
+=for hackers
+Found in file av.c
+
 =item av_delete
 X<av_delete>
 
@@ -1358,12 +1387,10 @@ 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
-then the package will be created if it does not already exist.  If C<create>
-is not set and the package does not exist then NULL is returned.
+Returns a pointer to the stash for a specified package.  Uses C<strlen> to
+determine the length of C<name>, then calls C<gv_stashpvn()>.
 
-       HV*     gv_stashpv(const char* name, I32 create)
+       HV*     gv_stashpv(const char* name, I32 flags)
 
 =for hackers
 Found in file gv.c
@@ -1371,13 +1398,15 @@ 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
-the C<name>, in bytes.  If C<create> is set then the package will be
-created if it does not already exist.  If C<create> is not set and the
-package does not exist then NULL is returned.
+Returns a pointer to the stash for a specified package.  The C<namelen>
+parameter indicates the length of the C<name>, in bytes.  C<flags> is passed
+to C<gv_fetchpvn_flags()>, so if set to C<GV_ADD> then the package will be
+created if it does not already exist.  If the package does not exist and
+C<flags> is 0 (or any other setting that does not create packages) then NULL
+is returned.
+
 
-       HV*     gv_stashpvn(const char* name, U32 namelen, I32 create)
+       HV*     gv_stashpvn(const char* name, U32 namelen, I32 flags)
 
 =for hackers
 Found in file gv.c
@@ -1395,10 +1424,9 @@ Found in file handy.h
 =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>.
+Returns a pointer to the stash for a specified package.  See C<gv_stashpvn>.
 
-       HV*     gv_stashsv(SV* sv, I32 create)
+       HV*     gv_stashsv(SV* sv, I32 flags)
 
 =for hackers
 Found in file gv.c
@@ -2324,6 +2352,18 @@ which is shared between threads.
 =for hackers
 Found in file util.c
 
+=item savesharedpvn
+X<savesharedpvn>
+
+A version of C<savepvn()> which allocates the duplicate string in memory
+which is shared between threads. (With the specific difference that a NULL
+pointer is not acceptable)
+
+       char*   savesharedpvn(const char *const pv, const STRLEN len)
+
+=for hackers
+Found in file util.c
+
 =item savesvpv
 X<savesvpv>