[inseparable changes from match from perl-5.003_94 to perl-5.003_95]
[p5sagit/p5-mst-13.2.git] / pod / perlguts.pod
index 653bd0d..ff3d6cd 100644 (file)
@@ -162,7 +162,7 @@ bus error, or just weird results.  Change the zero to C<&sv_undef> in the first
 line and all will be well.
 
 To free an SV that you've created, call C<SvREFCNT_dec(SV*)>.  Normally this
-call is not necessary (see the section on L<Reference Counts and Mortality>).
+call is not necessary (see L<Reference Counts and Mortality>).
 
 =head2 What's Really Stored in an SV?
 
@@ -422,7 +422,7 @@ A reference can be blessed into a package with the following function:
     SV* sv_bless(SV* sv, HV* stash);
 
 The C<sv> argument must be a reference.  The C<stash> argument specifies
-which class the reference will belong to.  See the section on 
+which class the reference will belong to.  See
 L<Stashes and Globs> for information on converting class names into stashes.
 
 /* Still under construction */
@@ -777,9 +777,9 @@ The current kinds of Magic Virtual Tables are:
     .        vtbl_pos           $. scalar variable
     ~        None                Used by certain extensions
 
-When an upper-case and lower-case letter both exist in the table, then the
-upper-case letter is used to represent some kind of composite type (a list
-or a hash), and the lower-case letter is used to represent an element of
+When an uppercase and lowercase letter both exist in the table, then the
+uppercase letter is used to represent some kind of composite type (a list
+or a hash), and the lowercase letter is used to represent an element of
 that composite type.
 
 The '~' magic type is defined specifically for use by extensions and
@@ -805,8 +805,8 @@ if the SV is not of type SVt_PVMG, Perl may core-dump.
     int mg_copy(SV* sv, SV* nsv, char* key, STRLEN klen);
 
 This routine checks to see what types of magic C<sv> has.  If the mg_type
-field is an upper-case letter, then the mg_obj is copied to C<nsv>, but
-the mg_type field is changed to be the lower-case letter.
+field is an uppercase letter, then the mg_obj is copied to C<nsv>, but
+the mg_type field is changed to be the lowercase letter.
 
 =head1 Subroutines
 
@@ -1427,27 +1427,12 @@ Returns a pointer to the stash for a specified package.  See C<gv_stashpv>.
 
 Return the SV from the GV.
 
-=item he_delayfree
-
-Releases a hash entry, such as while iterating though the hash, but
-delays actual freeing of key and value until the end of the current
-statement (or thereabouts) with C<sv_2mortal>.  See C<hv_iternext>.
-
-       void    he_delayfree _((HV* hv, HE* hent));
-
 =item HEf_SVKEY
 
 This flag, used in the length slot of hash entries and magic
 structures, specifies the structure contains a C<SV*> pointer where a
 C<char*> pointer is to be expected. (For information only--not to be used).
 
-=item he_free
-
-Releases a hash entry, such as while iterating though the hash.  See
-C<hv_iternext>.
-
-       void    he_free _((HV* hv, HE* hent));
-
 =item HeHASH
 
 Returns the computed hash (type C<U32>) stored in the hash entry.
@@ -1519,6 +1504,15 @@ Clears a hash, making it empty.
 
        void    hv_clear _((HV* tb));
 
+=item hv_delayfree_ent
+
+Releases a hash entry, such as while iterating though the hash, but
+delays actual freeing of key and value until the end of the current
+statement (or thereabouts) with C<sv_2mortal>.  See C<hv_iternext>
+and C<hv_free_ent>.
+
+       void    hv_delayfree_ent _((HV* hv, HE* entry));
+
 =item hv_delete
 
 Deletes a key/value pair in the hash.  The value SV is removed from the hash
@@ -1572,6 +1566,13 @@ structure if you need to store it somewhere.
 
        HE*     hv_fetch_ent  _((HV* tb, SV* key, I32 lval, U32 hash));
 
+=item hv_free_ent
+
+Releases a hash entry, such as while iterating though the hash.  See
+C<hv_iternext> and C<hv_delayfree_ent>.
+
+       void    hv_free_ent _((HV* hv, HE* entry));
+
 =item hv_iterinit
 
 Prepares a starting point to traverse a hash table.
@@ -1586,7 +1587,7 @@ C<hv_iterinit>.
        char*   hv_iterkey _((HE* entry, I32* retlen));
 
 =item 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 see C<hv_iterinit>.
@@ -1821,7 +1822,7 @@ SV is B<not> incremented.
 =item newSV
 
 Creates a new SV.  The C<len> parameter indicates the number of bytes of
-pre-allocated string space the SV should have.  The reference count for the
+preallocated string space the SV should have.  The reference count for the
 new SV is set to 1.
 
        SV*     newSV _((STRLEN len));
@@ -2909,4 +2910,4 @@ API Listing by Dean Roehrich <F<roehrich@cray.com>>.
 
 =head1 DATE
 
-Version 31.2: 1997/3/5
+Version 31.3: 1997/3/14