X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pod%2Fperltoc.pod;h=bd4d0b0a34d8a4e6bbf11ec4747c5bcf53d4a359;hb=ab1db26f7811bf020db962c2e9f51e9af45f1a8f;hp=806e12f77a4f88773c6ef8213ac0521df53476e4;hpb=12b7c5c76c729a350869525e7426d5ca5b8092fa;p=p5sagit%2Fp5-mst-13.2.git diff --git a/pod/perltoc.pod b/pod/perltoc.pod index 806e12f..bd4d0b0 100644 --- a/pod/perltoc.pod +++ b/pod/perltoc.pod @@ -29,6 +29,8 @@ through to locate the proper section you're looking for. =item Miscellaneous +=item Language-Specific + =item Platform-Specific =back @@ -101,274 +103,270 @@ Parentheses for capturing, Other regexp features =back -=head2 perlfaq - frequently asked questions about Perl ($Date: 2002/01/31 -04:27:54 $) +=head2 perlreftut - Mark's very short tutorial about references =over 4 =item DESCRIPTION -=over 4 +=item Who Needs Complicated Data Structures? -=item perlfaq: Structural overview of the FAQ. +=item The Solution -=item L: General Questions About Perl +=item Syntax -=item L: Obtaining and Learning about Perl +=over 4 -=item L: Programming Tools +=item Making References -=item L: Data Manipulation +=item Using References -=item L: Files and Formats +=item An Example -=item L: Regular Expressions +=item Arrow Rule -=item L: General Perl Language Issues +=back -=item L: System Interaction +=item Solution -=item L: Networking +=item The Rest -=back +=item Summary -=item About the perlfaq documents +=item Credits =over 4 -=item Where to get the perlfaq - -=item How to contribute to the perlfaq - -=item What will happen if you mail your Perl programming problems to the -authors +=item Distribution Conditions =back -=item Credits +=back -=item Author and Copyright Information +=head2 perldsc - Perl Data Structures Cookbook =over 4 -=item Bundled Distributions +=item DESCRIPTION -=item Disclaimer +arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes, +more elaborate constructs -=back +=item REFERENCES -=item Changes +=item COMMON MISTAKES -1/November/2000, 23/May/99, 13/April/99, 7/January/99, 22/June/98, -24/April/97, 23/April/97, 25/March/97, 18/March/97, 17/March/97 Version, -Initial Release: 11/March/97 +=item CAVEAT ON PRECEDENCE -=back +=item WHY YOU SHOULD ALWAYS C -=head2 perlbook - Perl book information +=item DEBUGGING -=over 4 +=item CODE EXAMPLES -=item DESCRIPTION +=item ARRAYS OF ARRAYS -=back +=over 4 -=head2 perlsyn - Perl syntax +=item Declaration of an ARRAY OF ARRAYS -=over 4 +=item Generation of an ARRAY OF ARRAYS -=item DESCRIPTION +=item Access and Printing of an ARRAY OF ARRAYS -=over 4 +=back -=item Declarations +=item HASHES OF ARRAYS -=item Simple statements +=over 4 -=item Compound statements +=item Declaration of a HASH OF ARRAYS -=item Loop Control +=item Generation of a HASH OF ARRAYS -=item For Loops +=item Access and Printing of a HASH OF ARRAYS -=item Foreach Loops +=back -=item Basic BLOCKs and Switch Statements +=item ARRAYS OF HASHES -=item Goto +=over 4 -=item PODs: Embedded Documentation +=item Declaration of an ARRAY OF HASHES -=item Plain Old Comments (Not!) +=item Generation of an ARRAY OF HASHES -=back +=item Access and Printing of an ARRAY OF HASHES =back -=head2 perldata - Perl data types +=item HASHES OF HASHES =over 4 -=item DESCRIPTION +=item Declaration of a HASH OF HASHES -=over 4 +=item Generation of a HASH OF HASHES -=item Variable names +=item Access and Printing of a HASH OF HASHES -=item Context +=back -=item Scalar values +=item MORE ELABORATE RECORDS -=item Scalar value constructors +=over 4 -=item List value constructors +=item Declaration of MORE ELABORATE RECORDS -=item Slices +=item Declaration of a HASH OF COMPLEX RECORDS -=item Typeglobs and Filehandles +=item Generation of a HASH OF COMPLEX RECORDS =back +=item Database Ties + =item SEE ALSO +=item AUTHOR + =back -=head2 perlop - Perl operators and precedence +=head2 perllol - Manipulating Arrays of Arrays in Perl =over 4 -=item SYNOPSIS - =item DESCRIPTION =over 4 -=item Terms and List Operators (Leftward) +=item Declaration and Access of Arrays of Arrays -=item The Arrow Operator +=item Growing Your Own -=item Auto-increment and Auto-decrement +=item Access and Printing -=item Exponentiation +=item Slices -=item Symbolic Unary Operators +=back -=item Binding Operators +=item SEE ALSO -=item Multiplicative Operators +=item AUTHOR -=item Additive Operators +=back -=item Shift Operators +=head2 perlrequick - Perl regular expressions quick start -=item Named Unary Operators +=over 4 -=item Relational Operators +=item DESCRIPTION -=item Equality Operators +=item The Guide -=item Bitwise And +=over 4 -=item Bitwise Or and Exclusive Or +=item Simple word matching -=item C-style Logical And +=item Using character classes -=item C-style Logical Or +=item Matching this or that -=item Range Operators +=item Grouping things and hierarchical matching -=item Conditional Operator +=item Extracting matches -=item Assignment Operators +=item Matching repetitions -=item Comma Operator +=item More matching -=item List Operators (Rightward) +=item Search and replace -=item Logical Not +=item The split operator -=item Logical And +=back -=item Logical or and Exclusive Or +=item BUGS -=item C Operators Missing From Perl +=item SEE ALSO -unary &, unary *, (TYPE) +=item AUTHOR AND COPYRIGHT -=item Quote and Quote-like Operators +=over 4 -=item Regexp Quote-Like Operators +=item Acknowledgments -?PATTERN?, m/PATTERN/cgimosx, /PATTERN/cgimosx, q/STRING/, C<'STRING'>, -qq/STRING/, "STRING", qr/STRING/imosx, qx/STRING/, `STRING`, qw/STRING/, -s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cds, -y/SEARCHLIST/REPLACEMENTLIST/cds, <, C, C, C, C, C<''>, C, C<"">, -C<``>, C, C, C<< >>, C, C, C, -C,, Interpolation of regular expressions, Optimization of -regular expressions +=head2 perlretut - Perl regular expressions tutorial -=item I/O Operators +=over 4 -=item Constant Folding +=item DESCRIPTION -=item Bitwise String Operators +=item Part 1: The basics -=item Integer Arithmetic +=over 4 -=item Floating-point Arithmetic +=item Simple word matching -=item Bigger Numbers +=item Using character classes -=back +=item Matching this or that + +=item Grouping things and hierarchical matching + +=item Extracting matches + +=item Matching repetitions + +=item Building a regexp + +=item Using regular expressions in Perl =back -=head2 perlsub - Perl subroutines +=item Part 2: Power tools =over 4 -=item SYNOPSIS +=item More on characters, strings, and character classes -=item DESCRIPTION +=item Compiling and saving regular expressions -=over 4 +=item Embedding comments and modifiers in a regular expression -=item Private Variables via my() +=item Non-capturing groupings -=item Persistent Private Variables +=item Looking ahead and looking behind -=item Temporary Values via local() +=item Using independent subexpressions to prevent backtracking -=item Lvalue subroutines +=item Conditional expressions -=item Passing Symbol Table Entries (typeglobs) +=item A bit of magic: executing Perl code in a regular expression -=item When to Still Use local() +=item Pragmas and debugging -=item Pass by Reference +=back -=item Prototypes +=item BUGS -=item Constant Functions +=item SEE ALSO -=item Overriding Built-in Functions +=item AUTHOR AND COPYRIGHT -=item Autoloading +=over 4 -=item Subroutine Attributes +=item Acknowledgments =back -=item SEE ALSO - =back -=head2 perlfunc - Perl builtin functions +=head2 perlboot - Beginner's Object-Oriented Tutorial =over 4 @@ -376,353 +374,243 @@ regular expressions =over 4 -=item Perl Functions by Category +=item If we could talk to the animals... -Functions for SCALARs or strings, Regular expressions and pattern matching, -Numeric functions, Functions for real @ARRAYs, Functions for list data, -Functions for real %HASHes, Input and output functions, Functions for fixed -length data or records, Functions for filehandles, files, or directories, -Keywords related to the control flow of your perl program, Keywords related -to scoping, Miscellaneous functions, Functions for processes and process -groups, Keywords related to perl modules, Keywords related to classes and -object-orientedness, Low-level socket functions, System V interprocess -communication functions, Fetching user and group info, Fetching network -info, Time-related functions, Functions new in perl5, Functions obsoleted -in perl5 +=item Introducing the method invocation arrow -=item Portability - -=item Alphabetical Listing of Perl Functions +=item Invoking a barnyard -I<-X> FILEHANDLE, I<-X> EXPR, I<-X>, abs VALUE, abs, accept -NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME, -binmode FILEHANDLE, DISCIPLINE, binmode FILEHANDLE, bless REF,CLASSNAME, -bless REF, caller EXPR, caller, chdir EXPR, chmod LIST, chomp VARIABLE, -chomp( LIST ), chomp, chop VARIABLE, chop( LIST ), chop, chown LIST, chr -NUMBER, chr, chroot FILENAME, chroot, close FILEHANDLE, close, closedir -DIRHANDLE, connect SOCKET,NAME, continue BLOCK, cos EXPR, cos, crypt -PLAINTEXT,SALT, dbmclose HASH, dbmopen HASH,DBNAME,MASK, defined EXPR, -defined, delete EXPR, die LIST, do BLOCK, do SUBROUTINE(LIST), do EXPR, -dump LABEL, dump, each HASH, eof FILEHANDLE, eof (), eof, eval EXPR, eval -BLOCK, exec LIST, exec PROGRAM LIST, exists EXPR, exit EXPR, exp EXPR, exp, -fcntl FILEHANDLE,FUNCTION,SCALAR, fileno FILEHANDLE, flock -FILEHANDLE,OPERATION, fork, format, formline PICTURE,LIST, getc FILEHANDLE, -getc, getlogin, getpeername SOCKET, getpgrp PID, getppid, getpriority -WHICH,WHO, getpwnam NAME, getgrnam NAME, gethostbyname NAME, getnetbyname -NAME, getprotobyname NAME, getpwuid UID, getgrgid GID, getservbyname -NAME,PROTO, gethostbyaddr ADDR,ADDRTYPE, getnetbyaddr ADDR,ADDRTYPE, -getprotobynumber NUMBER, getservbyport PORT,PROTO, getpwent, getgrent, -gethostent, getnetent, getprotoent, getservent, setpwent, setgrent, -sethostent STAYOPEN, setnetent STAYOPEN, setprotoent STAYOPEN, setservent -STAYOPEN, endpwent, endgrent, endhostent, endnetent, endprotoent, -endservent, getsockname SOCKET, getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR, -glob, gmtime EXPR, goto LABEL, goto EXPR, goto &NAME, grep BLOCK LIST, grep -EXPR,LIST, hex EXPR, hex, import, index STR,SUBSTR,POSITION, index -STR,SUBSTR, int EXPR, int, ioctl FILEHANDLE,FUNCTION,SCALAR, join -EXPR,LIST, keys HASH, kill SIGNAL, LIST, last LABEL, last, lc EXPR, lc, -lcfirst EXPR, lcfirst, length EXPR, length, link OLDFILE,NEWFILE, listen -SOCKET,QUEUESIZE, local EXPR, localtime EXPR, lock THING, log EXPR, log, -lstat EXPR, lstat, m//, map BLOCK LIST, map EXPR,LIST, mkdir FILENAME,MASK, -mkdir FILENAME, msgctl ID,CMD,ARG, msgget KEY,FLAGS, msgrcv -ID,VAR,SIZE,TYPE,FLAGS, msgsnd ID,MSG,FLAGS, my EXPR, my EXPR : ATTRIBUTES, -next LABEL, next, no Module LIST, oct EXPR, oct, open FILEHANDLE,EXPR, open -FILEHANDLE,MODE,EXPR, open FILEHANDLE,MODE,EXPR,LIST, open -FILEHANDLE,MODE,REFERENCE, open FILEHANDLE, opendir DIRHANDLE,EXPR, ord -EXPR, ord, our EXPR, our EXPR : ATTRIBUTES, pack TEMPLATE,LIST, package -NAMESPACE, package, pipe READHANDLE,WRITEHANDLE, pop ARRAY, pop, pos -SCALAR, pos, print FILEHANDLE LIST, print LIST, print, printf FILEHANDLE -FORMAT, LIST, printf FORMAT, LIST, prototype FUNCTION, push ARRAY,LIST, -q/STRING/, qq/STRING/, qr/STRING/, qx/STRING/, qw/STRING/, quotemeta EXPR, -quotemeta, rand EXPR, rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET, read -FILEHANDLE,SCALAR,LENGTH, readdir DIRHANDLE, readline EXPR, readlink EXPR, -readlink, readpipe EXPR, recv SOCKET,SCALAR,LENGTH,FLAGS, redo LABEL, redo, -ref EXPR, ref, rename OLDNAME,NEWNAME, require VERSION, require EXPR, -require, reset EXPR, reset, return EXPR, return, reverse LIST, rewinddir -DIRHANDLE, rindex STR,SUBSTR,POSITION, rindex STR,SUBSTR, rmdir FILENAME, -rmdir, s///, scalar EXPR, seek FILEHANDLE,POSITION,WHENCE, seekdir -DIRHANDLE,POS, select FILEHANDLE, select, select RBITS,WBITS,EBITS,TIMEOUT, -semctl ID,SEMNUM,CMD,ARG, semget KEY,NSEMS,FLAGS, semop KEY,OPSTRING, send -SOCKET,MSG,FLAGS,TO, send SOCKET,MSG,FLAGS, setpgrp PID,PGRP, setpriority -WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shift ARRAY, -shift, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE, -shmwrite ID,STRING,POS,SIZE, shutdown SOCKET,HOW, sin EXPR, sin, sleep -EXPR, sleep, sockatmark SOCKET, socket SOCKET,DOMAIN,TYPE,PROTOCOL, -socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, sort SUBNAME LIST, sort -BLOCK LIST, sort LIST, splice ARRAY,OFFSET,LENGTH,LIST, splice -ARRAY,OFFSET,LENGTH, splice ARRAY,OFFSET, splice ARRAY, split -/PATTERN/,EXPR,LIMIT, split /PATTERN/,EXPR, split /PATTERN/, split, sprintf -FORMAT, LIST, sqrt EXPR, sqrt, srand EXPR, srand, stat FILEHANDLE, stat -EXPR, stat, study SCALAR, study, sub BLOCK, sub NAME, sub NAME BLOCK, -substr EXPR,OFFSET,LENGTH,REPLACEMENT, substr EXPR,OFFSET,LENGTH, substr -EXPR,OFFSET, symlink OLDFILE,NEWFILE, syscall LIST, sysopen -FILEHANDLE,FILENAME,MODE, sysopen FILEHANDLE,FILENAME,MODE,PERMS, sysread -FILEHANDLE,SCALAR,LENGTH,OFFSET, sysread FILEHANDLE,SCALAR,LENGTH, sysseek -FILEHANDLE,POSITION,WHENCE, system LIST, system PROGRAM LIST, syswrite -FILEHANDLE,SCALAR,LENGTH,OFFSET, syswrite FILEHANDLE,SCALAR,LENGTH, -syswrite FILEHANDLE,SCALAR, tell FILEHANDLE, tell, telldir DIRHANDLE, tie -VARIABLE,CLASSNAME,LIST, tied VARIABLE, time, times, tr///, truncate -FILEHANDLE,LENGTH, truncate EXPR,LENGTH, uc EXPR, uc, ucfirst EXPR, -ucfirst, umask EXPR, umask, undef EXPR, undef, unlink LIST, unlink, unpack -TEMPLATE,EXPR, untie VARIABLE, unshift ARRAY,LIST, use Module VERSION LIST, -use Module VERSION, use Module LIST, use Module, use VERSION, utime LIST, -values HASH, vec EXPR,OFFSET,BITS, wait, waitpid PID,FLAGS, wantarray, warn -LIST, write FILEHANDLE, write EXPR, write, y/// +=item The extra parameter of method invocation -=back +=item Calling a second method to simplify things -=back +=item Inheriting the windpipes -=head2 perlreftut - Mark's very short tutorial about references +=item A few notes about @ISA -=over 4 +=item Overriding the methods -=item DESCRIPTION +=item Starting the search from a different place -=item Who Needs Complicated Data Structures? +=item The SUPER way of doing things -=item The Solution +=item Where we're at so far... -=item Syntax +=item A horse is a horse, of course of course -- or is it? -=over 4 +=item Invoking an instance method -=item Making References +=item Accessing the instance data -=item Using References +=item How to build a horse -=back +=item Inheriting the constructor -=item An Example +=item Making a method work with either classes or instances -=item Arrow Rule +=item Adding parameters to a method -=item Solution +=item More interesting instances -=item The Rest +=item A horse of a different color =item Summary -=item Credits - -=over 4 +=back -=item Distribution Conditions +=item SEE ALSO -=back +=item COPYRIGHT =back -=head2 perldsc - Perl Data Structures Cookbook +=head2 perltoot - Tom's object-oriented tutorial for perl =over 4 =item DESCRIPTION -arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes, -more elaborate constructs +=item Creating a Class -=item REFERENCES +=over 4 -=item COMMON MISTAKES +=item Object Representation -=item CAVEAT ON PRECEDENCE +=item Class Interface -=item WHY YOU SHOULD ALWAYS C +=item Constructors and Instance Methods -=item DEBUGGING +=item Planning for the Future: Better Constructors -=item CODE EXAMPLES +=item Destructors -=item ARRAYS OF ARRAYS +=item Other Object Methods + +=back + +=item Class Data =over 4 -=item Declaration of an ARRAY OF ARRAYS +=item Accessing Class Data -=item Generation of an ARRAY OF ARRAYS +=item Debugging Methods -=item Access and Printing of an ARRAY OF ARRAYS +=item Class Destructors + +=item Documenting the Interface =back -=item HASHES OF ARRAYS +=item Aggregation + +=item Inheritance =over 4 -=item Declaration of a HASH OF ARRAYS +=item Overridden Methods -=item Generation of a HASH OF ARRAYS +=item Multiple Inheritance -=item Access and Printing of a HASH OF ARRAYS +=item UNIVERSAL: The Root of All Objects =back -=item ARRAYS OF HASHES +=item Alternate Object Representations =over 4 -=item Declaration of an ARRAY OF HASHES - -=item Generation of an ARRAY OF HASHES +=item Arrays as Objects -=item Access and Printing of an ARRAY OF HASHES +=item Closures as Objects =back -=item HASHES OF HASHES +=item AUTOLOAD: Proxy Methods =over 4 -=item Declaration of a HASH OF HASHES - -=item Generation of a HASH OF HASHES +=item Autoloaded Data Methods -=item Access and Printing of a HASH OF HASHES +=item Inherited Autoloaded Data Methods =back -=item MORE ELABORATE RECORDS +=item Metaclassical Tools =over 4 -=item Declaration of MORE ELABORATE RECORDS - -=item Declaration of a HASH OF COMPLEX RECORDS +=item Class::Struct -=item Generation of a HASH OF COMPLEX RECORDS +=item Data Members as Variables =back -=item Database Ties +=item NOTES -=item SEE ALSO +=over 4 -=item AUTHOR +=item Object Terminology =back -=head2 perlrequick - Perl regular expressions quick start - -=over 4 +=item SEE ALSO -=item DESCRIPTION +=item AUTHOR AND COPYRIGHT -=item The Guide +=item COPYRIGHT =over 4 -=item Simple word matching - -=item Using character classes +=item Acknowledgments -=item Matching this or that +=back -=item Grouping things and hierarchical matching +=back -=item Extracting matches +=head2 perltooc - Tom's OO Tutorial for Class Data in Perl -=item Matching repetitions +=over 4 -=item More matching +=item DESCRIPTION -=item Search and replace +=item Class Data in a Can -=item The split operator +=item Class Data as Package Variables -=back +=over 4 -=item BUGS +=item Putting All Your Eggs in One Basket -=item SEE ALSO +=item Inheritance Concerns -=item AUTHOR AND COPYRIGHT +=item The Eponymous Meta-Object -=over 4 +=item Indirect References to Class Data -=item Acknowledgments +=item Monadic Classes -=back +=item Translucent Attributes =back -=head2 perlpod - the Plain Old Documentation format - -=over 4 - -=item DESCRIPTION +=item Class Data as Lexical Variables =over 4 -=item Ordinary Paragraph - -=item Verbatim Paragraph +=item Privacy and Responsibility -=item Command Paragraph +=item File-Scoped Lexicals -C<=head1 I>, C<=head2 I>, C<=head3 I>, C<=head4 I>, C<=over I>, C<=item -I>, C<=back>, C<=cut>, C<=pod>, C<=begin I>, C<=end -I>, C<=for I I> +=item More Inheritance Concerns -=item Formatting Codes +=item Locking the Door and Throwing Away the Key -CtextE> -- italic text, CtextE> -- bold text, -CcodeE> -- code text, CnameE> -- a hyperlink, -CescapeE> -- a character escape, CfilenameE> -- used -for filenames, CtextE> -- text contains non-breaking spaces, -Ctopic nameE> -- an index entry, CE> -- a null -(zero-effect) formatting code +=item Translucency Revisited -=item The Intent +=back -=item Embedding Pods in Perl Modules +=item NOTES -=item Hints for Writing Pod +=item SEE ALSO -=back +=item AUTHOR AND COPYRIGHT -=item SEE ALSO +=item ACKNOWLEDGEMENTS -=item AUTHOR +=item HISTORY =back -=head2 perlpodspec - Plain Old Documentation: format specification and -notes +=head2 perlbot - Bag'o Object Tricks (the BOT) =over 4 =item DESCRIPTION -=item Pod Definitions +=item OO SCALING TIPS -=item Pod Commands +=item INSTANCE VARIABLES -"=head1", "=head2", "=head3", "=head4", "=pod", "=cut", "=over", "=item", -"=back", "=begin formatname", "=end formatname", "=for formatname text..." +=item SCALAR INSTANCE VARIABLES -=item Pod Formatting Codes +=item INSTANCE VARIABLE INHERITANCE -CtextE> -- italic text, CtextE> -- bold text, -CcodeE> -- code text, CfilenameE> -- style for -filenames, Ctopic nameE> -- an index entry, CE> -- a -null (zero-effect) formatting code, CnameE> -- a hyperlink, -CescapeE> -- a character escape, CtextE> -- text -contains non-breaking spaces +=item OBJECT RELATIONSHIPS -=item Notes on Implementing Pod Processors +=item OVERRIDING SUPERCLASS METHODS -=item About LE...E Codes +=item USING RELATIONSHIP WITH SDBM -First:, Second:, Third:, Fourth:, Fifth:, Sixth: +=item THINKING OF CODE REUSE -=item About =over...=back Regions +=item CLASS CONTEXT AND THE OBJECT -=item About Data Paragraphs and "=begin/=end" Regions +=item INHERITING A CONSTRUCTOR -=item SEE ALSO +=item DELEGATION -=item AUTHOR +=item SEE ALSO =back @@ -734,7 +622,7 @@ First:, Second:, Third:, Fourth:, Fifth:, Sixth: =back -=head2 perltrap - Perl traps for the unwary +=head2 perlcheat - Perl 5 Cheat Sheet =over 4 @@ -742,13 +630,33 @@ First:, Second:, Third:, Fourth:, Fifth:, Sixth: =over 4 -=item Awk Traps +=item The sheet -=item C Traps +=back -=item Sed Traps +=item ACKNOWLEDGEMENTS -=item Shell Traps +=item AUTHOR + +=item SEE ALSO + +=back + +=head2 perltrap - Perl traps for the unwary + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item Awk Traps + +=item C/C++ Traps + +=item Sed Traps + +=item Shell Traps =item Perl Traps @@ -791,7 +699,7 @@ Precedence Regular Expression, Regular Expression, Regular Expression, Regular Expression, Regular Expression, Regular Expression, Regular Expression, -Regular Expression +Regular Expression, Regular Expression =item Subroutine, Signal, Sorting Traps @@ -819,52 +727,42 @@ LIMIT specified =back -=head2 perlrun - how to execute the Perl interpreter +=head2 perldebtut - Perl debugging tutorial =over 4 -=item SYNOPSIS - =item DESCRIPTION -=over 4 +=item use strict -=item #! and quoting on non-Unix systems +=item Looking at data and -w and v -OS/2, MS-DOS, Win95/NT, Macintosh, VMS +=item help -=item Location of Perl +=item Stepping through code -=item Command Switches +=item Placeholder for a, w, t, T -B<-0>[I], B<-a>, B<-C>, B<-c>, B<-d>, B<-d:>I, -B<-D>I, B<-D>I, B<-e> I, B<-F>I, -B<-h>, B<-i>[I], B<-I>I, B<-l>[I], -B<-m>[B<->]I, B<-M>[B<->]I, B<-M>[B<->]I<'module ...'>, -B<-[mM]>[B<->]I, B<-n>, B<-p>, B<-P>, B<-s>, B<-S>, -B<-t>, B<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I, B<-w>, B<-W>, -B<-X>, B<-x> I +=item REGULAR EXPRESSIONS -=back +=item OUTPUT TIPS -=item ENVIRONMENT +=item CGI -HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLLIB, PERL5DB, PERL5SHELL -(specific to the Win32 port), PERL_DEBUG_MSTATS, PERL_DESTRUCT_LEVEL, -PERL_ENCODING, PERL_ROOT (specific to the VMS port), SYS$LOGIN (specific to -the VMS port) +=item GUIs -=back +=item SUMMARY -=head2 perldiag - various Perl diagnostics +=item SEE ALSO -=over 4 +=item AUTHOR -=item DESCRIPTION +=item CONTRIBUTORS =back -=head2 perllexwarn - Perl Lexical Warnings +=head2 perlfaq - frequently asked questions about Perl ($Date: 2003/01/31 +17:37:17 $) =over 4 @@ -872,127 +770,112 @@ the VMS port) =over 4 -=item Default Warnings and Optional Warnings - -=item What's wrong with B<-w> and C<$^W> - -=item Controlling Warnings from the Command Line - -B<-w>, B<-W>, B<-X> - -=item Backward Compatibility - -=item Category Hierarchy +=item Where to get the perlfaq -=item Fatal Warnings +=item How to contribute to the perlfaq -=item Reporting Warnings from a Module +=item What will happen if you mail your Perl programming problems to the +authors =back -=item TODO +=item Credits -=item SEE ALSO +=item Author and Copyright Information -=item AUTHOR +=over 4 -=back +=item Bundled Distributions -=head2 perldebtut - Perl debugging tutorial +=item Disclaimer -=over 4 +=back -=item DESCRIPTION +=item Table of Contents -=item use strict +perlfaq - this document, perlfaq1 - General Questions About Perl, perlfaq2 +- Obtaining and Learning about Perl, perlfaq3 - Programming Tools, perlfaq4 +- Data Manipulation, perlfaq5 - Files and Formats, perlfaq6 - Regular +Expressions, perlfaq7 - General Perl Language Issues, perlfaq8 - System +Interaction, perlfaq9 - Networking -=item Looking at data and -w and w +=item The Questions -=item help +=over 4 -=item Stepping through code +=item L: General Questions About Perl -=item Placeholder for a, w, t, T +=item L: Obtaining and Learning about Perl -=item REGULAR EXPRESSIONS +=item L: Programming Tools -=item OUTPUT TIPS +=item L: Data Manipulation -=item CGI +=item L: Files and Formats -=item GUIs +=item L: Regular Expressions -=item SUMMARY +=item L: General Perl Language Issues -=item SEE ALSO +=item L: System Interaction -=item AUTHOR +=item L: Networking -=item CONTRIBUTORS +=back =back -=head2 perldebug - Perl debugging +=head2 perlfaq1 - General Questions About Perl ($Revision: 1.12 $, $Date: +2003/07/09 15:47:28 $) =over 4 =item DESCRIPTION -=item The Perl Debugger - =over 4 -=item Debugger Commands +=item What is Perl? -h [command], p expr, x [maxdepth] expr, V [pkg [vars]], X [vars], T, s -[expr], n [expr], r, , c [line|sub], l, l min+incr, l min-max, l line, -l subname, -, w [line], f filename, /pattern/, ?pattern?, L, S [[!]regex], -t, t expr, b [line] [condition], b subname [condition], b postpone subname -[condition], b load filename, b compile subname, d [line], D, a [line] -command, a [line], A, W expr, W, O booloption .., O anyoption? .., O -option=value .., < ?, < [ command ], << command, > ?, > command, >> -command, { ?, { [ command ], {{ command, ! number, ! -number, ! pattern, !! -cmd, @ file, H -number, q or ^D, R, |dbcmd, ||dbcmd, command, m expr, man -[manpage] +=item Who supports Perl? Who develops it? Why is it free? -=item Configurable Options +=item Which version of Perl should I use? -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, C, -C +=item What are perl4 and perl5? -=item Debugger input/output +=item What is Ponie? -Prompt, Multiline commands, Stack backtrace, Line Listing Format, Frame -listing +=item What is perl6? -=item Debugging compile-time statements +=item How stable is Perl? -=item Debugger Customization +=item Is Perl difficult to learn? -=item Readline Support +=item How does Perl compare with other languages like Java, Python, REXX, +Scheme, or Tcl? -=item Editor Support for Debugging +=item Can I do [task] in Perl? -=item The Perl Profiler +=item When shouldn't I program in Perl? -=back +=item What's the difference between "perl" and "Perl"? -=item Debugging regular expressions +=item Is it a Perl program or a Perl script? -=item Debugging memory usage +=item What is a JAPH? -=item SEE ALSO +=item Where can I get a list of Larry Wall witticisms? -=item BUGS +=item How can I convince my sysadmin/supervisor/employees to use version +5/5.6.1/Perl instead of some other language? =back -=head2 perlvar - Perl predefined variables +=item AUTHOR AND COPYRIGHT + +=back + +=head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.20 $, +$Date: 2003/01/26 17:50:56 $) =over 4 @@ -1000,380 +883,357 @@ listing =over 4 -=item Predefined Names +=item What machines support Perl? Where do I get it? -$ARG, $_, $a, $b, $>, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $', -$LAST_PAREN_MATCH, $+, $^N, @LAST_MATCH_END, @+, $MULTILINE_MATCHING, $*, -HANDLE->input_line_number(EXPR), $INPUT_LINE_NUMBER, $NR, $, -IO::Handle->input_record_separator(EXPR), $INPUT_RECORD_SEPARATOR, $RS, $/, -HANDLE->autoflush(EXPR), $OUTPUT_AUTOFLUSH, $|, -IO::Handle->output_field_separator EXPR, $OUTPUT_FIELD_SEPARATOR, $OFS, $,, -IO::Handle->output_record_separator EXPR, $OUTPUT_RECORD_SEPARATOR, $ORS, -$\, $LIST_SEPARATOR, $", $SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#, -HANDLE->format_page_number(EXPR), $FORMAT_PAGE_NUMBER, $%, -HANDLE->format_lines_per_page(EXPR), $FORMAT_LINES_PER_PAGE, $=, -HANDLE->format_lines_left(EXPR), $FORMAT_LINES_LEFT, $-, @LAST_MATCH_START, -@-, C<$`> is the same as C, C<$&> is the same as -C, C<$'> is the same as C, C<$1> is the same as C, C<$2> -is the same as C, C<$3> is the same as -C, HANDLE->format_name(EXPR), -$FORMAT_NAME, $~, HANDLE->format_top_name(EXPR), $FORMAT_TOP_NAME, $^, -IO::Handle->format_line_break_characters EXPR, -$FORMAT_LINE_BREAK_CHARACTERS, $:, IO::Handle->format_formfeed EXPR, -$FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A, $CHILD_ERROR, $?, ${^ENCODING}, -$OS_ERROR, $ERRNO, $!, $EXTENDED_OS_ERROR, $^E, $EVAL_ERROR, $@, -$PROCESS_ID, $PID, $$, $REAL_USER_ID, $UID, $<, $EFFECTIVE_USER_ID, $EUID, -$>, $REAL_GROUP_ID, $GID, $(, $EFFECTIVE_GROUP_ID, $EGID, $), -$PROGRAM_NAME, $0, $[, $], $COMPILING, $^C, $DEBUGGING, $^D, -$SYSTEM_FD_MAX, $^F, $^H, %^H, $INPLACE_EDIT, $^I, $^M, $OSNAME, $^O, -${^OPEN}, $PERLDB, $^P, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, -0x100, 0x200, $LAST_REGEXP_CODE_RESULT, $^R, $EXCEPTIONS_BEING_CAUGHT, $^S, -$BASETIME, $^T, ${^TAINT}, $PERL_VERSION, $^V, $WARNING, $^W, -${^WARNING_BITS}, ${^WIDE_SYSTEM_CALLS}, $EXECUTABLE_NAME, $^X, ARGV, -$ARGV, @ARGV, @F, @INC, @_, %INC, %ENV, $ENV{expr}, %SIG, $SIG{expr} +=item How can I get a binary version of Perl? -=item Error Indicators +=item I don't have a C compiler on my system. How can I compile perl? -=item Technical Note on the Syntax of Variable Names +=item I copied the Perl binary from one machine to another, but scripts +don't work. -=back +=item I grabbed the sources and tried to compile but gdbm/dynamic +loading/malloc/linking/... failed. How do I make it work? -=item BUGS +=item What modules and extensions are available for Perl? What is CPAN? +What does CPAN/src/... mean? -=back +=item Is there an ISO or ANSI certified version of Perl? -=head2 perllol - Manipulating Arrays of Arrays in Perl +=item Where can I get information on Perl? -=over 4 +=item What are the Perl newsgroups on Usenet? Where do I post questions? -=item DESCRIPTION +=item Where should I post source code? -=over 4 +=item Perl Books -=item Declaration and Access of Arrays of Arrays +References, Tutorials, Task-Oriented, Special Topics -=item Growing Your Own +=item Perl in Magazines -=item Access and Printing +=item Perl on the Net: FTP and WWW Access -=item Slices +=item What mailing lists are there for Perl? -=back +=item Archives of comp.lang.perl.misc -=item SEE ALSO +=item Where can I buy a commercial version of Perl? -=item AUTHOR +=item Where do I send bug reports? + +=item What is perl.com? Perl Mongers? pm.org? perl.org? cpan.org? =back -=head2 perlopentut - tutorial on opening things in Perl +=item AUTHOR AND COPYRIGHT + +=back + +=head2 perlfaq3 - Programming Tools ($Revision: 1.33 $, $Date: 2003/01/31 +17:34:56 $) =over 4 =item DESCRIPTION -=item Open E la shell - =over 4 -=item Simple Opens +=item How do I do (anything)? -=item Pipe Opens +=item How can I use Perl interactively? -=item The Minus File +=item Is there a Perl shell? -=item Mixing Reads and Writes +=item How do I find which modules are installed on my system? -=item Filters +=item How do I debug my Perl programs? -=back +=item How do I profile my Perl programs? -=item Open E la C +=item How do I cross-reference my Perl programs? -=over 4 +=item Is there a pretty-printer (formatter) for Perl? -=item Permissions E la mode +=item Is there a ctags for Perl? -=back +=item Is there an IDE or Windows Perl Editor? -=item Obscure Open Tricks +Komodo, The Object System, Open Perl IDE, PerlBuilder, visiPerl+, OptiPerl, +GNU Emacs, MicroEMACS, XEmacs, Jed, Elvis, Vile, Vim, Codewright, +MultiEdit, SlickEdit, Bash, Ksh, Tcsh, Zsh, BBEdit and BBEdit Lite, Alpha -=over 4 +=item Where can I get Perl macros for vi? -=item Re-Opening Files (dups) +=item Where can I get perl-mode for emacs? -=item Dispelling the Dweomer +=item How can I use curses with Perl? -=item Paths as Opens +=item How can I use X or Tk with Perl? -=item Single Argument Open +=item How can I generate simple menus without using CGI or Tk? -=item Playing with STDIN and STDOUT +=item How can I make my Perl program run faster? -=back +=item How can I make my Perl program take less memory? -=item Other I/O Issues +Don't slurp!, Use map and grep selectively, Avoid unnecessary quotes and +stringification, Pass by reference, Tie large variables to disk -=over 4 +=item Is it safe to return a reference to local or lexical data? -=item Opening Non-File Files +=item How can I free an array or hash so my program shrinks? -=item Binary Files +=item How can I make my CGI script more efficient? -=item File Locking +=item How can I hide the source for my Perl program? -=back +=item How can I compile my Perl program into byte code or C? -=item SEE ALSO +=item How can I compile Perl into Java? -=item AUTHOR and COPYRIGHT +=item How can I get C<#!perl> to work on [MS-DOS,NT,...]? -=item HISTORY +=item Can I write useful Perl programs on the command line? -=back +=item Why don't Perl one-liners work on my DOS/Mac/VMS system? -=head2 perlpacktut - tutorial on C and C +=item Where can I learn about CGI or Web programming in Perl? -=over 4 +=item Where can I learn about object-oriented Perl programming? -=item DESCRIPTION +=item Where can I learn about linking C with Perl? [h2xs, xsubpp] -=item The Basic Principle +=item I've read perlembed, perlguts, etc., but I can't embed perl in +my C program; what am I doing wrong? -=item Packing Text +=item When I tried to run my script, I got this message. What does it mean? -=item Packing Numbers +=item What's MakeMaker? -=over 4 +=back -=item Integers +=item AUTHOR AND COPYRIGHT -=item Unpacking a Stack Frame +=back -=item How to Eat an Egg on a Net +=head2 perlfaq4 - Data Manipulation ($Revision: 1.44 $, $Date: 2003/07/28 +17:35:21 $) -=item Floating point Numbers +=over 4 -=back +=item DESCRIPTION -=item Exotic Templates +=item Data: Numbers =over 4 -=item Bit Strings +=item Why am I getting long decimals (eg, 19.9499999999999) instead of the +numbers I should be getting (eg, 19.95)? -=item Uuencoding +=item Why isn't my octal data interpreted correctly? -=item Doing Sums +=item Does Perl have a round() function? What about ceil() and floor()? +Trig functions? -=item Unicode +=item How do I convert between numeric representations? -=item Another Portable Binary Encoding +How do I convert hexadecimal into decimal, How do I convert from decimal to +hexadecimal, How do I convert from octal to decimal, How do I convert from +decimal to octal, How do I convert from binary to decimal, How do I convert +from decimal to binary -=back +=item Why doesn't & work the way I want it to? -=item Lengths and Widths +=item How do I multiply matrices? -=over 4 +=item How do I perform an operation on a series of integers? -=item String Lengths +=item How can I output Roman numerals? -=item Dynamic Templates +=item Why aren't my random numbers random? + +=item How do I get a random number between X and Y? =back -=item Packing and Unpacking C Structures +=item Data: Dates =over 4 -=item The Alignment Pit - -=item Alignment, Take 2 - -=item Alignment, Take 3 +=item How do I find the day or week of the year? -=item Pointers for How to Use Them +=item How can I compare two dates and find the difference? -=back +=item How can I take a string and turn it into epoch seconds? -=item Pack Recipes +=item How can I find the Julian Day? -=item Funnies Section +=item How do I find yesterday's date? -=item Authors +=item Does Perl have a Year 2000 problem? Is Perl Y2K compliant? =back -=head2 perlretut - Perl regular expressions tutorial +=item Data: Strings =over 4 -=item DESCRIPTION - -=item Part 1: The basics - -=over 4 +=item How do I validate input? -=item Simple word matching +=item How do I unescape a string? -=item Using character classes +=item How do I remove consecutive pairs of characters? -=item Matching this or that +=item How do I expand function calls in a string? -=item Grouping things and hierarchical matching +=item How do I find matching/nesting anything? -=item Extracting matches +=item How do I reverse a string? -=item Matching repetitions +=item How do I expand tabs in a string? -=item Building a regexp +=item How do I reformat a paragraph? -=item Using regular expressions in Perl +=item How can I access or change N characters of a string? -=back +=item How do I change the Nth occurrence of something? -=item Part 2: Power tools +=item How can I count the number of occurrences of a substring within a +string? -=over 4 +=item How do I capitalize all the words on one line? -=item More on characters, strings, and character classes +=item How can I split a [character] delimited string except when inside +[character]? -=item Compiling and saving regular expressions +=item How do I strip blank space from the beginning/end of a string? -=item Embedding comments and modifiers in a regular expression +=item How do I pad a string with blanks or pad a number with zeroes? -=item Non-capturing groupings +=item How do I extract selected columns from a string? -=item Looking ahead and looking behind +=item How do I find the soundex value of a string? -=item Using independent subexpressions to prevent backtracking +=item How can I expand variables in text strings? -=item Conditional expressions +=item What's wrong with always quoting "$vars"? -=item A bit of magic: executing Perl code in a regular expression +=item Why don't my EEHERE documents work? -=item Pragmas and debugging +There must be no space after the EE part, There (probably) should +be a semicolon at the end, You can't (easily) have any space in front of +the tag =back -=item BUGS - -=item SEE ALSO - -=item AUTHOR AND COPYRIGHT +=item Data: Arrays =over 4 -=item Acknowledgments - -=back - -=back +=item What is the difference between a list and an array? -=head2 perlre - Perl regular expressions +=item What is the difference between $array[1] and @array[1]? -=over 4 +=item How can I remove duplicate elements from a list or array? -=item DESCRIPTION +a), b), c), d), e) -i, m, s, x +=item How can I tell whether a certain element is contained in a list or +array? -=over 4 +=item How do I compute the difference of two arrays? How do I compute the +intersection of two arrays? -=item Regular Expressions +=item How do I test whether two arrays or hashes are equal? -[1], [2], [3], cntrl, graph, print, punct, xdigit +=item How do I find the first array element for which a condition is true? -=item Extended Patterns +=item How do I handle linked lists? -C<(?#text)>, C<(?imsx-imsx)>, C<(?:pattern)>, C<(?imsx-imsx:pattern)>, -C<(?=pattern)>, C<(?!pattern)>, C<(?<=pattern)>, C<(?, C<(?{ -code })>, C<(??{ code })>, C<< (?>pattern) >>, -C<(?(condition)yes-pattern|no-pattern)>, C<(?(condition)yes-pattern)> +=item How do I handle circular lists? -=item Backtracking +=item How do I shuffle an array randomly? -=item Version 8 Regular Expressions +=item How do I process/modify each element of an array? -=item Warning on \1 vs $1 +=item How do I select a random element from an array? -=item Repeated patterns matching zero-length substring +=item How do I permute N elements of a list? -=item Combining pieces together +=item How do I sort an array by (anything)? -C, C, C, C, C, C, -C, C, C, C, C, C<< (?>S) >>, C<(?=S)>, C<(?<=S)>, -C<(?!S)>, C<(?, C<(??{ EXPR })>, -C<(?(condition)yes-pattern|no-pattern)> +=item How do I manipulate arrays of bits? -=item Creating custom RE engines +=item Why does defined() return true on empty arrays and hashes? =back -=item BUGS +=item Data: Hashes (Associative Arrays) -=item SEE ALSO +=over 4 -=back +=item How do I process an entire hash? -=head2 perlref - Perl references and nested data structures +=item What happens if I add or remove keys from a hash while iterating over +it? -=over 4 +=item How do I look up a hash element by value? -=item NOTE +=item How can I know how many entries are in a hash? -=item DESCRIPTION +=item How do I sort a hash (optionally by value instead of key)? -=over 4 +=item How can I always keep my hash sorted? -=item Making References +=item What's the difference between "delete" and "undef" with hashes? -=item Using References +=item Why don't my tied hashes make the defined/exists distinction? -=item Symbolic references +=item How do I reset an each() operation part-way through? -=item Not-so-symbolic references +=item How can I get the unique keys from two hashes? -=item Pseudo-hashes: Using an array as a hash +=item How can I store a multidimensional array in a DBM file? -=item Function Templates +=item How can I make my hash remember the order I put elements into it? -=back +=item Why does passing a subroutine an undefined element in a hash create +it? -=item WARNING +=item How can I make the Perl equivalent of a C structure/C++ class/hash or +array of hashes or arrays? -=item SEE ALSO +=item How can I use a reference as a hash key? =back -=head2 perlform - Perl formats +=item Data: Misc =over 4 -=item DESCRIPTION - -=over 4 +=item How do I handle binary data correctly? -=item Format Variables +=item How do I determine whether a scalar is a number/whole/integer/float? -=back +=item How do I keep persistent data across program calls? -=item NOTES +=item How do I print out or copy a recursive data structure? -=over 4 +=item How do I define methods for every class/object? -=item Footers +=item How do I verify a credit card checksum? -=item Accessing Formatting Internals +=item How do I pack arrays of doubles or floats for XS code? =back -=item WARNINGS +=item AUTHOR AND COPYRIGHT =back -=head2 perlboot - Beginner's Object-Oriented Tutorial +=head2 perlfaq5 - Files and Formats ($Revision: 1.28 $, $Date: 2003/01/26 +17:45:46 $) =over 4 @@ -1381,215 +1241,244 @@ C<(?(condition)yes-pattern|no-pattern)> =over 4 -=item If we could talk to the animals... +=item How do I flush/unbuffer an output filehandle? Why must I do this? -=item Introducing the method invocation arrow +=item How do I change one line in a file/delete a line in a file/insert a +line in the middle of a file/append to the beginning of a file? -=item Invoking a barnyard +=item How do I count the number of lines in a file? -=item The extra parameter of method invocation +=item How can I use Perl's C<-i> option from within a program? -=item Calling a second method to simplify things +=item How do I make a temporary file name? -=item Inheriting the windpipes +=item How can I manipulate fixed-record-length files? -=item A few notes about @ISA +=item How can I make a filehandle local to a subroutine? How do I pass +filehandles between subroutines? How do I make an array of filehandles? -=item Overriding the methods +=item How can I use a filehandle indirectly? -=item Starting the search from a different place +=item How can I set up a footer format to be used with write()? -=item The SUPER way of doing things +=item How can I write() into a string? -=item Where we're at so far... +=item How can I output my numbers with commas added? -=item A horse is a horse, of course of course -- or is it? +=item How can I translate tildes (~) in a filename? -=item Invoking an instance method +=item How come when I open a file read-write it wipes it out? -=item Accessing the instance data +=item Why do I sometimes get an "Argument list too long" when I use +E*E? -=item How to build a horse +=item Is there a leak/bug in glob()? -=item Inheriting the constructor +=item How can I open a file with a leading ">" or trailing blanks? -=item Making a method work with either classes or instances +=item How can I reliably rename a file? -=item Adding parameters to a method +=item How can I lock a file? -=item More interesting instances +=item Why can't I just open(FH, "Efile.lock")? -=item A horse of a different color +=item I still don't get locking. I just want to increment the number in +the file. How can I do this? -=item Summary +=item All I want to do is append a small amount of text to the end of a +file. Do I still have to use locking? -=back +=item How do I randomly update a binary file? -=item SEE ALSO +=item How do I get a file's timestamp in perl? -=item COPYRIGHT +=item How do I set a file's timestamp in perl? -=back +=item How do I print to more than one file at once? -=head2 perltoot - Tom's object-oriented tutorial for perl +=item How can I read in an entire file all at once? -=over 4 +=item How can I read in a file by paragraphs? -=item DESCRIPTION +=item How can I read a single character from a file? From the keyboard? -=item Creating a Class +=item How can I tell whether there's a character waiting on a filehandle? -=over 4 +=item How do I do a C in perl? -=item Object Representation +=item How do I dup() a filehandle in Perl? -=item Class Interface +=item How do I close a file descriptor by number? -=item Constructors and Instance Methods +=item Why can't I use "C:\temp\foo" in DOS paths? Why doesn't +`C:\temp\foo.exe` work? -=item Planning for the Future: Better Constructors +=item Why doesn't glob("*.*") get all the files? -=item Destructors +=item Why does Perl let me delete read-only files? Why does C<-i> clobber +protected files? Isn't this a bug in Perl? -=item Other Object Methods +=item How do I select a random line from a file? + +=item Why do I get weird spaces when I print an array of lines? =back -=item Class Data +=item AUTHOR AND COPYRIGHT -=over 4 +=back -=item Accessing Class Data +=head2 perlfaq6 - Regular Expressions ($Revision: 1.20 $, $Date: 2003/01/03 +20:05:28 $) -=item Debugging Methods +=over 4 -=item Class Destructors +=item DESCRIPTION -=item Documenting the Interface +=over 4 -=back +=item How can I hope to use regular expressions without creating illegible +and unmaintainable code? -=item Aggregation +Comments Outside the Regex, Comments Inside the Regex, Different Delimiters -=item Inheritance +=item I'm having trouble matching over more than one line. What's wrong? -=over 4 +=item How can I pull out lines between two patterns that are themselves on +different lines? -=item Overridden Methods +=item I put a regular expression into $/ but it didn't work. What's wrong? -=item Multiple Inheritance +=item How do I substitute case insensitively on the LHS while preserving +case on the RHS? -=item UNIVERSAL: The Root of All Objects +=item How can I make C<\w> match national character sets? -=back +=item How can I match a locale-smart version of C? -=item Alternate Object Representations +=item How can I quote a variable to use in a regex? -=over 4 +=item What is C really for? -=item Arrays as Objects +=item How do I use a regular expression to strip C style comments from a +file? -=item Closures as Objects +=item Can I use Perl regular expressions to match balanced text? -=back +=item What does it mean that regexes are greedy? How can I get around it? -=item AUTOLOAD: Proxy Methods +=item How do I process each word on each line? -=over 4 +=item How can I print out a word-frequency or line-frequency summary? -=item Autoloaded Data Methods +=item How can I do approximate matching? -=item Inherited Autoloaded Data Methods +=item How do I efficiently match many regular expressions at once? -=back +=item Why don't word-boundary searches with C<\b> work for me? -=item Metaclassical Tools +=item Why does using $&, $`, or $' slow my program down? -=over 4 +=item What good is C<\G> in a regular expression? -=item Class::Struct +=item Are Perl regexes DFAs or NFAs? Are they POSIX compliant? -=item Data Members as Variables +=item What's wrong with using grep or map in a void context? -=back +=item How can I match strings with multibyte characters? -=item NOTES +=item How do I match a pattern that is supplied by the user? -=over 4 +=back -=item Object Terminology +=item AUTHOR AND COPYRIGHT =back -=item SEE ALSO +=head2 perlfaq7 - General Perl Language Issues ($Revision: 1.15 $, $Date: +2003/07/24 02:17:21 $) -=item AUTHOR AND COPYRIGHT +=over 4 -=item COPYRIGHT +=item DESCRIPTION =over 4 -=item Acknowledgments +=item Can I get a BNF/yacc/RE for the Perl language? -=back +=item What are all these $@%&* punctuation signs, and how do I know when to +use them? -=back +=item Do I always/never have to quote my strings or use semicolons and +commas? -=head2 perltooc - Tom's OO Tutorial for Class Data in Perl +=item How do I skip some return values? -=over 4 +=item How do I temporarily block warnings? -=item DESCRIPTION +=item What's an extension? -=item Class Data in a Can +=item Why do Perl operators have different precedence than C operators? -=item Class Data as Package Variables +=item How do I declare/create a structure? -=over 4 +=item How do I create a module? -=item Putting All Your Eggs in One Basket +=item How do I create a class? -=item Inheritance Concerns +=item How can I tell if a variable is tainted? -=item The Eponymous Meta-Object +=item What's a closure? -=item Indirect References to Class Data +=item What is variable suicide and how can I prevent it? -=item Monadic Classes +=item How can I pass/return a {Function, FileHandle, Array, Hash, Method, +Regex}? -=item Translucent Attributes +Passing Variables and Functions, Passing Filehandles, Passing Regexes, +Passing Methods -=back +=item How do I create a static variable? -=item Class Data as Lexical Variables +=item What's the difference between dynamic and lexical (static) scoping? +Between local() and my()? -=over 4 +=item How can I access a dynamic variable while a similarly named lexical +is in scope? -=item Privacy and Responsibility +=item What's the difference between deep and shallow binding? -=item File-Scoped Lexicals +=item Why doesn't "my($foo) = EFILEE;" work right? -=item More Inheritance Concerns +=item How do I redefine a builtin function, operator, or method? -=item Locking the Door and Throwing Away the Key +=item What's the difference between calling a function as &foo and foo()? -=item Translucency Revisited +=item How do I create a switch or case statement? -=back +=item How can I catch accesses to undefined variables, functions, or +methods? -=item NOTES +=item Why can't a method included in this same file be found? -=item SEE ALSO +=item How can I find out my current package? -=item AUTHOR AND COPYRIGHT +=item How can I comment out a large block of perl code? -=item ACKNOWLEDGEMENTS +=item How do I clear a package? -=item HISTORY +=item How can I use a variable as a variable name? + +=item What does "bad interpreter" mean? =back -=head2 perlobj - Perl objects +=item AUTHOR AND COPYRIGHT + +=back + +=head2 perlfaq8 - System Interaction ($Revision: 1.17 $, $Date: 2003/01/26 +17:44:04 $) =over 4 @@ -1597,818 +1486,978 @@ C<(?(condition)yes-pattern|no-pattern)> =over 4 -=item An Object is Simply a Reference +=item How do I find out which operating system I'm running under? -=item A Class is Simply a Package +=item How come exec() doesn't return? -=item A Method is Simply a Subroutine +=item How do I do fancy stuff with the keyboard/screen/mouse? -=item Method Invocation +Keyboard, Screen, Mouse -=item Indirect Object Syntax +=item How do I print something out in color? -=item Default UNIVERSAL methods +=item How do I read just one key without waiting for a return key? -isa(CLASS), can(METHOD), VERSION( [NEED] ) +=item How do I check whether input is ready on the keyboard? -=item Destructors +=item How do I clear the screen? -=item Summary +=item How do I get the screen size? -=item Two-Phased Garbage Collection +=item How do I ask the user for a password? -=back +=item How do I read and write the serial port? -=item SEE ALSO +lockfiles, open mode, end of line, flushing output, non-blocking input -=back +=item How do I decode encrypted password files? -=head2 perlbot - Bag'o Object Tricks (the BOT) +=item How do I start a process in the background? -=over 4 +STDIN, STDOUT, and STDERR are shared, Signals, Zombies -=item DESCRIPTION +=item How do I trap control characters/signals? -=item OO SCALING TIPS +=item How do I modify the shadow password file on a Unix system? -=item INSTANCE VARIABLES +=item How do I set the time and date? -=item SCALAR INSTANCE VARIABLES +=item How can I sleep() or alarm() for under a second? -=item INSTANCE VARIABLE INHERITANCE +=item How can I measure time under a second? -=item OBJECT RELATIONSHIPS +=item How can I do an atexit() or setjmp()/longjmp()? (Exception handling) -=item OVERRIDING SUPERCLASS METHODS +=item Why doesn't my sockets program work under System V (Solaris)? What +does the error message "Protocol not supported" mean? -=item USING RELATIONSHIP WITH SDBM +=item How can I call my system's unique C functions from Perl? -=item THINKING OF CODE REUSE +=item Where do I get the include files to do ioctl() or syscall()? -=item CLASS CONTEXT AND THE OBJECT +=item Why do setuid perl scripts complain about kernel problems? -=item INHERITING A CONSTRUCTOR +=item How can I open a pipe both to and from a command? -=item DELEGATION +=item Why can't I get the output of a command with system()? -=back +=item How can I capture STDERR from an external command? -=head2 perltie - how to hide an object class in a simple variable +=item Why doesn't open() return an error when a pipe open fails? -=over 4 +=item What's wrong with using backticks in a void context? -=item SYNOPSIS +=item How can I call backticks without shell processing? -=item DESCRIPTION +=item Why can't my script read from STDIN after I gave it EOF (^D on Unix, +^Z on MS-DOS)? -=over 4 +=item How can I convert my shell script to perl? -=item Tying Scalars +=item Can I use perl to run a telnet or ftp session? -TIESCALAR classname, LIST, FETCH this, STORE this, value, UNTIE this, -DESTROY this +=item How can I write expect in Perl? -=item Tying Arrays +=item Is there a way to hide perl's command line from programs such as +"ps"? -TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value, -FETCHSIZE this, STORESIZE this, count, EXTEND this, count, EXISTS this, -key, DELETE this, key, CLEAR this, PUSH this, LIST, POP this, SHIFT this, -UNSHIFT this, LIST, SPLICE this, offset, length, LIST, UNTIE this, DESTROY -this +=item I {changed directory, modified my environment} in a perl script. How +come the change disappeared when I exited the script? How do I get my +changes to be visible? -=item Tying Hashes +Unix -USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST, FETCH this, key, STORE -this, key, value, DELETE this, key, CLEAR this, EXISTS this, key, FIRSTKEY -this, NEXTKEY this, lastkey, UNTIE this, DESTROY this +=item How do I close a process's filehandle without waiting for it to +complete? -=item Tying FileHandles +=item How do I fork a daemon process? -TIEHANDLE classname, LIST, WRITE this, LIST, PRINT this, LIST, PRINTF this, -LIST, READ this, LIST, READLINE this, GETC this, CLOSE this, UNTIE this, -DESTROY this +=item How do I find out if I'm running interactively or not? -=item UNTIE this +=item How do I timeout a slow event? -=item The C Gotcha +=item How do I set CPU limits? -=back +=item How do I avoid zombies on a Unix system? -=item SEE ALSO +=item How do I use an SQL database? -=item BUGS +=item How do I make a system() exit on control-C? -=item AUTHOR +=item How do I open a file without blocking? -=back +=item How do I install a module from CPAN? -=head2 perlipc - Perl interprocess communication (signals, fifos, pipes, -safe subprocesses, sockets, and semaphores) +=item What's the difference between require and use? -=over 4 +=item How do I keep my own module/library directory? -=item DESCRIPTION +=item How do I add the directory my program lives in to the module/library +search path? -=item Signals +=item How do I add a directory to my include path at runtime? -=item Named Pipes +=item What is socket.ph and where do I get it? -=over 4 +=back -=item WARNING +=item AUTHOR AND COPYRIGHT =back -=item Using open() for IPC +=head2 perlfaq9 - Networking ($Revision: 1.15 $, $Date: 2003/01/31 17:36:57 +$) =over 4 -=item Filehandles +=item DESCRIPTION -=item Background Processes +=over 4 -=item Complete Dissociation of Child from Parent +=item What is the correct form of response from a CGI script? -=item Safe Pipe Opens +=item My CGI script runs from the command line but not the browser. (500 +Server Error) -=item Bidirectional Communication with Another Process +=item How can I get better error messages from a CGI program? -=item Bidirectional Communication with Yourself +=item How do I remove HTML from a string? -=back +=item How do I extract URLs? -=item Sockets: Client/Server Communication +=item How do I download a file from the user's machine? How do I open a +file on another machine? -=over 4 +=item How do I make a pop-up menu in HTML? -=item Internet Line Terminators +=item How do I fetch an HTML file? -=item Internet TCP Clients and Servers +=item How do I automate an HTML form submission? -=item Unix-Domain TCP Clients and Servers +=item How do I decode or create those %-encodings on the web? -=back +=item How do I redirect to another page? -=item TCP Clients with IO::Socket +=item How do I put a password on my web pages? -=over 4 +=item How do I edit my .htpasswd and .htgroup files with Perl? -=item A Simple Client +=item How do I make sure users can't enter values into a form that cause my +CGI script to do bad things? -C, C, C +=item How do I parse a mail header? -=item A Webget Client +=item How do I decode a CGI form? -=item Interactive Client with IO::Socket +=item How do I check a valid mail address? -=back +=item How do I decode a MIME/BASE64 string? -=item TCP Servers with IO::Socket +=item How do I return the user's mail address? -Proto, LocalPort, Listen, Reuse +=item How do I send mail? -=item UDP: Message Passing +=item How do I use MIME to make an attachment to a mail message? -=item SysV IPC +=item How do I read mail? -=item NOTES +=item How do I find out my hostname/domainname/IP address? -=item BUGS +=item How do I fetch a news article or the active newsgroups? -=item AUTHOR +=item How do I fetch/put an FTP file? -=item SEE ALSO +=item How can I do RPC in Perl? =back -=head2 perlfork - Perl's fork() emulation (EXPERIMENTAL, subject to change) +=item AUTHOR AND COPYRIGHT -=over 4 +=back -=item SYNOPSIS +=head2 perlsyn - Perl syntax + +=over 4 =item DESCRIPTION =over 4 -=item Behavior of other Perl features in forked pseudo-processes +=item Declarations -$$ or $PROCESS_ID, %ENV, chdir() and all other builtins that accept -filenames, wait() and waitpid(), kill(), exec(), exit(), Open handles to -files, directories and network sockets +=item Comments -=item Resource limits +=item Simple Statements -=item Killing the parent process +=item Compound Statements -=item Lifetime of the parent process and pseudo-processes +=item Loop Control -=item CAVEATS AND LIMITATIONS +=item For Loops -BEGIN blocks, Open filehandles, Forking pipe open() not yet implemented, -Global state maintained by XSUBs, Interpreter embedded in larger -application, Thread-safety of extensions +=item Foreach Loops -=back +=item Basic BLOCKs and Switch Statements -=item BUGS +=item Goto -=item AUTHOR +=item PODs: Embedded Documentation -=item SEE ALSO +=item Plain Old Comments (Not!) =back -=head2 perlnumber - semantics of numbers and numeric operations in Perl +=back -=over 4 +=head2 perldata - Perl data types -=item SYNOPSIS +=over 4 =item DESCRIPTION -=item Storing numbers +=over 4 -=item Numeric operators and numeric conversions +=item Variable names -=item Flavors of Perl numeric operations +=item Context -Arithmetic operators except, C, Arithmetic operators except, -C, Bitwise operators, C, Bitwise operators, C, Operators which expect an integer, Operators which expect a -string +=item Scalar values -=item AUTHOR +=item Scalar value constructors -=item SEE ALSO +=item List value constructors -=back +=item Subscripts -=head2 perlthrtut - tutorial on threads in Perl +=item Slices -=over 4 +=item Typeglobs and Filehandles -=item DESCRIPTION +=back + +=item SEE ALSO =back -=head2 perlothrtut - old tutorial on threads in Perl +=head2 perlop - Perl operators and precedence =over 4 -=item DESCRIPTION - -=item What Is A Thread Anyway? +=item SYNOPSIS -=item Threaded Program Models +=item DESCRIPTION =over 4 -=item Boss/Worker +=item Terms and List Operators (Leftward) -=item Work Crew +=item The Arrow Operator -=item Pipeline +=item Auto-increment and Auto-decrement -=back +=item Exponentiation -=item Native threads +=item Symbolic Unary Operators -=item What kind of threads are perl threads? +=item Binding Operators -=item Threadsafe Modules +=item Multiplicative Operators -=item Thread Basics +=item Additive Operators -=over 4 +=item Shift Operators -=item Basic Thread Support +=item Named Unary Operators -=item Creating Threads +=item Relational Operators -=item Giving up control +=item Equality Operators -=item Waiting For A Thread To Exit +=item Bitwise And -=item Errors In Threads +=item Bitwise Or and Exclusive Or -=item Ignoring A Thread +=item C-style Logical And -=back +=item C-style Logical Or -=item Threads And Data +=item C-style Logical Defined-Or -=over 4 +=item Range Operators -=item Shared And Unshared Data +=item Conditional Operator -=item Thread Pitfall: Races +=item Assignment Operators -=item Controlling access: lock() +=item Comma Operator -=item Thread Pitfall: Deadlocks +=item List Operators (Rightward) -=item Queues: Passing Data Around +=item Logical Not -=back +=item Logical And -=item Threads And Code +=item Logical or, Defined or, and Exclusive Or -=over 4 +=item C Operators Missing From Perl -=item Semaphores: Synchronizing Data Access +unary &, unary *, (TYPE) -Basic semaphores, Advanced Semaphores +=item Quote and Quote-like Operators -=item Attributes: Restricting Access To Subroutines +=item Regexp Quote-Like Operators -=item Subroutine Locks +?PATTERN?, m/PATTERN/cgimosx, /PATTERN/cgimosx, q/STRING/, C<'STRING'>, +qq/STRING/, "STRING", qr/STRING/imosx, qx/STRING/, `STRING`, qw/STRING/, +s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cds, +y/SEARCHLIST/REPLACEMENTLIST/cds, <, C, C, C, C, C<''>, C, C<"">, +C<``>, C, C, C<< >>, C, C, C, +C,, Interpolation of regular expressions, Optimization of +regular expressions -=back +=item I/O Operators -=item General Thread Utility Routines +=item Constant Folding -=over 4 +=item Bitwise String Operators -=item What Thread Am I In? +=item Integer Arithmetic -=item Thread IDs +=item Floating-point Arithmetic -=item Are These Threads The Same? +=item Bigger Numbers -=item What Threads Are Running? +=back =back -=item A Complete Example +=head2 perlsub - Perl subroutines -=item Conclusion +=over 4 -=item Bibliography +=item SYNOPSIS + +=item DESCRIPTION =over 4 -=item Introductory Texts +=item Private Variables via my() -=item OS-Related References +=item Persistent Private Variables -=item Other References +=item Temporary Values via local() -=back +=item Lvalue subroutines -=item Acknowledgements +Lvalue subroutines are EXPERIMENTAL -=item AUTHOR +=item Passing Symbol Table Entries (typeglobs) -=item Copyrights +=item When to Still Use local() + +=item Pass by Reference + +=item Prototypes + +=item Constant Functions + +=item Overriding Built-in Functions + +=item Autoloading + +=item Subroutine Attributes =back -=head2 perlport - Writing portable Perl +=item SEE ALSO + +=back + +=head2 perlfunc - Perl builtin functions =over 4 =item DESCRIPTION -Not all Perl programs have to be portable, Nearly all of Perl already I -portable +=over 4 -=item ISSUES +=item Perl Functions by Category -=over 4 +Functions for SCALARs or strings, Regular expressions and pattern matching, +Numeric functions, Functions for real @ARRAYs, Functions for list data, +Functions for real %HASHes, Input and output functions, Functions for fixed +length data or records, Functions for filehandles, files, or directories, +Keywords related to the control flow of your perl program, Keywords related +to scoping, Miscellaneous functions, Functions for processes and process +groups, Keywords related to perl modules, Keywords related to classes and +object-orientedness, Low-level socket functions, System V interprocess +communication functions, Fetching user and group info, Fetching network +info, Time-related functions, Functions new in perl5, Functions obsoleted +in perl5 -=item Newlines +=item Portability -=item Numbers endianness and Width +=item Alphabetical Listing of Perl Functions -=item Files and Filesystems +-I FILEHANDLE, -I EXPR, -I, abs VALUE, abs, accept +NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME, +binmode FILEHANDLE, LAYER, binmode FILEHANDLE, bless REF,CLASSNAME, bless +REF, caller EXPR, caller, chdir EXPR, chmod LIST, chomp VARIABLE, chomp( +LIST ), chomp, chop VARIABLE, chop( LIST ), chop, chown LIST, chr NUMBER, +chr, chroot FILENAME, chroot, close FILEHANDLE, close, closedir DIRHANDLE, +connect SOCKET,NAME, continue BLOCK, cos EXPR, cos, crypt PLAINTEXT,SALT, +dbmclose HASH, dbmopen HASH,DBNAME,MASK, defined EXPR, defined, delete +EXPR, die LIST, do BLOCK, do SUBROUTINE(LIST), do EXPR, dump LABEL, dump, +each HASH, eof FILEHANDLE, eof (), eof, eval EXPR, eval BLOCK, exec LIST, +exec PROGRAM LIST, exists EXPR, exit EXPR, exp EXPR, exp, fcntl +FILEHANDLE,FUNCTION,SCALAR, fileno FILEHANDLE, flock FILEHANDLE,OPERATION, +fork, format, formline PICTURE,LIST, getc FILEHANDLE, getc, getlogin, +getpeername SOCKET, getpgrp PID, getppid, getpriority WHICH,WHO, getpwnam +NAME, getgrnam NAME, gethostbyname NAME, getnetbyname NAME, getprotobyname +NAME, getpwuid UID, getgrgid GID, getservbyname NAME,PROTO, gethostbyaddr +ADDR,ADDRTYPE, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER, +getservbyport PORT,PROTO, getpwent, getgrent, gethostent, getnetent, +getprotoent, getservent, setpwent, setgrent, sethostent STAYOPEN, setnetent +STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent, +endhostent, endnetent, endprotoent, endservent, getsockname SOCKET, +getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR, glob, gmtime EXPR, goto LABEL, +goto EXPR, goto &NAME, grep BLOCK LIST, grep EXPR,LIST, hex EXPR, hex, +import, index STR,SUBSTR,POSITION, index STR,SUBSTR, int EXPR, int, ioctl +FILEHANDLE,FUNCTION,SCALAR, join EXPR,LIST, keys HASH, kill SIGNAL, LIST, +last LABEL, last, lc EXPR, lc, lcfirst EXPR, lcfirst, length EXPR, length, +link OLDFILE,NEWFILE, listen SOCKET,QUEUESIZE, local EXPR, localtime EXPR, +lock THING, log EXPR, log, lstat EXPR, lstat, m//, map BLOCK LIST, map +EXPR,LIST, mkdir FILENAME,MASK, mkdir FILENAME, msgctl ID,CMD,ARG, msgget +KEY,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, msgsnd ID,MSG,FLAGS, my EXPR, my +TYPE EXPR, my EXPR : ATTRS, my TYPE EXPR : ATTRS, next LABEL, next, no +Module VERSION LIST, no Module VERSION, no Module LIST, no Module, oct +EXPR, oct, open FILEHANDLE,EXPR, open FILEHANDLE,MODE,EXPR, open +FILEHANDLE,MODE,EXPR,LIST, open FILEHANDLE,MODE,REFERENCE, open FILEHANDLE, +opendir DIRHANDLE,EXPR, ord EXPR, ord, our EXPR, our EXPR TYPE, our EXPR : +ATTRS, our TYPE EXPR : ATTRS, pack TEMPLATE,LIST, package NAMESPACE, +package, pipe READHANDLE,WRITEHANDLE, pop ARRAY, pop, pos SCALAR, pos, +print FILEHANDLE LIST, print LIST, print, printf FILEHANDLE FORMAT, LIST, +printf FORMAT, LIST, prototype FUNCTION, push ARRAY,LIST, q/STRING/, +qq/STRING/, qr/STRING/, qx/STRING/, qw/STRING/, quotemeta EXPR, quotemeta, +rand EXPR, rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET, read +FILEHANDLE,SCALAR,LENGTH, readdir DIRHANDLE, readline EXPR, readlink EXPR, +readlink, readpipe EXPR, recv SOCKET,SCALAR,LENGTH,FLAGS, redo LABEL, redo, +ref EXPR, ref, rename OLDNAME,NEWNAME, require VERSION, require EXPR, +require, reset EXPR, reset, return EXPR, return, reverse LIST, rewinddir +DIRHANDLE, rindex STR,SUBSTR,POSITION, rindex STR,SUBSTR, rmdir FILENAME, +rmdir, s///, scalar EXPR, seek FILEHANDLE,POSITION,WHENCE, seekdir +DIRHANDLE,POS, select FILEHANDLE, select, select RBITS,WBITS,EBITS,TIMEOUT, +semctl ID,SEMNUM,CMD,ARG, semget KEY,NSEMS,FLAGS, semop KEY,OPSTRING, send +SOCKET,MSG,FLAGS,TO, send SOCKET,MSG,FLAGS, setpgrp PID,PGRP, setpriority +WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shift ARRAY, +shift, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE, +shmwrite ID,STRING,POS,SIZE, shutdown SOCKET,HOW, sin EXPR, sin, sleep +EXPR, sleep, socket SOCKET,DOMAIN,TYPE,PROTOCOL, socketpair +SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, sort SUBNAME LIST, sort BLOCK LIST, +sort LIST, splice ARRAY,OFFSET,LENGTH,LIST, splice ARRAY,OFFSET,LENGTH, +splice ARRAY,OFFSET, splice ARRAY, split /PATTERN/,EXPR,LIMIT, split +/PATTERN/,EXPR, split /PATTERN/, split, sprintf FORMAT, LIST, format +parameter index, flags, vector flag, (minimum) width, precision, or maximum +width, size, order of arguments, sqrt EXPR, sqrt, srand EXPR, srand, stat +FILEHANDLE, stat EXPR, stat, study SCALAR, study, sub NAME BLOCK, sub NAME +(PROTO) BLOCK, sub NAME : ATTRS BLOCK, sub NAME (PROTO) : ATTRS BLOCK, +substr EXPR,OFFSET,LENGTH,REPLACEMENT, substr EXPR,OFFSET,LENGTH, substr +EXPR,OFFSET, symlink OLDFILE,NEWFILE, syscall LIST, sysopen +FILEHANDLE,FILENAME,MODE, sysopen FILEHANDLE,FILENAME,MODE,PERMS, sysread +FILEHANDLE,SCALAR,LENGTH,OFFSET, sysread FILEHANDLE,SCALAR,LENGTH, sysseek +FILEHANDLE,POSITION,WHENCE, system LIST, system PROGRAM LIST, syswrite +FILEHANDLE,SCALAR,LENGTH,OFFSET, syswrite FILEHANDLE,SCALAR,LENGTH, +syswrite FILEHANDLE,SCALAR, tell FILEHANDLE, tell, telldir DIRHANDLE, tie +VARIABLE,CLASSNAME,LIST, tied VARIABLE, time, times, tr///, truncate +FILEHANDLE,LENGTH, truncate EXPR,LENGTH, uc EXPR, uc, ucfirst EXPR, +ucfirst, umask EXPR, umask, undef EXPR, undef, unlink LIST, unlink, unpack +TEMPLATE,EXPR, unpack TEMPLATE, untie VARIABLE, unshift ARRAY,LIST, use +Module VERSION LIST, use Module VERSION, use Module LIST, use Module, use +VERSION, utime LIST, values HASH, vec EXPR,OFFSET,BITS, wait, waitpid +PID,FLAGS, wantarray, warn LIST, write FILEHANDLE, write EXPR, write, y/// -=item System Interaction +=back -=item Interprocess Communication (IPC) +=back -=item External Subroutines (XS) +=head2 perlopentut - tutorial on opening things in Perl -=item Standard Modules +=over 4 -=item Time and Date +=item DESCRIPTION -=item Character sets and character encoding +=item Open E la shell -=item Internationalisation +=over 4 -=item System Resources +=item Simple Opens -=item Security +=item Indirect Filehandles -=item Style +=item Pipe Opens -=back +=item The Minus File -=item CPAN Testers +=item Mixing Reads and Writes -Mailing list: cpan-testers@perl.org, Testing results: -http://testers.cpan.org/ +=item Filters -=item PLATFORMS +=back + +=item Open E la C =over 4 -=item Unix +=item Permissions E la mode -=item DOS and Derivatives +=back -=item S +=item Obscure Open Tricks -=item VMS +=over 4 -=item VOS +=item Re-Opening Files (dups) -=item EBCDIC Platforms +=item Dispelling the Dweomer -=item Acorn RISC OS +=item Paths as Opens -=item Other perls +=item Single Argument Open + +=item Playing with STDIN and STDOUT =back -=item FUNCTION IMPLEMENTATIONS +=item Other I/O Issues =over 4 -=item Alphabetical Listing of Perl Functions +=item Opening Non-File Files --I FILEHANDLE, -I EXPR, -I, alarm SECONDS, alarm, binmode -FILEHANDLE, chmod LIST, chown LIST, chroot FILENAME, chroot, crypt -PLAINTEXT,SALT, dbmclose HASH, dbmopen HASH,DBNAME,MODE, dump LABEL, exec -LIST, exit EXPR, exit, fcntl FILEHANDLE,FUNCTION,SCALAR, flock -FILEHANDLE,OPERATION, fork, getlogin, getpgrp PID, getppid, getpriority -WHICH,WHO, getpwnam NAME, getgrnam NAME, getnetbyname NAME, getpwuid UID, -getgrgid GID, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER, -getservbyport PORT,PROTO, getpwent, getgrent, gethostent, getnetent, -getprotoent, getservent, setpwent, setgrent, sethostent STAYOPEN, setnetent -STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent, -endhostent, endnetent, endprotoent, endservent, getsockopt -SOCKET,LEVEL,OPTNAME, glob EXPR, glob, ioctl FILEHANDLE,FUNCTION,SCALAR, -kill SIGNAL, LIST, link OLDFILE,NEWFILE, lstat FILEHANDLE, lstat EXPR, -lstat, msgctl ID,CMD,ARG, msgget KEY,FLAGS, msgsnd ID,MSG,FLAGS, msgrcv -ID,VAR,SIZE,TYPE,FLAGS, open FILEHANDLE,EXPR, open FILEHANDLE, pipe -READHANDLE,WRITEHANDLE, readlink EXPR, readlink, select -RBITS,WBITS,EBITS,TIMEOUT, semctl ID,SEMNUM,CMD,ARG, semget -KEY,NSEMS,FLAGS, semop KEY,OPSTRING, setgrent, setpgrp PID,PGRP, -setpriority WHICH,WHO,PRIORITY, setpwent, setsockopt -SOCKET,LEVEL,OPTNAME,OPTVAL, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, -shmread ID,VAR,POS,SIZE, shmwrite ID,STRING,POS,SIZE, sockatmark SOCKET, -socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, stat FILEHANDLE, stat -EXPR, stat, symlink OLDFILE,NEWFILE, syscall LIST, sysopen -FILEHANDLE,FILENAME,MODE,PERMS, system LIST, times, truncate -FILEHANDLE,LENGTH, truncate EXPR,LENGTH, umask EXPR, umask, utime LIST, -wait, waitpid PID,FLAGS +=item Opening Named Pipes -=back +=item Opening Sockets -=item CHANGES +=item Binary Files -v1.48, 02 February 2001, v1.47, 22 March 2000, v1.46, 12 February 2000, -v1.45, 20 December 1999, v1.44, 19 July 1999, v1.43, 24 May 1999, v1.42, 22 -May 1999, v1.41, 19 May 1999, v1.40, 11 April 1999, v1.39, 11 February -1999, v1.38, 31 December 1998, v1.37, 19 December 1998, v1.36, 9 September -1998, v1.35, 13 August 1998, v1.33, 06 August 1998, v1.32, 05 August 1998, -v1.30, 03 August 1998, v1.23, 10 July 1998 +=item File Locking -=item Supported Platforms +=item IO Layers -=item SEE ALSO +=back -=item AUTHORS / CONTRIBUTORS +=item SEE ALSO -=item VERSION +=item AUTHOR and COPYRIGHT + +=item HISTORY =back -=head2 perllocale - Perl locale handling (internationalization and -localization) +=head2 perlpacktut - tutorial on C and C =over 4 =item DESCRIPTION -=item PREPARING TO USE LOCALES +=item The Basic Principle -=item USING LOCALES +=item Packing Text + +=item Packing Numbers =over 4 -=item The use locale pragma +=item Integers -=item The setlocale function +=item Unpacking a Stack Frame -=item Finding locales +=item How to Eat an Egg on a Net -=item LOCALE PROBLEMS +=item Floating point Numbers -=item Temporarily fixing locale problems +=back -=item Permanently fixing locale problems +=item Exotic Templates -=item Permanently fixing your system's locale configuration +=over 4 -=item Fixing system locale configuration +=item Bit Strings -=item The localeconv function +=item Uuencoding -=item I18N::Langinfo +=item Doing Sums -=back +=item Unicode -=item LOCALE CATEGORIES +=item Another Portable Binary Encoding -=over 4 +=back -=item Category LC_COLLATE: Collation +=item Template Grouping -=item Category LC_CTYPE: Character Types +=item Lengths and Widths -=item Category LC_NUMERIC: Numeric Formatting +=over 4 -=item Category LC_MONETARY: Formatting of monetary amounts +=item String Lengths -=item LC_TIME +=item Dynamic Templates -=item Other categories +=item Counting Repetitions =back -=item SECURITY +=item Packing and Unpacking C Structures -=item ENVIRONMENT +=over 4 -PERL_BADLANG, LC_ALL, LANGUAGE, LC_CTYPE, LC_COLLATE, LC_MONETARY, -LC_NUMERIC, LC_TIME, LANG +=item The Alignment Pit -=item NOTES +=item Alignment, Take 2 -=over 4 +=item Alignment, Take 3 -=item Backward compatibility +=item Pointers for How to Use Them -=item I18N:Collate obsolete +=back -=item Sort speed and memory use impacts +=item Pack Recipes -=item write() and LC_NUMERIC +=item Funnies Section -=item Freely available locale definitions +=item Authors -=item I18n and l10n +=back -=item An imperfect standard +=head2 perlpod - the Plain Old Documentation format -=back +=over 4 -=item BUGS +=item DESCRIPTION =over 4 -=item Broken systems +=item Ordinary Paragraph -=back +=item Verbatim Paragraph -=item SEE ALSO +=item Command Paragraph -=item HISTORY +C<=head1 I>, C<=head2 I>, C<=head3 I>, C<=head4 I>, C<=over I>, C<=item +I>, C<=back>, C<=cut>, C<=pod>, C<=begin I>, C<=end +I>, C<=for I I> -=back +=item Formatting Codes -=head2 perluniintro - Perl Unicode introduction +CtextE> -- italic text, CtextE> -- bold text, +CcodeE> -- code text, CnameE> -- a hyperlink, +CescapeE> -- a character escape, CfilenameE> -- used +for filenames, CtextE> -- text contains non-breaking spaces, +Ctopic nameE> -- an index entry, CE> -- a null +(zero-effect) formatting code -=over 4 +=item The Intent -=item DESCRIPTION +=item Embedding Pods in Perl Modules -=over 4 +=item Hints for Writing Pod -=item Unicode +=back -=item Perl's Unicode Support +=item SEE ALSO -=item Perl's Unicode Model +=item AUTHOR -=item Creating Unicode +=back -=item Handling Unicode +=head2 perlpodspec - Plain Old Documentation: format specification and +notes -=item Legacy Encodings +=over 4 -=item Unicode I/O +=item DESCRIPTION -=item Displaying Unicode As Text +=item Pod Definitions -=item Special Cases +=item Pod Commands -=item Advanced Topics +"=head1", "=head2", "=head3", "=head4", "=pod", "=cut", "=over", "=item", +"=back", "=begin formatname", "=end formatname", "=for formatname text..." -=item Miscellaneous +=item Pod Formatting Codes -=item Questions With Answers +CtextE> -- italic text, CtextE> -- bold text, +CcodeE> -- code text, CfilenameE> -- style for +filenames, Ctopic nameE> -- an index entry, CE> -- a +null (zero-effect) formatting code, CnameE> -- a hyperlink, +CescapeE> -- a character escape, CtextE> -- text +contains non-breaking spaces -Will My Old Scripts Break?, How Do I Make My Scripts Work With Unicode?, -How Do I Know Whether My String Is In Unicode?, How Do I Detect Data That's -Not Valid In a Particular Encoding, How Do I Convert Binary Data Into a -Particular Encoding, Or Vice Versa?, How Do I Display Unicode? How Do I -Input Unicode?, How Does Unicode Work With Traditional Locales? +=item Notes on Implementing Pod Processors -=item Hexadecimal Notation +=item About LE...E Codes -=item Further Resources +First:, Second:, Third:, Fourth:, Fifth:, Sixth: -=back +=item About =over...=back Regions -=item UNICODE IN OLDER PERLS +=item About Data Paragraphs and "=begin/=end" Regions =item SEE ALSO -=item ACKNOWLEDGEMENTS - -=item AUTHOR, COPYRIGHT, AND LICENSE +=item AUTHOR =back -=head2 perlunicode - Unicode support in Perl +=head2 perlrun - how to execute the Perl interpreter =over 4 +=item SYNOPSIS + =item DESCRIPTION =over 4 -=item Important Caveats - -Input and Output Disciplines, Regular Expressions, C still needed -to enable UTF-8/UTF-EBCDIC in scripts - -=item Byte and Character semantics +=item #! and quoting on non-Unix systems -=item Effects of character semantics +OS/2, MS-DOS, Win95/NT, Macintosh, VMS -=item Scripts +=item Location of Perl -=item Blocks +=item Command Switches -=item Character encodings for input and output +B<-0>[I], B<-A [I]>, B<-a>, B<-C +[I]>, B<-c>, B<-d>, B<-d:>I, B<-D>I, +B<-D>I, B<-e> I, B<-F>I, B<-h>, +B<-i>[I], B<-I>I, B<-l>[I], +B<-m>[B<->]I, B<-M>[B<->]I, B<-M>[B<->]I<'module ...'>, +B<-[mM]>[B<->]I, B<-n>, B<-p>, B<-P>, B<-s>, B<-S>, +B<-t>, B<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I, B<-w>, B<-W>, +B<-X>, B<-x> I =back -=item CAVEATS - -=item UNICODE REGULAR EXPRESSION SUPPORT LEVEL - -=over 4 +=item ENVIRONMENT -=item Unicode Encodings +HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLIO, :bytes, :crlf, :mmap, +:perlio, :pop, :raw, :stdio, :unix, :utf8, :win32, PERLIO_DEBUG, PERLLIB, +PERL5DB, PERL5SHELL (specific to the Win32 port), PERL_DEBUG_MSTATS, +PERL_DESTRUCT_LEVEL, PERL_ENCODING, PERL_HASH_SEED, PERL_HASH_SEED_DEBUG, +PERL_ROOT (specific to the VMS port), PERL_SIGNALS, PERL_UNICODE, SYS$LOGIN +(specific to the VMS port) -UTF-8, UTF-EBCDIC, UTF-16, UTF-16BE, UTF16-LE, Surrogates, and BOMs (Byte -Order Marks), UTF-32, UTF-32BE, UTF32-LE, UCS-2, UCS-4, UTF-7 +=back -=item Security Implications of Malformed UTF-8 +=head2 perldiag - various Perl diagnostics -=item Unicode in Perl on EBCDIC +=over 4 -=item Using Unicode in XS +=item DESCRIPTION =back -=item SEE ALSO +=head2 perllexwarn - Perl Lexical Warnings -=back +=over 4 -=head2 perlebcdic - Considerations for running Perl on EBCDIC platforms +=item DESCRIPTION =over 4 -=item DESCRIPTION +=item Default Warnings and Optional Warnings -=item COMMON CHARACTER CODE SETS +=item What's wrong with B<-w> and C<$^W> -=over 4 +=item Controlling Warnings from the Command Line -=item ASCII +B<-w>, B<-W>, B<-X> -=item ISO 8859 +=item Backward Compatibility -=item Latin 1 (ISO 8859-1) +=item Category Hierarchy -=item EBCDIC +=item Fatal Warnings -=item 13 variant characters +=item Reporting Warnings from a Module -=item 0037 +=back -=item 1047 +=item TODO -=item POSIX-BC +=item SEE ALSO -=item Unicode and UTF +=item AUTHOR =back -=item SINGLE OCTET TABLES +=head2 perldebug - Perl debugging -recipe 0, recipe 1, recipe 2, recipe 3, recipe 4, recipe 5, recipe 6 +=over 4 -=item IDENTIFYING CHARACTER CODE SETS +=item DESCRIPTION -=item CONVERSIONS +=item The Perl Debugger =over 4 -=item tr/// +=item Debugger Commands -=item iconv +h, h [command], h h, p expr, x [maxdepth] expr, V [pkg [vars]], X [vars], y +[level [vars]], T, s [expr], n [expr], r, , c [line|sub], l, l +min+incr, l min-max, l line, l subname, -, v [line], f filename, /pattern/, +?pattern?, L [abw], S [[!]regex], t, t expr, b, b [line] [condition], b +subname [condition], b postpone subname [condition], b load filename, b +compile subname, B line, B *, a [line] command, A line, A *, w expr, W +expr, W *, o, o booloption .., o anyoption? .., o option=value .., < ?, < [ +command ], < *, << command, > ?, > command, > *, >> command, { ?, { [ +command ], { *, {{ command, ! number, ! -number, ! pattern, !! cmd, source +file, H -number, q or ^D, R, |dbcmd, ||dbcmd, command, m expr, M, man +[manpage] -=item C RTL +=item Configurable Options -=back +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, C, +C -=item OPERATOR DIFFERENCES +=item Debugger input/output -=item FUNCTION DIFFERENCES +Prompt, Multiline commands, Stack backtrace, Line Listing Format, Frame +listing -chr(), ord(), pack(), print(), printf(), sort(), sprintf(), unpack() +=item Debugging compile-time statements -=item REGULAR EXPRESSION DIFFERENCES +=item Debugger Customization -=item SOCKETS +=item Readline Support -=item SORTING +=item Editor Support for Debugging -=over 4 +=item The Perl Profiler -=item Ignore ASCII vs. EBCDIC sort differences. +=back -=item MONO CASE then sort data. +=item Debugging regular expressions -=item Convert, sort data, then re convert. +=item Debugging memory usage -=item Perform sorting on one type of machine only. +=item SEE ALSO + +=item BUGS =back -=item TRANSFORMATION FORMATS +=head2 perlvar - Perl predefined variables =over 4 -=item URL decoding and encoding +=item DESCRIPTION -=item uu encoding and decoding +=over 4 -=item Quoted-Printable encoding and decoding +=item Predefined Names -=item Caesarian ciphers +$ARG, $_, $a, $b, $>, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $', +$LAST_PAREN_MATCH, $+, $^N, @LAST_MATCH_END, @+, +HANDLE->input_line_number(EXPR), $INPUT_LINE_NUMBER, $NR, $, +IO::Handle->input_record_separator(EXPR), $INPUT_RECORD_SEPARATOR, $RS, $/, +HANDLE->autoflush(EXPR), $OUTPUT_AUTOFLUSH, $|, +IO::Handle->output_field_separator EXPR, $OUTPUT_FIELD_SEPARATOR, $OFS, $,, +IO::Handle->output_record_separator EXPR, $OUTPUT_RECORD_SEPARATOR, $ORS, +$\, $LIST_SEPARATOR, $", $SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#, +HANDLE->format_page_number(EXPR), $FORMAT_PAGE_NUMBER, $%, +HANDLE->format_lines_per_page(EXPR), $FORMAT_LINES_PER_PAGE, $=, +HANDLE->format_lines_left(EXPR), $FORMAT_LINES_LEFT, $-, @LAST_MATCH_START, +@-, C<$`> is the same as C, C<$&> is the same as +C, C<$'> is the same as C, C<$1> is the same as C, C<$2> +is the same as C, C<$3> is the same as +C, HANDLE->format_name(EXPR), +$FORMAT_NAME, $~, HANDLE->format_top_name(EXPR), $FORMAT_TOP_NAME, $^, +IO::Handle->format_line_break_characters EXPR, +$FORMAT_LINE_BREAK_CHARACTERS, $:, IO::Handle->format_formfeed EXPR, +$FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A, $CHILD_ERROR, $?, ${^ENCODING}, +$OS_ERROR, $ERRNO, $!, %!, $EXTENDED_OS_ERROR, $^E, $EVAL_ERROR, $@, +$PROCESS_ID, $PID, $$, $REAL_USER_ID, $UID, $<, $EFFECTIVE_USER_ID, $EUID, +$>, $REAL_GROUP_ID, $GID, $(, $EFFECTIVE_GROUP_ID, $EGID, $), +$PROGRAM_NAME, $0, $[, $], $COMPILING, $^C, $DEBUGGING, $^D, +$SYSTEM_FD_MAX, $^F, $^H, %^H, $INPLACE_EDIT, $^I, $^M, $OSNAME, $^O, +${^OPEN}, $PERLDB, $^P, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, +0x100, 0x200, 0x400, $LAST_REGEXP_CODE_RESULT, $^R, +$EXCEPTIONS_BEING_CAUGHT, $^S, $BASETIME, $^T, ${^TAINT}, ${^UNICODE}, +$PERL_VERSION, $^V, $WARNING, $^W, ${^WARNING_BITS}, $EXECUTABLE_NAME, $^X, +ARGV, $ARGV, @ARGV, ARGVOUT, @F, @INC, @_, %INC, %ENV, $ENV{expr}, %SIG, +$SIG{expr} -=back +=item Error Indicators -=item Hashing order and checksums +=item Technical Note on the Syntax of Variable Names -=item I18N AND L10N +=back -=item MULTI OCTET CHARACTER SETS +=item BUGS -=item OS ISSUES +=back + +=head2 perlre - Perl regular expressions =over 4 -=item OS/400 +=item DESCRIPTION -IFS access +i, m, s, x -=item OS/390, z/OS +=over 4 -chcp, dataset access, OS/390, z/OS iconv, locales +=item Regular Expressions -=item VM/ESA? +[1], [2], [3], cntrl, graph, print, punct, xdigit -=item POSIX-BC? +=item Extended Patterns -=back +C<(?#text)>, C<(?imsx-imsx)>, C<(?:pattern)>, C<(?imsx-imsx:pattern)>, +C<(?=pattern)>, C<(?!pattern)>, C<(?<=pattern)>, C<(?, C<(?{ +code })>, C<(??{ code })>, C<< (?>pattern) >>, +C<(?(condition)yes-pattern|no-pattern)>, C<(?(condition)yes-pattern)> -=item BUGS +=item Backtracking -=item SEE ALSO +=item Version 8 Regular Expressions -=item REFERENCES +=item Warning on \1 vs $1 -=item HISTORY +=item Repeated patterns matching zero-length substring -=item AUTHOR +=item Combining pieces together + +C, C, C, C, C, C, +C, C, C, C, C, C<< (?>S) >>, C<(?=S)>, C<(?<=S)>, +C<(?!S)>, C<(?, C<(??{ EXPR })>, +C<(?(condition)yes-pattern|no-pattern)> + +=item Creating custom RE engines =back -=head2 perlsec - Perl security +=item BUGS + +=item SEE ALSO + +=back + +=head2 perlreref - Perl Regular Expressions Reference =over 4 @@ -2416,49 +2465,67 @@ chcp, dataset access, OS/390, z/OS iconv, locales =over 4 -=item Laundering and Detecting Tainted Data +=item OPERATORS -=item Switches On the "#!" Line +=item SYNTAX -=item Cleaning Up Your Path +=item ESCAPE SEQUENCES -=item Security Bugs +=item CHARACTER CLASSES -=item Protecting Your Programs +=item ANCHORS + +=item QUANTIFIERS + +=item EXTENDED CONSTRUCTS + +=item VARIABLES + +=item FUNCTIONS + +=item TERMINOLOGY =back +=item AUTHOR + =item SEE ALSO +=item THANKS + =back -=head2 perlmod - Perl modules (packages and symbol tables) +=head2 perlref - Perl references and nested data structures =over 4 +=item NOTE + =item DESCRIPTION =over 4 -=item Packages +=item Making References -=item Symbol Tables +=item Using References -=item Package Constructors and Destructors +=item Symbolic references -=item Perl Classes +=item Not-so-symbolic references -=item Perl Modules +=item Pseudo-hashes: Using an array as a hash -=item Making your module threadsafe +=item Function Templates =back +=item WARNING + =item SEE ALSO =back -=head2 perlmodinstall - Installing CPAN Modules +=head2 perlform - Perl formats =over 4 @@ -2466,248 +2533,215 @@ chcp, dataset access, OS/390, z/OS iconv, locales =over 4 -=item PREAMBLE - -B the file, B the file into a directory, B the -module (sometimes unnecessary), B the module +=item Format Variables =back -=item PORTABILITY +=item NOTES -=item HEY +=over 4 -=item AUTHOR +=item Footers -=item COPYRIGHT +=item Accessing Formatting Internals =back -=head2 perlmodlib - constructing new Perl modules and finding existing ones - -=over 4 +=item WARNINGS -=item DESCRIPTION +=back -=item THE PERL MODULE LIBRARY +=head2 perlobj - Perl objects =over 4 -=item Pragmatic Modules - -attributes, autouse, base, blib, bytes, charnames, constant, diagnostics, -encoding, fields, filetest, integer, less, locale, open, overload, sigtrap, -sort, strict, subs, utf8, vars, vmsish, warnings, warnings::register +=item DESCRIPTION -=item Standard Modules +=over 4 -AnyDBM_File, Attribute::Handlers, AutoLoader, AutoSplit, Benchmark, CGI, -CGI::Apache, CGI::Carp, CGI::Cookie, CGI::Fast, CGI::Pretty, CGI::Push, -CGI::Switch, CGI::Util, CPAN, CPAN::FirstTime, CPAN::Nox, Carp, -Carp::Heavy, Class::ISA, Class::Struct, Cwd, DB, Devel::SelfStubber, -Digest, DirHandle, Dumpvalue, English, Env, Exporter, Exporter::Heavy, -ExtUtils::Command, ExtUtils::Constant, ExtUtils::Embed, ExtUtils::Install, -ExtUtils::Installed, ExtUtils::Liblist, ExtUtils::MM_Cygwin, -ExtUtils::MM_NW5, ExtUtils::MM_OS2, ExtUtils::MM_Unix, ExtUtils::MM_VMS, -ExtUtils::MM_Win32, ExtUtils::MakeMaker, ExtUtils::Manifest, -ExtUtils::Mkbootstrap, ExtUtils::Mksymlists, ExtUtils::Packlist, -ExtUtils::testlib, Fatal, File::Basename, File::CheckTree, File::Compare, -File::Copy, File::DosGlob, File::Find, File::Path, File::Spec, -File::Spec::Cygwin, File::Spec::Epoc, File::Spec::Functions, -File::Spec::Mac, File::Spec::OS2, File::Spec::Unix, File::Spec::VMS, -File::Spec::Win32, File::Temp, File::stat, FileCache, FileHandle, -Filter::Simple, FindBin, Getopt::Long, Getopt::Std, I18N::Collate, -I18N::LangTags, I18N::LangTags::List, IPC::Open2, IPC::Open3, -Locale::Constants, Locale::Country, Locale::Currency, Locale::Language, -Locale::Maketext, Locale::Maketext::TPJ13, Math::BigFloat, Math::BigInt, -Math::BigInt::Calc, Math::Complex, Math::Trig, Memoize, -Memoize::AnyDBM_File, Memoize::Expire, Memoize::ExpireFile, -Memoize::ExpireTest, Memoize::NDBM_File, Memoize::SDBM_File, -Memoize::Storable, NEXT, Net::Cmd, Net::Config, Net::Domain, Net::FTP, -Net::NNTP, Net::Netrc, Net::POP3, Net::Ping, Net::SMTP, Net::Time, -Net::hostent, Net::libnetFAQ, Net::netent, Net::protoent, Net::servent, -PerlIO, Pod::Checker, Pod::Find, Pod::Functions, Pod::Html, -Pod::InputObjects, Pod::LaTeX, Pod::Man, Pod::ParseLink, Pod::ParseUtils, -Pod::Parser, Pod::Plainer, Pod::Select, Pod::Text, Pod::Text::Color, -Pod::Text::Overstrike, Pod::Text::Termcap, Pod::Usage, Pod::t::basic, -Search::Dict, SelectSaver, SelfLoader, Shell, Switch, Symbol, -Term::ANSIColor, Term::Cap, Term::Complete, Term::ReadLine, Test, -Test::Builder, Test::Harness, Test::More, Test::Simple, Test::Tutorial, -Text::Abbrev, Text::Balanced, Text::ParseWords, Text::Soundex, Text::Tabs, -Text::Wrap, Thread, Tie::Array, Tie::Handle, Tie::Hash, Tie::RefHash, -Tie::Scalar, Tie::SubstrHash, Time::Local, Time::gmtime, Time::localtime, -Time::tm, UNIVERSAL, Unicode::Collate, Unicode::UCD, User::grent, -User::pwent, Win32 +=item An Object is Simply a Reference -=item Extension Modules +=item A Class is Simply a Package -=back +=item A Method is Simply a Subroutine -=item CPAN +=item Method Invocation -=over 4 +=item Indirect Object Syntax -=item Africa +=item Default UNIVERSAL methods -=item Asia +isa(CLASS), can(METHOD), VERSION( [NEED] ) -=item Central America +=item Destructors -=item Europe +=item Summary -=item North America +=item Two-Phased Garbage Collection -=item Oceania +=back -=item South America +=item SEE ALSO =back -=item Modules: Creation, Use, and Abuse +=head2 perltie - how to hide an object class in a simple variable =over 4 -=item Guidelines for Module Creation +=item SYNOPSIS -=item Guidelines for Converting Perl 4 Library Scripts into Modules +=item DESCRIPTION -=item Guidelines for Reusing Application Code +=over 4 -=back +=item Tying Scalars -=item NOTE +TIESCALAR classname, LIST, FETCH this, STORE this, value, UNTIE this, +DESTROY this -=back +=item Tying Arrays -=head2 perlmodstyle - Perl module style guide +TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value, +FETCHSIZE this, STORESIZE this, count, EXTEND this, count, EXISTS this, +key, DELETE this, key, CLEAR this, PUSH this, LIST, POP this, SHIFT this, +UNSHIFT this, LIST, SPLICE this, offset, length, LIST, UNTIE this, DESTROY +this -=over 4 +=item Tying Hashes -=item INTRODUCTION +USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST, FETCH this, key, STORE +this, key, value, DELETE this, key, CLEAR this, EXISTS this, key, FIRSTKEY +this, NEXTKEY this, lastkey, UNTIE this, DESTROY this -=item QUICK CHECKLIST +=item Tying FileHandles -=over 4 +TIEHANDLE classname, LIST, WRITE this, LIST, PRINT this, LIST, PRINTF this, +LIST, READ this, LIST, READLINE this, GETC this, CLOSE this, UNTIE this, +DESTROY this -=item Before you start +=item UNTIE this -=item The API +=item The C Gotcha -=item Stability +=back -=item Documentation +=item SEE ALSO -=item Release considerations +=item BUGS + +=item AUTHOR =back -=item BEFORE YOU START WRITING A MODULE +=head2 perldbmfilter - Perl DBM Filters =over 4 -=item Has it been done before? - -=item Do one thing and do it well - -=item What's in a name? +=item SYNOPSIS -=back +=item DESCRIPTION -=item DESIGNING AND WRITING YOUR MODULE +B, B, B, +B =over 4 -=item To OO or not to OO? +=item The Filter -=item Designing your API +=item An Example -- the NULL termination problem. -Write simple routines to do simple things, Separate functionality from -output, Provide sensible shortcuts and defaults, Naming conventions, -Parameter passing +=item Another Example -- Key is a C int. -=item Strictness and warnings +=back -=item Backwards compatibility +=item SEE ALSO -=item Error handling and messages +=item AUTHOR =back -=item DOCUMENTING YOUR MODULE +=head2 perlipc - Perl interprocess communication (signals, fifos, pipes, +safe subprocesses, sockets, and semaphores) =over 4 -=item POD +=item DESCRIPTION -=item README, INSTALL, release notes, changelogs +=item Signals + +=over 4 + +=item Handling the SIGHUP Signal in Daemons =back -=item RELEASE CONSIDERATIONS +=item Named Pipes =over 4 -=item Version numbering +=item Deferred Signals (Safe signals) -=item Pre-requisites +Long running opcodes, Interrupting IO, Restartable system calls, Signals as +"faults", Signals triggered by operating system state -=item Testing +=back -=item Packaging +=item Using open() for IPC -=item Licensing +=over 4 -=back +=item Filehandles -=item COMMON PITFALLS +=item Background Processes -=over 4 +=item Complete Dissociation of Child from Parent -=item Reinventing the wheel +=item Safe Pipe Opens -=item Trying to do too much +=item Bidirectional Communication with Another Process -=item Inappropriate documentation +=item Bidirectional Communication with Yourself =back -=item SEE ALSO +=item Sockets: Client/Server Communication + +=over 4 -L, L, L, L, Testing tools, -http://pause.perl.org/, Any good book on software engineering +=item Internet Line Terminators -=item AUTHOR +=item Internet TCP Clients and Servers + +=item Unix-Domain TCP Clients and Servers =back -=head2 perlnewmod - preparing a new module for distribution +=item TCP Clients with IO::Socket =over 4 -=item DESCRIPTION +=item A Simple Client -=over 4 +C, C, C -=item Warning +=item A Webget Client -=item What should I make into a module? +=item Interactive Client with IO::Socket -=item Step-by-step: Preparing the ground +=back -Look around, Check it's new, Discuss the need, Choose a name, Check again +=item TCP Servers with IO::Socket -=item Step-by-step: Making the module +Proto, LocalPort, Listen, Reuse -Start with F, Use L and L, Use -L, Use L - wisely!, Use L, Write tests, Write the README +=item UDP: Message Passing -=item Step-by-step: Distributing your module +=item SysV IPC -Get a CPAN user ID, C, Upload the -tarball, Announce to the modules list, Announce to clpa, Fix bugs! +=item NOTES -=back +=item BUGS =item AUTHOR @@ -2715,504 +2749,526 @@ tarball, Announce to the modules list, Announce to clpa, Fix bugs! =back -=head2 perlfaq1 - General Questions About Perl ($Revision: 1.6 $, $Date: -2002/01/31 01:46:23 $) +=head2 perlfork - Perl's fork() emulation =over 4 +=item SYNOPSIS + =item DESCRIPTION =over 4 -=item What is Perl? +=item Behavior of other Perl features in forked pseudo-processes -=item Who supports Perl? Who develops it? Why is it free? +$$ or $PROCESS_ID, %ENV, chdir() and all other builtins that accept +filenames, wait() and waitpid(), kill(), exec(), exit(), Open handles to +files, directories and network sockets -=item Which version of Perl should I use? +=item Resource limits -=item What are perl4 and perl5? +=item Killing the parent process -=item What is perl6? +=item Lifetime of the parent process and pseudo-processes -=item How stable is Perl? +=item CAVEATS AND LIMITATIONS -=item Is Perl difficult to learn? +BEGIN blocks, Open filehandles, Forking pipe open() not yet implemented, +Global state maintained by XSUBs, Interpreter embedded in larger +application, Thread-safety of extensions -=item How does Perl compare with other languages like Java, Python, REXX, -Scheme, or Tcl? +=back -=item Can I do [task] in Perl? +=item BUGS -=item When shouldn't I program in Perl? +=item AUTHOR -=item What's the difference between "perl" and "Perl"? +=item SEE ALSO -=item Is it a Perl program or a Perl script? +=back -=item What is a JAPH? +=head2 perlnumber - semantics of numbers and numeric operations in Perl -=item Where can I get a list of Larry Wall witticisms? +=over 4 -=item How can I convince my sysadmin/supervisor/employees to use version -5/5.6.1/Perl instead of some other language? +=item SYNOPSIS -=back +=item DESCRIPTION -=item AUTHOR AND COPYRIGHT +=item Storing numbers -=back +=item Numeric operators and numeric conversions -=head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.8 $, -$Date: 2002/02/08 22:31:57 $) +=item Flavors of Perl numeric operations -=over 4 +Arithmetic operators, ++, Arithmetic operators during C, Other +mathematical operators, Bitwise operators, Bitwise operators during C, Operators which expect an integer, Operators which expect a +string -=item DESCRIPTION +=item AUTHOR -=over 4 +=item SEE ALSO -=item What machines support Perl? Where do I get it? +=back -=item How can I get a binary version of Perl? +=head2 perlthrtut - tutorial on threads in Perl -=item I don't have a C compiler on my system. How can I compile perl? +=over 4 -=item I copied the Perl binary from one machine to another, but scripts -don't work. +=item DESCRIPTION -=item I grabbed the sources and tried to compile but gdbm/dynamic -loading/malloc/linking/... failed. How do I make it work? +=item Status -=item What modules and extensions are available for Perl? What is CPAN? -What does CPAN/src/... mean? +=item What Is A Thread Anyway? -=item Is there an ISO or ANSI certified version of Perl? +=item Threaded Program Models -=item Where can I get information on Perl? +=over 4 -=item What are the Perl newsgroups on Usenet? Where do I post questions? +=item Boss/Worker -=item Where should I post source code? +=item Work Crew -=item Perl Books +=item Pipeline -References, Tutorials, Task-Oriented, Special Topics +=back -=item Perl in Magazines +=item What kind of threads are Perl threads? -=item Perl on the Net: FTP and WWW Access +=item Thread-Safe Modules -=item What mailing lists are there for Perl? +=item Thread Basics -=item Archives of comp.lang.perl.misc +=over 4 -=item Where can I buy a commercial version of Perl? +=item Basic Thread Support -=item Where do I send bug reports? +=item A Note about the Examples -=item What is perl.com? Perl Mongers? pm.org? perl.org? cpan.org? +=item Creating Threads -=back +=item Waiting For A Thread To Exit -=item AUTHOR AND COPYRIGHT +=item Ignoring A Thread =back -=head2 perlfaq3 - Programming Tools ($Revision: 1.15 $, $Date: 2002/02/11 -19:29:52 $) +=item Threads And Data =over 4 -=item DESCRIPTION - -=over 4 +=item Shared And Unshared Data -=item How do I do (anything)? +=item Thread Pitfalls: Races -=item How can I use Perl interactively? +=back -=item Is there a Perl shell? +=item Synchronization and control -=item How do I debug my Perl programs? +=over 4 -=item How do I profile my Perl programs? +=item Controlling access: lock() -=item How do I cross-reference my Perl programs? +=item A Thread Pitfall: Deadlocks -=item Is there a pretty-printer (formatter) for Perl? +=item Queues: Passing Data Around -=item Is there a ctags for Perl? +=item Semaphores: Synchronizing Data Access -=item Is there an IDE or Windows Perl Editor? +=item Basic semaphores -Komodo, The Object System, Open Perl IDE, PerlBuilder, visiPerl+, -CodeMagicCD, GNU Emacs, MicroEMACS, XEmacs, Elvis, Vile, Vim, Codewright, -MultiEdit, SlickEdit, Bash, Ksh, Tcsh, Zsh, BBEdit and BBEdit Lite, Alpha +=item Advanced Semaphores -=item Where can I get Perl macros for vi? +=item cond_wait() and cond_signal() -=item Where can I get perl-mode for emacs? +=item Giving up control -=item How can I use curses with Perl? +=back -=item How can I use X or Tk with Perl? +=item General Thread Utility Routines -=item How can I generate simple menus without using CGI or Tk? +=over 4 -=item How can I make my Perl program run faster? +=item What Thread Am I In? -=item How can I make my Perl program take less memory? +=item Thread IDs -Don't slurp!, Use map and grep selectively, Avoid unnecessary quotes and -stringification, Pass by reference, Tie large variables to disk +=item Are These Threads The Same? -=item Is it unsafe to return a pointer to local data? +=item What Threads Are Running? -=item How can I free an array or hash so my program shrinks? +=back -=item How can I make my CGI script more efficient? +=item A Complete Example -=item How can I hide the source for my Perl program? +=item Different implementations of threads -=item How can I compile my Perl program into byte code or C? +=item Performance considerations -=item How can I compile Perl into Java? +=item Process-scope Changes -=item How can I get C<#!perl> to work on [MS-DOS,NT,...]? +=item Thread-Safety of System Libraries -=item Can I write useful Perl programs on the command line? +=item Conclusion -=item Why don't Perl one-liners work on my DOS/Mac/VMS system? +=item Bibliography -=item Where can I learn about CGI or Web programming in Perl? +=over 4 -=item Where can I learn about object-oriented Perl programming? +=item Introductory Texts -=item Where can I learn about linking C with Perl? [h2xs, xsubpp] +=item OS-Related References -=item I've read perlembed, perlguts, etc., but I can't embed perl in -my C program; what am I doing wrong? +=item Other References -=item When I tried to run my script, I got this message. What does it mean? +=back -=item What's MakeMaker? +=item Acknowledgements -=back +=item AUTHOR -=item AUTHOR AND COPYRIGHT +=item Copyrights =back -=head2 perlfaq4 - Data Manipulation ($Revision: 1.14 $, $Date: 2002/02/08 -22:30:23 $) +=head2 perlothrtut - old tutorial on threads in Perl =over 4 =item DESCRIPTION -=item Data: Numbers - -=over 4 - -=item Why am I getting long decimals (eg, 19.9499999999999) instead of the -numbers I should be getting (eg, 19.95)? - -=item Why isn't my octal data interpreted correctly? +=item What Is A Thread Anyway? -=item Does Perl have a round() function? What about ceil() and floor()? -Trig functions? +=item Threaded Program Models -=item How do I convert between numeric representations? +=over 4 -B, B, B, B, B, B +=item Boss/Worker -=item Why doesn't & work the way I want it to? +=item Work Crew -=item How do I multiply matrices? +=item Pipeline -=item How do I perform an operation on a series of integers? +=back -=item How can I output Roman numerals? +=item Native threads -=item Why aren't my random numbers random? +=item What kind of threads are perl threads? -=back +=item Threadsafe Modules -=item Data: Dates +=item Thread Basics =over 4 -=item How do I find the week-of-the-year/day-of-the-year? - -=item How do I find the current century or millennium? +=item Basic Thread Support -=item How can I compare two dates and find the difference? +=item Creating Threads -=item How can I take a string and turn it into epoch seconds? +=item Giving up control -=item How can I find the Julian Day? +=item Waiting For A Thread To Exit -=item How do I find yesterday's date? +=item Errors In Threads -=item Does Perl have a Year 2000 problem? Is Perl Y2K compliant? +=item Ignoring A Thread =back -=item Data: Strings +=item Threads And Data =over 4 -=item How do I validate input? +=item Shared And Unshared Data -=item How do I unescape a string? +=item Thread Pitfall: Races -=item How do I remove consecutive pairs of characters? +=item Controlling access: lock() -=item How do I expand function calls in a string? +=item Thread Pitfall: Deadlocks -=item How do I find matching/nesting anything? +=item Queues: Passing Data Around -=item How do I reverse a string? +=back -=item How do I expand tabs in a string? +=item Threads And Code -=item How do I reformat a paragraph? +=over 4 -=item How can I access/change the first N letters of a string? +=item Semaphores: Synchronizing Data Access -=item How do I change the Nth occurrence of something? +Basic semaphores, Advanced Semaphores -=item How can I count the number of occurrences of a substring within a -string? +=item Attributes: Restricting Access To Subroutines -=item How do I capitalize all the words on one line? +=item Subroutine Locks -=item How can I split a [character] delimited string except when inside -[character]? (Comma-separated files) +=item Methods -=item How do I strip blank space from the beginning/end of a string? +=item Locking A Subroutine -=item How do I pad a string with blanks or pad a number with zeroes? +=back -=item How do I extract selected columns from a string? +=item General Thread Utility Routines -=item How do I find the soundex value of a string? +=over 4 -=item How can I expand variables in text strings? +=item What Thread Am I In? -=item What's wrong with always quoting "$vars"? +=item Thread IDs -=item Why don't my < +portable -=item How do I sort an array by (anything)? +=item ISSUES -=item How do I manipulate arrays of bits? +=over 4 -=item Why does defined() return true on empty arrays and hashes? +=item Newlines -=back +=item Numbers endianness and Width -=item Data: Hashes (Associative Arrays) +=item Files and Filesystems -=over 4 +=item System Interaction -=item How do I process an entire hash? +=item Command names versus file pathnames -=item What happens if I add or remove keys from a hash while iterating over -it? +=item Networking -=item How do I look up a hash element by value? +=item Interprocess Communication (IPC) -=item How can I know how many entries are in a hash? +=item External Subroutines (XS) -=item How do I sort a hash (optionally by value instead of key)? +=item Standard Modules -=item How can I always keep my hash sorted? +=item Time and Date -=item What's the difference between "delete" and "undef" with hashes? +=item Character sets and character encoding -=item Why don't my tied hashes make the defined/exists distinction? +=item Internationalisation -=item How do I reset an each() operation part-way through? +=item System Resources -=item How can I get the unique keys from two hashes? +=item Security -=item How can I store a multidimensional array in a DBM file? +=item Style -=item How can I make my hash remember the order I put elements into it? +=back -=item Why does passing a subroutine an undefined element in a hash create -it? +=item CPAN Testers -=item How can I make the Perl equivalent of a C structure/C++ class/hash or -array of hashes or arrays? +Mailing list: cpan-testers@perl.org, Testing results: +http://testers.cpan.org/ -=item How can I use a reference as a hash key? +=item PLATFORMS -=back +=over 4 -=item Data: Misc +=item Unix -=over 4 +=item DOS and Derivatives -=item How do I handle binary data correctly? +=item S -=item How do I determine whether a scalar is a number/whole/integer/float? +=item VMS -=item How do I keep persistent data across program calls? +=item VOS -=item How do I print out or copy a recursive data structure? +=item EBCDIC Platforms -=item How do I define methods for every class/object? +=item Acorn RISC OS -=item How do I verify a credit card checksum? +=item Other perls -=item How do I pack arrays of doubles or floats for XS code? +=back + +=item FUNCTION IMPLEMENTATIONS + +=over 4 + +=item Alphabetical Listing of Perl Functions + +-I FILEHANDLE, -I EXPR, -I, alarm SECONDS, alarm, binmode +FILEHANDLE, chmod LIST, chown LIST, chroot FILENAME, chroot, crypt +PLAINTEXT,SALT, dbmclose HASH, dbmopen HASH,DBNAME,MODE, dump LABEL, exec +LIST, exit EXPR, exit, fcntl FILEHANDLE,FUNCTION,SCALAR, flock +FILEHANDLE,OPERATION, fork, getlogin, getpgrp PID, getppid, getpriority +WHICH,WHO, getpwnam NAME, getgrnam NAME, getnetbyname NAME, getpwuid UID, +getgrgid GID, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER, +getservbyport PORT,PROTO, getpwent, getgrent, gethostbyname, gethostent, +getnetent, getprotoent, getservent, sethostent STAYOPEN, setnetent +STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent, +endhostent, endnetent, endprotoent, endservent, getsockopt +SOCKET,LEVEL,OPTNAME, glob EXPR, glob, ioctl FILEHANDLE,FUNCTION,SCALAR, +kill SIGNAL, LIST, link OLDFILE,NEWFILE, lstat FILEHANDLE, lstat EXPR, +lstat, msgctl ID,CMD,ARG, msgget KEY,FLAGS, msgsnd ID,MSG,FLAGS, msgrcv +ID,VAR,SIZE,TYPE,FLAGS, open FILEHANDLE,EXPR, open FILEHANDLE, pipe +READHANDLE,WRITEHANDLE, readlink EXPR, readlink, select +RBITS,WBITS,EBITS,TIMEOUT, semctl ID,SEMNUM,CMD,ARG, semget +KEY,NSEMS,FLAGS, semop KEY,OPSTRING, setgrent, setpgrp PID,PGRP, +setpriority WHICH,WHO,PRIORITY, setpwent, setsockopt +SOCKET,LEVEL,OPTNAME,OPTVAL, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, +shmread ID,VAR,POS,SIZE, shmwrite ID,STRING,POS,SIZE, sockatmark SOCKET, +socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, stat FILEHANDLE, stat +EXPR, stat, symlink OLDFILE,NEWFILE, syscall LIST, sysopen +FILEHANDLE,FILENAME,MODE,PERMS, system LIST, times, truncate +FILEHANDLE,LENGTH, truncate EXPR,LENGTH, umask EXPR, umask, utime LIST, +wait, waitpid PID,FLAGS =back -=item AUTHOR AND COPYRIGHT +=item CHANGES + +v1.49, 12 August 2002, v1.48, 02 February 2001, v1.47, 22 March 2000, +v1.46, 12 February 2000, v1.45, 20 December 1999, v1.44, 19 July 1999, +v1.43, 24 May 1999, v1.42, 22 May 1999, v1.41, 19 May 1999, v1.40, 11 April +1999, v1.39, 11 February 1999, v1.38, 31 December 1998, v1.37, 19 December +1998, v1.36, 9 September 1998, v1.35, 13 August 1998, v1.33, 06 August +1998, v1.32, 05 August 1998, v1.30, 03 August 1998, v1.23, 10 July 1998 + +=item Supported Platforms + +=item SEE ALSO + +=item AUTHORS / CONTRIBUTORS =back -=head2 perlfaq5 - Files and Formats ($Revision: 1.9 $, $Date: 2002/02/11 -19:30:21 $) +=head2 perllocale - Perl locale handling (internationalization and +localization) =over 4 =item DESCRIPTION +=item PREPARING TO USE LOCALES + +=item USING LOCALES + =over 4 -=item How do I flush/unbuffer an output filehandle? Why must I do this? +=item The use locale pragma -=item How do I change one line in a file/delete a line in a file/insert a -line in the middle of a file/append to the beginning of a file? +=item The setlocale function -=item How do I count the number of lines in a file? +=item Finding locales -=item How do I make a temporary file name? +=item LOCALE PROBLEMS -=item How can I manipulate fixed-record-length files? +=item Temporarily fixing locale problems -=item How can I make a filehandle local to a subroutine? How do I pass -filehandles between subroutines? How do I make an array of filehandles? +=item Permanently fixing locale problems -=item How can I use a filehandle indirectly? +=item Permanently fixing your system's locale configuration -=item How can I set up a footer format to be used with write()? +=item Fixing system locale configuration -=item How can I write() into a string? +=item The localeconv function -=item How can I output my numbers with commas added? +=item I18N::Langinfo -=item How can I translate tildes (~) in a filename? +=back -=item How come when I open a file read-write it wipes it out? +=item LOCALE CATEGORIES -=item Why do I sometimes get an "Argument list too long" when I use <*>? +=over 4 -=item Is there a leak/bug in glob()? +=item Category LC_COLLATE: Collation -=item How can I open a file with a leading ">" or trailing blanks? +=item Category LC_CTYPE: Character Types -=item How can I reliably rename a file? +=item Category LC_NUMERIC: Numeric Formatting -=item How can I lock a file? +=item Category LC_MONETARY: Formatting of monetary amounts -=item Why can't I just open(FH, ">file.lock")? +=item LC_TIME -=item I still don't get locking. I just want to increment the number in -the file. How can I do this? +=item Other categories -=item All I want to do is append a small amount of text to the end of a -file. Do I still have to use locking? +=back -=item How do I randomly update a binary file? +=item SECURITY -=item How do I get a file's timestamp in perl? +=item ENVIRONMENT -=item How do I set a file's timestamp in perl? +PERL_BADLANG, LC_ALL, LANGUAGE, LC_CTYPE, LC_COLLATE, LC_MONETARY, +LC_NUMERIC, LC_TIME, LANG -=item How do I print to more than one file at once? +=item NOTES -=item How can I read in an entire file all at once? +=over 4 -=item How can I read in a file by paragraphs? +=item Backward compatibility -=item How can I read a single character from a file? From the keyboard? +=item I18N:Collate obsolete -=item How can I tell whether there's a character waiting on a filehandle? +=item Sort speed and memory use impacts -=item How do I do a C in perl? +=item write() and LC_NUMERIC -=item How do I dup() a filehandle in Perl? +=item Freely available locale definitions -=item How do I close a file descriptor by number? +=item I18n and l10n -=item Why can't I use "C:\temp\foo" in DOS paths? What doesn't -`C:\temp\foo.exe` work? +=item An imperfect standard -=item Why doesn't glob("*.*") get all the files? +=back -=item Why does Perl let me delete read-only files? Why does C<-i> clobber -protected files? Isn't this a bug in Perl? +=item Unicode and UTF-8 -=item How do I select a random line from a file? +=item BUGS -=item Why do I get weird spaces when I print an array of lines? +=over 4 + +=item Broken systems =back -=item AUTHOR AND COPYRIGHT +=item SEE ALSO + +=item HISTORY =back -=head2 perlfaq6 - Regular Expressions ($Revision: 1.8 $, $Date: 2002/01/31 -04:27:55 $) +=head2 perluniintro - Perl Unicode introduction =over 4 @@ -3220,66 +3276,49 @@ protected files? Isn't this a bug in Perl? =over 4 -=item How can I hope to use regular expressions without creating illegible -and unmaintainable code? +=item Unicode -Comments Outside the Regex, Comments Inside the Regex, Different Delimiters +=item Perl's Unicode Support -=item I'm having trouble matching over more than one line. What's wrong? +=item Perl's Unicode Model -=item How can I pull out lines between two patterns that are themselves on -different lines? +=item Unicode and EBCDIC -=item I put a regular expression into $/ but it didn't work. What's wrong? +=item Creating Unicode -=item How do I substitute case insensitively on the LHS while preserving -case on the RHS? +=item Handling Unicode -=item How can I make C<\w> match national character sets? +=item Legacy Encodings -=item How can I match a locale-smart version of C? +=item Unicode I/O -=item How can I quote a variable to use in a regex? +=item Displaying Unicode As Text -=item What is C really for? +=item Special Cases -=item How do I use a regular expression to strip C style comments from a -file? +=item Advanced Topics -=item Can I use Perl regular expressions to match balanced text? +=item Miscellaneous -=item What does it mean that regexes are greedy? How can I get around it? +=item Questions With Answers -=item How do I process each word on each line? +=item Hexadecimal Notation -=item How can I print out a word-frequency or line-frequency summary? +=item Further Resources -=item How can I do approximate matching? +=back -=item How do I efficiently match many regular expressions at once? +=item UNICODE IN OLDER PERLS -=item Why don't word-boundary searches with C<\b> work for me? +=item SEE ALSO -=item Why does using $&, $`, or $' slow my program down? +=item ACKNOWLEDGMENTS -=item What good is C<\G> in a regular expression? +=item AUTHOR, COPYRIGHT, AND LICENSE -=item Are Perl regexes DFAs or NFAs? Are they POSIX compliant? +=back -=item What's wrong with using grep or map in a void context? - -=item How can I match strings with multibyte characters? - -=item How do I match a pattern that is supplied by the user? - -=back - -=item AUTHOR AND COPYRIGHT - -=back - -=head2 perlfaq7 - General Perl Language Issues ($Revision: 1.7 $, $Date: -2002/01/31 04:27:55 $) +=head2 perlunicode - Unicode support in Perl =over 4 @@ -3287,516 +3326,590 @@ file? =over 4 -=item Can I get a BNF/yacc/RE for the Perl language? - -=item What are all these $@%&* punctuation signs, and how do I know when to -use them? - -=item Do I always/never have to quote my strings or use semicolons and -commas? - -=item How do I skip some return values? - -=item How do I temporarily block warnings? - -=item What's an extension? - -=item Why do Perl operators have different precedence than C operators? +=item Important Caveats -=item How do I declare/create a structure? +Input and Output Layers, Regular Expressions, C still needed to +enable UTF-8/UTF-EBCDIC in scripts -=item How do I create a module? +=item Byte and Character Semantics -=item How do I create a class? +=item Effects of Character Semantics -=item How can I tell if a variable is tainted? +=item Scripts -=item What's a closure? +=item Blocks -=item What is variable suicide and how can I prevent it? +=item User-Defined Character Properties -=item How can I pass/return a {Function, FileHandle, Array, Hash, Method, -Regex}? +=item Character Encodings for Input and Output -Passing Variables and Functions, Passing Filehandles, Passing Regexes, -Passing Methods +=item Unicode Regular Expression Support Level -=item How do I create a static variable? +=item Unicode Encodings -=item What's the difference between dynamic and lexical (static) scoping? -Between local() and my()? +=item Security Implications of Unicode -=item How can I access a dynamic variable while a similarly named lexical -is in scope? +=item Unicode in Perl on EBCDIC -=item What's the difference between deep and shallow binding? +=item Locales -=item Why doesn't "my($foo) = ;" work right? +=item When Unicode Does Not Happen -=item How do I redefine a builtin function, operator, or method? +=item Forcing Unicode in Perl (Or Unforcing Unicode in Perl) -=item What's the difference between calling a function as &foo and foo()? +=item Using Unicode in XS -=item How do I create a switch or case statement? +=back -=item How can I catch accesses to undefined variables/functions/methods? +=item BUGS -=item Why can't a method included in this same file be found? +=over 4 -=item How can I find out my current package? +=item Interaction with Locales -=item How can I comment out a large block of perl code? +=item Interaction with Extensions -=item How do I clear a package? +=item Speed -=item How can I use a variable as a variable name? +=item Porting code from perl-5.6.X =back -=item AUTHOR AND COPYRIGHT +=item SEE ALSO =back -=head2 perlfaq8 - System Interaction ($Revision: 1.6 $, $Date: 2002/01/28 -04:17:27 $) +=head2 perlebcdic - Considerations for running Perl on EBCDIC platforms =over 4 =item DESCRIPTION -=over 4 - -=item How do I find out which operating system I'm running under? - -=item How come exec() doesn't return? +=item COMMON CHARACTER CODE SETS -=item How do I do fancy stuff with the keyboard/screen/mouse? +=over 4 -Keyboard, Screen, Mouse +=item ASCII -=item How do I print something out in color? +=item ISO 8859 -=item How do I read just one key without waiting for a return key? +=item Latin 1 (ISO 8859-1) -=item How do I check whether input is ready on the keyboard? +=item EBCDIC -=item How do I clear the screen? +=item 13 variant characters -=item How do I get the screen size? +=item 0037 -=item How do I ask the user for a password? +=item 1047 -=item How do I read and write the serial port? +=item POSIX-BC -lockfiles, open mode, end of line, flushing output, non-blocking input +=item Unicode code points versus EBCDIC code points -=item How do I decode encrypted password files? +=item Remaining Perl Unicode problems in EBCDIC -=item How do I start a process in the background? +=item Unicode and UTF -STDIN, STDOUT, and STDERR are shared, Signals, Zombies +=item Using Encode -=item How do I trap control characters/signals? +=back -=item How do I modify the shadow password file on a Unix system? +=item SINGLE OCTET TABLES -=item How do I set the time and date? +recipe 0, recipe 1, recipe 2, recipe 3, recipe 4, recipe 5, recipe 6 -=item How can I sleep() or alarm() for under a second? +=item IDENTIFYING CHARACTER CODE SETS -=item How can I measure time under a second? +=item CONVERSIONS -=item How can I do an atexit() or setjmp()/longjmp()? (Exception handling) +=over 4 -=item Why doesn't my sockets program work under System V (Solaris)? What -does the error message "Protocol not supported" mean? +=item tr/// -=item How can I call my system's unique C functions from Perl? +=item iconv -=item Where do I get the include files to do ioctl() or syscall()? +=item C RTL -=item Why do setuid perl scripts complain about kernel problems? +=back -=item How can I open a pipe both to and from a command? +=item OPERATOR DIFFERENCES -=item Why can't I get the output of a command with system()? +=item FUNCTION DIFFERENCES -=item How can I capture STDERR from an external command? +chr(), ord(), pack(), print(), printf(), sort(), sprintf(), unpack() -=item Why doesn't open() return an error when a pipe open fails? +=item REGULAR EXPRESSION DIFFERENCES -=item What's wrong with using backticks in a void context? +=item SOCKETS -=item How can I call backticks without shell processing? +=item SORTING -=item Why can't my script read from STDIN after I gave it EOF (^D on Unix, -^Z on MS-DOS)? +=over 4 -=item How can I convert my shell script to perl? +=item Ignore ASCII vs. EBCDIC sort differences. -=item Can I use perl to run a telnet or ftp session? +=item MONO CASE then sort data. -=item How can I write expect in Perl? +=item Convert, sort data, then re convert. -=item Is there a way to hide perl's command line from programs such as -"ps"? +=item Perform sorting on one type of machine only. -=item I {changed directory, modified my environment} in a perl script. How -come the change disappeared when I exited the script? How do I get my -changes to be visible? +=back -Unix +=item TRANSFORMATION FORMATS -=item How do I close a process's filehandle without waiting for it to -complete? +=over 4 -=item How do I fork a daemon process? +=item URL decoding and encoding -=item How do I find out if I'm running interactively or not? +=item uu encoding and decoding -=item How do I timeout a slow event? +=item Quoted-Printable encoding and decoding -=item How do I set CPU limits? +=item Caesarian ciphers -=item How do I avoid zombies on a Unix system? +=back -=item How do I use an SQL database? +=item Hashing order and checksums -=item How do I make a system() exit on control-C? +=item I18N AND L10N -=item How do I open a file without blocking? +=item MULTI OCTET CHARACTER SETS -=item How do I install a module from CPAN? +=item OS ISSUES -=item What's the difference between require and use? +=over 4 -=item How do I keep my own module/library directory? +=item OS/400 -=item How do I add the directory my program lives in to the module/library -search path? +PASE, IFS access -=item How do I add a directory to my include path at runtime? +=item OS/390, z/OS -=item What is socket.ph and where do I get it? +chcp, dataset access, OS/390, z/OS iconv, locales -=back +=item VM/ESA? -=item AUTHOR AND COPYRIGHT +=item POSIX-BC? =back -=head2 perlfaq9 - Networking ($Revision: 1.7 $, $Date: 2002/01/28 04:17:27 -$) +=item BUGS -=over 4 +=item SEE ALSO -=item DESCRIPTION +=item REFERENCES -=over 4 +=item HISTORY -=item What is the correct form of response from a CGI script? +=item AUTHOR -=item My CGI script runs from the command line but not the browser. (500 -Server Error) +=back -=item How can I get better error messages from a CGI program? +=head2 perlsec - Perl security -=item How do I remove HTML from a string? +=over 4 -=item How do I extract URLs? +=item DESCRIPTION -=item How do I download a file from the user's machine? How do I open a -file on another machine? +=over 4 -=item How do I make a pop-up menu in HTML? +=item Laundering and Detecting Tainted Data -=item How do I fetch an HTML file? +=item Switches On the "#!" Line -=item How do I automate an HTML form submission? +=item Cleaning Up Your Path -=item How do I decode or create those %-encodings on the web? +=item Security Bugs -=item How do I redirect to another page? +=item Protecting Your Programs -=item How do I put a password on my web pages? +=item Unicode -=item How do I edit my .htpasswd and .htgroup files with Perl? +=item Algorithmic Complexity Attacks -=item How do I make sure users can't enter values into a form that cause my -CGI script to do bad things? +=back -=item How do I parse a mail header? +=item SEE ALSO -=item How do I decode a CGI form? +=back -=item How do I check a valid mail address? +=head2 perlmod - Perl modules (packages and symbol tables) -=item How do I decode a MIME/BASE64 string? +=over 4 -=item How do I return the user's mail address? +=item DESCRIPTION -=item How do I send mail? +=over 4 -=item How do I use MIME to make an attachment to a mail message? +=item Packages -=item How do I read mail? +=item Symbol Tables -=item How do I find out my hostname/domainname/IP address? +=item Package Constructors and Destructors -=item How do I fetch a news article or the active newsgroups? +=item Perl Classes -=item How do I fetch/put an FTP file? +=item Perl Modules -=item How can I do RPC in Perl? +=item Making your module threadsafe =back -=item AUTHOR AND COPYRIGHT +=item SEE ALSO =back -=head2 perlcompile - Introduction to the Perl Compiler-Translator +=head2 perlmodlib - constructing new Perl modules and finding existing ones =over 4 -=item DESCRIPTION +=item THE PERL MODULE LIBRARY =over 4 -=item Layout +=item Pragmatic Modules -B::Bytecode, B::C, B::CC, B::Lint, B::Deparse, B::Xref +assertions, assertions::activate, attributes, attrs, autouse, base, bigint, +bignum, bigrat, blib, bytes, charnames, constant, diagnostics, encoding, +fields, filetest, if, integer, less, lib, locale, open, ops, overload, re, +sigtrap, sort, strict, subs, threads, threads::shared, utf8, vars, version, +vmsish, warnings, warnings::register -=back +=item Standard Modules -=item Using The Back Ends +AnyDBM_File, Attribute::Handlers, AutoLoader, AutoSplit, B, B::Asmdata, +B::Assembler, B::Bblock, B::Bytecode, B::C, B::CC, B::Concise, B::Debug, +B::Deparse, B::Disassembler, B::Lint, B::Showlex, B::Stackobj, B::Stash, +B::Terse, B::Xref, Benchmark, ByteLoader, CGI, CGI::Apache, CGI::Carp, +CGI::Cookie, CGI::Fast, CGI::Pretty, CGI::Push, CGI::Switch, CGI::Util, +CPAN, CPAN::FirstTime, CPAN::Nox, Carp, Carp::Heavy, Class::ISA, +Class::Struct, Config, Cwd, DB, DB_File, Data::Dumper, Devel::DProf, +Devel::PPPort, Devel::Peek, Devel::SelfStubber, Digest, Digest::MD5, +DirHandle, Dumpvalue, DynaLoader, Encode, Encode::Alias, Encode::Byte, +Encode::CJKConstants, Encode::CN, Encode::CN::HZ, Encode::Config, +Encode::EBCDIC, Encode::Encoder, Encode::Encoding, Encode::Guess, +Encode::JP, Encode::JP::H2Z, Encode::JP::JIS7, Encode::KR, +Encode::KR::2022_KR, Encode::MIME::Header, Encode::PerlIO, +Encode::Supported, Encode::Symbol, Encode::TW, Encode::Unicode, +Encode::Unicode::UTF7, English, Env, Errno, Exporter, Exporter::Heavy, +ExtUtils::Command, ExtUtils::Command::MM, ExtUtils::Constant, +ExtUtils::Embed, ExtUtils::Install, ExtUtils::Installed, ExtUtils::Liblist, +ExtUtils::MM, ExtUtils::MM_Any, ExtUtils::MM_BeOS, ExtUtils::MM_Cygwin, +ExtUtils::MM_DOS, ExtUtils::MM_MacOS, ExtUtils::MM_NW5, ExtUtils::MM_OS2, +ExtUtils::MM_UWIN, ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MM_Win32, +ExtUtils::MM_Win95, ExtUtils::MY, ExtUtils::MakeMaker, +ExtUtils::MakeMaker::FAQ, ExtUtils::MakeMaker::Tutorial, +ExtUtils::MakeMaker::bytes, ExtUtils::MakeMaker::vmsish, +ExtUtils::Manifest, ExtUtils::Mkbootstrap, ExtUtils::Mksymlists, +ExtUtils::Packlist, ExtUtils::testlib, Fatal, Fcntl, File::Basename, +File::CheckTree, File::Compare, File::Copy, File::DosGlob, File::Find, +File::Glob, File::Path, File::Spec, File::Spec::Cygwin, File::Spec::Epoc, +File::Spec::Functions, File::Spec::Mac, File::Spec::OS2, File::Spec::Unix, +File::Spec::VMS, File::Spec::Win32, File::Temp, File::stat, FileCache, +FileHandle, Filter::Simple, Filter::Util::Call, FindBin, GDBM_File, +Getopt::Long, Getopt::Std, Hash::Util, I18N::Collate, I18N::LangTags, +I18N::LangTags::List, I18N::Langinfo, IO, IO::Dir, IO::File, IO::Handle, +IO::Pipe, IO::Poll, IO::Seekable, IO::Select, IO::Socket, IO::Socket::INET, +IO::Socket::UNIX, IPC::Open2, IPC::Open3, IPC::SysV, IPC::SysV::Msg, +IPC::SysV::Semaphore, List::Util, Locale::Constants, Locale::Country, +Locale::Currency, Locale::Language, Locale::Maketext, +Locale::Maketext::TPJ13, Locale::Script, MIME::Base64, +MIME::Base64::QuotedPrint, Math::BigFloat, Math::BigInt, +Math::BigInt::Calc, Math::BigInt::Scalar, Math::BigRat, Math::Complex, +Math::Trig, Memoize, Memoize::AnyDBM_File, Memoize::Expire, +Memoize::ExpireFile, Memoize::ExpireTest, Memoize::NDBM_File, +Memoize::SDBM_File, Memoize::Storable, NDBM_File, NEXT, Net::Cmd, +Net::Config, Net::Domain, Net::FTP, Net::NNTP, Net::Netrc, Net::POP3, +Net::Ping, Net::SMTP, Net::Time, Net::hostent, Net::libnetFAQ, Net::netent, +Net::protoent, Net::servent, O, ODBM_File, Opcode, POSIX, PerlIO, +PerlIO::encoding, PerlIO::scalar, PerlIO::via, PerlIO::via::QuotedPrint, +Pod::Checker, Pod::Find, Pod::Functions, Pod::Html, Pod::InputObjects, +Pod::LaTeX, Pod::Man, Pod::ParseLink, Pod::ParseUtils, Pod::Parser, +Pod::Perldoc::ToChecker, Pod::Perldoc::ToMan, Pod::Perldoc::ToNroff, +Pod::Perldoc::ToPod, Pod::Perldoc::ToRtf, Pod::Perldoc::ToText, +Pod::Perldoc::ToTk, Pod::Perldoc::ToXml, Pod::PlainText, Pod::Plainer, +Pod::Select, Pod::Text, Pod::Text::Color, Pod::Text::Overstrike, +Pod::Text::Termcap, Pod::Usage, SDBM_File, Safe, Scalar::Util, +Search::Dict, SelectSaver, SelfLoader, Shell, Socket, Storable, Switch, +Symbol, Sys::Hostname, Sys::Syslog, Term::ANSIColor, Term::Cap, +Term::Complete, Term::ReadLine, Test, Test::Builder, Test::Harness, +Test::Harness::Assert, Test::Harness::Iterator, Test::Harness::Straps, +Test::More, Test::Simple, Test::Tutorial, Text::Abbrev, Text::Balanced, +Text::ParseWords, Text::Soundex, Text::Tabs, Text::Wrap, Thread, +Thread::Queue, Thread::Semaphore, Thread::Signal, Thread::Specific, +Tie::Array, Tie::File, Tie::Handle, Tie::Hash, Tie::Memoize, Tie::RefHash, +Tie::Scalar, Tie::SubstrHash, Time::HiRes, Time::Local, Time::gmtime, +Time::localtime, Time::tm, UNIVERSAL, Unicode::Collate, Unicode::Normalize, +Unicode::UCD, User::grent, User::pwent, Win32, XS::APItest, XS::Typemap, +XSLoader -=over 4 +=item Extension Modules -=item The Cross Referencing Back End +=back -i, &, s, r +=item CPAN -=item The Decompiling Back End +=over 4 -=item The Lint Back End +=item Africa -=item The Simple C Back End +South Africa -=item The Bytecode Back End +=item Asia -=item The Optimized C Back End +China, Indonesia, Israel, Japan, Malaysia, Russian Federation, Saudi +Arabia, Singapore, South Korea, Taiwan -B, O, B::Asmdata, B::Assembler, B::Bblock, B::Bytecode, B::C, B::CC, -B::Debug, B::Deparse, B::Disassembler, B::Lint, B::Showlex, B::Stackobj, -B::Stash, B::Terse, B::Xref +=item Central America -=back +Costa Rica -=item KNOWN PROBLEMS +=item Europe -=item AUTHOR +Austria, Belgium, Bulgaria, Croatia, Czech Republic, Denmark, Estonia, +Finland, France, Germany, Greece, Hungary, Iceland, Ireland, Italy, Latvia, +Lithuania, Netherlands, Norway, Poland, Portugal, Romania, Russia, +Slovakia, Slovenia, Spain, Sweden, Switzerland, Turkey, Ukraine, United +Kingdom + +=item North America + +Canada, Alberta, Manitoba, Nova Scotia, Ontario, Mexico, United States, +Alabama, California, Colorado, Delaware, District of Columbia, Florida, +Illinois, Indiana, Kentucky, Massachusetts, Michigan, Nevada, New Jersey, +New York, North Carolina, Oklahoma, Oregon, Pennsylvania, Tennessee, Texas, +Utah, Virginia, Washington, Wisconsin + +=item Oceania + +Australia, New Zealand, United States + +=item South America + +Argentina, Brazil, Chile + +=item RSYNC Mirrors =back -=head2 perlembed - how to embed perl in your C program +=item Modules: Creation, Use, and Abuse =over 4 -=item DESCRIPTION +=item Guidelines for Module Creation -=over 4 +=item Guidelines for Converting Perl 4 Library Scripts into Modules -=item PREAMBLE +=item Guidelines for Reusing Application Code -B, B, B, B, B +=back -=item ROADMAP +=item NOTE -=item Compiling your C program +=back -=item Adding a Perl interpreter to your C program +=head2 perlmodstyle - Perl module style guide -=item Calling a Perl subroutine from your C program +=over 4 -=item Evaluating a Perl statement from your C program +=item INTRODUCTION -=item Performing Perl pattern matches and substitutions from your C program +=item QUICK CHECKLIST -=item Fiddling with the Perl stack from your C program +=over 4 -=item Maintaining a persistent interpreter +=item Before you start -=item Execution of END blocks +=item The API -=item Maintaining multiple interpreter instances +=item Stability -=item Using Perl modules, which themselves use C libraries, from your C -program +=item Documentation + +=item Release considerations =back -=item Embedding Perl under Win32 +=item BEFORE YOU START WRITING A MODULE -=item MORAL +=over 4 -=item AUTHOR +=item Has it been done before? -=item COPYRIGHT +=item Do one thing and do it well + +=item What's in a name? =back -=head2 perldebguts - Guts of Perl debugging +=item DESIGNING AND WRITING YOUR MODULE =over 4 -=item DESCRIPTION +=item To OO or not to OO? -=item Debugger Internals +=item Designing your API -=over 4 +Write simple routines to do simple things, Separate functionality from +output, Provide sensible shortcuts and defaults, Naming conventions, +Parameter passing -=item Writing Your Own Debugger +=item Strictness and warnings -=back +=item Backwards compatibility -=item Frame Listing Output Examples +=item Error handling and messages -=item Debugging regular expressions +=back -=over 4 +=item DOCUMENTING YOUR MODULE -=item Compile-time output +=over 4 -C I C I, C I C -I, C, C, C -I, C, C, C, C, C, C, -C +=item POD -=item Types of nodes +=item README, INSTALL, release notes, changelogs -=item Run-time output +perl Makefile.PL, make, make test, make install, perl Build.PL, perl Build, +perl Build test, perl Build install =back -=item Debugging Perl memory usage +=item RELEASE CONSIDERATIONS =over 4 -=item Using C<$ENV{PERL_DEBUG_MSTATS}> +=item Version numbering -C, Free/Used, C, C, C, C, C +=item Pre-requisites -=item Example of using B<-DL> switch +=item Testing -C<717>, C<002>, C<054>, C<602>, C<702>, C<704> +=item Packaging -=item B<-DL> details +=item Licensing -C, C, C +=back -=item Limitations of B<-DL> statistics +=item COMMON PITFALLS + +=over 4 + +=item Reinventing the wheel + +=item Trying to do too much + +=item Inappropriate documentation =back =item SEE ALSO +L, L, L, L, Packaging Tools, +Testing tools, http://pause.perl.org/, Any good book on software +engineering + +=item AUTHOR + =back -=head2 perlxstut, perlXStut - Tutorial for writing XSUBs +=head2 perlmodinstall - Installing CPAN Modules =over 4 =item DESCRIPTION -=item SPECIAL NOTES - =over 4 -=item make - -=item Version caveat +=item PREAMBLE -=item Dynamic Loading versus Static Loading +B the file, B the file into a directory, B the +module (sometimes unnecessary), B the module =back -=item TUTORIAL +=item PORTABILITY -=over 4 +=item HEY -=item EXAMPLE 1 +=item AUTHOR -=item EXAMPLE 2 +=item COPYRIGHT -=item What has gone on? +=back -=item Writing good test scripts +=head2 perlnewmod - preparing a new module for distribution -=item EXAMPLE 3 +=over 4 -=item What's new here? +=item DESCRIPTION -=item Input and Output Parameters +=over 4 -=item The XSUBPP Program +=item Warning -=item The TYPEMAP file +=item What should I make into a module? -=item Warning about Output Arguments +=item Step-by-step: Preparing the ground -=item EXAMPLE 4 +Look around, Check it's new, Discuss the need, Choose a name, Check again -=item What has happened here? +=item Step-by-step: Making the module -=item Anatomy of .xs file +Start with F, Use L and L, Use +L, Use L - wisely!, Use L, Write tests, Write the README -=item Getting the fat out of XSUBs +=item Step-by-step: Distributing your module -=item More about XSUB arguments +Get a CPAN user ID, C, Upload the +tarball, Announce to the modules list, Announce to clpa, Fix bugs! -=item The Argument Stack +=back -=item Extending your Extension +=item AUTHOR -=item Documenting your Extension +=item SEE ALSO -=item Installing your Extension +=back -=item EXAMPLE 5 +=head2 perlutil - utilities packaged with the Perl distribution -=item New Things in this Example +=over 4 -=item EXAMPLE 6 +=item DESCRIPTION -=item New Things in this Example +=over 4 -=item EXAMPLE 7 (Coming Soon) +=item DOCUMENTATION -=item EXAMPLE 8 (Coming Soon) +L, L and L, +L and L, L, +L, L, L, +L -=item EXAMPLE 9 (Coming Soon) +=item CONVERTORS -=item Troubleshooting these Examples +L, L, L -=back +=item Administration -=item See also +L -=item Author +=item Development -=over 4 +L, L, L and L, +L, L, L -=item Last Changed +=item SEE ALSO =back =back -=head2 perlxs - XS language reference manual +=head2 perlcompile - Introduction to the Perl Compiler-Translator =over 4 @@ -3804,659 +3917,579 @@ C, C, C =over 4 -=item Introduction +=item Layout -=item On The Road +B::Bytecode, B::C, B::CC, B::Lint, B::Deparse, B::Xref -=item The Anatomy of an XSUB +=back -=item The Argument Stack +=item Using The Back Ends -=item The RETVAL Variable +=over 4 -=item The MODULE Keyword +=item The Cross Referencing Back End -=item The PACKAGE Keyword +i, &, s, r -=item The PREFIX Keyword +=item The Decompiling Back End -=item The OUTPUT: Keyword +=item The Lint Back End -=item The NO_OUTPUT Keyword +=item The Simple C Back End -=item The CODE: Keyword +=item The Bytecode Back End -=item The INIT: Keyword +=item The Optimized C Back End -=item The NO_INIT Keyword +=back -=item Initializing Function Parameters +=item Module List for the Compiler Suite -=item Default Parameter Values +B, O, B::Asmdata, B::Assembler, B::Bblock, B::Bytecode, B::C, B::CC, +B::Concise, B::Debug, B::Deparse, B::Disassembler, B::Lint, B::Showlex, +B::Stackobj, B::Stash, B::Terse, B::Xref -=item The PREINIT: Keyword +=item KNOWN PROBLEMS -=item The SCOPE: Keyword +=item AUTHOR -=item The INPUT: Keyword +=back -=item The IN/OUTLIST/IN_OUTLIST/OUT/IN_OUT Keywords +=head2 perlfilter - Source Filters -=item Variable-length Parameter Lists - -=item The C_ARGS: Keyword - -=item The PPCODE: Keyword - -=item Returning Undef And Empty Lists - -=item The REQUIRE: Keyword +=over 4 -=item The CLEANUP: Keyword +=item DESCRIPTION -=item The POSTCALL: Keyword +=item CONCEPTS -=item The BOOT: Keyword +=item USING FILTERS -=item The VERSIONCHECK: Keyword +=item WRITING A SOURCE FILTER -=item The PROTOTYPES: Keyword +=item WRITING A SOURCE FILTER IN C -=item The PROTOTYPE: Keyword +B -=item The ALIAS: Keyword +=item CREATING A SOURCE FILTER AS A SEPARATE EXECUTABLE -=item The INTERFACE: Keyword +=item WRITING A SOURCE FILTER IN PERL -=item The INTERFACE_MACRO: Keyword +=item USING CONTEXT: THE DEBUG FILTER -=item The INCLUDE: Keyword +=item CONCLUSION -=item The CASE: Keyword +=item THINGS TO LOOK OUT FOR -=item The & Unary Operator +Some Filters Clobber the C Handle -=item Inserting POD, Comments and C Preprocessor Directives +=item REQUIREMENTS -=item Using XS With C++ +=item AUTHOR -=item Interface Strategy +=item Copyrights -=item Perl Objects And C Structures +=back -=item The Typemap +=head2 perlembed - how to embed perl in your C program -=item Safely Storing Static Data in XS +=over 4 -MY_CXT_KEY, typedef my_cxt_t, START_MY_CXT, MY_CXT_INIT, dMY_CXT, MY_CXT +=item DESCRIPTION -=back +=over 4 -=item EXAMPLES +=item PREAMBLE -=item XS VERSION +B, B, B, B, B -=item AUTHOR +=item ROADMAP -=back +=item Compiling your C program -=head2 perlclib - Internal replacements for standard C library functions +=item Adding a Perl interpreter to your C program -=over 4 +=item Calling a Perl subroutine from your C program -=item DESCRIPTION +=item Evaluating a Perl statement from your C program -=over 4 +=item Performing Perl pattern matches and substitutions from your C program -=item Conventions +=item Fiddling with the Perl stack from your C program -C, C

, C, C +=item Maintaining a persistent interpreter -=item File Operations +=item Execution of END blocks -=item File Input and Output +=item Maintaining multiple interpreter instances -=item File Positioning +=item Using Perl modules, which themselves use C libraries, from your C +program -=item Memory Management and String Handling +=back -=item Character Class Tests +=item Embedding Perl under Win32 -=item F functions +=item Hiding Perl_ -=item Miscellaneous functions +=item MORAL -=back +=item AUTHOR -=item SEE ALSO +=item COPYRIGHT =back -=head2 perlguts - Introduction to the Perl API +=head2 perldebguts - Guts of Perl debugging =over 4 =item DESCRIPTION -=item Variables +=item Debugger Internals =over 4 -=item Datatypes +=item Writing Your Own Debugger -=item What is an "IV"? +=back -=item Working with SVs +=item Frame Listing Output Examples -=item Offsets +=item Debugging regular expressions -=item What's Really Stored in an SV? +=over 4 -=item Working with AVs +=item Compile-time output -=item Working with HVs +C I C I, C I C +I, C, C, C +I, C, C, C, C, C, C, +C -=item Hash API Extensions +=item Types of nodes -=item References +=item Run-time output -=item Blessed References and Class Objects +=back -=item Creating New Variables +=item Debugging Perl memory usage -=item Reference Counts and Mortality +=over 4 -=item Stashes and Globs +=item Using C<$ENV{PERL_DEBUG_MSTATS}> -=item Double-Typed SVs +C, Free/Used, C, C, C, C, C -=item Magic Variables +=item Example of using B<-DL> switch -=item Assigning Magic +C<717>, C<002>, C<054>, C<602>, C<702>, C<704> -=item Magic Virtual Tables +=item B<-DL> details -=item Finding Magic +C, C, C -=item Understanding the Magic of Tied Hashes and Arrays +=item Limitations of B<-DL> statistics -=item Localizing changes +=back -C, C, C, C, -C, C, C, C, C, C, C, -C, -C, -C, C, C, C, C, -C, C, -C, C, C +=item SEE ALSO =back -=item Subroutines +=head2 perlxstut, perlXStut - Tutorial for writing XSUBs =over 4 -=item XSUBs and the Argument Stack - -=item Calling Perl Routines from within C Programs +=item DESCRIPTION -=item Memory Allocation +=item SPECIAL NOTES -=item PerlIO +=over 4 -=item Putting a C value on Perl stack +=item make -=item Scratchpads +=item Version caveat -=item Scratchpads and recursion +=item Dynamic Loading versus Static Loading =back -=item Compiled code +=item TUTORIAL =over 4 -=item Code tree +=item EXAMPLE 1 -=item Examining the tree +=item EXAMPLE 2 -=item Compile pass 1: check routines +=item What has gone on? -=item Compile pass 1a: constant folding +=item Writing good test scripts -=item Compile pass 2: context propagation +=item EXAMPLE 3 -=item Compile pass 3: peephole optimization +=item What's new here? -=item Pluggable runops +=item Input and Output Parameters -=back +=item The XSUBPP Program -=item Examining internal data structures with the C functions +=item The TYPEMAP file -=item How multiple interpreters and concurrency are supported +=item Warning about Output Arguments -=over 4 +=item EXAMPLE 4 -=item Background and PERL_IMPLICIT_CONTEXT +=item What has happened here? -=item So what happened to dTHR? +=item Anatomy of .xs file -=item How do I use all this in extensions? +=item Getting the fat out of XSUBs -=item Should I do anything special if I call perl from multiple threads? +=item More about XSUB arguments -=item Future Plans and PERL_IMPLICIT_SYS +=item The Argument Stack -=back +=item Extending your Extension -=item Internal Functions +=item Documenting your Extension -A, p, d, s, n, r, f, M, o, j, x +=item Installing your Extension -=over 4 +=item EXAMPLE 5 -=item Formatted Printing of IVs, UVs, and NVs +=item New Things in this Example -=item Pointer-To-Integer and Integer-To-Pointer +=item EXAMPLE 6 -=item Source Documentation +=item New Things in this Example -=back +=item EXAMPLE 7 (Coming Soon) -=item Unicode Support +=item EXAMPLE 8 (Coming Soon) -=over 4 +=item EXAMPLE 9 Passing open files to XSes -=item What B Unicode, anyway? +=item Troubleshooting these Examples -=item How can I recognise a UTF8 string? +=back -=item How does UTF8 represent Unicode characters? +=item See also -=item How does Perl store UTF8 strings? +=item Author -=item How do I convert a string to UTF8? +=over 4 -=item Is there anything else I need to know? +=item Last Changed =back -=item Custom Operators - -=item AUTHORS - -=item SEE ALSO - =back -=head2 perlcall - Perl calling conventions from C +=head2 perlxs - XS language reference manual =over 4 =item DESCRIPTION -An Error Handler, An Event Driven Program +=over 4 -=item THE CALL_ FUNCTIONS +=item Introduction -call_sv, call_pv, call_method, call_argv +=item On The Road -=item FLAG VALUES +=item The Anatomy of an XSUB -=over 4 +=item The Argument Stack -=item G_VOID +=item The RETVAL Variable -=item G_SCALAR +=item The MODULE Keyword -=item G_ARRAY +=item The PACKAGE Keyword -=item G_DISCARD +=item The PREFIX Keyword -=item G_NOARGS +=item The OUTPUT: Keyword -=item G_EVAL - -=item G_KEEPERR - -=item Determining the Context +=item The NO_OUTPUT Keyword -=back +=item The CODE: Keyword -=item KNOWN PROBLEMS +=item The INIT: Keyword -=item EXAMPLES +=item The NO_INIT Keyword -=over 4 +=item Initializing Function Parameters -=item No Parameters, Nothing returned +=item Default Parameter Values -=item Passing Parameters +=item The PREINIT: Keyword -=item Returning a Scalar +=item The SCOPE: Keyword -=item Returning a list of values +=item The INPUT: Keyword -=item Returning a list in a scalar context +=item The IN/OUTLIST/IN_OUTLIST/OUT/IN_OUT Keywords -=item Returning Data from Perl via the parameter list +=item The C Keyword -=item Using G_EVAL +=item Variable-length Parameter Lists -=item Using G_KEEPERR +=item The C_ARGS: Keyword -=item Using call_sv +=item The PPCODE: Keyword -=item Using call_argv +=item Returning Undef And Empty Lists -=item Using call_method +=item The REQUIRE: Keyword -=item Using GIMME_V +=item The CLEANUP: Keyword -=item Using Perl to dispose of temporaries +=item The POSTCALL: Keyword -=item Strategies for storing Callback Context Information +=item The BOOT: Keyword -1. Ignore the problem - Allow only 1 callback, 2. Create a sequence of -callbacks - hard wired limit, 3. Use a parameter to map to the Perl -callback +=item The VERSIONCHECK: Keyword -=item Alternate Stack Manipulation +=item The PROTOTYPES: Keyword -=item Creating and calling an anonymous subroutine in C +=item The PROTOTYPE: Keyword -=back +=item The ALIAS: Keyword -=item SEE ALSO +=item The OVERLOAD: Keyword -=item AUTHOR +=item The FALLBACK: Keyword -=item DATE +=item The INTERFACE: Keyword -=back +=item The INTERFACE_MACRO: Keyword -=head2 perlutil - utilities packaged with the Perl distribution +=item The INCLUDE: Keyword -=over 4 +=item The CASE: Keyword -=item DESCRIPTION +=item The & Unary Operator -=over 4 +=item Inserting POD, Comments and C Preprocessor Directives -=item DOCUMENTATION +=item Using XS With C++ -L, L and L, -L and L, L, -L, L, L, -L +=item Interface Strategy -=item CONVERTORS +=item Perl Objects And C Structures -L, L, L +=item The Typemap -=item Administration +=item Safely Storing Static Data in XS -L +MY_CXT_KEY, typedef my_cxt_t, START_MY_CXT, MY_CXT_INIT, dMY_CXT, MY_CXT -=item Development +=back -L, L, L and L, -L, L, L +=item EXAMPLES -=item SEE ALSO +=item XS VERSION -=back +=item AUTHOR =back -=head2 perlfilter - Source Filters +=head2 perlclib - Internal replacements for standard C library functions =over 4 =item DESCRIPTION -=item CONCEPTS +=over 4 -=item USING FILTERS +=item Conventions -=item WRITING A SOURCE FILTER +C, C

, C, C -=item WRITING A SOURCE FILTER IN C +=item File Operations -B +=item File Input and Output -=item CREATING A SOURCE FILTER AS A SEPARATE EXECUTABLE +=item File Positioning -=item WRITING A SOURCE FILTER IN PERL +=item Memory Management and String Handling -=item USING CONTEXT: THE DEBUG FILTER +=item Character Class Tests -=item CONCLUSION +=item F functions -=item REQUIREMENTS +=item Miscellaneous functions -=item AUTHOR +=back -=item Copyrights +=item SEE ALSO =back -=head2 perldbmfilter - Perl DBM Filters +=head2 perlguts - Introduction to the Perl API =over 4 -=item SYNOPSIS - =item DESCRIPTION -B, B, B, -B +=item Variables =over 4 -=item The Filter +=item Datatypes -=item An Example -- the NULL termination problem. +=item What is an "IV"? -=item Another Example -- Key is a C int. +=item Working with SVs -=back +=item Offsets -=item SEE ALSO +=item What's Really Stored in an SV? -=item AUTHOR +=item Working with AVs -=back +=item Working with HVs -=head2 perlapi - autogenerated documentation for the perl public API +=item Hash API Extensions -=over 4 +=item AVs, HVs and undefined values -=item DESCRIPTION +=item References -=item "Gimme" Values +=item Blessed References and Class Objects -GIMME, GIMME_V, G_ARRAY, G_DISCARD, G_EVAL, G_NOARGS, G_SCALAR, G_VOID +=item Creating New Variables -=item Array Manipulation Functions +GV_ADDMULTI, GV_ADDWARN -AvFILL, av_clear, av_delete, av_exists, av_extend, av_fetch, av_fill, -av_len, av_make, av_pop, av_push, av_shift, av_store, av_undef, av_unshift, -get_av, newAV, Nullav, sortsv +=item Reference Counts and Mortality -=item Callback Functions +=item Stashes and Globs -call_argv, call_method, call_pv, call_sv, ENTER, eval_pv, eval_sv, -FREETMPS, LEAVE, SAVETMPS +=item Double-Typed SVs -=item Character classes +=item Magic Variables -isALNUM, isALPHA, isDIGIT, isLOWER, isSPACE, isUPPER, toLOWER, toUPPER +=item Assigning Magic -=item Cloning an interpreter +=item Magic Virtual Tables -perl_clone +=item Finding Magic -=item CV Manipulation Functions +=item Understanding the Magic of Tied Hashes and Arrays -CvSTASH, get_cv, Nullcv +=item Localizing changes -=item Embedding Functions +C, C, C, C, +C, C, C, C, C, C, C, +C, +C, +C, C, C, C, C, +C, C, +C, C, C -load_module, perl_alloc, perl_construct, perl_destruct, perl_free, -perl_parse, perl_run, require_pv +=back -=item Global Variables +=item Subroutines -PL_modglobal, PL_na, PL_sv_no, PL_sv_undef, PL_sv_yes +=over 4 -=item GV Functions +=item XSUBs and the Argument Stack -GvSV, gv_fetchmeth, gv_fetchmethod, gv_fetchmethod_autoload, gv_stashpv, -gv_stashsv +=item Calling Perl Routines from within C Programs -=item Handy Values +=item Memory Allocation -HEf_SVKEY, Nullch, Nullsv +=item PerlIO -=item Hash Manipulation Functions +=item Putting a C value on Perl stack -get_hv, HeHASH, HeKEY, HeKLEN, HePV, HeSVKEY, HeSVKEY_force, HeSVKEY_set, -HeVAL, HvNAME, hv_clear, hv_delete, hv_delete_ent, hv_exists, -hv_exists_ent, hv_fetch, hv_fetch_ent, hv_iterinit, hv_iterkey, -hv_iterkeysv, hv_iternext, hv_iternextsv, hv_iterval, hv_magic, hv_store, -hv_store_ent, hv_undef, newHV, Nullhv +=item Scratchpads -=item Magical Functions +=item Scratchpads and recursion -mg_clear, mg_copy, mg_find, mg_free, mg_get, mg_length, mg_magical, mg_set, -SvGETMAGIC, SvLOCK, SvSETMAGIC, SvSetMagicSV, SvSetMagicSV_nosteal, -SvSetSV, SvSetSV_nosteal, SvSHARE +=back -=item Memory Management +=item Compiled code -Copy, Move, New, Newc, NEWSV, Newz, Renew, Renewc, Safefree, savepv, -savepvn, savesharedpv, StructCopy, Zero +=over 4 -=item Miscellaneous Functions +=item Code tree -fbm_compile, fbm_instr, form, getcwd_sv, strEQ, strGE, strGT, strLE, strLT, -strNE, strnEQ, strnNE +=item Examining the tree -=item Numeric functions +=item Compile pass 1: check routines -grok_bin, grok_hex, grok_number, grok_numeric_radix, grok_oct, scan_bin, -scan_hex, scan_oct +=item Compile pass 1a: constant folding -=item Optree Manipulation Functions +=item Compile pass 2: context propagation -cv_const_sv, newCONSTSUB, newXS +=item Compile pass 3: peephole optimization -=item Stack Manipulation Macros +=item Pluggable runops -dMARK, dORIGMARK, dSP, EXTEND, MARK, ORIGMARK, POPi, POPl, POPn, POPp, -POPpbytex, POPpx, POPs, PUSHi, PUSHMARK, PUSHn, PUSHp, PUSHs, PUSHu, -PUTBACK, SP, SPAGAIN, XPUSHi, XPUSHn, XPUSHp, XPUSHs, XPUSHu, XSRETURN, -XSRETURN_IV, XSRETURN_NO, XSRETURN_NV, XSRETURN_PV, XSRETURN_UNDEF, -XSRETURN_YES, XST_mIV, XST_mNO, XST_mNV, XST_mPV, XST_mUNDEF, XST_mYES +=back -=item SV Flags +=item Examining internal data structures with the C functions -svtype, SVt_IV, SVt_NV, SVt_PV, SVt_PVAV, SVt_PVCV, SVt_PVHV, SVt_PVMG +=item How multiple interpreters and concurrency are supported -=item SV Manipulation Functions +=over 4 -get_sv, looks_like_number, newRV_inc, newRV_noinc, newSV, newSViv, newSVnv, -newSVpv, newSVpvf, newSVpvn, newSVpvn_share, newSVrv, newSVsv, newSVuv, -new_vstring, SvCUR, SvCUR_set, SvEND, SvGROW, SvIOK, SvIOKp, SvIOK_notUV, -SvIOK_off, SvIOK_on, SvIOK_only, SvIOK_only_UV, SvIOK_UV, SvIV, SvIVX, -SvIVx, SvLEN, SvNIOK, SvNIOKp, SvNIOK_off, SvNOK, SvNOKp, SvNOK_off, -SvNOK_on, SvNOK_only, SvNV, SvNVx, SvNVX, SvOK, SvOOK, SvPOK, SvPOKp, -SvPOK_off, SvPOK_on, SvPOK_only, SvPOK_only_UTF8, SvPV, SvPVbyte, -SvPVbytex, SvPVbytex_force, SvPVbyte_force, SvPVbyte_nolen, SvPVutf8, -SvPVutf8x, SvPVutf8x_force, SvPVutf8_force, SvPVutf8_nolen, SvPVX, SvPVx, -SvPV_force, SvPV_force_nomg, SvPV_nolen, SvREFCNT, SvREFCNT_dec, -SvREFCNT_inc, SvROK, SvROK_off, SvROK_on, SvRV, SvSTASH, SvTAINT, -SvTAINTED, SvTAINTED_off, SvTAINTED_on, SvTRUE, SvTYPE, SvUNLOCK, SvUOK, -SvUPGRADE, SvUTF8, SvUTF8_off, SvUTF8_on, SvUV, SvUVX, SvUVx, sv_2bool, -sv_2cv, sv_2io, sv_2iv, sv_2mortal, sv_2nv, sv_2pvbyte, sv_2pvbyte_nolen, -sv_2pvutf8, sv_2pvutf8_nolen, sv_2pv_flags, sv_2pv_nolen, sv_2uv, -sv_backoff, sv_bless, sv_catpv, sv_catpvf, sv_catpvf_mg, sv_catpvn, -sv_catpvn_flags, sv_catpvn_mg, sv_catpv_mg, sv_catsv, sv_catsv_flags, -sv_catsv_mg, sv_chop, sv_clear, sv_cmp, sv_cmp_locale, sv_collxfrm, sv_dec, -sv_derived_from, sv_eq, sv_force_normal, sv_force_normal_flags, sv_free, -sv_gets, sv_grow, sv_inc, sv_insert, sv_isa, sv_isobject, sv_iv, sv_len, -sv_len_utf8, sv_magic, sv_magicext, sv_mortalcopy, sv_newmortal, sv_newref, -sv_nolocking, sv_nosharing, sv_nounlocking, sv_nv, sv_pos_b2u, sv_pos_u2b, -sv_pv, sv_pvbyte, sv_pvbyten, sv_pvbyten_force, sv_pvn, sv_pvn_force, -sv_pvn_force_flags, sv_pvutf8, sv_pvutf8n, sv_pvutf8n_force, sv_reftype, -sv_replace, sv_report_used, sv_reset, sv_rvweaken, sv_setiv, sv_setiv_mg, -sv_setnv, sv_setnv_mg, sv_setpv, sv_setpvf, sv_setpvf_mg, sv_setpviv, -sv_setpviv_mg, sv_setpvn, sv_setpvn_mg, sv_setpv_mg, sv_setref_iv, -sv_setref_nv, sv_setref_pv, sv_setref_pvn, sv_setref_uv, sv_setsv, -sv_setsv_flags, sv_setsv_mg, sv_setuv, sv_setuv_mg, sv_taint, sv_tainted, -sv_true, sv_unmagic, sv_unref, sv_unref_flags, sv_untaint, sv_upgrade, -sv_usepvn, sv_usepvn_mg, sv_utf8_decode, sv_utf8_downgrade, sv_utf8_encode, -sv_utf8_upgrade, sv_utf8_upgrade_flags, sv_uv, sv_vcatpvfn, sv_vsetpvfn +=item Background and PERL_IMPLICIT_CONTEXT -=item Unicode Support +=item So what happened to dTHR? -bytes_from_utf8, bytes_to_utf8, ibcmp_utf8, is_utf8_char, is_utf8_string, -pv_uni_display, sv_recode_to_utf8, sv_uni_display, to_utf8_case, -to_utf8_fold, to_utf8_lower, to_utf8_title, to_utf8_upper, utf8n_to_uvchr, -utf8n_to_uvuni, utf8_distance, utf8_hop, utf8_length, utf8_to_bytes, -utf8_to_uvchr, utf8_to_uvuni, uvchr_to_utf8, uvuni_to_utf8_flags +=item How do I use all this in extensions? -=item Variables created by C and C internal functions +=item Should I do anything special if I call perl from multiple threads? -ax, CLASS, dAX, dITEMS, dXSARGS, dXSI32, items, ix, newXSproto, RETVAL, ST, -THIS, XS, XSRETURN_EMPTY, XS_VERSION, XS_VERSION_BOOTCHECK +=item Future Plans and PERL_IMPLICIT_SYS -=item Warning and Dieing +=back -croak, warn +=item Internal Functions -=item AUTHORS +A, p, d, s, n, r, f, M, o, j, x -=item SEE ALSO +=over 4 -=back +=item Formatted Printing of IVs, UVs, and NVs -=head2 perlintern - autogenerated documentation of purely B - Perl functions +=item Pointer-To-Integer and Integer-To-Pointer -=over 4 - -=item DESCRIPTION - -=item Global Variables +=item Source Documentation -PL_DBsingle, PL_DBsub, PL_DBtrace, PL_dowarn, PL_last_in_gv, PL_ofs_sv, -PL_rs +=back -=item GV Functions +=item Unicode Support -is_gv_magical +=over 4 -=item IO Functions +=item What B Unicode, anyway? -start_glob +=item How can I recognise a UTF8 string? -=item Pad Data Structures +=item How does UTF8 represent Unicode characters? -CvPADLIST +=item How does Perl store UTF8 strings? -=item Stack Manipulation Macros +=item How do I convert a string to UTF8? -djSP, LVRET +=item Is there anything else I need to know? -=item SV Manipulation Functions +=back -report_uninit, sv_add_arena, sv_clean_all, sv_clean_objs, sv_free_arenas +=item Custom Operators =item AUTHORS @@ -4464,465 +4497,407 @@ report_uninit, sv_add_arena, sv_clean_all, sv_clean_objs, sv_free_arenas =back -=head2 perliol - C API for Perl's implementation of IO in Layers. +=head2 perlcall - Perl calling conventions from C =over 4 -=item SYNOPSIS - =item DESCRIPTION +An Error Handler, An Event Driven Program + +=item THE CALL_ FUNCTIONS + +call_sv, call_pv, call_method, call_argv + +=item FLAG VALUES + =over 4 -=item History and Background +=item G_VOID -=item Layers vs Disciplines +=item G_SCALAR -=item Data Structures +=item G_ARRAY -=item Functions and Attributes +=item G_DISCARD -=item Per-instance Data +=item G_NOARGS -=item Layers in action. +=item G_EVAL -=item Per-instance flag bits +=item G_KEEPERR -PERLIO_F_EOF, PERLIO_F_CANWRITE, PERLIO_F_CANREAD, PERLIO_F_ERROR, -PERLIO_F_TRUNCATE, PERLIO_F_APPEND, PERLIO_F_CRLF, PERLIO_F_UTF8, -PERLIO_F_UNBUF, PERLIO_F_WRBUF, PERLIO_F_RDBUF, PERLIO_F_LINEBUF, -PERLIO_F_TEMP, PERLIO_F_OPEN, PERLIO_F_FASTGETS +=item Determining the Context -=item Methods in Detail +=back -char * name;, Size_t size;, IV kind;, PERLIO_K_BUFFERED, PERLIO_K_CANCRLF, -PERLIO_K_FASTGETS, PERLIO_K_MULTIARG, PERLIO_K_RAW, IV -(*Pushed)(pTHX_ PerlIO *f,const char *mode, SV *arg);, IV -(*Popped)(pTHX_ PerlIO *f);, PerlIO * (*Open)(...);, SV * -(*Getarg)(pTHX_ PerlIO *f, CLONE_PARAMS *param, int flags), IV -(*Fileno)(pTHX_ PerlIO *f);, PerlIO * (*Dup)(pTHX_ PerlIO *f, PerlIO *o, -CLONE_PARAMS *param, int flags), SSize_t (*Read)(pTHX_ PerlIO *f, -void *vbuf, Size_t count);, SSize_t (*Unread)(pTHX_ PerlIO *f, const -void *vbuf, Size_t count);, SSize_t (*Write)(PerlIO *f, const void -*vbuf, Size_t count);, IV (*Seek)(pTHX_ PerlIO *f, Off_t -offset, int whence);, Off_t (*Tell)(pTHX_ PerlIO *f);, IV - (*Close)(pTHX_ PerlIO *f);, IV (*Flush)(pTHX_ PerlIO *f);, -IV (*Fill)(pTHX_ PerlIO *f);, IV (*Eof)(pTHX_ PerlIO -*f);, IV (*Error)(pTHX_ PerlIO *f);, void -(*Clearerr)(pTHX_ PerlIO *f);, void (*Setlinebuf)(pTHX_ PerlIO -*f);, STDCHAR * (*Get_base)(pTHX_ PerlIO *f);, Size_t -(*Get_bufsiz)(pTHX_ PerlIO *f);, STDCHAR * (*Get_ptr)(pTHX_ PerlIO -*f);, SSize_t (*Get_cnt)(pTHX_ PerlIO *f);, void -(*Set_ptrcnt)(pTHX_ PerlIO *f,STDCHAR *ptr,SSize_t cnt); +=item KNOWN PROBLEMS -=item Core Layers +=item EXAMPLES -"unix", "perlio", "stdio", "crlf", "mmap", "pending", "raw", "utf8" +=over 4 -=item Extension Layers +=item No Parameters, Nothing returned -":encoding", ":Scalar", ":Object" or ":Perl" +=item Passing Parameters -=back +=item Returning a Scalar -=item TODO +=item Returning a list of values -=back +=item Returning a list in a scalar context -=head2 perlapio - perl's IO abstraction interface. +=item Returning Data from Perl via the parameter list -=over 4 +=item Using G_EVAL -=item SYNOPSIS +=item Using G_KEEPERR -=item DESCRIPTION +=item Using call_sv -1. USE_STDIO, 2. USE_SFIO, 3. USE_PERLIO, B, -B, B, B, -B, B, -B, B, -B, B, -B, B, B, -B, B, B, -B, B, B, -B, B, B, -B, B, B, -B, B, B +=item Using call_argv -=over 4 +=item Using call_method -=item Co-existence with stdio +=item Using GIMME_V -B, B, -B, B +=item Using Perl to dispose of temporaries -=item "Fast gets" Functions +=item Strategies for storing Callback Context Information -B, B, B, -B, B, B, -B, B, B, -B +1. Ignore the problem - Allow only 1 callback, 2. Create a sequence of +callbacks - hard wired limit, 3. Use a parameter to map to the Perl +callback -=item Other Functions +=item Alternate Stack Manipulation -PerlIO_apply_layers(f,mode,layers), PerlIO_binmode(f,ptype,imode,layers), -'E' read, 'E' write, '+' read/write, PerlIO_debug(fmt,...) +=item Creating and calling an anonymous subroutine in C =back +=item SEE ALSO + +=item AUTHOR + +=item DATE + =back -=head2 perltodo - Perl TO-DO List +=head2 perlapi - autogenerated documentation for the perl public API =over 4 =item DESCRIPTION -=item To do during 5.6.x +=item "Gimme" Values -=over 4 +GIMME, GIMME_V, G_ARRAY, G_DISCARD, G_EVAL, G_NOARGS, G_SCALAR, G_VOID -=item Support for I/O disciplines +=item Array Manipulation Functions -=item Autoload bytes.pm +AvFILL, av_clear, av_delete, av_exists, av_extend, av_fetch, av_fill, +av_len, av_make, av_pop, av_push, av_shift, av_store, av_undef, av_unshift, +get_av, newAV, Nullav, sortsv -=item Make "\u{XXXX}" et al work +=item Callback Functions -=item Create a char *sv_pvprintify(sv, STRLEN *lenp, UV flags) +call_argv, call_method, call_pv, call_sv, ENTER, eval_pv, eval_sv, +FREETMPS, LEAVE, SAVETMPS -=item Overloadable regex assertions +=item Character classes -=item Unicode +isALNUM, isALPHA, isDIGIT, isLOWER, isSPACE, isUPPER, toLOWER, toUPPER -=item use Thread for iThreads +=item Cloning an interpreter -=item make perl_clone optionally clone ops +perl_clone -=item Work out exit/die semantics for threads +=item CV Manipulation Functions -=item Typed lexicals for compiler +CvSTASH, get_cv, Nullcv -=item Compiler workarounds for Win32 +=item Embedding Functions -=item AUTOLOADing in the compiler +cv_undef, load_module, nothreadhook, perl_alloc, perl_construct, +perl_destruct, perl_free, perl_parse, perl_run, require_pv -=item Fixing comppadlist when compiling +=item Functions in file pp_pack.c -=item Cleaning up exported namespace +packlist, pack_cat, unpackstring, unpack_str -=item Complete signal handling +=item Global Variables -=item Out-of-source builds +PL_modglobal, PL_na, PL_sv_no, PL_sv_undef, PL_sv_yes -=item POSIX realtime support +=item GV Functions -=item UNIX98 support +GvSV, gv_fetchmeth, gv_fetchmethod, gv_fetchmethod_autoload, +gv_fetchmeth_autoload, gv_stashpv, gv_stashsv -=item IPv6 Support +=item Handy Values -=item Long double conversion +HEf_SVKEY, Nullch, Nullsv -=item Locales +=item Hash Manipulation Functions -=item Thread-safe regexes +get_hv, HeHASH, HeKEY, HeKLEN, HePV, HeSVKEY, HeSVKEY_force, HeSVKEY_set, +HeVAL, HvNAME, hv_clear, hv_delete, hv_delete_ent, hv_exists, +hv_exists_ent, hv_fetch, hv_fetch_ent, hv_iterinit, hv_iterkey, +hv_iterkeysv, hv_iternext, hv_iternextsv, hv_iternext_flags, hv_iterval, +hv_magic, hv_store, hv_store_ent, hv_undef, newHV, Nullhv -=item Arithmetic on non-Arabic numerals +=item Magical Functions -=item POSIX Unicode character classes +mg_clear, mg_copy, mg_find, mg_free, mg_get, mg_length, mg_magical, mg_set, +SvGETMAGIC, SvLOCK, SvSETMAGIC, SvSetMagicSV, SvSetMagicSV_nosteal, +SvSetSV, SvSetSV_nosteal, SvSHARE -=item Factoring out common suffices/prefices in regexps (trie optimization) +=item Memory Management -=item Security audit shipped utilities +Copy, Move, New, Newc, NEWSV, Newz, Poison, Renew, Renewc, Safefree, +savepv, savepvn, savesharedpv, StructCopy, Zero -=item Sort out the uid-setting mess +=item Miscellaneous Functions -=item DLL Versioning +fbm_compile, fbm_instr, form, getcwd_sv, new_version, scan_version, strEQ, +strGE, strGT, strLE, strLT, strNE, strnEQ, strnNE, sv_nolocking, +sv_nosharing, sv_nounlocking, upg_version, vcmp, vnumify, vstringify -=item Introduce @( and @) +=item Numeric functions -=item Floating point handling +grok_bin, grok_hex, grok_number, grok_numeric_radix, grok_oct, scan_bin, +scan_hex, scan_oct -=item IV/UV preservation +=item Optree Manipulation Functions -=item Replace pod2html with something using Pod::Parser +cv_const_sv, newCONSTSUB, newXS -=item Automate module testing on CPAN +=item Pad Data Structures -=item sendmsg and recvmsg +pad_sv -=item Rewrite perlre documentation +=item Stack Manipulation Macros -=item Convert example code to IO::Handle filehandles +dMARK, dORIGMARK, dSP, EXTEND, MARK, ORIGMARK, POPi, POPl, POPn, POPp, +POPpbytex, POPpx, POPs, PUSHi, PUSHMARK, PUSHn, PUSHp, PUSHs, PUSHu, +PUTBACK, SP, SPAGAIN, XPUSHi, XPUSHn, XPUSHp, XPUSHs, XPUSHu, XSRETURN, +XSRETURN_IV, XSRETURN_NO, XSRETURN_NV, XSRETURN_PV, XSRETURN_UNDEF, +XSRETURN_YES, XST_mIV, XST_mNO, XST_mNV, XST_mPV, XST_mUNDEF, XST_mYES -=item Document Win32 choices +=item SV Flags -=item Check new modules +svtype, SVt_IV, SVt_NV, SVt_PV, SVt_PVAV, SVt_PVCV, SVt_PVHV, SVt_PVMG -=item Make roffitall find pods and libs itself +=item SV Manipulation Functions -=back +get_sv, looks_like_number, newRV_inc, newRV_noinc, newSV, newSViv, newSVnv, +newSVpv, newSVpvf, newSVpvn, newSVpvn_share, newSVrv, newSVsv, newSVuv, +SvCUR, SvCUR_set, SvEND, SvGROW, SvIOK, SvIOKp, SvIOK_notUV, SvIOK_off, +SvIOK_on, SvIOK_only, SvIOK_only_UV, SvIOK_UV, SvIsCOW, +SvIsCOW_shared_hash, SvIV, SvIVx, SvIVX, SvLEN, SvNIOK, SvNIOKp, +SvNIOK_off, SvNOK, SvNOKp, SvNOK_off, SvNOK_on, SvNOK_only, SvNV, SvNVX, +SvNVx, SvOK, SvOOK, SvPOK, SvPOKp, SvPOK_off, SvPOK_on, SvPOK_only, +SvPOK_only_UTF8, SvPV, SvPVbyte, SvPVbytex, SvPVbytex_force, +SvPVbyte_force, SvPVbyte_nolen, SvPVutf8, SvPVutf8x, SvPVutf8x_force, +SvPVutf8_force, SvPVutf8_nolen, SvPVx, SvPVX, SvPV_force, SvPV_force_nomg, +SvPV_nolen, SvREFCNT, SvREFCNT_dec, SvREFCNT_inc, SvROK, SvROK_off, +SvROK_on, SvRV, SvSTASH, SvTAINT, SvTAINTED, SvTAINTED_off, SvTAINTED_on, +SvTRUE, SvTYPE, SvUNLOCK, SvUOK, SvUPGRADE, SvUTF8, SvUTF8_off, SvUTF8_on, +SvUV, SvUVX, SvUVx, SvVOK, sv_2bool, sv_2cv, sv_2io, sv_2iv, sv_2mortal, +sv_2nv, sv_2pvbyte, sv_2pvbyte_nolen, sv_2pvutf8, sv_2pvutf8_nolen, +sv_2pv_flags, sv_2pv_nolen, sv_2uv, sv_backoff, sv_bless, sv_catpv, +sv_catpvf, sv_catpvf_mg, sv_catpvn, sv_catpvn_flags, sv_catpvn_mg, +sv_catpv_mg, sv_catsv, sv_catsv_flags, sv_catsv_mg, sv_chop, sv_clear, +sv_cmp, sv_cmp_locale, sv_collxfrm, sv_copypv, sv_dec, sv_derived_from, +sv_eq, sv_force_normal, sv_force_normal_flags, sv_free, sv_gets, sv_grow, +sv_inc, sv_insert, sv_isa, sv_isobject, sv_iv, sv_len, sv_len_utf8, +sv_magic, sv_magicext, sv_mortalcopy, sv_newmortal, sv_newref, sv_nv, +sv_pos_b2u, sv_pos_u2b, sv_pv, sv_pvbyte, sv_pvbyten, sv_pvbyten_force, +sv_pvn, sv_pvn_force, sv_pvn_force_flags, sv_pvutf8, sv_pvutf8n, +sv_pvutf8n_force, sv_reftype, sv_replace, sv_report_used, sv_reset, +sv_rvweaken, sv_setiv, sv_setiv_mg, sv_setnv, sv_setnv_mg, sv_setpv, +sv_setpvf, sv_setpvf_mg, sv_setpviv, sv_setpviv_mg, sv_setpvn, +sv_setpvn_mg, sv_setpv_mg, sv_setref_iv, sv_setref_nv, sv_setref_pv, +sv_setref_pvn, sv_setref_uv, sv_setsv, sv_setsv_flags, sv_setsv_mg, +sv_setuv, sv_setuv_mg, sv_taint, sv_tainted, sv_true, sv_unmagic, sv_unref, +sv_unref_flags, sv_untaint, sv_upgrade, sv_usepvn, sv_usepvn_mg, +sv_utf8_decode, sv_utf8_downgrade, sv_utf8_encode, sv_utf8_upgrade, +sv_utf8_upgrade_flags, sv_uv, sv_vcatpvfn, sv_vsetpvfn -=item To do at some point +=item Unicode Support -=over 4 +bytes_from_utf8, bytes_to_utf8, ibcmp_utf8, is_utf8_char, is_utf8_string, +pv_uni_display, sv_cat_decode, sv_recode_to_utf8, sv_uni_display, +to_utf8_case, to_utf8_fold, to_utf8_lower, to_utf8_title, to_utf8_upper, +utf8n_to_uvchr, utf8n_to_uvuni, utf8_distance, utf8_hop, utf8_length, +utf8_to_bytes, utf8_to_uvchr, utf8_to_uvuni, uvchr_to_utf8, +uvuni_to_utf8_flags -=item Remove regular expression recursion +=item Variables created by C and C internal functions -=item Memory leaks after failed eval +ax, CLASS, dAX, dITEMS, dXSARGS, dXSI32, items, ix, newXSproto, RETVAL, ST, +THIS, XS, XSRETURN_EMPTY, XS_VERSION, XS_VERSION_BOOTCHECK -=item pack for IV, UVs, NVs, and long doubles +=item Warning and Dieing -=item pack "(stuff)*" +croak, warn -=item bitfields in pack +=item AUTHORS -=item Cross compilation +=item SEE ALSO -=item Perl preprocessor / macros +=back -=item Perl lexer in Perl +=head2 perlintern - autogenerated documentation of purely B + Perl functions -=item Using POSIX calls internally +=over 4 -=item -i rename file when changed +=item DESCRIPTION -=item All ARGV input should act like EE +=item CV reference counts and CvOUTSIDE -=item Support for rerunning debugger +CvWEAKOUTSIDE -=item Test Suite for the Debugger +=item Functions in file pad.h -=item my sub foo { } +CX_CURPAD_SAVE, CX_CURPAD_SV, PAD_BASE_SV, PAD_CLONE_VARS, +PAD_COMPNAME_FLAGS, PAD_COMPNAME_GEN, PAD_COMPNAME_OURSTASH, +PAD_COMPNAME_PV, PAD_COMPNAME_TYPE, PAD_DUP, PAD_RESTORE_LOCAL, +PAD_SAVE_LOCAL, PAD_SAVE_SETNULLPAD, PAD_SETSV, PAD_SET_CUR, PAD_SV, +PAD_SVl, SAVECLEARSV, SAVECOMPPAD, SAVEPADSV -=item One-pass global destruction +=item Functions in file pp_ctl.c -=item Rewrite regexp parser +find_runcv -=item Cache recently used regexps +=item Global Variables -=item Re-entrant functions +PL_DBsingle, PL_DBsub, PL_DBtrace, PL_dowarn, PL_last_in_gv, PL_ofs_sv, +PL_rs -=item Cross-compilation support +=item GV Functions -=item Bit-shifting bitvectors +is_gv_magical -=item debugger pragma +=item IO Functions -=item use less pragma +start_glob -=item switch structures +=item Pad Data Structures -=item Cache eval tree +CvPADLIST, cv_clone, cv_dump, do_dump_pad, intro_my, pad_add_anon, +pad_add_name, pad_alloc, pad_block_start, pad_check_dup, pad_findlex, +pad_findmy, pad_fixup_inner_anons, pad_free, pad_leavemy, pad_new, +pad_push, pad_reset, pad_setsv, pad_swipe, pad_tidy, pad_undef -=item rcatmaybe +=item Stack Manipulation Macros -=item Shrink opcode tables - -=item Optimize away @_ - -=item Prototypes versus indirect objects - -=item Install HTML - -=item Prototype method calls - -=item Return context prototype declarations - -=item magic_setisa - -=item Garbage collection - -=item IO tutorial - -=item Rewrite perldoc - -=item Install .3p manpages - -=item Unicode tutorial - -=item Update POSIX.pm for 1003.1-2 - -=item Retargetable installation - -=item POSIX emulation on non-POSIX systems - -=item Rename Win32 headers - -=item Finish off lvalue functions - -=item Update sprintf documentation - -=item Use fchown/fchmod internally - -=item Make v-strings overloaded objects - -=back - -=item Vague ideas - -=over 4 - -=item ref() in list context - -=item Make tr/// return histogram of characters in list context - -=item Compile to real threaded code - -=item Structured types - -=item Modifiable $1 et al. - -=item Procedural interfaces for IO::*, etc. - -=item RPC modules - -=item Attach/detach debugger from running program +djSP, LVRET -=item GUI::Native +=item SV Manipulation Functions -=item foreach(reverse ...) +report_uninit, sv_add_arena, sv_clean_all, sv_clean_objs, sv_free_arenas -=item Constant function cache +=item AUTHORS -=item Approximate regular expression matching +=item SEE ALSO =back -=item Ongoing +=head2 perliol - C API for Perl's implementation of IO in Layers. =over 4 -=item Update guts documentation - -=item Add more tests - -=item Update auxiliary tools - -=back +=item SYNOPSIS -=item Recently done things +=item DESCRIPTION =over 4 -=item Alternative RE syntax module - -=item Safe signal handling - -=item Tie Modules - -=item gettimeofday - -=item setitimer and getimiter - -=item Testing __DIE__ hook - -=item CPP equivalent in Perl - -=item Explicit switch statements - -=item autocroak - -=item UTF/EBCDIC - -=item UTF Regexes - -=item perlcc to produce executable - -=item END blocks saved in compiled output - -=item Secure temporary file module - -=item Integrate Time::HiRes +=item History and Background -=item Turn Cwd into XS +=item Layers vs Disciplines -=item Mmap for input +=item Data Structures -=item Byte to/from UTF8 and UTF8 to/from local conversion +=item Functions and Attributes -=item Add sockatmark support +=item Per-instance Data -=item Mailing list archives +=item Layers in action. -=item Bug tracking +=item Per-instance flag bits -=item Integrate MacPerl +PERLIO_F_EOF, PERLIO_F_CANWRITE, PERLIO_F_CANREAD, PERLIO_F_ERROR, +PERLIO_F_TRUNCATE, PERLIO_F_APPEND, PERLIO_F_CRLF, PERLIO_F_UTF8, +PERLIO_F_UNBUF, PERLIO_F_WRBUF, PERLIO_F_RDBUF, PERLIO_F_LINEBUF, +PERLIO_F_TEMP, PERLIO_F_OPEN, PERLIO_F_FASTGETS -=item Web "nerve center" for Perl +=item Methods in Detail -=item Regular expression tutorial +fsize, name, size, kind, PERLIO_K_BUFFERED, PERLIO_K_RAW, PERLIO_K_CANCRLF, +PERLIO_K_FASTGETS, PERLIO_K_MULTIARG, Pushed, Popped, Open, Binmode, +Getarg, Fileno, Dup, Read, Write, Seek, Tell, Close, Flush, Fill, Eof, +Error, Clearerr, Setlinebuf, Get_base, Get_bufsiz, Get_ptr, Get_cnt, +Set_ptrcnt -=item Debugging Tutorial +=item Implementing PerlIO Layers -=item Integrate new modules +C implementations, Perl implementations -=item Integrate profiler +=item Core Layers -=item Y2K error detection +"unix", "perlio", "stdio", "crlf", "mmap", "pending", "raw", "utf8" -=item Regular expression debugger +=item Extension Layers -=item POD checker +":encoding", ":scalar", ":via" -=item "Dynamic" lexicals +=back -=item Cache precompiled modules +=item TODO =back -=item Deprecated Wishes +=head2 perlapio - perl's IO abstraction interface. =over 4 -=item Loop control on do{} - -=item Lexically scoped typeglobs - -=item format BOTTOM - -=item report HANDLE - -=item Generalised want()/caller()) - -=item Named prototypes - -=item Built-in globbing - -=item Regression tests for suidperl - -=item Cached hash values - -=item Add compression modules - -=item Reorganise documentation into tutorials/references - -=item Remove distinction between functions and operators - -=item Make XS easier to use - -=item Make embedding easier to use - -=item man for perl - -=item my $Package::variable +=item SYNOPSIS -=item "or" tests defined, not truth +=item DESCRIPTION -=item "class"-based lexicals +1. USE_STDIO, 2. USE_SFIO, 3. USE_PERLIO, B, +B, B, B, +B, B, +B, B, +B, B, +B, B, B, +B, B, B, +B, B, B, +B, B, B, +B, B, B, +B, B, B -=item byteperl +=over 4 -=item Lazy evaluation / tail recursion removal +=item Co-existence with stdio -=item Make "use utf8" the default +B, B, +B, B -=item Unicode collation and normalization +=item "Fast gets" Functions -=item Create debugging macros +B, B, B, +B, B, B, +B, B, B, +B -=item truncate to the people +=item Other Functions -=item pack/unpack tutorial +PerlIO_apply_layers(f,mode,layers), PerlIO_binmode(f,ptype,imode,layers), +'E' read, 'E' write, '+' read/write, PerlIO_debug(fmt,...) =back @@ -4951,17 +4926,14 @@ NFS, rsync'ing the patches =item Why rsync the source tree -It's easier to rsync the source tree, It's more recent, It's more reliable +It's easier to rsync the source tree, It's more reliable =item Why rsync the patches It's easier to rsync the patches, It's a good reference, Finding a start point, Finding how to fix a bug, Finding the source of misbehaviour -=item Perlbug remote interface - -1 http://bugs.perl.org, 2 bugdb@perl.org, 3 -commands_and_bugdids@bugs.perl.org, notes, patches, tests +=item Perlbug administration =item Submitting patches @@ -4986,6 +4958,8 @@ Argument stack, Mark stack, Save stack =item Millions of Macros +=item The .i Targets + =item Poking at Perl =item Using a source-level debugger @@ -4993,6 +4967,8 @@ Argument stack, Mark stack, Save stack run [args], break function_name, break source.c:xxx, step, next, continue, finish, 'enter', print +=item gdb macro support + =item Dumping Perl Data Structures =item Patching @@ -5004,7 +4980,19 @@ finish, 'enter', print =item Writing a test F, F, F, F, F, F, -F, F, t/base t/comp, t/cmd t/run t/io t/op, t/lib ext lib +F, F, F, F, F, t/base t/comp, +t/cmd t/run t/io t/op, t/lib ext lib + +=item Special Make Test Targets + +coretest, test.deparse, minitest, test.valgrind check.valgrind +utest.valgrind ucheck.valgrind, test.third check.third utest.third +ucheck.third, test.torture torturetest, utest ucheck test.utf8 check.utf8, +test_harness + +=item Running tests by hand + +PERL_CORE=1, PERL_DESTRUCT_LEVEL=2, PERL, PERL_SKIP_TTY_TEST =back @@ -5022,7 +5010,9 @@ F, F, t/base t/comp, t/cmd t/run t/io t/op, t/lib ext lib DEFINES, USE_MULTI = define, #PERL_MALLOC = define, CFG = Debug -=item Compaq's/Digital's Third Degree +=item valgrind + +=item Compaq's/Digital's/HP's Third Degree =item PERL_DESTRUCT_LEVEL @@ -5039,6 +5029,8 @@ DEFINES, USE_MULTI = define, #PERL_MALLOC = define, CFG = Debug -h, -l, -p[rocedures], -h[eavy], -i[nvocations], -l[ines], -testcoverage, -z[ero] +=item Miscellaneous tricks + =item CONCLUSION I @@ -5049,398 +5041,464 @@ I =back -=head2 perlhist - the Perl history records +=head2 perlbook - Perl book information =over 4 =item DESCRIPTION -=item INTRODUCTION +=back -=item THE KEEPERS OF THE PUMPKIN +=head2 perltodo - Perl TO-DO List =over 4 -=item PUMPKIN? - -=back +=item DESCRIPTION -=item THE RECORDS +=item To do during 5.6.x =over 4 -=item SELECTED RELEASE SIZES +=item Support for I/O disciplines -=item SELECTED PATCH SIZES +=item Autoload bytes.pm -=back +=item Make "\u{XXXX}" et al work -=item THE KEEPERS OF THE RECORDS +=item Create a char *sv_pvprintify(sv, STRLEN *lenp, UV flags) -=back +=item Overloadable regex assertions -=head2 perldelta - what is new for perl v5.8.0 +=item Unicode -=over 4 +=item Work out exit/die semantics for threads -=item DESCRIPTION +=item Better support for nonpreemptive threading systems like GNU pth -=item Highlights In 5.8.0 +=item Typed lexicals for compiler -=item Incompatible Changes +=item Compiler workarounds for Win32 -=over 4 +=item AUTOLOADing in the compiler -=item 64-bit platforms and malloc +=item Fixing comppadlist when compiling -=item AIX Dynaloading +=item Cleaning up exported namespace -=item Attributes for C variables now handled at run-time. +=item Complete signal handling -=item Socket Extension Dynamic in VMS +=item Out-of-source builds -=item IEEE-format Floating Point Default on OpenVMS Alpha +=item POSIX realtime support -=item New Unicode Properties +=item UNIX98 support -=item Perl Parser Stress Tested +=item IPv6 Support -=item REF(...) Instead Of SCALAR(...) +=item Long double conversion -=item Deprecations +=item Locales -=back +=item Arithmetic on non-Arabic numerals -=item Core Enhancements +=item POSIX Unicode character classes -=over 4 +=item Factoring out common suffices/prefices in regexps (trie optimization) -=item PerlIO is Now The Default +=item Security audit shipped utilities -=item Safe Signals +=item Sort out the uid-setting mess -=item Unicode Overhaul +=item Custom opcodes -=item Understanding of Numbers +=item DLL Versioning -=item Miscellaneous Changes +=item Introduce @( and @) -=back +=item Floating point handling -=item Modules and Pragmata +=item IV/UV preservation -=over 4 +=item Replace pod2html with something using Pod::Parser -=item New Modules and Pragmata +=item Automate module testing on CPAN -=item Updated And Improved Modules and Pragmata +=item sendmsg and recvmsg -=back +=item Rewrite perlre documentation -=item Utility Changes +=item Convert example code to IO::Handle filehandles -=item New Documentation +=item Document Win32 choices -=item Performance Enhancements +=item Check new modules -=item Installation and Configuration Improvements +=item Make roffitall find pods and libs itself + +=back + +=item To do at some point =over 4 -=item Generic Improvements +=item Remove regular expression recursion -=item New Or Improved Platforms +=item Memory leaks after failed eval -=back +=item bitfields in pack -=item Selected Bug Fixes +=item Cross compilation -=over 4 +=item Perl preprocessor / macros -=item Platform Specific Changes and Fixes +=item Perl lexer in Perl -=back +=item Using POSIX calls internally -=item New or Changed Diagnostics +=item -i rename file when changed -=item Changed Internals +=item All ARGV input should act like EE -=item Security Vulnerability Closed +=item Support for rerunning debugger -=item New Tests +=item Test Suite for the Debugger -=item Known Problems +=item my sub foo { } -=over 4 +=item One-pass global destruction -=item AIX +=item Rewrite regexp parser -=item Amiga Perl Invoking Mystery +=item Cache recently used regexps -=item lib/ftmp-security tests warn 'system possibly insecure' +=item Cross-compilation support -=item Cygwin intermittent failures of lib/Memoize/t/expire_file 11 and 12 +=item Bit-shifting bitvectors -=item HP-UX lib/io_multihomed Fails When LP64-Configured +=item debugger pragma -=item HP-UX lib/posix Subtest 9 Fails When LP64-Configured +=item use less pragma -=item Linux With Sfio Fails op/misc Test 48 +=item switch structures -=item Mac OS X +=item Cache eval tree -=item OS/390 +=item rcatmaybe -=item op/sprintf tests 129 and 130 +=item Shrink opcode tables -=item Failure of Thread tests +=item Optimize away @_ -=item UNICOS +=item Prototypes versus indirect objects -=item UTS +=item Install HTML -=item VMS +=item Prototype method calls -=item Win32 +=item Return context prototype declarations -=item Localising a Tied Variable Leaks Memory +=item magic_setisa -=item Localising Tied Arrays and Hashes Is Broken +=item Garbage collection -=item Self-tying of Arrays and Hashes Is Forbidden +=item IO tutorial -=item Building Extensions Can Fail Because Of Largefiles +=item Rewrite perldoc -=item Unicode Support on EBCDIC Still Spotty +=item Install .3p manpages -=item The Compiler Suite Is Still Experimental +=item Unicode tutorial -=item The Long Double Support Is Still Experimental +=item Update POSIX.pm for 1003.1-2 -=item Seen In Perl 5.7 But Gone Now +=item Retargetable installation -=back +=item POSIX emulation on non-POSIX systems -=item Reporting Bugs +=item Rename Win32 headers -=item SEE ALSO +=item Finish off lvalue functions -=item HISTORY +=item Update sprintf documentation -=back +=item Use fchown/fchmod internally -=head2 perl572delta - what's new for perl v5.7.2 +=item Make v-strings overloaded objects -=over 4 +=item Allow restricted hash assignment -=item DESCRIPTION +=item Should overload be inheritable? -=item Security Vulnerability Closed +=item Taint rethink -=item Incompatible Changes +=item Perform correctly when XSUBs call subroutines that exit via +goto(LABEL) and friends -=over 4 +=back -=item 64-bit platforms and malloc +=item Vague ideas -=item AIX Dynaloading +=over 4 -=item Socket Extension Dynamic in VMS +=item ref() in list context -=item Different Definition of the Unicode Character Classes \p{In...} +=item Make tr/// return histogram of characters in list context -=item Deprecations +=item Compile to real threaded code -=back +=item Structured types -=item Core Enhancements +=item Modifiable $1 et al. -=item Modules and Pragmata +=item Procedural interfaces for IO::*, etc. -=over 4 +=item RPC modules -=item New Modules and Distributions +=item Attach/detach debugger from running program -=item Updated And Improved Modules and Pragmata +=item GUI::Native -=back +=item foreach(reverse ...) -=item Utility Changes +=item Constant function cache -=item New Documentation +=item Approximate regular expression matching -=item Installation and Configuration Improvements +=back + +=item Ongoing =over 4 -=item New Or Improved Platforms +=item Update guts documentation -=item Generic Improvements +=item Add more tests -=back +=item Update auxiliary tools -=item Selected Bug Fixes +=item Create debugging macros -=over 4 +=item truncate to the people -=item Platform Specific Changes and Fixes +=item Unicode in Filenames =back -=item New or Changed Diagnostics +=item Unicode in %ENV -=item Source Code Enhancements +=item Recently done things =over 4 -=item MAGIC constants +=item Alternative RE syntax module -=item Better commented code +=item Safe signal handling -=item Regex pre-/post-compilation items matched up +=item Tie Modules -=item gcc -Wall +=item gettimeofday -=back +=item setitimer and getimiter -=item New Tests +=item Testing __DIE__ hook -=item Known Problems +=item CPP equivalent in Perl -=over 4 +=item Explicit switch statements -=item AIX +=item autocroak -=item Amiga Perl Invoking Mystery +=item UTF/EBCDIC -=item lib/ftmp-security tests warn 'system possibly insecure' +=item UTF Regexes -=item Cygwin intermittent failures of lib/Memoize/t/expire_file 11 and 12 +=item perlcc to produce executable -=item HP-UX lib/io_multihomed Fails When LP64-Configured +=item END blocks saved in compiled output -=item HP-UX lib/posix Subtest 9 Fails When LP64-Configured +=item Secure temporary file module -=item Linux With Sfio Fails op/misc Test 48 +=item Integrate Time::HiRes -=item OS/390 +=item Turn Cwd into XS -=item op/sprintf tests 129 and 130 +=item Mmap for input -=item Failure of Thread tests +=item Byte to/from UTF8 and UTF8 to/from local conversion -=item UNICOS +=item Add sockatmark support -=item UTS +=item Mailing list archives -=item VMS +=item Bug tracking -=item Win32 +=item Integrate MacPerl -=item Localising a Tied Variable Leaks Memory +=item Web "nerve center" for Perl -=item Self-tying of Arrays and Hashes Is Forbidden +=item Regular expression tutorial -=item Variable Attributes are not Currently Usable for Tieing +=item Debugging Tutorial -=item Building Extensions Can Fail Because Of Largefiles +=item Integrate new modules -=item The Compiler Suite Is Still Experimental +=item Integrate profiler -=item The Long Double Support is Still Experimental +=item Y2K error detection -=back +=item Regular expression debugger -=item Reporting Bugs +=item POD checker -=item SEE ALSO +=item "Dynamic" lexicals -=item HISTORY +=item Cache precompiled modules =back -=head2 perl571delta - what's new for perl v5.7.1 +=item Deprecated Wishes =over 4 -=item DESCRIPTION +=item Loop control on do{} -=item Security Vulnerability Closed +=item Lexically scoped typeglobs -=item Incompatible Changes +=item format BOTTOM -=item Core Enhancements +=item report HANDLE -=over 4 +=item Generalised want()/caller()) -=item AUTOLOAD Is Now Lvaluable +=item Named prototypes -=item PerlIO is Now The Default +=item Built-in globbing -=item Signals Are Now Safe +=item Regression tests for suidperl + +=item Cached hash values + +=item Add compression modules + +=item Reorganise documentation into tutorials/references + +=item Remove distinction between functions and operators + +=item Make XS easier to use + +=item Make embedding easier to use + +=item man for perl + +=item my $Package::variable + +=item "or" tests defined, not truth + +=item "class"-based lexicals + +=item byteperl + +=item Lazy evaluation / tail recursion removal + +=item Make "use utf8" the default + +=item Unicode collation and normalization + +=item pack/unpack tutorial =back -=item Modules and Pragmata +=back + +=head2 perldoc - Look up Perl documentation in Pod format. =over 4 -=item New Modules +=item SYNOPSIS -=item Updated And Improved Modules and Pragmata +=item DESCRIPTION -=back +=item OPTIONS -=item Performance Enhancements +B<-h>, B<-v>, B<-t>, B<-u>, B<-m> I, B<-l>, B<-F>, B<-f> +I, B<-q> I, B<-T>, B<-d> +I, B<-o> I, B<-M> I, +B<-w> I or B<-w> I

    tag), 4. end_ul() (generates +a
tag) =back -=item CAVEATS - -=item SEE ALSO +=item GENERATING DYNAMIC DOCUMENTS -=back +=over 4 -=head2 AutoSplit - split a package for autoloading +=item CREATING A STANDARD HTTP HEADER: -=over 4 +=item GENERATING A REDIRECTION HEADER -=item SYNOPSIS +=item CREATING THE HTML DOCUMENT HEADER -=item DESCRIPTION +B, 4, 5, 6.. -$keep, $check, $modtime +=item ENDING THE HTML DOCUMENT: -=over 4 +=item CREATING A SELF-REFERENCING URL THAT PRESERVES STATE INFORMATION: -=item Multiple packages +=item OBTAINING THE SCRIPT'S URL -=back +B<-absolute>, B<-relative>, B<-full>, B<-path> (B<-path_info>), B<-query> +(B<-query_string>), B<-base> -=item DIAGNOSTICS +=item MIXING POST AND URL PARAMETERS =back -=head2 B - The Perl Compiler +=item CREATING STANDARD HTML ELEMENTS: =over 4 -=item SYNOPSIS +=item PROVIDING ARGUMENTS TO HTML SHORTCUTS -=item DESCRIPTION +=item THE DISTRIBUTIVE PROPERTY OF HTML SHORTCUTS -=item OVERVIEW OF CLASSES +=item HTML SHORTCUTS AND LIST INTERPOLATION -=over 4 +=item NON-STANDARD HTML SHORTCUTS -=item SV-RELATED CLASSES +=item AUTOESCAPING HTML + +$escaped_string = escapeHTML("unescaped string");, $charset = +charset([$charset]);, $flag = autoEscape([$flag]); + +=item PRETTY-PRINTING HTML + +=back -=item B::SV METHODS +=item CREATING FILL-OUT FORMS: -REFCNT, FLAGS +=over 4 -=item B::IV METHODS +=item CREATING AN ISINDEX TAG -IV, IVX, UVX, int_value, needs64bits, packiv +=item STARTING AND ENDING A FORM -=item B::NV METHODS +B, B -NV, NVX +=item CREATING A TEXT FIELD -=item B::RV METHODS +B -RV +=item CREATING A BIG TEXT FIELD -=item B::PV METHODS +=item CREATING A PASSWORD FIELD -PV, RV, PVX +=item CREATING A FILE UPLOAD FIELD -=item B::PVMG METHODS +B -MAGIC, SvSTASH +=item CREATING A POPUP MENU -=item B::MAGIC METHODS +=item CREATING AN OPTION GROUP -MOREMAGIC, precomp, PRIVATE, TYPE, FLAGS, OBJ, PTR, REGEX +=item CREATING A SCROLLING LIST -=item B::PVLV METHODS +B -TARGOFF, TARGLEN, TYPE, TARG +=item CREATING A GROUP OF RELATED CHECKBOXES -=item B::BM METHODS +B -USEFUL, PREVIOUS, RARE, TABLE +=item CREATING A STANDALONE CHECKBOX -=item B::GV METHODS +B -is_empty, NAME, SAFENAME, STASH, SV, IO, FORM, AV, HV, EGV, CV, CVGEN, -LINE, FILE, FILEGV, GvREFCNT, FLAGS +=item CREATING A RADIO BUTTON GROUP -=item B::IO METHODS +B -LINES, PAGE, PAGE_LEN, LINES_LEFT, TOP_NAME, TOP_GV, FMT_NAME, FMT_GV, -BOTTOM_NAME, BOTTOM_GV, SUBPROCESS, IoTYPE, IoFLAGS, IsSTD +=item CREATING A SUBMIT BUTTON -=item B::AV METHODS +B -FILL, MAX, OFF, ARRAY, AvFLAGS +=item CREATING A RESET BUTTON -=item B::CV METHODS +=item CREATING A DEFAULT BUTTON -STASH, START, ROOT, GV, FILE, DEPTH, PADLIST, OUTSIDE, XSUB, XSUBANY, -CvFLAGS, const_sv +=item CREATING A HIDDEN FIELD -=item B::HV METHODS +B -FILL, MAX, KEYS, RITER, NAME, PMROOT, ARRAY +=item CREATING A CLICKABLE IMAGE BUTTON -=item OP-RELATED CLASSES +B, 3. The third option (-align, optional) is an alignment +type, and may be TOP, BOTTOM or MIDDLE -=item B::OP METHODS +=item CREATING A JAVASCRIPT ACTION BUTTON -next, sibling, name, ppaddr, desc, targ, type, seq, flags, private +=back -=item B::UNOP METHOD +=item HTTP COOKIES -first +1. an expiration time, 2. a domain, 3. a path, 4. a "secure" flag, +B<-name>, B<-value>, B<-path>, B<-domain>, B<-expires>, B<-secure> -=item B::BINOP METHOD +=item WORKING WITH FRAMES -last +1. Create a document, 2. Specify the destination for the +document in the HTTP header, 3. Specify the destination for the document in +the
tag -=item B::LOGOP METHOD +=item LIMITED SUPPORT FOR CASCADING STYLE SHEETS -other +=item DEBUGGING -=item B::LISTOP METHOD +=over 4 -children +=item DUMPING OUT ALL THE NAME/VALUE PAIRS -=item B::PMOP METHODS +=back -pmreplroot, pmreplstart, pmnext, pmregexp, pmflags, pmdynflags, -pmpermflags, precomp, pmoffet +=item FETCHING ENVIRONMENT VARIABLES -=item B::SVOP METHOD +B, B, B, B, +B, B, B Return the script +name as a partial URL, for self-refering scripts, B, B, B, B, B, +B, B, B, +B, B, B, B -sv, gv +=item USING NPH SCRIPTS -=item B::PADOP METHOD +In the B statement, By calling the B method:, By using B<-nph> +parameters -padix +=item Server Push -=item B::PVOP METHOD +multipart_init(), multipart_start(), multipart_end(), multipart_final() -pv +=item Avoiding Denial of Service Attacks -=item B::LOOP METHODS +B<$CGI::POST_MAX>, B<$CGI::DISABLE_UPLOADS>, B<1. On a script-by-script +basis>, B<2. Globally for all scripts> -redoop, nextop, lastop +=item COMPATIBILITY WITH CGI-LIB.PL -=item B::COP METHODS +=item AUTHOR INFORMATION -label, stash, file, cop_seq, arybase, line +=item CREDITS -=back +Matt Heffron (heffron@falstaff.css.beckman.com), James Taylor +(james.taylor@srs.gov), Scott Anguish , Mike Jewell +(mlj3u@virginia.edu), Timothy Shimmin (tes@kbs.citri.edu.au), Joergen Haegg +(jh@axis.se), Laurent Delfosse (delfosse@delfosse.com), Richard Resnick +(applepi1@aol.com), Craig Bishop (csb@barwonwater.vic.gov.au), Tony Curtis +(tc@vcpc.univie.ac.at), Tim Bunce (Tim.Bunce@ig.co.uk), Tom Christiansen +(tchrist@convex.com), Andreas Koenig (k@franz.ww.TU-Berlin.DE), Tim +MacKenzie (Tim.MacKenzie@fulcrum.com.au), Kevin B. Hendricks +(kbhend@dogwood.tyler.wm.edu), Stephen Dahmen (joyfire@inxpress.net), Ed +Jordan (ed@fidalgo.net), David Alan Pisoni (david@cnation.com), Doug +MacEachern (dougm@opengroup.org), Robin Houston (robin@oneworld.org), +...and many many more.. -=item FUNCTIONS EXPORTED BY C +=item A COMPLETE EXAMPLE OF A SIMPLE FORM-BASED SCRIPT -main_cv, init_av, begin_av, end_av, main_root, main_start, comppadlist, -regex_padav, sv_undef, sv_yes, sv_no, amagic_generation, walkoptree(OP, -METHOD), walkoptree_debug(DEBUG), walksymtable(SYMREF, METHOD, RECURSE, -PREFIX), svref_2object(SV), ppname(OPNUM), hash(STR), cast_I32(I), minus_c, -cstring(STR), class(OBJ), threadsv_names +=item BUGS -=item AUTHOR +=item SEE ALSO =back -=head2 B::Asmdata - Autogenerated data about Perl ops, used to generate -bytecode +=head2 CGI::Apache - Backward compatibility module for CGI.pm =over 4 =item SYNOPSIS +=item ABSTRACT + =item DESCRIPTION -%insn_data, @insn_name, @optype, @specialsv_name +=item AUTHOR INFORMATION -=item AUTHOR +=item BUGS + +=item SEE ALSO =back -=head2 B::Assembler - Assemble Perl bytecode +=head2 CGI::Carp, B - CGI routines for writing to the HTTPD (or +other) error log =over 4 @@ -9003,31 +10586,27 @@ bytecode =item DESCRIPTION -=item AUTHORS - -=back +=item REDIRECTING ERROR MESSAGES -=head2 B::Bblock - Walk basic blocks +=item MAKING PERL ERRORS APPEAR IN THE BROWSER WINDOW =over 4 -=item SYNOPSIS - -=item DESCRIPTION +=item Changing the default message -=over 4 +=back -=item Functions +=item MAKING WARNINGS APPEAR AS HTML COMMENTS -B +=item OVERRIDING THE NAME OF THE PROGRAM -=back +=item AUTHORS -=item AUTHOR +=item SEE ALSO =back -=head2 B::Bytecode - Perl compiler's bytecode backend +=head2 CGI::Cookie - Interface to Netscape Cookies =over 4 @@ -9035,44 +10614,33 @@ B =item DESCRIPTION -=item OPTIONS - -B<-ofilename>, B<-afilename>, B<-->, B<-f>, B<-fcompress-nullops>, -B<-fomit-sequence-numbers>, B<-fbypass-nullops>, B<-On>, B<-D>, B<-Do>, -B<-Db>, B<-Da>, B<-DC>, B<-S>, B<-upackage> - -=item EXAMPLES - -=item BUGS +=item USING CGI::Cookie -=item AUTHORS +B<1. expiration date>, B<2. domain>, B<3. path>, B<4. secure flag> -=back +=over 4 -=head2 B::C - Perl compiler's C backend +=item Creating New Cookies -=over 4 +=item Sending the Cookie to the Browser -=item SYNOPSIS +=item Recovering Previous Cookies -=item DESCRIPTION +=item Manipulating Cookies -=item OPTIONS +B, B, B, B, B -B<-ofilename>, B<-v>, B<-->, B<-uPackname>, B<-D>, B<-Do>, B<-Dc>, B<-DA>, -B<-DC>, B<-DM>, B<-f>, B<-fcog>, B<-fsave-data>, B<-fppaddr>, B<-fwarn-sv>, -B<-fuse-script-name>, B<-fsave-sig-hash>, B<-On>, B<-O0>, B<-O1>, B<-O2>, -B<-llimit> +=back -=item EXAMPLES +=item AUTHOR INFORMATION =item BUGS -=item AUTHOR +=item SEE ALSO =back -=head2 B::CC - Perl compiler's optimized C translation backend +=head2 CGI::Fast - CGI Interface for Fast CGI =over 4 @@ -9080,35 +10648,29 @@ B<-llimit> =item DESCRIPTION -=item OPTIONS - -B<-ofilename>, B<-v>, B<-->, B<-uPackname>, B<-mModulename>, B<-D>, B<-Dr>, -B<-DO>, B<-Ds>, B<-Dp>, B<-Dq>, B<-Dl>, B<-Dt>, B<-f>, -B<-ffreetmps-each-bblock>, B<-ffreetmps-each-loop>, B<-fomit-taint>, B<-On> - -=item EXAMPLES +=item OTHER PIECES OF THE PUZZLE -=item BUGS +=item WRITING FASTCGI PERL SCRIPTS -=item DIFFERENCES +=item INSTALLING FASTCGI SCRIPTS -=over 4 +=item USING FASTCGI SCRIPTS AS CGI SCRIPTS -=item Loops +=item EXTERNAL FASTCGI SERVER INVOCATION -=item Context of ".." +FCGI_SOCKET_PATH, FCGI_LISTEN_QUEUE -=item Arithmetic +=item CAVEATS -=item Deprecated features +=item AUTHOR INFORMATION -=back +=item BUGS -=item AUTHOR +=item SEE ALSO =back -=head2 B::Concise - Walk Perl syntax tree, printing concise info about ops +=head2 CGI::Pretty - module to produce nicely formatted HTML code =over 4 @@ -9116,52 +10678,23 @@ B<-ffreetmps-each-bblock>, B<-ffreetmps-each-loop>, B<-fomit-taint>, B<-On> =item DESCRIPTION -=item OPTIONS - -B<-basic>, B<-exec>, B<-tree>, B<-compact>, B<-loose>, B<-vt>, B<-ascii>, -B<-main>, B<-base>I, B<-bigendian>, B<-littleendian>, B<-concise>, -B<-terse>, B<-linenoise>, B<-debug>, B<-env> - -=item FORMATTING SPECIFICATIONS - -B<(x(>IB<;>IB<)x)>, B<(*(>IB<)*)>, -B<(*(>IB<;>IB<)*)>, B<(?(>IB<#>IIB<)?)>, -B<#>I, B<#>II, B<~>, B<#addr>, B<#arg>, B<#class>, -B<#classym>, B<#coplabel>, B<#exname>, B<#extarg>, B<#firstaddr>, -B<#flags>, B<#flagval>, B<#hyphenseq>, B<#label>, B<#lastaddr>, B<#name>, -B<#NAME>, B<#next>, B<#nextaddr>, B<#noise>, B<#private>, B<#privval>, -B<#seq>, B<#seqnum>, B<#sibaddr>, B<#svaddr>, B<#svclass>, B<#svval>, -B<#targ>, B<#targarg>, B<#targarglife>, B<#typenum> - -=item ABBREVIATIONS - =over 4 -=item OP flags abbreviations +=item Tags that won't be formatted -=item OP class abbreviations +=item Customizing the Indenting =back -=item Using B::Concise outside of the O framework +=item BUGS =item AUTHOR -=back - -=head2 B::Debug - Walk Perl syntax tree, printing debug info about ops - -=over 4 - -=item SYNOPSIS - -=item DESCRIPTION - -=item AUTHOR +=item SEE ALSO =back -=head2 B::Deparse - Perl compiler backend to produce perl code +=head2 CGI::Push - Simple Interface to Server Push =over 4 @@ -9169,48 +10702,47 @@ B<#targ>, B<#targarg>, B<#targarglife>, B<#typenum> =item DESCRIPTION -=item OPTIONS - -B<-l>, B<-p>, B<-P>, B<-q>, B<-f>I, B<-s>I, B, -BI, B, BIB<.>, B<-x>I +=item USING CGI::Push -=item USING B::Deparse AS A MODULE +-next_page, -last_page, -type, -delay, -cookie, -target, -expires, -nph =over 4 -=item Synopsis - -=item Description - -=item new +=item Heterogeneous Pages -=item ambient_pragmas +=item Changing the Page Delay on the Fly -strict, $[, bytes, utf8, integer, re, warnings, hint_bits, warning_bits +=back -=item coderef2text +=item INSTALLING CGI::Push SCRIPTS -=back +=item AUTHOR INFORMATION =item BUGS -=item AUTHOR +=item SEE ALSO =back -=head2 B::Disassembler - Disassemble Perl bytecode +=head2 CGI::Switch - Backward compatibility module for defunct CGI::Switch =over 4 =item SYNOPSIS +=item ABSTRACT + =item DESCRIPTION -=item AUTHOR +=item AUTHOR INFORMATION + +=item BUGS + +=item SEE ALSO =back -=head2 B::Lint - Perl lint +=head2 CGI::Util - Internal utilities used by CGI module =over 4 @@ -9218,94 +10750,133 @@ strict, $[, bytes, utf8, integer, re, warnings, hint_bits, warning_bits =item DESCRIPTION -=item OPTIONS AND LINT CHECKS - -B, B and B, B, -B, B, B, B, B - -=item NON LINT-CHECK OPTIONS - -B<-u Package> - -=item BUGS +=item AUTHOR INFORMATION -=item AUTHOR +=item SEE ALSO =back -=head2 B::O, O - Generic interface to Perl Compiler backends +=head2 CPAN - query, download and build perl modules from CPAN sites =over 4 =item SYNOPSIS +=item STATUS + =item DESCRIPTION -=item CONVENTIONS +=over 4 -=item IMPLEMENTATION +=item Interactive Mode -=item AUTHOR +Searching for authors, bundles, distribution files and modules, make, test, +install, clean modules or distributions, get, readme, look module or +distribution, ls author, Signals -=back +=item CPAN::Shell -=head2 B::Showlex - Show lexical variables used in functions or files +=item autobundle -=over 4 +=item recompile -=item SYNOPSIS +=item The four C Classes: Author, Bundle, Module, Distribution -=item DESCRIPTION +=item Programmer's interface -=item AUTHOR +expand($type,@things), expandany(@things), Programming Examples -=back +=item Methods in the other Classes -=head2 B::Stackobj - Helper module for CC backend +CPAN::Author::as_glimpse(), CPAN::Author::as_string(), +CPAN::Author::email(), CPAN::Author::fullname(), CPAN::Author::name(), +CPAN::Bundle::as_glimpse(), CPAN::Bundle::as_string(), +CPAN::Bundle::clean(), CPAN::Bundle::contains(), +CPAN::Bundle::force($method,@args), CPAN::Bundle::get(), +CPAN::Bundle::inst_file(), CPAN::Bundle::inst_version(), +CPAN::Bundle::uptodate(), CPAN::Bundle::install(), CPAN::Bundle::make(), +CPAN::Bundle::readme(), CPAN::Bundle::test(), +CPAN::Distribution::as_glimpse(), CPAN::Distribution::as_string(), +CPAN::Distribution::clean(), CPAN::Distribution::containsmods(), +CPAN::Distribution::cvs_import(), CPAN::Distribution::dir(), +CPAN::Distribution::force($method,@args), CPAN::Distribution::get(), +CPAN::Distribution::install(), CPAN::Distribution::isa_perl(), +CPAN::Distribution::look(), CPAN::Distribution::make(), +CPAN::Distribution::prereq_pm(), CPAN::Distribution::readme(), +CPAN::Distribution::test(), CPAN::Distribution::uptodate(), +CPAN::Index::force_reload(), CPAN::Index::reload(), CPAN::InfoObj::dump(), +CPAN::Module::as_glimpse(), CPAN::Module::as_string(), +CPAN::Module::clean(), CPAN::Module::cpan_file(), +CPAN::Module::cpan_version(), CPAN::Module::cvs_import(), +CPAN::Module::description(), CPAN::Module::force($method,@args), +CPAN::Module::get(), CPAN::Module::inst_file(), +CPAN::Module::inst_version(), CPAN::Module::install(), +CPAN::Module::look(), CPAN::Module::make(), +CPAN::Module::manpage_headline(), CPAN::Module::readme(), +CPAN::Module::test(), CPAN::Module::uptodate(), CPAN::Module::userid() -=over 4 +=item Cache Manager -=item SYNOPSIS +=item Bundles -=item DESCRIPTION +=item Prerequisites -=item AUTHOR +=item Finding packages and VERSION + +=item Debugging + +=item Floppy, Zip, Offline Mode =back -=head2 B::Stash - show what stashes are loaded +=item CONFIGURATION -=head2 B::Terse - Walk Perl syntax tree, printing terse info about ops +Cscalar optionE>, Cscalar optionE +EvalueE>, Clist optionE>, Clist +optionE [shift|pop]>, Clist optionE +[unshift|push|splice] ElistE> =over 4 -=item SYNOPSIS - -=item DESCRIPTION +=item Note on urllist parameter's format -=item AUTHOR +=item urllist parameter has CD-ROM support =back -=head2 B::Xref - Generates cross reference reports for Perl programs +=item SECURITY + +=item EXPORT + +=item POPULATE AN INSTALLATION WITH LOTS OF MODULES + +=item WORKING WITH CPAN.pm BEHIND FIREWALLS =over 4 -=item SYNOPSIS +=item Three basic types of firewalls -=item DESCRIPTION +http firewall, ftp firewall, One way visibility, SOCKS, IP Masquerade -=item OPTIONS +=item Configuring lynx or ncftp for going through a firewall + +=back + +=item FAQ -C<-oFILENAME>, C<-r>, C<-D[tO]> +1), 2), 3), 4), 5), 6), 7), 8), 9), 10) =item BUGS =item AUTHOR +=item TRANSLATIONS + +=item SEE ALSO + =back -=head2 Bblock, B::Bblock - Walk basic blocks +=head2 CPAN::FirstTime - Utility for CPAN::Config file Initialization =over 4 @@ -9313,19 +10884,22 @@ C<-oFILENAME>, C<-r>, C<-D[tO]> =item DESCRIPTION -=over 4 +=back -=item Functions +=head2 CPANox, CPAN::Nox - Wrapper around CPAN.pm without using any XS +module -B +=over 4 -=back +=item SYNOPSIS -=item AUTHOR +=item DESCRIPTION + +=item SEE ALSO =back -=head2 Benchmark - benchmark running times of Perl code +=head2 Carp, carp - warn of errors (from perspective of caller) =over 4 @@ -9335,41 +10909,39 @@ B =over 4 -=item Methods +=item Forcing a Stack Trace -new, debug, iters +=back -=item Standard Exports +=item BUGS -timeit(COUNT, CODE), timethis ( COUNT, CODE, [ TITLE, [ STYLE ]] ), -timethese ( COUNT, CODEHASHREF, [ STYLE ] ), timediff ( T1, T2 ), timestr ( -TIMEDIFF, [ STYLE, [ FORMAT ] ] ) +=back -=item Optional Exports +=head2 Carp::Heavy, Carp heavy machinery - no user serviceable parts inside -clearcache ( COUNT ), clearallcache ( ), cmpthese ( COUT, CODEHASHREF, [ -STYLE ] ), cmpthese ( RESULTSHASHREF, [ STYLE ] ), countit(TIME, CODE), -disablecache ( ), enablecache ( ), timesum ( T1, T2 ) +=head2 Class::ISA -- report the search path for a class's ISA tree -=back +=over 4 -=item NOTES +=item SYNOPSIS -=item EXAMPLES +=item DESCRIPTION -=item INHERITANCE +=item FUNCTIONS -=item CAVEATS +the function Class::ISA::super_path($CLASS), the function +Class::ISA::self_and_super_path($CLASS), the function +Class::ISA::self_and_super_versions($CLASS) -=item SEE ALSO +=item CAUTIONARY NOTES -=item AUTHORS +=item COPYRIGHT -=item MODIFICATION HISTORY +=item AUTHOR =back -=head2 ByteLoader - load byte compiled perl code +=head2 Class::Struct - declare struct-like datatypes as Perl classes =over 4 @@ -9377,387 +10949,563 @@ disablecache ( ), enablecache ( ), timesum ( T1, T2 ) =item DESCRIPTION -=item AUTHOR - -=item SEE ALSO - -=back +=over 4 -=head2 Bytecode, B::Bytecode - Perl compiler's bytecode backend +=item The C function -=over 4 +=item Class Creation at Compile Time -=item SYNOPSIS +=item Element Types and Accessor Methods -=item DESCRIPTION +Scalar (C<'$'> or C<'*$'>), Array (C<'@'> or C<'*@'>), Hash (C<'%'> or +C<'*%'>), Class (C<'Class_Name'> or C<'*Class_Name'>) -=item OPTIONS +=item Initializing with C -B<-ofilename>, B<-afilename>, B<-->, B<-f>, B<-fcompress-nullops>, -B<-fomit-sequence-numbers>, B<-fbypass-nullops>, B<-On>, B<-D>, B<-Do>, -B<-Db>, B<-Da>, B<-DC>, B<-S>, B<-upackage> +=back =item EXAMPLES -=item BUGS +Example 1, Example 2, Example 3 -=item AUTHORS +=item Author and Modification History =back -=head2 CGI - Simple Common Gateway Interface Class +=head2 Config - access Perl configuration information =over 4 =item SYNOPSIS -=item ABSTRACT - =item DESCRIPTION -=over 4 +myconfig(), config_sh(), config_re($regex), config_vars(@names) -=item PROGRAMMING STYLE +=item EXAMPLE -=item CALLING CGI.PM ROUTINES +=item WARNING -=item CREATING A NEW QUERY OBJECT (OBJECT-ORIENTED STYLE): +=item GLOSSARY -=item CREATING A NEW QUERY OBJECT FROM AN INPUT FILE +=over 4 -=item FETCHING A LIST OF KEYWORDS FROM THE QUERY: +=item _ -=item FETCHING THE NAMES OF ALL THE PARAMETERS PASSED TO YOUR SCRIPT: +C<_a>, C<_exe>, C<_o> -=item FETCHING THE VALUE OR VALUES OF A SINGLE NAMED PARAMETER: +=item a -=item SETTING THE VALUE(S) OF A NAMED PARAMETER: +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, C, +C, C -=item APPENDING ADDITIONAL VALUES TO A NAMED PARAMETER: +=item b -=item IMPORTING ALL PARAMETERS INTO A NAMESPACE: +C, C, C, C, C, C, C -=item DELETING A PARAMETER COMPLETELY: +=item c -=item DELETING ALL PARAMETERS: +C, C, C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C + +=item d + +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C + +=item e -=item DIRECT ACCESS TO THE PARAMETER LIST: +C, C, C, C, C, C, +C, C, C, +C, C, C, C, +C, C, C -=item FETCHING THE PARAMETER LIST AS A HASH: +=item f -=item SAVING THE STATE OF THE SCRIPT TO A FILE: +C, C, C, C, C, +C, C, C, C, C, C, +C -=item RETRIEVING CGI ERRORS +=item g -=item USING THE FUNCTION-ORIENTED INTERFACE +C, C, C, C, +C, C, C, +C, C, C, +C, C, C, +C, C, +C, C, C, +C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C -B<:cgi>, B<:form>, B<:html2>, B<:html3>, B<:html4>, B<:netscape>, B<:html>, -B<:standard>, B<:all> +=item h -=item PRAGMAS +C, C, C, C, C, C, +C, C --any, -compile, -nosticky, -no_undef_params, -no_xhtml, -nph, --newstyle_urls, -oldstyle_urls, -autoload, -no_debug, -debug, --private_tempfiles +=item i -=item SPECIAL FORMS FOR IMPORTING HTML-TAG FUNCTIONS +C, C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, +C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, +C, C, C, +C, C, C, +C, C, C, +C, C, C, +C, C, C, +C, C, C, +C, C, C, C, C -1. start_table() (generates a tag), 2. end_table() (generates a -
tag), 3. start_ul() (generates a
    tag), 4. end_ul() (generates -a
tag) +=item k -=back +C, C -=item GENERATING DYNAMIC DOCUMENTS +=item l -=over 4 +C, C, C, C, C, +C, C, C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, C, +C -=item CREATING A STANDARD HTTP HEADER: +=item m -=item GENERATING A REDIRECTION HEADER +C, C, C, C, C, C, +C, C, C, C, C, +C, C -=item CREATING THE HTML DOCUMENT HEADER +=item M -B, 4, 5, 6.. +C, C, C, C, C, C, +C, C, C, C, C, C, +C -=item ENDING THE HTML DOCUMENT: +=item n -=item CREATING A SELF-REFERENCING URL THAT PRESERVES STATE INFORMATION: +C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C -=item OBTAINING THE SCRIPT'S URL +=item o -B<-absolute>, B<-relative>, B<-full>, B<-path> (B<-path_info>), B<-query> -(B<-query_string>), B<-base> +C, C, C, C, +C, C, C, C -=item MIXING POST AND URL PARAMETERS +=item p -=back +C, C, C, C, C, C, +C, C -=item CREATING STANDARD HTML ELEMENTS: +=item P -=over 4 +C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C -=item PROVIDING ARGUMENTS TO HTML SHORTCUTS +=item q -=item THE DISTRIBUTIVE PROPERTY OF HTML SHORTCUTS +C, C -=item HTML SHORTCUTS AND LIST INTERPOLATION +=item r -=item NON-STANDARD HTML SHORTCUTS +C, C, C, C, C, +C, C, C, C, C, +C, C, C -=item AUTOESCAPING HTML +=item s -$escaped_string = escapeHTML("unescaped string");, $charset = -charset([$charset]);, $flag = autoEscape([$flag]); +C, C, C, C, C, +C, C, C, C, +C, C, C, +C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C -=item PRETTY-PRINTING HTML +=item t -=back +C, C, C, C, C, C, C, +C, C, C, C, C, C, C, +C -=item CREATING FILL-OUT FORMS: +=item u -=over 4 +C, C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C -=item CREATING AN ISINDEX TAG +=item v -=item STARTING AND ENDING A FORM +C, C, C, C, +C, C, C, +C, C, C, C, +C, C, C, +C, C, C, C, +C, C, C, +C, C, C -B, B +=item x -=item CREATING A TEXT FIELD +C, C -B +=item y -=item CREATING A BIG TEXT FIELD +C, C -=item CREATING A PASSWORD FIELD +=item z -=item CREATING A FILE UPLOAD FIELD +C, C -B +=back -=item CREATING A POPUP MENU +=item NOTE -=item CREATING A SCROLLING LIST +=back -B +=head2 Cwd - get pathname of current working directory -=item CREATING A GROUP OF RELATED CHECKBOXES +=over 4 -B +=item SYNOPSIS -=item CREATING A STANDALONE CHECKBOX +=item DESCRIPTION -B +=over 4 -=item CREATING A RADIO BUTTON GROUP +=item getcwd and friends -B +getcwd, cwd, fastcwd, fastgetcwd -=item CREATING A SUBMIT BUTTON +=item abs_path and friends -B +abs_path, realpath, fast_abs_path -=item CREATING A RESET BUTTON +=item $ENV{PWD} -=item CREATING A DEFAULT BUTTON +=back -=item CREATING A HIDDEN FIELD +=item NOTES -B +=item SEE ALSO -=item CREATING A CLICKABLE IMAGE BUTTON +=back -B, 3. The third option (-align, optional) is an alignment -type, and may be TOP, BOTTOM or MIDDLE +=head2 DB - programmatic interface to the Perl debugging API (draft, +subject to +change) -=item CREATING A JAVASCRIPT ACTION BUTTON +=over 4 -=back +=item SYNOPSIS -=item HTTP COOKIES +=item DESCRIPTION -1. an expiration time, 2. a domain, 3. a path, 4. a "secure" flag, -B<-name>, B<-value>, B<-path>, B<-domain>, B<-expires>, B<-secure> +=over 4 -=item WORKING WITH FRAMES +=item Global Variables -1. Create a document, 2. Specify the destination for the -document in the HTTP header, 3. Specify the destination for the document in -the tag + $DB::sub, %DB::sub, $DB::single, $DB::signal, $DB::trace, @DB::args, +@DB::dbline, %DB::dbline, $DB::package, $DB::filename, $DB::subname, +$DB::lineno -=item LIMITED SUPPORT FOR CASCADING STYLE SHEETS +=item API Methods -=item DEBUGGING +CLIENT->register(), CLIENT->evalcode(STRING), CLIENT->skippkg('D::hide'), +CLIENT->run(), CLIENT->step(), CLIENT->next(), CLIENT->done() -=over 4 +=item Client Callback Methods -=item DUMPING OUT ALL THE NAME/VALUE PAIRS +CLIENT->init(), CLIENT->prestop([STRING]), CLIENT->stop(), CLIENT->idle(), +CLIENT->poststop([STRING]), CLIENT->evalcode(STRING), CLIENT->cleanup(), +CLIENT->output(LIST) =back -=item FETCHING ENVIRONMENT VARIABLES - -B, B, B, B, -B, B, B Return the script -name as a partial URL, for self-refering scripts, B, B, B, B, B, -B, B, B, -B, B, B, B +=item BUGS -=item USING NPH SCRIPTS +=item AUTHOR -In the B statement, By calling the B method:, By using B<-nph> -parameters +=back -=item Server Push +=head2 DB_File - Perl5 access to Berkeley DB version 1.x -multipart_init(), multipart_start(), multipart_end(), multipart_final() +=over 4 -=item Avoiding Denial of Service Attacks +=item SYNOPSIS -B<$CGI::POST_MAX>, B<$CGI::DISABLE_UPLOADS>, B<1. On a script-by-script -basis>, B<2. Globally for all scripts> +=item DESCRIPTION -=item COMPATIBILITY WITH CGI-LIB.PL +B, B, B -=item AUTHOR INFORMATION +=over 4 -=item CREDITS +=item Using DB_File with Berkeley DB version 2 or greater -Matt Heffron (heffron@falstaff.css.beckman.com), James Taylor -(james.taylor@srs.gov), Scott Anguish , Mike Jewell -(mlj3u@virginia.edu), Timothy Shimmin (tes@kbs.citri.edu.au), Joergen Haegg -(jh@axis.se), Laurent Delfosse (delfosse@delfosse.com), Richard Resnick -(applepi1@aol.com), Craig Bishop (csb@barwonwater.vic.gov.au), Tony Curtis -(tc@vcpc.univie.ac.at), Tim Bunce (Tim.Bunce@ig.co.uk), Tom Christiansen -(tchrist@convex.com), Andreas Koenig (k@franz.ww.TU-Berlin.DE), Tim -MacKenzie (Tim.MacKenzie@fulcrum.com.au), Kevin B. Hendricks -(kbhend@dogwood.tyler.wm.edu), Stephen Dahmen (joyfire@inxpress.net), Ed -Jordan (ed@fidalgo.net), David Alan Pisoni (david@cnation.com), Doug -MacEachern (dougm@opengroup.org), Robin Houston (robin@oneworld.org), -...and many many more.. +=item Interface to Berkeley DB -=item A COMPLETE EXAMPLE OF A SIMPLE FORM-BASED SCRIPT +=item Opening a Berkeley DB Database File -=item BUGS +=item Default Parameters -=item SEE ALSO +=item In Memory Databases =back -=head2 CGI::Apache - Backward compatibility module for CGI.pm +=item DB_HASH =over 4 -=item SYNOPSIS - -=item ABSTRACT +=item A Simple Example -=item DESCRIPTION +=back -=item AUTHOR INFORMATION +=item DB_BTREE -=item BUGS +=over 4 -=item SEE ALSO +=item Changing the BTREE sort order -=back +=item Handling Duplicate Keys -=head2 CGI::Carp, B - CGI routines for writing to the HTTPD (or -other) error log +=item The get_dup() Method -=over 4 +=item The find_dup() Method -=item SYNOPSIS +=item The del_dup() Method -=item DESCRIPTION +=item Matching Partial Keys -=item REDIRECTING ERROR MESSAGES +=back -=item MAKING PERL ERRORS APPEAR IN THE BROWSER WINDOW +=item DB_RECNO =over 4 -=item Changing the default message - -=back +=item The 'bval' Option -=item MAKING WARNINGS APPEAR AS HTML COMMENTS +=item A Simple Example -=item CHANGE LOG +=item Extra RECNO Methods -=item AUTHORS +B<$X-Epush(list) ;>, B<$value = $X-Epop ;>, B<$X-Eshift>, +B<$X-Eunshift(list) ;>, B<$X-Elength>, B<$X-Esplice(offset, +length, elements);> -=item SEE ALSO +=item Another Example =back -=head2 CGI::Cookie - Interface to Netscape Cookies +=item THE API INTERFACE -=over 4 +B<$status = $X-Eget($key, $value [, $flags]) ;>, B<$status = +$X-Eput($key, $value [, $flags]) ;>, B<$status = $X-Edel($key [, +$flags]) ;>, B<$status = $X-Efd ;>, B<$status = $X-Eseq($key, +$value, $flags) ;>, B<$status = $X-Esync([$flags]) ;> -=item SYNOPSIS +=item DBM FILTERS -=item DESCRIPTION +B, B, B, +B -=item USING CGI::Cookie +=over 4 -B<1. expiration date>, B<2. domain>, B<3. path>, B<4. secure flag> +=item The Filter -=over 4 +=item An Example -- the NULL termination problem. -=item Creating New Cookies +=item Another Example -- Key is a C int. -=item Sending the Cookie to the Browser +=back -=item Recovering Previous Cookies +=item HINTS AND TIPS -=item Manipulating Cookies +=over 4 -B, B, B, B, B +=item Locking: The Trouble with fd -=back +=item Safe ways to lock a database -=item AUTHOR INFORMATION +B, B, B -=item BUGS +=item Sharing Databases With C Applications -=item SEE ALSO +=item The untie() Gotcha =back -=head2 CGI::Fast - CGI Interface for Fast CGI +=item COMMON QUESTIONS =over 4 -=item SYNOPSIS - -=item DESCRIPTION +=item Why is there Perl source in my database? -=item OTHER PIECES OF THE PUZZLE +=item How do I store complex data structures with DB_File? -=item WRITING FASTCGI PERL SCRIPTS +=item What does "Invalid Argument" mean? -=item INSTALLING FASTCGI SCRIPTS +=item What does "Bareword 'DB_File' not allowed" mean? -=item USING FASTCGI SCRIPTS AS CGI SCRIPTS +=back -=item EXTERNAL FASTCGI SERVER INVOCATION +=item REFERENCES -FCGI_SOCKET_PATH, FCGI_LISTEN_QUEUE +=item HISTORY -=item CAVEATS +=item BUGS -=item AUTHOR INFORMATION +=item AVAILABILITY -=item BUGS +=item COPYRIGHT =item SEE ALSO +=item AUTHOR + =back -=head2 CGI::Pretty - module to produce nicely formatted HTML code +=head2 Data::Dumper - stringified perl data structures, suitable for both +printing and C =over 4 @@ -9767,61 +11515,56 @@ FCGI_SOCKET_PATH, FCGI_LISTEN_QUEUE =over 4 -=item Tags that won't be formatted - -=item Customizing the Indenting - -=back - -=item BUGS +=item Methods -=item AUTHOR +I->new(I, I), I<$OBJ>->Dump I +I->Dump(I, I), I<$OBJ>->Seen(I<[HASHREF]>), +I<$OBJ>->Values(I<[ARRAYREF]>), I<$OBJ>->Names(I<[ARRAYREF]>), +I<$OBJ>->Reset -=item SEE ALSO +=item Functions -=back +Dumper(I) -=head2 CGI::Push - Simple Interface to Server Push +=item Configuration Variables or Methods -=over 4 +=item Exports -=item SYNOPSIS +Dumper -=item DESCRIPTION +=back -=item USING CGI::Push +=item EXAMPLES --next_page, -last_page, -type, -delay, -cookie, -target, -expires, -nph +=item BUGS =over 4 -=item Heterogeneous Pages - -=item Changing the Page Delay on the Fly +=item NOTE =back -=item INSTALLING CGI::Push SCRIPTS - -=item AUTHOR INFORMATION +=item AUTHOR -=item BUGS +=item VERSION =item SEE ALSO =back -=head2 CGI::Switch - Backward compatibility module for defunct CGI::Switch +=head2 Devel::DProf - a Perl code profiler =over 4 =item SYNOPSIS -=item ABSTRACT - =item DESCRIPTION -=item AUTHOR INFORMATION +=item PROFILE FORMAT + +=item AUTOLOAD + +=item ENVIRONMENT =item BUGS @@ -9829,7 +11572,7 @@ FCGI_SOCKET_PATH, FCGI_LISTEN_QUEUE =back -=head2 CGI::Util - Internal utilities used by CGI module +=head2 Devel::PPPort - Perl/Pollution/Portability =over 4 @@ -9837,13 +11580,21 @@ FCGI_SOCKET_PATH, FCGI_LISTEN_QUEUE =item DESCRIPTION -=item AUTHOR INFORMATION +=over 4 + +=item WriteFile + +=back + +=item ppport.h + +=item AUTHOR =item SEE ALSO =back -=head2 CPAN - query, download and build perl modules from CPAN sites +=head2 Devel::Peek - A data debugging tool for the XS programmer =over 4 @@ -9853,126 +11604,107 @@ FCGI_SOCKET_PATH, FCGI_LISTEN_QUEUE =over 4 -=item Interactive Mode +=item Runtime debugging -Searching for authors, bundles, distribution files and modules, make, test, -install, clean modules or distributions, get, readme, look module or -distribution, ls author, Signals +=item Memory footprint debugging -=item CPAN::Shell +=back -=item autobundle +=item EXAMPLES -=item recompile +=over 4 -=item The four C Classes: Author, Bundle, Module, Distribution +=item A simple scalar string -=item Programmer's interface +=item A simple scalar number -expand($type,@things), expandany(@things), Programming Examples +=item A simple scalar with an extra reference -=item Methods in the other Classes +=item A reference to a simple scalar -CPAN::Author::as_glimpse(), CPAN::Author::as_string(), -CPAN::Author::email(), CPAN::Author::fullname(), CPAN::Author::name(), -CPAN::Bundle::as_glimpse(), CPAN::Bundle::as_string(), -CPAN::Bundle::clean(), CPAN::Bundle::contains(), -CPAN::Bundle::force($method,@args), CPAN::Bundle::get(), -CPAN::Bundle::inst_file(), CPAN::Bundle::inst_version(), -CPAN::Bundle::uptodate(), CPAN::Bundle::install(), CPAN::Bundle::make(), -CPAN::Bundle::readme(), CPAN::Bundle::test(), -CPAN::Distribution::as_glimpse(), CPAN::Distribution::as_string(), -CPAN::Distribution::clean(), CPAN::Distribution::containsmods(), -CPAN::Distribution::cvs_import(), CPAN::Distribution::dir(), -CPAN::Distribution::force($method,@args), CPAN::Distribution::get(), -CPAN::Distribution::install(), CPAN::Distribution::isa_perl(), -CPAN::Distribution::look(), CPAN::Distribution::make(), -CPAN::Distribution::prereq_pm(), CPAN::Distribution::readme(), -CPAN::Distribution::test(), CPAN::Distribution::uptodate(), -CPAN::Index::force_reload(), CPAN::Index::reload(), CPAN::InfoObj::dump(), -CPAN::Module::as_glimpse(), CPAN::Module::as_string(), -CPAN::Module::clean(), CPAN::Module::cpan_file(), -CPAN::Module::cpan_version(), CPAN::Module::cvs_import(), -CPAN::Module::description(), CPAN::Module::force($method,@args), -CPAN::Module::get(), CPAN::Module::inst_file(), -CPAN::Module::inst_version(), CPAN::Module::install(), -CPAN::Module::look(), CPAN::Module::make(), -CPAN::Module::manpage_headline(), CPAN::Module::readme(), -CPAN::Module::test(), CPAN::Module::uptodate(), CPAN::Module::userid() +=item A reference to an array -=item Cache Manager +=item A reference to a hash -=item Bundles +=item Dumping a large array or hash -=item Prerequisites +=item A reference to an SV which holds a C pointer -=item Finding packages and VERSION +=item A reference to a subroutine -=item Debugging +=back -=item Floppy, Zip, Offline Mode +=item EXPORTS -=back +=item BUGS -=item CONFIGURATION +=item AUTHOR -Cscalar optionE>, Cscalar optionE -EvalueE>, Clist optionE>, Clist -optionE [shift|pop]>, Clist optionE -[unshift|push|splice] ElistE> +=item SEE ALSO + +=back + +=head2 Devel::SelfStubber - generate stubs for a SelfLoading module =over 4 -=item Note on urllist parameter's format +=item SYNOPSIS -=item urllist parameter has CD-ROM support +=item DESCRIPTION =back -=item SECURITY +=head2 Digest:: - Modules that calculate message digests -=item EXPORT +=over 4 -=item POPULATE AN INSTALLATION WITH LOTS OF MODULES +=item SYNOPSIS -=item WORKING WITH CPAN.pm BEHIND FIREWALLS +=item DESCRIPTION -=over 4 +I, I, I -=item Three basic types of firewalls +=item OO INTERFACE -http firewall, ftp firewall, One way visibility, SOCKS, IP Masquerade +$ctx = Digest->XXX($arg,...), $ctx = Digest->new(XXX => $arg,...), $ctx = +Digest::XXX->new($arg,...), $other_ctx = $ctx->clone, $ctx->reset, +$ctx->add($data,...), $ctx->addfile($io_handle), $ctx->digest, +$ctx->hexdigest, $ctx->b64digest -=item Configuring lynx or ncftp for going through a firewall +=item SEE ALSO + +=item AUTHOR =back -=item FAQ +=head2 Digest::MD5 - Perl interface to the MD5 Algorithm -1), 2), 3), 4), 5), 6), 7), 8), 9), 10) +=over 4 -=item BUGS +=item SYNOPSIS -=item AUTHOR +=item DESCRIPTION -=item TRANSLATIONS +=item FUNCTIONS -=item SEE ALSO +md5($data,...), md5_hex($data,...), md5_base64($data,...) -=back +=item METHODS + +$md5 = Digest::MD5->new, $md5->reset, $md5->clone, $md5->add($data,...), +$md5->addfile($io_handle), $md5->digest, $md5->hexdigest, $md5->b64digest -=head2 CPAN::FirstTime - Utility for CPAN::Config file Initialization +=item EXAMPLES -=over 4 +=item SEE ALSO -=item SYNOPSIS +=item COPYRIGHT -=item DESCRIPTION +=item AUTHORS =back -=head2 CPANox, CPAN::Nox - Wrapper around CPAN.pm without using any XS -module +=head2 DirHandle - supply object methods for directory handles =over 4 @@ -9980,11 +11712,11 @@ module =item DESCRIPTION -=item SEE ALSO +=item NOTES =back -=head2 Carp, carp - warn of errors (from perspective of caller) +=head2 Dumpvalue - provides screen dump of Perl data. =over 4 @@ -9994,17 +11726,23 @@ module =over 4 -=item Forcing a Stack Trace +=item Creation -=back +C, C, C, C, C, +C, C, C, C, C, +C, C, unctrl, subdump, bareStringify, quoteHighBit, +stopDbSignal -=item BUGS +=item Methods + +dumpValue, dumpValues, stringify, dumpvars, set_quote, set_unctrl, +compactDump, veryCompact, set, get =back -=head2 Carp::Heavy, Carp heavy machinery - no user serviceable parts inside +=back -=head2 Class::ISA -- report the search path for a class's ISA tree +=head2 DynaLoader - Dynamically load C libraries into Perl code =over 4 @@ -10012,21 +11750,18 @@ module =item DESCRIPTION -=item FUNCTIONS - -the function Class::ISA::super_path($CLASS), the function -Class::ISA::self_and_super_path($CLASS), the function -Class::ISA::self_and_super_versions($CLASS) - -=item CAUTIONARY NOTES - -=item COPYRIGHT +@dl_library_path, @dl_resolve_using, @dl_require_symbols, @dl_librefs, +@dl_modules, dl_error(), $dl_debug, dl_findfile(), dl_expandspec(), +dl_load_file(), dl_unload_file(), dl_load_flags(), dl_find_symbol(), +dl_find_symbol_anywhere(), dl_undef_symbols(), dl_install_xsub(), +bootstrap() =item AUTHOR =back -=head2 Class::Struct - declare struct-like datatypes as Perl classes +=head2 DynaLoader::XSLoader, XSLoader - Dynamically load C libraries into +Perl code =over 4 @@ -10036,316 +11771,169 @@ Class::ISA::self_and_super_versions($CLASS) =over 4 -=item The C function +=item Migration from C -=item Class Creation at Compile Time +=item Backward compatible boilerplate -=item Element Types and Accessor Methods +=back -Scalar (C<'$'> or C<'*$'>), Array (C<'@'> or C<'*@'>), Hash (C<'%'> or -C<'*%'>), Class (C<'Class_Name'> or C<'*Class_Name'>) +=item Order of initialization: early load() -=item Initializing with C +=over 4 -=back +=item The most hairy case -=item EXAMPLES +=back -Example 1, Example 2, Example 3 +=item LIMITATIONS -=item Author and Modification History +=item AUTHOR =back -=head2 Config - access Perl configuration information +=head2 Encode - character encodings =over 4 =item SYNOPSIS -=item DESCRIPTION - -myconfig(), config_sh(), config_vars(@names) +=over 4 -=item EXAMPLE +=item Table of Contents -=item WARNING +=back -=item GLOSSARY +=item DESCRIPTION =over 4 -=item _ +=item TERMINOLOGY -C<_a>, C<_exe>, C<_o> +=back -=item a +=item PERL ENCODING API -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, C, -C +$octets = encode(ENCODING, $string [, CHECK]), $string = decode(ENCODING, +$octets [, CHECK]), [$length =] from_to($octets, FROM_ENC, TO_ENC [, +CHECK]), $octets = encode_utf8($string);, $string = decode_utf8($octets [, +CHECK]); -=item b +=over 4 -C, C, C, C, C, C, -C, C +=item Listing available encodings -=item c +=item Defining Aliases -C, C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C +=back -=item d +=item Encoding via PerlIO -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, -C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, -C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, -C, C, C, C, C, -C, C, C +=item Handling Malformed Data -=item e +I = Encode::FB_DEFAULT ( == 0), I = Encode::FB_CROAK ( == 1), +I = Encode::FB_QUIET, I = Encode::FB_WARN, perlqq mode +(I = Encode::FB_PERLQQ), HTML charref mode (I = +Encode::FB_HTMLCREF), XML charref mode (I = Encode::FB_XMLCREF), The +bitmask -C, C, C, C, C, C, -C, C, C, C +=over 4 -=item f +=item Unimplemented fallback schemes -C, C, C, C, C, -C, C, C, C, C, C, -C +=back -=item g +=item Defining Encodings -C, C, C, C, C, -C, C, C, C, C, C, -C +=item The UTF-8 flag -=item h +Goal #1:, Goal #2:, Goal #3:, Goal #4: -C, C, C, C +=over 4 -=item i +=item Messing with Perl's Internals -C, C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, -C, C, C, -C, C, C, C, C, -C, C, C, -C, C, C, C, -C, C, C, -C, C, C, C, -C, C, C, C +is_utf8(STRING [, CHECK]), _utf8_on(STRING), _utf8_off(STRING) -=item k +=back -C, C +=item SEE ALSO -=item l +=item MAINTAINER -C, C, C, C, C, -C, C, C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C +=back -=item m +=head2 Encode::Alias - alias definitions to encodings -C, C, C, C, C, C, -C, C, C, C, C, -C, C +=over 4 -=item M +=item SYNOPSIS -C, C, C, C, C, C, -C, C, C, C, C, C +=item DESCRIPTION -=item n +As a simple string, As a qr// compiled regular expression, e.g.:, As a code +reference, e.g.: -C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C +=over 4 -=item o +=item Alias overloading -C, C, C, C, -C, C, C, C +=back -=item p +=item SEE ALSO -C, C, C, C, C, C, -C, C +=back -=item P +=head2 Encode::Byte - Single Byte Encodings -C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C +=over 4 -=item q +=item SYNOPSIS -C, C +=item ABSTRACT -=item r +=item DESCRIPTION -C, C, C, C, C, -C, C, C, C, C +=item SEE ALSO -=item s +=back -C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C +=head2 Encode::CJKConstants -- Internally used by Encode::??::ISO_2022_* -=item t +=head2 Encode::CN - China-based Chinese Encodings -C, C, C, C, C, C, C, -C, C, C, C, C, C +=over 4 -=item u +=item SYNOPSIS -C, C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C +=item DESCRIPTION -=item v +=item NOTES -C, C, C, C, -C, C, C, C, -C, C, C, -C, C, C +=item BUGS -=item x +=item SEE ALSO -C, C +=back -=item y +=head2 Encode::CN::HZ -- internally used by Encode::CN -C, C +=head2 Encode::Config -- internally used by Encode -=item z +=head2 Encode::EBCDIC - EBCDIC Encodings -C, C +=over 4 -=back +=item SYNOPSIS -=item NOTE +=item ABSTRACT + +=item DESCRIPTION + +=item SEE ALSO =back -=head2 Cwd - get pathname of current working directory +=head2 Encode::Encoding - Encode Implementation Base Class =over 4 @@ -10355,62 +11943,78 @@ C, C =over 4 -=item getcwd and friends +=item Methods you should implement -getcwd, cwd, fastcwd, fastgetcwd +-Eencode($string [,$check]), -Edecode($octets [,$check]), +-Ecat_decode($destination, $octets, $offset, $terminator [,$check]) -=item abs_path and friends +=item Other methods defined in Encode::Encodings -abs_path, realpath, fast_abs_path +-Ename, -Erenew, -Eperlio_ok(), -Eneeds_lines() -=item $ENV{PWD} +=item Example: Encode::ROT13 =back -=item NOTES +=item Why the heck Encode API is different? + +=over 4 + +=item Compiled Encodings + +=back =item SEE ALSO +Scheme 1, Scheme 2, Other Schemes + =back -=head2 DB - programmatic interface to the Perl debugging API (draft, -subject to -change) +=head2 Encode::Guess -- Guesses encoding from data =over 4 =item SYNOPSIS +=item ABSTRACT + =item DESCRIPTION -=over 4 +Encode::Guess->set_suspects, Encode::Guess->add_suspects, +Encode::decode("Guess" ...), Encode::Guess->guess($data), +guess_encoding($data, [, I]) -=item Global Variables +=item CAVEATS - $DB::sub, %DB::sub, $DB::single, $DB::signal, $DB::trace, @DB::args, -@DB::dbline, %DB::dbline, $DB::package, $DB::filename, $DB::subname, -$DB::lineno +=item TO DO -=item API Methods +=item SEE ALSO -CLIENT->register(), CLIENT->evalcode(STRING), CLIENT->skippkg('D::hide'), -CLIENT->run(), CLIENT->step(), CLIENT->next(), CLIENT->done() +=back + +=head2 Encode::JP - Japanese Encodings + +=over 4 + +=item SYNOPSIS -=item Client Callback Methods +=item ABSTRACT -CLIENT->init(), CLIENT->prestop([STRING]), CLIENT->stop(), CLIENT->idle(), -CLIENT->poststop([STRING]), CLIENT->evalcode(STRING), CLIENT->cleanup(), -CLIENT->output(LIST) +=item DESCRIPTION -=back +=item Note on ISO-2022-JP(-1)? =item BUGS -=item AUTHOR +=item SEE ALSO =back -=head2 DB_File - Perl5 access to Berkeley DB version 1.x +=head2 Encode::JP::H2Z -- internally used by Encode::JP::2022_JP* + +=head2 Encode::JP::JIS7 -- internally used by Encode::JP + +=head2 Encode::KR - Korean Encodings =over 4 @@ -10418,136 +12022,149 @@ CLIENT->output(LIST) =item DESCRIPTION -B, B, B +=item BUGS -=over 4 +=item SEE ALSO -=item Using DB_File with Berkeley DB version 2 or greater +=back -=item Interface to Berkeley DB +=head2 Encode::KR::2022_KR -- internally used by Encode::KR -=item Opening a Berkeley DB Database File +=head2 Encode::MIME::Header -- MIME 'B' and 'Q' header encoding -=item Default Parameters +=over 4 -=item In Memory Databases +=item SYNOPSIS -=back +=item ABSTRACT -=item DB_HASH +=item DESCRIPTION -=over 4 +=item BUGS -=item A Simple Example +=item SEE ALSO =back -=item DB_BTREE +=head2 Encode::PerlIO -- a detailed document on Encode and PerlIO =over 4 -=item Changing the BTREE sort order +=item Overview -=item Handling Duplicate Keys +=item How does it work? -=item The get_dup() Method +=item Line Buffering -=item The find_dup() Method +=over 4 -=item The del_dup() Method +=item How can I tell whether my encoding fully supports PerlIO ? -=item Matching Partial Keys +=back + +=item SEE ALSO =back -=item DB_RECNO +=head2 Encode::Supported -- Encodings supported by Encode =over 4 -=item The 'bval' Option +=item DESCRIPTION -=item A Simple Example +=over 4 -=item Extra RECNO Methods +=item Encoding Names -B<$X-Epush(list) ;>, B<$value = $X-Epop ;>, B<$X-Eshift>, -B<$X-Eunshift(list) ;>, B<$X-Elength>, B<$X-Esplice(offset, -length, elements);> +=back -=item Another Example +=item Supported Encodings -=back +=over 4 -=item THE API INTERFACE +=item Built-in Encodings -B<$status = $X-Eget($key, $value [, $flags]) ;>, B<$status = -$X-Eput($key, $value [, $flags]) ;>, B<$status = $X-Edel($key [, -$flags]) ;>, B<$status = $X-Efd ;>, B<$status = $X-Eseq($key, -$value, $flags) ;>, B<$status = $X-Esync([$flags]) ;> +=item Encode::Unicode -- other Unicode encodings -=item DBM FILTERS +=item Encode::Byte -- Extended ASCII -B, B, B, -B +ISO-8859 and corresponding vendor mappings, KOI8 - De Facto Standard for +the Cyrillic world, gsm0338 - Hentai Latin 1 -=over 4 +=item CJK: Chinese, Japanese, Korean (Multibyte) -=item The Filter +Encode::CN -- Continental China, Encode::JP -- Japan, Encode::KR -- Korea, +Encode::TW -- Taiwan, Encode::HanExtra -- More Chinese via CPAN, +Encode::JIS2K -- JIS X 0213 encodings via CPAN -=item An Example -- the NULL termination problem. +=item Miscellaneous encodings -=item Another Example -- Key is a C int. +Encode::EBCDIC, Encode::Symbols, Encode::MIME::Header, Encode::Guess =back -=item HINTS AND TIPS +=item Unsupported encodings -=over 4 + ISO-2022-JP-2 [RFC1554], ISO-2022-CN [RFC1922], Various HP-UX encodings, +Cyrillic encoding ISO-IR-111, ISO-8859-8-1 [Hebrew], ISIRI 3342, Iran +System, ISIRI 2900 [Farsi], Thai encoding TCVN, Vietnamese encodings VPS, +Various Mac encodings, (Mac) Indic encodings -=item Locking: The Trouble with fd +=item Encoding vs. Charset -- terminology -=item Safe ways to lock a database +=item Encoding Classification (by Anton Tagunov and Dan Kogai) -B, B, B +=over 4 -=item Sharing Databases With C Applications +=item Microsoft-related naming mess -=item The untie() Gotcha +KS_C_5601-1987, GB2312, Big5, Shift_JIS =back -=item COMMON QUESTIONS +=item Glossary + +character repertoire, coded character set (CCS), character encoding scheme +(CES), charset (in MIME context), EUC, ISO-2022, UCS, UCS-2, Unicode, UTF, +UTF-16 + +=item See Also + +=item References + +ECMA, ECMA-035 (eq C), IANA, Assigned Charset Names by IANA, ISO, +RFC, UC, Unicode Glossary =over 4 -=item Why is there Perl source in my database? +=item Other Notable Sites -=item How do I store complex data structures with DB_File? +czyborra.com, CJK.inf, Jungshik Shin's Hangul FAQ, debian.org: +"Introduction to i18n" -=item What does "Invalid Argument" mean? +=item Offline sources -=item What does "Bareword 'DB_File' not allowed" mean? +C by Ken Lunde =back -=item REFERENCES +=back -=item HISTORY +=head2 Encode::Symbol - Symbol Encodings -=item BUGS +=over 4 -=item AVAILABILITY +=item SYNOPSIS -=item COPYRIGHT +=item ABSTRACT -=item SEE ALSO +=item DESCRIPTION -=item AUTHOR +=item SEE ALSO =back -=head2 Data::Dumper - stringified perl data structures, suitable for both -printing and C +=head2 Encode::TW - Taiwan-based Chinese Encodings =over 4 @@ -10555,76 +12172,58 @@ printing and C =item DESCRIPTION -=over 4 +=item NOTES -=item Methods +=item BUGS -I->new(I, I), I<$OBJ>->Dump I -I->Dump(I, I), I<$OBJ>->Seen(I<[HASHREF]>), -I<$OBJ>->Values(I<[ARRAYREF]>), I<$OBJ>->Names(I<[ARRAYREF]>), -I<$OBJ>->Reset +=item SEE ALSO -=item Functions +=back -Dumper(I) +=head2 Encode::Unicode -- Various Unicode Transformation Formats -=item Configuration Variables or Methods +=over 4 -$Data::Dumper::Indent I I<$OBJ>->Indent(I<[NEWVAL]>), -$Data::Dumper::Purity I I<$OBJ>->Purity(I<[NEWVAL]>), -$Data::Dumper::Pad I I<$OBJ>->Pad(I<[NEWVAL]>), -$Data::Dumper::Varname I I<$OBJ>->Varname(I<[NEWVAL]>), -$Data::Dumper::Useqq I I<$OBJ>->Useqq(I<[NEWVAL]>), -$Data::Dumper::Terse I I<$OBJ>->Terse(I<[NEWVAL]>), -$Data::Dumper::Freezer I $I->Freezer(I<[NEWVAL]>), -$Data::Dumper::Toaster I $I->Toaster(I<[NEWVAL]>), -$Data::Dumper::Deepcopy I $I->Deepcopy(I<[NEWVAL]>), -$Data::Dumper::Quotekeys I $I->Quotekeys(I<[NEWVAL]>), -$Data::Dumper::Bless I $I->Bless(I<[NEWVAL]>), -$Data::Dumper::Maxdepth I $I->Maxdepth(I<[NEWVAL]>), -$Data::Dumper::Useperl I $I->Useperl(I<[NEWVAL]>), -$Data::Dumper::Sortkeys I $I->Sortkeys(I<[NEWVAL]>), -$Data::Dumper::Deparse I $I->Deparse(I<[NEWVAL]>) +=item SYNOPSIS -=item Exports +=item ABSTRACT -Dumper +L says:, Quick Reference -=back +=item Size, Endianness, and BOM -=item EXAMPLES +=over 4 -=item BUGS +=item by size -=item AUTHOR +=item by endianness -=item VERSION +BOM as integer when fetched in network byte order + +=back + +=item Surrogate Pairs =item SEE ALSO =back -=head2 Devel::DProf - a Perl code profiler +=head2 Encode::Unicode::UTF7 -- UTF-7 encoding =over 4 =item SYNOPSIS -=item DESCRIPTION - -=item PROFILE FORMAT - -=item AUTOLOAD - -=item ENVIRONMENT +=item ABSTRACT -=item BUGS +=item In Practice =item SEE ALSO =back -=head2 Devel::PPPort, Perl/Pollution/Portability +=head2 Encode::lib::Encode::Alias, Encode::Alias - alias definitions to +encodings =over 4 @@ -10632,21 +12231,30 @@ Dumper =item DESCRIPTION +As a simple string, As a qr// compiled regular expression, e.g.:, As a code +reference, e.g.: + =over 4 -=item WriteFile +=item Alias overloading =back -=item ppport.h - -=item AUTHOR - =item SEE ALSO =back -=head2 Devel::Peek - A data debugging tool for the XS programmer +=head2 Encode::lib::Encode::CJKConstants, Encode::CJKConstants.pm -- +Internally used by Encode::??::ISO_2022_* + +=head2 Encode::lib::Encode::CN::HZ, Encode::CN::HZ -- internally used by +Encode::CN + +=head2 Encode::lib::Encode::Config, Encode::Config -- internally used by +Encode + +=head2 Encode::lib::Encode::Encoding, Encode::Encoding - Encode +Implementation Base Class =over 4 @@ -10656,294 +12264,316 @@ Dumper =over 4 -=item Runtime debugging +=item Methods you should implement -=item Memory footprint debugging +-Eencode($string [,$check]), -Edecode($octets [,$check]), +-Ecat_decode($destination, $octets, $offset, $terminator [,$check]) + +=item Other methods defined in Encode::Encodings + +-Ename, -Erenew, -Eperlio_ok(), -Eneeds_lines() + +=item Example: Encode::ROT13 =back -=item EXAMPLES +=item Why the heck Encode API is different? =over 4 -=item A simple scalar string +=item Compiled Encodings -=item A simple scalar number +=back -=item A simple scalar with an extra reference +=item SEE ALSO -=item A reference to a simple scalar +Scheme 1, Scheme 2, Other Schemes -=item A reference to an array +=back -=item A reference to a hash +=head2 Encode::lib::Encode::Guess, Encode::Guess -- Guesses encoding from +data -=item Dumping a large array or hash +=over 4 -=item A reference to an SV which holds a C pointer +=item SYNOPSIS -=item A reference to a subroutine +=item ABSTRACT -=back +=item DESCRIPTION -=item EXPORTS +Encode::Guess->set_suspects, Encode::Guess->add_suspects, +Encode::decode("Guess" ...), Encode::Guess->guess($data), +guess_encoding($data, [, I]) -=item BUGS +=item CAVEATS -=item AUTHOR +=item TO DO =item SEE ALSO =back -=head2 Devel::SelfStubber - generate stubs for a SelfLoading module - -=over 4 - -=item SYNOPSIS +=head2 Encode::lib::Encode::JP::H2Z, Encode::JP::H2Z -- internally used by +Encode::JP::2022_JP* -=item DESCRIPTION +=head2 Encode::lib::Encode::JP::JIS7, Encode::JP::JIS7 -- internally used +by Encode::JP -=back +=head2 Encode::lib::Encode::KR::2022_KR, Encode::KR::2022_KR -- internally +used by Encode::KR -=head2 Digest:: - Modules that calculate message digests +=head2 Encode::lib::Encode::MIME::Header, Encode::MIME::Header -- MIME 'B' +and 'Q' header encoding =over 4 =item SYNOPSIS -=item DESCRIPTION - -I, I, I +=item ABSTRACT -=item OO INTERFACE +=item DESCRIPTION -$ctx = Digest->XXX($arg,...), $ctx = Digest->new(XXX => $arg,...), $ctx = -Digest::XXX->new($arg,...), $ctx->reset, $ctx->add($data,...), -$ctx->addfile($io_handle), $ctx->digest, $ctx->hexdigest, $ctx->b64digest +=item BUGS =item SEE ALSO -=item AUTHOR - =back -=head2 Digest::MD5 - Perl interface to the MD5 Algorithm +=head2 Encode::lib::Encode::PerlIO, Encode::PerlIO -- a detailed document +on Encode and PerlIO =over 4 -=item SYNOPSIS - -=item DESCRIPTION +=item Overview -=item FUNCTIONS +=item How does it work? -md5($data,...), md5_hex($data,...), md5_base64($data,...) +=item Line Buffering -=item METHODS +=over 4 -$md5 = Digest::MD5->new, $md5->reset, $md5->add($data,...), -$md5->addfile($io_handle), $md5->digest, $md5->hexdigest, $md5->b64digest +=item How can I tell whether my encoding fully supports PerlIO ? -=item EXAMPLES +=back =item SEE ALSO -=item COPYRIGHT - -=item AUTHORS - =back -=head2 DirHandle - supply object methods for directory handles +=head2 Encode::lib::Encode::Supported, Encode::Supported -- Encodings +supported by Encode =over 4 -=item SYNOPSIS - =item DESCRIPTION -=item NOTES +=over 4 + +=item Encoding Names =back -=head2 Dumpvalue - provides screen dump of Perl data. +=item Supported Encodings =over 4 -=item SYNOPSIS +=item Built-in Encodings -=item DESCRIPTION +=item Encode::Unicode -- other Unicode encodings -=over 4 +=item Encode::Byte -- Extended ASCII -=item Creation +ISO-8859 and corresponding vendor mappings, KOI8 - De Facto Standard for +the Cyrillic world, gsm0338 - Hentai Latin 1 -C, C, C, C, C, -C, C, C, C, C, -C, C, unctrl, subdump, bareStringify, quoteHighBit, -stopDbSignal +=item CJK: Chinese, Japanese, Korean (Multibyte) -=item Methods +Encode::CN -- Continental China, Encode::JP -- Japan, Encode::KR -- Korea, +Encode::TW -- Taiwan, Encode::HanExtra -- More Chinese via CPAN, +Encode::JIS2K -- JIS X 0213 encodings via CPAN -dumpValue, dumpValues, dumpvars, set_quote, set_unctrl, compactDump, -veryCompact, set, get +=item Miscellaneous encodings -=back +Encode::EBCDIC, Encode::Symbols, Encode::MIME::Header, Encode::Guess =back -=head2 DynaLoader - Dynamically load C libraries into Perl code +=item Unsupported encodings -=over 4 + ISO-2022-JP-2 [RFC1554], ISO-2022-CN [RFC1922], Various HP-UX encodings, +Cyrillic encoding ISO-IR-111, ISO-8859-8-1 [Hebrew], ISIRI 3342, Iran +System, ISIRI 2900 [Farsi], Thai encoding TCVN, Vietnamese encodings VPS, +Various Mac encodings, (Mac) Indic encodings -=item SYNOPSIS +=item Encoding vs. Charset -- terminology -=item DESCRIPTION +=item Encoding Classification (by Anton Tagunov and Dan Kogai) -@dl_library_path, @dl_resolve_using, @dl_require_symbols, @dl_librefs, -@dl_modules, dl_error(), $dl_debug, dl_findfile(), dl_expandspec(), -dl_load_file(), dl_unload_file(), dl_loadflags(), dl_find_symbol(), -dl_find_symbol_anywhere(), dl_undef_symbols(), dl_install_xsub(), -bootstrap() +=over 4 -=item AUTHOR +=item Microsoft-related naming mess + +KS_C_5601-1987, GB2312, Big5, Shift_JIS =back -=head2 DynaLoader::XSLoader, XSLoader - Dynamically load C libraries into -Perl code +=item Glossary + +character repertoire, coded character set (CCS), character encoding scheme +(CES), charset (in MIME context), EUC, ISO-2022, UCS, UCS-2, Unicode, UTF, +UTF-16 + +=item See Also + +=item References + +ECMA, ECMA-035 (eq C), IANA, Assigned Charset Names by IANA, ISO, +RFC, UC, Unicode Glossary =over 4 -=item SYNOPSIS +=item Other Notable Sites -=item DESCRIPTION +czyborra.com, CJK.inf, Jungshik Shin's Hangul FAQ, debian.org: +"Introduction to i18n" -=item AUTHOR +=item Offline sources + +C by Ken Lunde + +=back =back -=head2 Encode - character encodings +=head2 Encode::lib::Encode::Unicode::UTF7, Encode::Unicode::UTF7 -- UTF-7 +encoding =over 4 =item SYNOPSIS -=item DESCRIPTION +=item ABSTRACT -=over 4 +=item In Practice -=item TERMINOLOGY +=item SEE ALSO =back -=item ENCODINGS +=head2 Encode::lib::Encoder, Encode::Encoder -- Object Oriented Encoder =over 4 -=item Characteristics of an Encoding +=item SYNOPSIS + +=item ABSTRACT -=item Types of Encodings +=item Description -Fixed length 8-bit (or less) encodings, Fixed length 16-bit encodings, -Fixed length 32-bit encodings, Multi-byte encodings, "Escape" encodings +=over 4 -=item Specifying Encodings +=item Predefined Methods -1. By name, 2. As an object +$e = Encode::Encoder-Enew([$data, $encoding]);, encoder(), +$e-Edata([$data]), $e-Eencoding([$encoding]), +$e-Ebytes([$encoding]) -=item Encoding Names +=item Example: base64 transcoder -The MIME name as defined in IETF RFCs, The name in the IANA registry, The -name used by the organization that defined it +=item Operator Overloading =back -=item PERL ENCODING API +=item SEE ALSO -=over 4 +=back -=item Generic Encoding Interface +=head2 Encodencoding, encoding - allows you to write your script in +non-ascii or non-utf8 -=item Handling Malformed Data +=over 4 -Scheme 1, Scheme 2, Other Schemes +=item SYNOPSIS -=item UTF-8 / utf8 +=item ABSTRACT -=item Other Encodings of Unicode +=over 4 -=item Listing available encodings +=item Literal Conversions -=item Defining Aliases +=item PerlIO layers for C -As a simple string, As a qr// compiled regular expression, e.g.:, As a code -reference, e.g.: +=back -=item Defining Encodings +=item FEATURES THAT REQUIRE 5.8.1 -=back +"NON-EUC" doublebyte encodings, tr//, DATA pseudo-filehandle -=item Encoding and IO +=item USAGE -=item Encoding How to ... +use encoding [I] ;, use encoding I [ STDIN =E +I ...] ;, use encoding I Filter=E1;, no encoding; -IO with mixed content (faking iso-2020-*), MIME's Content-Length:, UTF-8 -strings in binary data, Perl/Encode wrappers on non-Unicode XS modules +=item The Filter Option -=item Messing with Perl's Internals +=over 4 -is_utf8(STRING [, CHECK]), valid_utf8(STRING) +=item Filter-related changes at Encode version 1.87 -=item IMPLEMENTATION CLASSES +=back --Ename, -Enew_sequence, -Eencode($string,$check), --Edecode($octets,$check) +=item CAVEATS =over 4 -=item Compiled Encodings +=item NOT SCOPED -.enc, .ucm, .ucm, .c, .xs, ascii and iso-8859-*, IBM-1047 and two other -variants of EBCDIC, symbol and dingbats as used by Tk on X11 +=item DO NOT MIX MULTIPLE ENCODINGS -=back +=item tr/// with ranges -=item SEE ALSO +Legend of characters above =back -=head2 Encode::Tcl - Tcl encodings +=item EXAMPLE - Greekperl -=head2 Encode::lib::Encode::Tcl, Encode::Tcl - Tcl encodings +=item KNOWN PROBLEMS -=head2 Encode::lib::EncodeFormat, EncodeFormat - the format of encoding -tables of the Encode extension +literals in regex that are longer than 127 bytes, EBCDIC, format -=over 4 +=item HISTORY -=item DESCRIPTION +=item SEE ALSO -[1] B, [2] B, [3] B, [4] B +=back -=item KEYWORDS +=head2 Encoder, Encode::Encoder -- Object Oriented Encoder -=item COPYRIGHT +=over 4 -=back +=item SYNOPSIS -=head2 EncodeFormat - the format of encoding tables of the Encode extension +=item ABSTRACT + +=item Description =over 4 -=item DESCRIPTION +=item Predefined Methods -[1] B, [2] B, [3] B, [4] B +$e = Encode::Encoder-Enew([$data, $encoding]);, encoder(), +$e-Edata([$data]), $e-Eencoding([$encoding]), +$e-Ebytes([$encoding]) -=item KEYWORDS +=item Example: base64 transcoder -=item COPYRIGHT +=item Operator Overloading + +=back + +=item SEE ALSO =back @@ -11084,6 +12714,26 @@ test_f file =back +=head2 ExtUtils::Command::MM - Commands for the MM's to use in Makefiles + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +B + +=back + +B + +B + +B + +B + =head2 ExtUtils::Constant - generate XS code to import C header constants =over 4 @@ -11102,6 +12752,8 @@ IV, UV, NV, PV, PVN, SV, YES, NO, UNDEF C_stringify NAME +perl_stringify NAME + constant_types memEQ_clause NAME, CHECKED_AT, INDENT @@ -11119,7 +12771,7 @@ dump_names dogfood C_constant, name, type, value, macro, default, pre, post, def_pre =item -def_post +def_post, utf8 XS_constant PACKAGE, TYPES, SUBNAME, C_SUBNAME @@ -11167,6 +12819,34 @@ ccopts(), xsi_header(), xsi_protos(@modules), xsi_body(@modules) =item DESCRIPTION +=over 4 + +=item Functions + +B + +=back + +=back + +B I + +B + +B + +_autosplit + +=over 4 + +=item ENVIRONMENT + +B + +=item AUTHOR + +=item LICENSE + =back =head2 ExtUtils::Installed - Inventory management of installed modules @@ -11198,7 +12878,8 @@ packlist(), version() =item DESCRIPTION -For static extensions, For dynamic extensions, For dynamic extensions +For static extensions, For dynamic extensions at build/link time, For +dynamic extensions at load time =over 4 @@ -11224,6 +12905,96 @@ For static extensions, For dynamic extensions, For dynamic extensions =back +=head2 ExtUtils::MM - OS adjusted ExtUtils::MakeMaker subclass + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=back + +=head2 ExtUtils::MM_Any - Platform agnostic MM methods + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item Inherently Cross-Platform Methods + +installvars + +=back + +os_flavor_is + +=over 4 + +=item File::Spec wrappers + +catfile + +=back + +=over 4 + +=item Thought To Be Cross-Platform Methods + +B + +=back + +B + +init_VERSION + +wraplist + +manifypods + +manifypods_target + +makemakerdflt_target + +special_targets + +POD2MAN_macro + +test_via_harness + +test_via_script + +libscan + +tool_autosplit + +all_target + +metafile_target + +metafile_addtomanifest_target + +=over 4 + +=item Abstract methods + +oneliner, B, B, max_exec_len, +B, init_DIRFILESEP, init_linker, init_platform, +platform_constants + +=back + +os_flavor + +=over 4 + +=item AUTHOR + +=back + =head2 ExtUtils::MM_BeOS - methods to override UN*X behaviour in ExtUtils::MakeMaker @@ -11235,7 +13006,9 @@ ExtUtils::MakeMaker =back -perl_archive +os_flavor (o) + +init_linker =head2 ExtUtils::MM_Cygwin - methods to override UN*X behaviour in ExtUtils::MakeMaker @@ -11246,11 +13019,45 @@ ExtUtils::MakeMaker =item DESCRIPTION -canonpath, cflags, manifypods, perl_archive +os_flavor (o) =back -=head2 ExtUtils::MM_NW5 - methods to override UN*X behaviour in +cflags (o) + +replace_manpage_separator (o) + +init_linker + +=head2 ExtUtils::MM_DOS - DOS specific subclass of ExtUtils::MM_Unix + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=over 4 + +=item Overridden methods + +os_flavor + +=back + +=back + +B + +=over 4 + +=item AUTHOR + +=item SEE ALSO + +=back + +=head2 ExtUtils::MM_MacOS - methods to override UN*X behaviour in ExtUtils::MakeMaker =over 4 @@ -11261,41 +13068,66 @@ ExtUtils::MakeMaker =back -catfile +maybe_command -constants (o) +guess_name -static_lib (o) +macify -dynamic_bs (o) +patternify -dynamic_lib (o) +init_main -canonpath +init_others -perl_script +init_platform, platform_constants -pm_to_blib +init_dirscan -test_via_harness (o) +init_VERSION (o) -tool_autosplit (override) +special_targets (o) -tools_other (o) +static (o) -xs_o (o) +dlsyms (o) -top_targets (o) +dynamic (o) + +clean (o) -htmlifypods (o) +clean_subdirs_target -manifypods (o) +realclean (o) -dist_ci (o) +realclean_subdirs_target -dist_core (o) +rulez (o) -pasthru (o) +processPL (o) + +os_flavor + +=head2 ExtUtils::MM_NW5 - methods to override UN*X behaviour in +ExtUtils::MakeMaker + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=back + +os_flavor + +init_platform (o), platform_constants + +const_cccmd (o) + +static_lib (o) + +dynamic_lib (o) =head2 ExtUtils::MM_OS2 - methods to override UN*X behaviour in ExtUtils::MakeMaker @@ -11308,11 +13140,15 @@ ExtUtils::MakeMaker =item METHODS +init_dist (o) + =back -perl_archive_after +init_linker -=head2 ExtUtils::MM_Unix - methods used by ExtUtils::MakeMaker +os_flavor + +=head2 ExtUtils::MM_UWIN - U/WIN specific subclass of ExtUtils::MM_Unix =over 4 @@ -11320,40 +13156,54 @@ perl_archive_after =item DESCRIPTION -=item METHODS - =over 4 -=item Preloaded methods +=item Overridden methods -canonpath +os_flavor =back =back -catdir +B -catfile +=over 4 -curdir +=item AUTHOR + +=item SEE ALSO + +=back + +=head2 ExtUtils::MM_Unix - methods used by ExtUtils::MakeMaker + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION -rootdir +=item METHODS -updir +=back =over 4 -=item SelfLoaded methods +=item Methods -c_o (o) +os_flavor (o) =back +c_o (o) + cflags (o) clean (o) +clean_subdirs_target + const_cccmd (o) const_config (o) @@ -11366,6 +13216,10 @@ depend (o) dir_target (o) +init_DEST + +init_dist + dist (o) dist_basics (o) @@ -11374,9 +13228,23 @@ dist_ci (o) dist_core (o) -dist_dir (o) +B + +B + +B + +B + +zipfile_target -dist_test (o) +uutardist_target + +shdist_target + +distdir + +dist_test dlsyms (o) @@ -11390,10 +13258,10 @@ exescan extliblist -file_name_is_absolute - find_perl +find_tests + =over 4 =item Methods to actually produce chunks of text for the Makefile @@ -11408,20 +13276,34 @@ guess_name has_link_code -htmlifypods (o) - init_dirscan +init_DIRFILESEP + init_main init_others +init_INST + +init_INSTALL + +init_linker + +init_lib2arch + +init_PERL + +init_platform (o), platform_constants (o) + +init_PERM + +init_xs + install (o) installbin (o) -libscan (o) - linkext (o) lsdir @@ -11432,30 +13314,22 @@ makeaperl (o) makefile (o) -manifypods (o) - maybe_command -maybe_command_in_dirs - needs_linking (o) nicetext -parse_version - parse_abstract -pasthru (o) +parse_version -path +pasthru (o) perl_script perldepend (o) -ppd - perm_rw (o) perm_rwx (o) @@ -11468,6 +13342,8 @@ post_initialize (o) postamble (o) +ppd + prefixify processPL (o) @@ -11476,8 +13352,18 @@ quote_paren realclean (o) +realclean_subdirs_target + replace_manpage_separator +oneliner (o) + +quote_literal + +escape_newlines + +max_exec_len + static (o) static_lib (o) @@ -11490,16 +13376,16 @@ subdirs (o) test (o) -test_via_harness (o) - -test_via_script (o) +test_via_harness (override) -tool_autosplit (o) +test_via_script (override) tools_other (o) tool_xsubpp (o) +all_target + top_targets (o) writedoc @@ -11510,12 +13396,6 @@ xs_cpp (o) xs_o (o) -perl_archive - -perl_archive_after - -export_list - =over 4 =item SEE ALSO @@ -11541,11 +13421,9 @@ wraplist =back -rootdir (override) - =over 4 -=item SelfLoaded methods +=item Methods guess_name (override) @@ -11553,37 +13431,39 @@ guess_name (override) find_perl (override) -path (override) - maybe_command (override) -maybe_command_in_dirs (override) - perl_script (override) -file_name_is_absolute (override) - replace_manpage_separator +init_DEST + +init_DIRFILESEP + +init_main (override) + init_others (override) +init_platform (override) + +platform_constants + +init_VERSION (override) + constants (override) +special_targets + cflags (override) const_cccmd (override) -pm_to_blib (override) - -tool_autosplit (override) - tool_sxubpp (override) -xsubpp_version (override) - tools_other (override) -dist (override) +init_dist (override) c_o (override) @@ -11591,8 +13471,6 @@ xs_c (override) xs_o (override) -top_targets (override) - dlsyms (override) dynamic_lib (override) @@ -11601,8 +13479,6 @@ dynamic_bs (override) static_lib (override) -manifypods (override) - processPL (override) installbin (override) @@ -11611,13 +13487,11 @@ subdir_x (override) clean (override) -realclean (override) - -dist_basics (override) +clean_subdirs_target -dist_core (override) +realclean (override) -dist_dir (override) +zipfile_target (o), tarfile_target (o), shdist_target (o) dist_test (override) @@ -11627,16 +13501,34 @@ perldepend (override) makefile (override) -test (override) - -test_via_harness (override) +find_tests (override) -test_via_script (override) +test (override) makeaperl (override) nicetext (override) +prefixify (override) + +oneliner (o) + +B (o) + +quote_literal + +escape_newlines + +max_exec_len + +init_linker (o) + +eliminate_macros + +fixpath + +os_flavor + =head2 ExtUtils::MM_Win32 - methods to override UN*X behaviour in ExtUtils::MakeMaker @@ -11648,43 +13540,97 @@ ExtUtils::MakeMaker =back -catfile +=over 4 -constants (o) +=item Overridden methods -static_lib (o) +B -dynamic_bs (o) +=back + +replace_manpage_separator + +B + +B + +B + +B + +init_platform (o), platform_constants (o) + +special_targets (o) + +static_lib (o) dynamic_lib (o) -canonpath +clean + +init_linker perl_script -pm_to_blib +xs_o (o) -test_via_harness (o) +pasthru (o) -tool_autosplit (override) +oneliner (o) -tools_other (o) +max_exec_len -xs_o (o) +os_flavor -top_targets (o) +=head2 ExtUtils::MM_Win95 - method to customize MakeMaker for Win9X -htmlifypods (o) +=over 4 -manifypods (o) +=item SYNOPSIS -dist_ci (o) +=item DESCRIPTION -dist_core (o) +=over 4 -pasthru (o) +=item Overriden methods -=head2 ExtUtils::MakeMaker - create an extension Makefile +dist_test + +=back + +=back + +subdir_x + +xs_c + +xs_cpp + +xs_o + +clean_subdirs_target + +realclean_subdirs_target + +os_flavor + +=over 4 + +=item AUTHOR + +=back + +=head2 ExtUtils::MY - ExtUtils::MakeMaker subclass for customization + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=back + +=head2 ExtUtils::MakeMaker - Create a module Makefile =over 4 @@ -11717,39 +13663,51 @@ pasthru (o) =item Using Attributes and Parameters ABSTRACT, ABSTRACT_FROM, AUTHOR, BINARY_LOCATION, C, CCFLAGS, CONFIG, -CONFIGURE, DEFINE, DIR, DISTNAME, DL_FUNCS, DL_VARS, EXCLUDE_EXT, -EXE_FILES, FIRST_MAKEFILE, FULLPERL, FUNCLIST, H, HTMLLIBPODS, -HTMLSCRIPTPODS, IMPORTS, INC, INCLUDE_EXT, INSTALLARCHLIB, INSTALLBIN, -INSTALLDIRS, INSTALLHTMLPRIVLIBDIR, INSTALLHTMLSCRIPTDIR, -INSTALLHTMLSITELIBDIR, INSTALLMAN1DIR, INSTALLMAN3DIR, INSTALLPRIVLIB, -INSTALLSCRIPT, INSTALLSITEARCH, INSTALLSITELIB, INST_ARCHLIB, INST_BIN, -INST_EXE, INST_HTMLLIBDIR, INST_HTMLSCRIPTDIR, INST_LIB, INST_MAN1DIR, -INST_MAN3DIR, INST_SCRIPT, LDFROM, LIB, LIBPERL_A, LIBS, LINKTYPE, -MAKEAPERL, MAKEFILE, MAN1PODS, MAN3PODS, MAP_TARGET, MYEXTLIB, NAME, -NEEDS_LINKING, NOECHO, NORECURS, NO_VC, OBJECT, OPTIMIZE, PERL, PERL_CORE, -PERLMAINCC, PERL_ARCHLIB, PERL_LIB, PERL_MALLOC_OK, PERLRUN, PERM_RW, +CONFIGURE, DEFINE, DESTDIR, DIR, DISTNAME, DISTVNAME, DL_FUNCS, DL_VARS, +EXCLUDE_EXT, EXE_FILES, FIRST_MAKEFILE, FULLPERL, FULLPERLRUN, +FULLPERLRUNINST, FUNCLIST, H, IMPORTS, INC, INCLUDE_EXT, INSTALLARCHLIB, +INSTALLBIN, INSTALLDIRS, INSTALLMAN1DIR, INSTALLMAN3DIR, INSTALLPRIVLIB, +INSTALLSCRIPT, INSTALLSITEARCH, INSTALLSITEBIN, INSTALLSITELIB, +INSTALLSITEMAN1DIR, INSTALLSITEMAN3DIR, INSTALLVENDORARCH, +INSTALLVENDORBIN, INSTALLVENDORLIB, INSTALLVENDORMAN1DIR, +INSTALLVENDORMAN3DIR, INST_ARCHLIB, INST_BIN, INST_LIB, INST_MAN1DIR, +INST_MAN3DIR, INST_SCRIPT, LD, LDDLFLAGS, LDFROM, LIB, LIBPERL_A, LIBS, +LINKTYPE, MAKEAPERL, MAKEFILE_OLD, MAN1PODS, MAN3PODS, MAP_TARGET, +MYEXTLIB, NAME, NEEDS_LINKING, NOECHO, NORECURS, NO_META, NO_VC, OBJECT, +OPTIMIZE, PERL, PERL_CORE, PERLMAINCC, PERL_ARCHLIB, PERL_LIB, +PERL_MALLOC_OK, PERLPREFIX, PERLRUN, PERLRUNINST, PERL_SRC, PERM_RW, PERM_RWX, PL_FILES, PM, PMLIBDIRS, PM_FILTER, POLLUTE, PPM_INSTALL_EXEC, -PPM_INSTALL_SCRIPT, PREFIX, PREREQ_PM, PREREQ_FATAL, PREREQ_PRINT, -PRINT_PREREQ, SKIP, TEST_LIBS, VERSION, VERSION_FROM, XS, XSOPT, -XSPROTOARG, XS_VERSION +PPM_INSTALL_SCRIPT, PREFIX, PREREQ_FATAL, PREREQ_PM, PREREQ_PRINT, +PRINT_PREREQ, SITEPREFIX, SKIP, TYPEMAPS, VENDORPREFIX, VERBINST, VERSION, +VERSION_FROM, VERSION_SYM, XS, XSOPT, XSPROTOARG, XS_VERSION =item Additional lowercase attributes -clean, depend, dist, dynamic_lib, linkext, macro, realclean, test, -tool_autosplit +clean, depend, dist, dynamic_lib, linkext, macro, postamble, realclean, +test, tool_autosplit =item Overriding MakeMaker Methods +=item The End Of Cargo Cult Programming + +C< ' '>> + =item Hintsfile support =item Distribution Support make distcheck, make skipcheck, make distclean, make manifest, - make distdir, make tardist, make dist, make uutardist, make -shdist, make zipdist, make ci + make distdir, make disttest, make tardist, make dist, make +uutardist, make shdist, make zipdist, make ci + +=item Module Meta-Data =item Disabling an extension +=item Other Handy Functions + +prompt + =back =item ENVIRONMENT @@ -11760,6 +13718,87 @@ PERL_MM_OPT, PERL_MM_USE_DEFAULT =item AUTHORS +=item LICENSE + +=back + +=head2 ExtUtils::MakeMaker::FAQ - Frequently Asked Questions About +MakeMaker + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item Philosophy and History + +Why not just use ?, What's +Module::Build and how does it relate to MakeMaker?, pure perl. no make, no +shell commands, easier to customize, cleaner internals, less cruft + +=item Module Writing + +How do I keep my $VERSION up to date without resetting it manually?, What's +this F thing and how did it get in my F?! + +=item XS + +How to I prevent "object version X.XX does not match bootstrap parameter +Y.YY" errors?, How do I make two or more XS files coexist in the same +directory? + +=back + +=item PATCHING + +=item AUTHOR + +=item SEE ALSO + +=back + +=head2 ExtUtils::MakeMaker::Tutorial - Writing a module with MakeMaker + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=over 4 + +=item The Mantra + +=item The Layout + +Makefile.PL, MANIFEST, lib/, t/, Changes, README, INSTALL, MANIFEST.SKIP, +bin/ + +=back + +=item SEE ALSO + +=back + +=head2 ExtUtils::MakeMaker::bytes - Version agnostic bytes.pm + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=back + +=head2 ExtUtils::MakeMaker::vmsish - Platform agnostic vmsish.pm + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + =back =head2 ExtUtils::Manifest - utilities to write and check a MANIFEST file @@ -11770,16 +13809,50 @@ PERL_MM_OPT, PERL_MM_USE_DEFAULT =item DESCRIPTION +=over 4 + +=item Functions + +mkmanifest + +=back + +=back + +manifind + +manicheck + +filecheck + +fullcheck + +skipcheck + +maniread + +manicopy + +maniadd + +=over 4 + +=item MANIFEST + =item MANIFEST.SKIP =item EXPORT_OK =item GLOBAL VARIABLES +=back + +=over 4 + =item DIAGNOSTICS -C I, C I, C I<$!>, -C I +C I, C I, C I, +C I<$!>, C I =item ENVIRONMENT @@ -11910,6 +13983,10 @@ C, C =item DESCRIPTION +=item AUTHOR + +=item HISTORY + =back =head2 File::Compare - Compare files or filehandles @@ -12040,6 +14117,8 @@ C, C =item DESCRIPTION +=item DIAGNOSTICS + =item AUTHORS =back @@ -12070,9 +14149,15 @@ splitdir, catpath(), abs2rel, rel2abs() =item SYNOPSIS -=item DESCRIPTION +=item DESCRIPTION + +=back + +canonpath + +file_name_is_absolute -=back +tmpdir (override) =head2 File::Spec::Epoc - methods for Epoc file specs @@ -12082,26 +14167,12 @@ splitdir, catpath(), abs2rel, rel2abs() =item DESCRIPTION -devnull +=item AUTHORS =back -tmpdir - -path - canonpath() -splitpath - -splitdir - -catpath - -abs2rel - -rel2abs() - =over 4 =item SEE ALSO @@ -12176,6 +14247,8 @@ rel2abs =back +tmpdir + canonpath splitpath @@ -12333,6 +14406,12 @@ catpath =over 4 +=item Note For File::Spec::Win32 Maintainers + +=back + +=over 4 + =item SEE ALSO =back @@ -12351,6 +14430,18 @@ catpath =over 4 +=item OO INTERFACE + +B + +=back + +B + +B + +=over 4 + =item FUNCTIONS B @@ -12399,6 +14490,10 @@ B =back +B + +B + =over 4 =item PACKAGE VARIABLES @@ -12435,6 +14530,8 @@ TopSystemUID =item DESCRIPTION +=item BUGS + =item NOTE =item AUTHOR @@ -12449,8 +14546,14 @@ TopSystemUID =item DESCRIPTION +cacheout EXPR, cacheout MODE, EXPR + +=item CAVEATS + =item BUGS +=item NOTES + =back =head2 FileHandle - supply object methods for filehandles @@ -12624,7 +14727,8 @@ B<$_>, B<$status>, B and B, B =item Summary of Option Specifications -!, +, s, i, o, f, : I [ I ] +!, +, s, i, o, f, : I [ I ], : I [ I ], : ++ [ I ] =back @@ -12634,6 +14738,8 @@ B<$_>, B<$status>, B and B, B =item Object oriented interface +=item Thread Safety + =item Documentation and help texts =item Storing options in a hash @@ -12651,9 +14757,14 @@ B<$_>, B<$status>, B and B, B default, posix_default, auto_abbrev, getopt_compat, gnu_compat, gnu_getopt, require_order, permute, bundling (default: disabled), bundling_override (default: disabled), ignore_case (default: enabled), ignore_case_always -(default: disabled), pass_through (default: disabled), prefix, +(default: disabled), auto_version (default:disabled), auto_help +(default:disabled), pass_through (default: disabled), prefix, prefix_pattern, debug (default: disabled) +=item Exportable Methods + +VersionMessage, C<-message>, C<-msg>, C<-exitval>, C<-output>, HelpMessage + =item Return values and Errors =item Legacy @@ -12679,6 +14790,8 @@ supplied =item GetOptions does not split the command line correctly +=item Undefined subroutine &main::GetOptions called + =item How do I put a "-?" option into a Getopt::Long? =back @@ -12698,6 +14811,40 @@ clustering =item DESCRIPTION +=item C<--help> and C<--version> + +=back + +=head2 Hash::Util - A selection of general-utility hash subroutines + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=over 4 + +=item Restricted hashes + +lock_keys, unlock_keys + +=back + +=back + +lock_value, unlock_value + +B, B + +=over 4 + +=item CAVEATS + +=item AUTHOR + +=item SEE ALSO + =back =head2 I18N::Collate - compare 8-bit scalar data according to the current @@ -12768,88 +14915,93 @@ the function @langs = panic_languages(@accept_languages) =item LIST OF LANGUAGES -{ab} : Abkhazian, {ace} : Achinese, {ach} : Acoli, {ada} : Adangme, {aa} : -Afar, {afh} : Afrihili, {af} : Afrikaans, [{afa} : Afro-Asiatic (Other)], -{aka} : Akan, {akk} : Akkadian, {sq} : Albanian, {ale} : Aleut, [{alg} : -Algonquian languages], [{tut} : Altaic (Other)], {am} : Amharic, {i-ami} : -Ami, [{apa} : Apache languages], {ar} : Arabic, {arc} : Aramaic, {arp} : -Arapaho, {arn} : Araucanian, {arw} : Arawak, {hy} : Armenian, [{art} : -Artificial (Other)], {as} : Assamese, [{ath} : Athapascan languages], -[{aus} : Australian languages], [{map} : Austronesian (Other)], {ava} : -Avaric, {ae} : Avestan, {awa} : Awadhi, {ay} : Aymara, {az} : Azerbaijani, -{ban} : Balinese, [{bat} : Baltic (Other)], {bal} : Baluchi, {bam} : -Bambara, [{bai} : Bamileke languages], {bad} : Banda, [{bnt} : Bantu -(Other)], {bas} : Basa, {ba} : Bashkir, {eu} : Basque, {btk} : Batak -(Indonesia), {bej} : Beja, {be} : Belarusian, {bem} : Bemba, {bn} : -Bengali, [{ber} : Berber (Other)], {bho} : Bhojpuri, {bh} : Bihari, {bik} : -Bikol, {bin} : Bini, {bi} : Bislama, {bs} : Bosnian, {bra} : Braj, {br} : -Breton, {bug} : Buginese, {bg} : Bulgarian, {i-bnn} : Bunun, {bua} : -Buriat, {my} : Burmese, {cad} : Caddo, {car} : Carib, {ca} : Catalan, -[{cau} : Caucasian (Other)], {ceb} : Cebuano, [{cel} : Celtic (Other)], -[{cai} : Central American Indian (Other)], {chg} : Chagatai, [{cmc} : -Chamic languages], {ch} : Chamorro, {ce} : Chechen, {chr} : Cherokee, {chy} -: Cheyenne, {chb} : Chibcha, {ny} : Chichewa, {zh} : Chinese, {chn} : -Chinook Jargon, {chp} : Chipewyan, {cho} : Choctaw, {cu} : Church Slavic, -{chk} : Chuukese, {cv} : Chuvash, {cop} : Coptic, {kw} : Cornish, {co} : -Corsican, {cre} : Cree, {mus} : Creek, [{cpe} : English-based Creoles and -pidgins (Other)], [{cpf} : French-based Creoles and pidgins (Other)], -[{cpp} : Portuguese-based Creoles and pidgins (Other)], [{crp} : Creoles -and pidgins (Other)], {hr} : Croatian, [{cus} : Cushitic (Other)], {cs} : -Czech, {dak} : Dakota, {da} : Danish, {day} : Dayak, {i-default} : Default -(Fallthru) Language, {del} : Delaware, {din} : Dinka, {div} : Divehi, {doi} -: Dogri, {dgr} : Dogrib, [{dra} : Dravidian (Other)], {dua} : Duala, {nl} : -Dutch, {dum} : Middle Dutch (ca.1050-1350), {dyu} : Dyula, {dz} : Dzongkha, -{efi} : Efik, {egy} : Ancient Egyptian, {eka} : Ekajuk, {elx} : Elamite, -{en} : English, {enm} : Old English (1100-1500), {ang} : Old English -(ca.450-1100), {eo} : Esperanto, {et} : Estonian, {ewe} : Ewe, {ewo} : -Ewondo, {fan} : Fang, {fat} : Fanti, {fo} : Faroese, {fj} : Fijian, {fi} : -Finnish, [{fiu} : Finno-Ugrian (Other)], {fon} : Fon, {fr} : French, {frm} -: Middle French (ca.1400-1600), {fro} : Old French (842-ca.1400), {fy} : -Frisian, {fur} : Friulian, {ful} : Fulah, {gaa} : Ga, {gd} : Scots Gaelic, -{gl} : Gallegan, {lug} : Ganda, {gay} : Gayo, {gba} : Gbaya, {gez} : Geez, -{ka} : Georgian, {de} : German, {gmh} : Middle High German (ca.1050-1500), -{goh} : Old High German (ca.750-1050), [{gem} : Germanic (Other)], {gil} : -Gilbertese, {gon} : Gondi, {gor} : Gorontalo, {got} : Gothic, {grb} : -Grebo, {grc} : Ancient Greek, {el} : Modern Greek, {gn} : Guarani, {gu} : -Gujarati, {gwi} : Gwich'in, {hai} : Haida, {ha} : Hausa, {haw} : Hawaiian, +{ab} : Abkhazian, {ace} : Achinese, {ach} : Acoli, {ada} : Adangme, {ady} : +Adyghe, {aa} : Afar, {afh} : Afrihili, {af} : Afrikaans, [{afa} : +Afro-Asiatic (Other)], {ak} : Akan, {akk} : Akkadian, {sq} : Albanian, +{ale} : Aleut, [{alg} : Algonquian languages], [{tut} : Altaic (Other)], +{am} : Amharic, {i-ami} : Ami, [{apa} : Apache languages], {ar} : Arabic, +{arc} : Aramaic, {arp} : Arapaho, {arn} : Araucanian, {arw} : Arawak, {hy} +: Armenian, {an} : Aragonese, [{art} : Artificial (Other)], {ast} : +Asturian, {as} : Assamese, [{ath} : Athapascan languages], [{aus} : +Australian languages], [{map} : Austronesian (Other)], {av} : Avaric, {ae} +: Avestan, {awa} : Awadhi, {ay} : Aymara, {az} : Azerbaijani, {ban} : +Balinese, [{bat} : Baltic (Other)], {bal} : Baluchi, {bm} : Bambara, [{bai} +: Bamileke languages], {bad} : Banda, [{bnt} : Bantu (Other)], {bas} : +Basa, {ba} : Bashkir, {eu} : Basque, {btk} : Batak (Indonesia), {bej} : +Beja, {be} : Belarusian, {bem} : Bemba, {bn} : Bengali, [{ber} : Berber +(Other)], {bho} : Bhojpuri, {bh} : Bihari, {bik} : Bikol, {bin} : Bini, +{bi} : Bislama, {bs} : Bosnian, {bra} : Braj, {br} : Breton, {bug} : +Buginese, {bg} : Bulgarian, {i-bnn} : Bunun, {bua} : Buriat, {my} : +Burmese, {cad} : Caddo, {car} : Carib, {ca} : Catalan, [{cau} : Caucasian +(Other)], {ceb} : Cebuano, [{cel} : Celtic (Other)], [{cai} : Central +American Indian (Other)], {chg} : Chagatai, [{cmc} : Chamic languages], +{ch} : Chamorro, {ce} : Chechen, {chr} : Cherokee, {chy} : Cheyenne, {chb} +: Chibcha, {ny} : Chichewa, {zh} : Chinese, {chn} : Chinook Jargon, {chp} : +Chipewyan, {cho} : Choctaw, {cu} : Church Slavic, {chk} : Chuukese, {cv} : +Chuvash, {cop} : Coptic, {kw} : Cornish, {co} : Corsican, {cr} : Cree, +{mus} : Creek, [{cpe} : English-based Creoles and pidgins (Other)], [{cpf} +: French-based Creoles and pidgins (Other)], [{cpp} : Portuguese-based +Creoles and pidgins (Other)], [{crp} : Creoles and pidgins (Other)], {hr} : +Croatian, [{cus} : Cushitic (Other)], {cs} : Czech, {dak} : Dakota, {da} : +Danish, {dar} : Dargwa, {day} : Dayak, {i-default} : Default (Fallthru) +Language, {del} : Delaware, {din} : Dinka, {dv} : Divehi, {doi} : Dogri, +{dgr} : Dogrib, [{dra} : Dravidian (Other)], {dua} : Duala, {nl} : Dutch, +{dum} : Middle Dutch (ca.1050-1350), {dyu} : Dyula, {dz} : Dzongkha, {efi} +: Efik, {egy} : Ancient Egyptian, {eka} : Ekajuk, {elx} : Elamite, {en} : +English, {enm} : Old English (1100-1500), {ang} : Old English +(ca.450-1100), {i-enochian} : Enochian (Artificial), {myv} : Erzya, {eo} : +Esperanto, {et} : Estonian, {ee} : Ewe, {ewo} : Ewondo, {fan} : Fang, {fat} +: Fanti, {fo} : Faroese, {fj} : Fijian, {fi} : Finnish, [{fiu} : +Finno-Ugrian (Other)], {fon} : Fon, {fr} : French, {frm} : Middle French +(ca.1400-1600), {fro} : Old French (842-ca.1400), {fy} : Frisian, {fur} : +Friulian, {ff} : Fulah, {gaa} : Ga, {gd} : Scots Gaelic, {gl} : Gallegan, +{lg} : Ganda, {gay} : Gayo, {gba} : Gbaya, {gez} : Geez, {ka} : Georgian, +{de} : German, {gmh} : Middle High German (ca.1050-1500), {goh} : Old High +German (ca.750-1050), [{gem} : Germanic (Other)], {gil} : Gilbertese, {gon} +: Gondi, {gor} : Gorontalo, {got} : Gothic, {grb} : Grebo, {grc} : Ancient +Greek, {el} : Modern Greek, {gn} : Guarani, {gu} : Gujarati, {gwi} : +Gwich'in, {hai} : Haida, {ht} : Haitian, {ha} : Hausa, {haw} : Hawaiian, {he} : Hebrew, {hz} : Herero, {hil} : Hiligaynon, {him} : Himachali, {hi} : Hindi, {ho} : Hiri Motu, {hit} : Hittite, {hmn} : Hmong, {hu} : Hungarian, -{hup} : Hupa, {iba} : Iban, {is} : Icelandic, {ibo} : Igbo, {ijo} : Ijo, -{ilo} : Iloko, [{inc} : Indic (Other)], [{ine} : Indo-European (Other)], -{id} : Indonesian, {ia} : Interlingua (International Auxiliary Language -Association), {ie} : Interlingue, {iu} : Inuktitut, {ik} : Inupiaq, [{ira} -: Iranian (Other)], {ga} : Irish, {mga} : Middle Irish (900-1200), {sga} : -Old Irish (to 900), [{iro} : Iroquoian languages], {it} : Italian, {ja} : -Japanese, {jw} : Javanese, {jrb} : Judeo-Arabic, {jpr} : Judeo-Persian, -{kab} : Kabyle, {kac} : Kachin, {kl} : Kalaallisut, {kam} : Kamba, {kn} : -Kannada, {kau} : Kanuri, {kaa} : Kara-Kalpak, {kar} : Karen, {ks} : -Kashmiri, {kaw} : Kawi, {kk} : Kazakh, {kha} : Khasi, {km} : Khmer, [{khi} -: Khoisan (Other)], {kho} : Khotanese, {ki} : Kikuyu, {kmb} : Kimbundu, -{rw} : Kinyarwanda, {ky} : Kirghiz, {i-klingon} : Klingon, {kv} : Komi, -{kon} : Kongo, {kok} : Konkani, {ko} : Korean, {kos} : Kosraean, {kpe} : -Kpelle, {kro} : Kru, {kj} : Kuanyama, {kum} : Kumyk, {ku} : Kurdish, {kru} -: Kurukh, {kut} : Kutenai, {lad} : Ladino, {lah} : Lahnda, {lam} : Lamba, -{lo} : Lao, {la} : Latin, {lv} : Latvian, {lb} : Letzeburgesch, {lez} : -Lezghian, {ln} : Lingala, {lt} : Lithuanian, {nds} : Low German, {loz} : -Lozi, {lub} : Luba-Katanga, {lua} : Luba-Lulua, {lui} : Luiseno, {lun} : -Lunda, {luo} : Luo (Kenya and Tanzania), {lus} : Lushai, {mk} : Macedonian, -{mad} : Madurese, {mag} : Magahi, {mai} : Maithili, {mak} : Makasar, {mg} : -Malagasy, {ms} : Malay, {ml} : Malayalam, {mt} : Maltese, {mnc} : Manchu, -{mdr} : Mandar, {man} : Mandingo, {mni} : Manipuri, [{mno} : Manobo -languages], {gv} : Manx, {mi} : Maori, {mr} : Marathi, {chm} : Mari, {mh} : -Marshall, {mwr} : Marwari, {mas} : Masai, [{myn} : Mayan languages], {men} -: Mende, {mic} : Micmac, {min} : Minangkabau, {i-mingo} : Mingo, [{mis} : -Miscellaneous languages], {moh} : Mohawk, {mo} : Moldavian, [{mkh} : -Mon-Khmer (Other)], {lol} : Mongo, {mn} : Mongolian, {mos} : Mossi, [{mul} -: Multiple languages], [{mun} : Munda languages], {nah} : Nahuatl, {na} : -Nauru, {nv} : Navajo, {nd} : North Ndebele, {nr} : South Ndebele, {ng} : -Ndonga, {ne} : Nepali, {new} : Newari, {nia} : Nias, [{nic} : +{hup} : Hupa, {iba} : Iban, {is} : Icelandic, {io} : Ido, {ig} : Igbo, +{ijo} : Ijo, {ilo} : Iloko, [{inc} : Indic (Other)], [{ine} : Indo-European +(Other)], {id} : Indonesian, {inh} : Ingush, {ia} : Interlingua +(International Auxiliary Language Association), {ie} : Interlingue, {iu} : +Inuktitut, {ik} : Inupiaq, [{ira} : Iranian (Other)], {ga} : Irish, {mga} : +Middle Irish (900-1200), {sga} : Old Irish (to 900), [{iro} : Iroquoian +languages], {it} : Italian, {ja} : Japanese, {jv} : Javanese, {jrb} : +Judeo-Arabic, {jpr} : Judeo-Persian, {kbd} : Kabardian, {kab} : Kabyle, +{kac} : Kachin, {kl} : Kalaallisut, {xal} : Kalmyk, {kam} : Kamba, {kn} : +Kannada, {kr} : Kanuri, {krc} : Karachay-Balkar, {kaa} : Kara-Kalpak, {kar} +: Karen, {ks} : Kashmiri, {csb} : Kashubian, {kaw} : Kawi, {kk} : Kazakh, +{kha} : Khasi, {km} : Khmer, [{khi} : Khoisan (Other)], {kho} : Khotanese, +{ki} : Kikuyu, {kmb} : Kimbundu, {rw} : Kinyarwanda, {ky} : Kirghiz, +{i-klingon} : Klingon, {kv} : Komi, {kg} : Kongo, {kok} : Konkani, {ko} : +Korean, {kos} : Kosraean, {kpe} : Kpelle, {kro} : Kru, {kj} : Kuanyama, +{kum} : Kumyk, {ku} : Kurdish, {kru} : Kurukh, {kut} : Kutenai, {lad} : +Ladino, {lah} : Lahnda, {lam} : Lamba, {lo} : Lao, {la} : Latin, {lv} : +Latvian, {lb} : Letzeburgesch, {lez} : Lezghian, {li} : Limburgish, {ln} : +Lingala, {lt} : Lithuanian, {nds} : Low German, {art-lojban} : Lojban +(Artificial), {loz} : Lozi, {lu} : Luba-Katanga, {lua} : Luba-Lulua, {lui} +: Luiseno, {lun} : Lunda, {luo} : Luo (Kenya and Tanzania), {lus} : Lushai, +{mk} : Macedonian, {mad} : Madurese, {mag} : Magahi, {mai} : Maithili, +{mak} : Makasar, {mg} : Malagasy, {ms} : Malay, {ml} : Malayalam, {mt} : +Maltese, {mnc} : Manchu, {mdr} : Mandar, {man} : Mandingo, {mni} : +Manipuri, [{mno} : Manobo languages], {gv} : Manx, {mi} : Maori, {mr} : +Marathi, {chm} : Mari, {mh} : Marshall, {mwr} : Marwari, {mas} : Masai, +[{myn} : Mayan languages], {men} : Mende, {mic} : Micmac, {min} : +Minangkabau, {i-mingo} : Mingo, [{mis} : Miscellaneous languages], {moh} : +Mohawk, {mdf} : Moksha, {mo} : Moldavian, [{mkh} : Mon-Khmer (Other)], +{lol} : Mongo, {mn} : Mongolian, {mos} : Mossi, [{mul} : Multiple +languages], [{mun} : Munda languages], {nah} : Nahuatl, {nap} : Neapolitan, +{na} : Nauru, {nv} : Navajo, {nd} : North Ndebele, {nr} : South Ndebele, +{ng} : Ndonga, {ne} : Nepali, {new} : Newari, {nia} : Nias, [{nic} : Niger-Kordofanian (Other)], [{ssa} : Nilo-Saharan (Other)], {niu} : Niuean, -{non} : Old Norse, [{nai} : North American Indian], {se} : Northern Sami, -{no} : Norwegian, {nb} : Norwegian Bokmal, {nn} : Norwegian Nynorsk, [{nub} -: Nubian languages], {nym} : Nyamwezi, {nyn} : Nyankole, {nyo} : Nyoro, -{nzi} : Nzima, {oc} : Occitan (post 1500), {oji} : Ojibwa, {or} : Oriya, -{om} : Oromo, {osa} : Osage, {os} : Ossetian; Ossetic, [{oto} : Otomian +{nog} : Nogai, {non} : Old Norse, [{nai} : North American Indian], {no} : +Norwegian, {nb} : Norwegian Bokmal, {nn} : Norwegian Nynorsk, [{nub} : +Nubian languages], {nym} : Nyamwezi, {nyn} : Nyankole, {nyo} : Nyoro, {nzi} +: Nzima, {oc} : Occitan (post 1500), {oj} : Ojibwa, {or} : Oriya, {om} : +Oromo, {osa} : Osage, {os} : Ossetian; Ossetic, [{oto} : Otomian languages], {pal} : Pahlavi, {i-pwn} : Paiwan, {pau} : Palauan, {pi} : Pali, {pam} : Pampanga, {pag} : Pangasinan, {pa} : Panjabi, {pap} : Papiamento, [{paa} : Papuan (Other)], {fa} : Persian, {peo} : Old Persian @@ -12859,34 +15011,37 @@ Papiamento, [{paa} : Papuan (Other)], {fa} : Persian, {peo} : Old Persian Raeto-Romance, {raj} : Rajasthani, {rap} : Rapanui, {rar} : Rarotongan, [{qaa - qtz} : Reserved for local use.], [{roa} : Romance (Other)], {ro} : Romanian, {rom} : Romany, {rn} : Rundi, {ru} : Russian, [{sal} : Salishan -languages], {sam} : Samaritan Aramaic, [{smi} : Sami languages (Other)], -{sm} : Samoan, {sad} : Sandawe, {sg} : Sango, {sa} : Sanskrit, {sat} : -Santali, {sc} : Sardinian, {sas} : Sasak, {sco} : Scots, {sel} : Selkup, -[{sem} : Semitic (Other)], {sr} : Serbian, {srr} : Serer, {shn} : Shan, -{sn} : Shona, {sid} : Sidamo, {sgn-...} : Sign Languages, {bla} : Siksika, -{sd} : Sindhi, {si} : Sinhalese, [{sit} : Sino-Tibetan (Other)], [{sio} : -Siouan languages], {den} : Slave (Athapascan), [{sla} : Slavic (Other)], -{sk} : Slovak, {sl} : Slovenian, {sog} : Sogdian, {so} : Somali, {son} : -Songhai, {snk} : Soninke, {wen} : Sorbian languages, {nso} : Northern -Sotho, {st} : Southern Sotho, [{sai} : South American Indian (Other)], {es} -: Spanish, {suk} : Sukuma, {sux} : Sumerian, {su} : Sundanese, {sus} : -Susu, {sw} : Swahili, {ss} : Swati, {sv} : Swedish, {syr} : Syriac, {tl} : -Tagalog, {ty} : Tahitian, [{tai} : Tai (Other)], {tg} : Tajik, {tmh} : -Tamashek, {ta} : Tamil, {i-tao} : Tao, {tt} : Tatar, {i-tay} : Tayal, {te} -: Telugu, {ter} : Tereno, {tet} : Tetum, {th} : Thai, {bo} : Tibetan, {tig} -: Tigre, {ti} : Tigrinya, {tem} : Timne, {tiv} : Tiv, {tli} : Tlingit, -{tpi} : Tok Pisin, {tkl} : Tokelau, {tog} : Tonga (Nyasa), {to} : Tonga -(Tonga Islands), {tsi} : Tsimshian, {ts} : Tsonga, {i-tsu} : Tsou, {tn} : -Tswana, {tum} : Tumbuka, {tr} : Turkish, {ota} : Ottoman Turkish -(1500-1928), {tk} : Turkmen, {tvl} : Tuvalu, {tyv} : Tuvinian, {tw} : Twi, -{uga} : Ugaritic, {ug} : Uighur, {uk} : Ukrainian, {umb} : Umbundu, {und} : -Undetermined, {ur} : Urdu, {uz} : Uzbek, {vai} : Vai, {ven} : Venda, {vi} : -Vietnamese, {vo} : Volapuk, {vot} : Votic, [{wak} : Wakashan languages], -{wal} : Walamo, {war} : Waray, {was} : Washo, {cy} : Welsh, {wo} : Wolof, -{x-...} : Unregistered (Semi-Private Use), {xh} : Xhosa, {sah} : Yakut, -{yao} : Yao, {yap} : Yapese, {yi} : Yiddish, {yo} : Yoruba, [{ypk} : Yupik -languages], {znd} : Zande, [{zap} : Zapotec], {zen} : Zenaga, {za} : -Zhuang, {zu} : Zulu, {zun} : Zuni +languages], {sam} : Samaritan Aramaic, {se} : Northern Sami, {sma} : +Southern Sami, {smn} : Inari Sami, {smj} : Lule Sami, {sms} : Skolt Sami, +[{smi} : Sami languages (Other)], {sm} : Samoan, {sad} : Sandawe, {sg} : +Sango, {sa} : Sanskrit, {sat} : Santali, {sc} : Sardinian, {sas} : Sasak, +{sco} : Scots, {sel} : Selkup, [{sem} : Semitic (Other)], {sr} : Serbian, +{srr} : Serer, {shn} : Shan, {sn} : Shona, {sid} : Sidamo, {sgn-...} : Sign +Languages, {bla} : Siksika, {sd} : Sindhi, {si} : Sinhalese, [{sit} : +Sino-Tibetan (Other)], [{sio} : Siouan languages], {den} : Slave +(Athapascan), [{sla} : Slavic (Other)], {sk} : Slovak, {sl} : Slovenian, +{sog} : Sogdian, {so} : Somali, {son} : Songhai, {snk} : Soninke, {wen} : +Sorbian languages, {nso} : Northern Sotho, {st} : Southern Sotho, [{sai} : +South American Indian (Other)], {es} : Spanish, {suk} : Sukuma, {sux} : +Sumerian, {su} : Sundanese, {sus} : Susu, {sw} : Swahili, {ss} : Swati, +{sv} : Swedish, {syr} : Syriac, {tl} : Tagalog, {ty} : Tahitian, [{tai} : +Tai (Other)], {tg} : Tajik, {tmh} : Tamashek, {ta} : Tamil, {i-tao} : Tao, +{tt} : Tatar, {i-tay} : Tayal, {te} : Telugu, {ter} : Tereno, {tet} : +Tetum, {th} : Thai, {bo} : Tibetan, {tig} : Tigre, {ti} : Tigrinya, {tem} : +Timne, {tiv} : Tiv, {tli} : Tlingit, {tpi} : Tok Pisin, {tkl} : Tokelau, +{tog} : Tonga (Nyasa), {to} : Tonga (Tonga Islands), {tsi} : Tsimshian, +{ts} : Tsonga, {i-tsu} : Tsou, {tn} : Tswana, {tum} : Tumbuka, [{tup} : +Tupi languages], {tr} : Turkish, {ota} : Ottoman Turkish (1500-1928), {crh} +: Crimean Turkish, {tk} : Turkmen, {tvl} : Tuvalu, {tyv} : Tuvinian, {tw} : +Twi, {udm} : Udmurt, {uga} : Ugaritic, {ug} : Uighur, {uk} : Ukrainian, +{umb} : Umbundu, {und} : Undetermined, {ur} : Urdu, {uz} : Uzbek, {vai} : +Vai, {ve} : Venda, {vi} : Vietnamese, {vo} : Volapuk, {vot} : Votic, [{wak} +: Wakashan languages], {wa} : Walloon, {wal} : Walamo, {war} : Waray, {was} +: Washo, {cy} : Welsh, {wo} : Wolof, {x-...} : Unregistered (Semi-Private +Use), {xh} : Xhosa, {sah} : Yakut, {yao} : Yao, {yap} : Yapese, {ii} : +Sichuan Yi, {yi} : Yiddish, {yo} : Yoruba, [{ypk} : Yupik languages], {znd} +: Zande, [{zap} : Zapotec], {zen} : Zenaga, {za} : Zhuang, {zu} : Zulu, +{zun} : Zuni =item SEE ALSO @@ -12926,6 +15081,8 @@ Zhuang, {zu} : Zulu, {zun} : Zuni =item DESCRIPTION +=item DEPRECATED + =back =head2 IO::Dir - supply object methods for directory handles @@ -12937,7 +15094,7 @@ Zhuang, {zu} : Zulu, {zun} : Zuni =item DESCRIPTION new ( [ DIRNAME ] ), open ( DIRNAME ), read (), seek ( POS ), tell (), -rewind (), close (), tie %hash, IO::Dir, DIRNAME [, OPTIONS ] +rewind (), close (), tie %hash, 'IO::Dir', DIRNAME [, OPTIONS ] =item SEE ALSO @@ -12961,7 +15118,7 @@ new ( FILENAME [,MODE [,PERMS]] ), new_tmpfile =item METHODS -open( FILENAME [,MODE [,PERMS]] ) +open( FILENAME [,MODE [,PERMS]] ), open( FILENAME, IOLAYERS ) =item SEE ALSO @@ -13077,7 +15234,7 @@ new ( [ HANDLES ] ) add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read ( [ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_exception ( [ TIMEOUT ] ), -count (), bits(), select ( READ, WRITE, ERROR [, TIMEOUT ] ) +count (), bits(), select ( READ, WRITE, EXCEPTION [, TIMEOUT ] ) =item EXAMPLE @@ -13175,7 +15332,7 @@ handles =item DESCRIPTION new ( [ DIRNAME ] ), open ( DIRNAME ), read (), seek ( POS ), tell (), -rewind (), close (), tie %hash, IO::Dir, DIRNAME [, OPTIONS ] +rewind (), close (), tie %hash, 'IO::Dir', DIRNAME [, OPTIONS ] =item SEE ALSO @@ -13199,7 +15356,7 @@ new ( FILENAME [,MODE [,PERMS]] ), new_tmpfile =item METHODS -open( FILENAME [,MODE [,PERMS]] ) +open( FILENAME [,MODE [,PERMS]] ), open( FILENAME, IOLAYERS ) =item SEE ALSO @@ -13318,7 +15475,7 @@ new ( [ HANDLES ] ) add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read ( [ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_exception ( [ TIMEOUT ] ), -count (), bits(), select ( READ, WRITE, ERROR [, TIMEOUT ] ) +count (), bits(), select ( READ, WRITE, EXCEPTION [, TIMEOUT ] ) =item EXAMPLE @@ -13593,8 +15750,9 @@ general-utility scalar subroutines =item DESCRIPTION -blessed EXPR, dualvar NUM, STRING, isweak EXPR, readonly SCALAR, reftype -EXPR, tainted EXPR, weaken REF +blessed EXPR, dualvar NUM, STRING, isvstring EXPR, isweak EXPR, +looks_like_number EXPR, openhandle FH, refaddr EXPR, reftype EXPR, +set_prototype CODEREF, PROTOTYPE, tainted EXPR, weaken REF =item KNOWN BUGS @@ -13643,7 +15801,15 @@ country_code2code( CODE, CODESET, CODESET ) C, C -=item CODE ALIASING +=item SEMI-PRIVATE ROUTINES + +=over 4 + +=item alias_code + +=item rename_country + +=back =item EXAMPLES @@ -13653,10 +15819,10 @@ C, C =item SEE ALSO -Locale::Language, Locale::Script, Locale::Currency, ISO 3166, -http://www.din.de/gremien/nas/nabd/iso3166ma/, +Locale::Language, Locale::Script, Locale::Currency, Locale::SubCountry, ISO +3166-1, http://www.iso.org/iso/en/prods-services/iso3166ma/index.html, http://www.egt.ie/standards/iso3166/iso3166-1-en.html, -http://www.cia.gov/cia/publications/factbook/docs/app-f.html +http://www.cia.gov/cia/publications/factbook/docs/app-d-1.html =item AUTHOR @@ -13730,7 +15896,7 @@ http://lcweb.loc.gov/standards/iso639-2/langhome.html =back -=head2 Locale::Maketext -- framework for localization +=head2 Locale::Maketext - framework for localization =over 4 @@ -13867,7 +16033,7 @@ http://www.evertype.com/standards/iso15924/ =item DESCRIPTION -encode_base64($str, [$eol]), decode_base64($str) +encode_base64($str), encode_base64($str, $eol);, decode_base64($str) =item DIAGNOSTICS @@ -13888,7 +16054,7 @@ of quoted-printable strings =item DESCRIPTION -encode_qp($str), decode_qp($str); +encode_qp($str), encode_qp($str, $eol), decode_qp($str); =item COPYRIGHT @@ -13903,7 +16069,7 @@ strings =item DESCRIPTION -encode_qp($str), decode_qp($str); +encode_qp($str), encode_qp($str, $eol), decode_qp($str); =item COPYRIGHT @@ -13940,19 +16106,259 @@ ffround ( +$scale ), ffround ( -$scale ), ffround ( 0 ), fround ( +$scale =item Autocreating constants +=over 4 + +=item Math library + +=item Using Math::BigInt::Lite + +=back + =item BUGS -=item CAVEAT +=item CAVEATS stringify, bstr(), bdiv, Modifying and =, bpow +=item SEE ALSO + +=item LICENSE + +=item AUTHORS + +=back + +=head2 Math::BigInt - Arbitrary size integer math package + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +Canonical notation, Input, Output + +=item METHODS + +=over 4 + +=item config + +=item accuracy + +=item precision + +=item brsft + +=item new + +=item bnan + +=item bzero + +=item binf + +=item bone + +=item is_one()/is_zero()/is_nan()/is_inf() + +=item is_positive()/is_negative() + + $x->is_positive(); # true if >= 0 + $x->is_negative(); # true if < 0 + +=item is_odd()/is_even()/is_int() + +=item bcmp + +=item bacmp + +=item sign + +=item bcmp + +=item bneg + +=item babs + +=item bnorm + +=item bnot + +=item binc + +=item bdec + +=item badd + +=item bsub + +=item bmul + +=item bdiv + +=item bmod + +=item bmodinv + +=item bmodpow + +=item bpow + +=item blsft + +=item brsft + +=item band + +=item bior + +=item bxor + +=item bnot + +=item bsqrt + +=item bfac + +=item round + +=item bround + +=item bfround + +=item bfloor + +=item bceil + +=item bgcd + +=item blcm + +=item exponent + +=item mantissa + +=item parts + +=item copy + +=item as_number + +=item bsstr + +=item as_hex + +=item as_bin + +=back + +=item ACCURACY and PRECISION + +=over 4 + +=item Precision P + +=item Accuracy A + +=item Fallback F + +=item Rounding mode R + +'trunc', 'even', 'odd', '+inf', '-inf', 'zero', Precision, Accuracy +(significant digits), Setting/Accessing, Creating numbers, Usage, +Precedence, Overriding globals, Local settings, Rounding, Default values, +Remarks + +=back + +=item INTERNALS + +=over 4 + +=item MATH LIBRARY + +=item SIGN + +=item mantissa(), exponent() and parts() + +=back + +=item EXAMPLES + + use Math::BigInt; + +=item Autocreating constants + +=item PERFORMANCE + +=over 4 + +=item Alternative math libraries + +=item SUBCLASSING + +=back + +=item Subclassing Math::BigInt + +=item UPGRADING + +=over 4 + +=item Auto-upgrade + +bsqrt(), div(), blog() + +=back + +=item BUGS + +broot() does not work, Out of Memory!, Fails to load Calc on Perl prior +5.6.0 + +=item CAVEATS + +stringify, bstr(), bsstr() and 'cmp', int(), length, bdiv, infinity +handling, Modifying and =, bpow, Overloading -$x, Mixing different object +types, bsqrt(), brsft() + +=item LICENSE + +=item SEE ALSO + +=item AUTHORS + +=back + +=head2 Math::BigInt::Calc - Pure Perl module to support Math::BigInt + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item STORAGE + +=item METHODS + +=item WRAP YOUR OWN + =item LICENSE +This program is free software; you may redistribute it and/or modify it +under +the same terms as Perl itself. + =item AUTHORS +=item SEE ALSO + =back -=head2 Math::BigInt - Arbitrary size integer math package +=head2 Math::BigInt::Scalar - Pure Perl module to test Math::BigInt with +scalars =over 4 @@ -13960,93 +16366,91 @@ stringify, bstr(), bdiv, Modifying and =, bpow =item DESCRIPTION -Canonical notation, Input, Output - -=item ACCURACY and PRECISION +=item LICENSE -=over 4 +This program is free software; you may redistribute it and/or modify it +under +the same terms as Perl itself. -=item Precision P +=item AUTHOR -=item Accuracy A +=item SEE ALSO -=item Fallback F +=back -=item Rounding mode R +=head2 Math::BigRat - arbitrarily big rationales -'trunc', 'even', 'odd', '+inf', '-inf', 'zero', Precision, Accuracy -(significant digits), Setting/Accessing, Creating numbers, Usage, -Precedence, Overriding globals, Local settings, Rounding, Default values, -Remarks +=over 4 -=back +=item SYNOPSIS -=item INTERNALS +=item DESCRIPTION =over 4 =item MATH LIBRARY -=item SIGN +=back -=item mantissa(), exponent() and parts() +=item METHODS -=back +=over 4 -=item EXAMPLES +=item new() - use Math::BigInt; +=item numerator() -=item Autocreating constants +=item denominator() -=item PERFORMANCE + $d = $x->denominator(); -=over 4 +=item parts() -=item Alternative math libraries +=item as_number() -=back +=item bfac() -=item BUGS +=item blog() -Out of Memory!, Fails to load Calc on Perl prior 5.6.0 +=item bround()/round()/bfround() -=item CAVEATS +=item bmod() -stringify, bstr(), bsstr() and 'cmp', int(), length, bdiv, infinity -handling, Modifying and =, bpow, Overloading -$x, Mixing different object -types, bsqrt() +=item is_one() -=item LICENSE +=item is_zero() -=item SEE ALSO +=item is_positive() -=item AUTHORS +=item is_negative() -=back +=item is_int() -=head2 Math::BigInt::Calc - Pure Perl module to support Math::BigInt +=item is_odd() -=over 4 +=item is_even() -=item SYNOPSIS +=item bceil() -=item DESCRIPTION +=item bfloor() -=item EXPORT + $x->bfloor(); -=item WRAP YOUR OWN +=item config -=item LICENSE +=back -This program is free software; you may redistribute it and/or modify it -under -the same terms as Perl itself. +=item BUGS -=item AUTHORS +inf handling (partial), NaN handling (partial), rounding (not implemented +except for bceil/bfloor), $x ** $y where $y is not an integer + +=item LICENSE =item SEE ALSO +=item AUTHORS + =back =head2 Math::Complex - complex numbers and associated mathematical @@ -14133,7 +16537,7 @@ cylindrical_to_spherical, spherical_to_cartesian, spherical_to_cylindrical =back -=head2 Memoize - Make your functions faster by trading space for time +=head2 Memoize - Make functions faster by trading space for time =over 4 @@ -14281,7 +16685,8 @@ C, C, C =back -=head2 NEXT - Provide a pseudo-class NEXT that allows method redispatch +=head2 NEXT - Provide a pseudo-class NEXT (et al) that allows method +redispatch =over 4 @@ -14295,6 +16700,10 @@ C, C, C =item Avoiding repetitions +=item Invoking all versions of a method with a single call + +=item Using C methods + =back =item AUTHOR @@ -14322,7 +16731,7 @@ dataend () debug_print ( DIR, TEXT ), debug_text ( TEXT ), command ( CMD [, ARGS, ... ]), unsupported (), response (), parse_response ( TEXT ), getline (), -ungetline ( TEXT ), read_until_dot () +ungetline ( TEXT ), rawdatasend ( DATA ), read_until_dot (), tied_fh () =item EXPORTS @@ -14389,15 +16798,16 @@ login ([LOGIN [,PASSWORD [, ACCOUNT] ] ]), authorize ( [AUTH [, RESP]]), site (ARGS), type (TYPE [, ARGS]), ascii ([ARGS]) binary([ARGS]) ebcdic([ARGS]) byte([ARGS]), rename ( OLDNAME, NEWNAME ), delete ( FILENAME ), cwd ( [ DIR ] ), cdup (), pwd (), restart ( WHERE ), rmdir ( DIR ), -mkdir ( DIR [, RECURSE ]), ls ( [ DIR ] ), dir ( [ DIR ] ), get ( -REMOTE_FILE [, LOCAL_FILE [, WHERE]] ), put ( LOCAL_FILE [, REMOTE_FILE ] -), put_unique ( LOCAL_FILE [, REMOTE_FILE ] ), append ( LOCAL_FILE [, -REMOTE_FILE ] ), unique_name (), mdtm ( FILE ), size ( FILE ), supported ( -CMD ), hash ( [FILEHANDLE_GLOB_REF],[ BYTES_PER_HASH_MARK] ), nlst ( [ DIR -] ), list ( [ DIR ] ), retr ( FILE ), stor ( FILE ), stou ( FILE ), appe ( -FILE ), port ( [ PORT ] ), pasv (), pasv_xfer ( SRC_FILE, DEST_SERVER [, -DEST_FILE ] ), pasv_xfer_unique ( SRC_FILE, DEST_SERVER [, DEST_FILE ] ), -pasv_wait ( NON_PASV_SERVER ), abort (), quit () +mkdir ( DIR [, RECURSE ]), ls ( [ DIR ] ), alloc ( SIZE [, RECORD_SIZE] ), +dir ( [ DIR ] ), get ( REMOTE_FILE [, LOCAL_FILE [, WHERE]] ), put ( +LOCAL_FILE [, REMOTE_FILE ] ), put_unique ( LOCAL_FILE [, REMOTE_FILE ] ), +append ( LOCAL_FILE [, REMOTE_FILE ] ), unique_name (), mdtm ( FILE ), size +( FILE ), supported ( CMD ), hash ( [FILEHANDLE_GLOB_REF],[ +BYTES_PER_HASH_MARK] ), nlst ( [ DIR ] ), list ( [ DIR ] ), retr ( FILE ), +stor ( FILE ), stou ( FILE ), appe ( FILE ), port ( [ PORT ] ), pasv (), +pasv_xfer ( SRC_FILE, DEST_SERVER [, DEST_FILE ] ), pasv_xfer_unique ( +SRC_FILE, DEST_SERVER [, DEST_FILE ] ), pasv_wait ( NON_PASV_SERVER ), +abort (), quit () =over 4 @@ -14414,7 +16824,7 @@ bytes_read (), abort (), close () =item UNIMPLEMENTED -B, B, B, B, B, B, B, B +B, B, B, B, B, B, B =item REPORTING BUGS @@ -14447,11 +16857,12 @@ new ( [ HOST ] [, OPTIONS ]) =item METHODS article ( [ MSGID|MSGNUM ], [FH] ), body ( [ MSGID|MSGNUM ], [FH] ), head ( -[ MSGID|MSGNUM ], [FH] ), nntpstat ( [ MSGID|MSGNUM ] ), group ( [ GROUP ] -), ihave ( MSGID [, MESSAGE ]), last (), date (), postok (), authinfo ( -USER, PASS ), list (), newgroups ( SINCE [, DISTRIBUTIONS ]), newnews ( -SINCE [, GROUPS [, DISTRIBUTIONS ]]), next (), post ( [ MESSAGE ] ), slave -(), quit () +[ MSGID|MSGNUM ], [FH] ), articlefh ( [ MSGID|MSGNUM ] ), bodyfh ( [ +MSGID|MSGNUM ] ), headfh ( [ MSGID|MSGNUM ] ), nntpstat ( [ MSGID|MSGNUM ] +), group ( [ GROUP ] ), ihave ( MSGID [, MESSAGE ]), last (), date (), +postok (), authinfo ( USER, PASS ), list (), newgroups ( SINCE [, +DISTRIBUTIONS ]), newnews ( SINCE [, GROUPS [, DISTRIBUTIONS ]]), next (), +post ( [ MESSAGE ] ), postfh (), slave (), quit () =over 4 @@ -14479,7 +16890,7 @@ MESSAGE-SPEC, PATTERN, Examples, C<[^]-]>, C<*bdc>, C<[0-9a-zA-Z]>, C =back -=head2 Net::POP3 - Post Office Protocol 3 Client class (RFC1081) +=head2 Net::POP3 - Post Office Protocol 3 Client class (RFC1939) =over 4 @@ -14487,18 +16898,16 @@ MESSAGE-SPEC, PATTERN, Examples, C<[^]-]>, C<*bdc>, C<[0-9a-zA-Z]>, C =item DESCRIPTION -=item EXAMPLES - =item CONSTRUCTOR new ( [ HOST, ] [ OPTIONS ] ) =item METHODS -user ( USER ), pass ( PASS ), login ( [ USER [, PASS ]] ), apop ( USER, -PASS ), top ( MSGNUM [, NUMLINES ] ), list ( [ MSGNUM ] ), get ( MSGNUM [, -FH ] ), last (), popstat (), ping ( USER ), uidl ( [ MSGNUM ] ), delete ( -MSGNUM ), reset (), quit () +user ( USER ), pass ( PASS ), login ( [ USER [, PASS ]] ), apop ( [ USER [, +PASS ]] ), top ( MSGNUM [, NUMLINES ] ), list ( [ MSGNUM ] ), get ( MSGNUM +[, FH ] ), getfh ( MSGNUM ), last (), popstat (), ping ( USER ), uidl ( [ +MSGNUM ] ), delete ( MSGNUM ), reset (), quit () =item NOTES @@ -14522,16 +16931,21 @@ MSGNUM ), reset (), quit () =item Functions -Net::Ping->new([$proto [, $def_timeout [, $bytes]]]);, -$p->bind($local_addr);, $p->ping($host [, $timeout]);, $p->open($host);, -$p->open($host);, $p->close();, pingecho($host [, $timeout]); +Net::Ping->new([$proto [, $def_timeout [, $bytes [, $device [, $tos +]]]]]);, $p->ping($host [, $timeout]);, $p->source_verify( { 0 | 1 } );, +$p->service_check( { 0 | 1 } );, $p->tcp_service_check( { 0 | 1 } );, +$p->hires( { 0 | 1 } );, $p->bind($local_addr);, $p->open($host);, $p->ack( +[ $host ] );, $p->nack( $failed_ack_host );, $p->close();, pingecho($host +[, $timeout]); =back -=item WARNING - =item NOTES +=item INSTALL + +=item BUGS + =item AUTHORS =item COPYRIGHT @@ -14562,6 +16976,8 @@ ADDRESS [, ADDRESS [...]] ), bcc ( ADDRESS [, ADDRESS [...]] ), data ( [ DATA ] ), expand ( ADDRESS ), verify ( ADDRESS ), help ( [ $subject ] ), quit () +=item ADDRESSES + =item SEE ALSO =item AUTHOR @@ -14795,6 +17211,8 @@ login (), password (), account (), lpa () =item IMPLEMENTATION +=item BUGS + =item AUTHOR =back @@ -14934,17 +17352,17 @@ cuserid, difftime, div, dup, dup2, errno, execl, execle, execlp, execv, execve, execvp, exit, exp, fabs, fclose, fcntl, fdopen, feof, ferror, fflush, fgetc, fgetpos, fgets, fileno, floor, fmod, fopen, fork, fpathconf, fprintf, fputc, fputs, fread, free, freopen, frexp, fscanf, fseek, fsetpos, -fstat, ftell, fwrite, getc, getchar, getcwd, getegid, getenv, geteuid, -getgid, getgrgid, getgrnam, getgroups, getlogin, getpgrp, getpid, getppid, -getpwnam, getpwuid, gets, getuid, gmtime, isalnum, isalpha, isatty, -iscntrl, isdigit, isgraph, islower, isprint, ispunct, isspace, isupper, -isxdigit, kill, labs, ldexp, ldiv, link, localeconv, localtime, log, log10, -longjmp, lseek, malloc, mblen, mbstowcs, mbtowc, memchr, memcmp, memcpy, -memmove, memset, mkdir, mkfifo, mktime, modf, nice, offsetof, open, -opendir, pathconf, pause, perror, pipe, pow, printf, putc, putchar, puts, -qsort, raise, rand, read, readdir, realloc, remove, rename, rewind, -rewinddir, rmdir, scanf, setgid, setjmp, setlocale, setpgid, setsid, -setuid, sigaction, siglongjmp, sigpending, sigprocmask, sigsetjmp, +fstat, fsync, ftell, fwrite, getc, getchar, getcwd, getegid, getenv, +geteuid, getgid, getgrgid, getgrnam, getgroups, getlogin, getpgrp, getpid, +getppid, getpwnam, getpwuid, gets, getuid, gmtime, isalnum, isalpha, +isatty, iscntrl, isdigit, isgraph, islower, isprint, ispunct, isspace, +isupper, isxdigit, kill, labs, ldexp, ldiv, link, localeconv, localtime, +log, log10, longjmp, lseek, malloc, mblen, mbstowcs, mbtowc, memchr, +memcmp, memcpy, memmove, memset, mkdir, mkfifo, mktime, modf, nice, +offsetof, open, opendir, pathconf, pause, perror, pipe, pow, printf, putc, +putchar, puts, qsort, raise, rand, read, readdir, realloc, remove, rename, +rewind, rewinddir, rmdir, scanf, setgid, setjmp, setlocale, setpgid, +setsid, setuid, sigaction, siglongjmp, sigpending, sigprocmask, sigsetjmp, sigsuspend, sin, sinh, sleep, sprintf, sqrt, srand, sscanf, stat, strcat, strchr, strcmp, strcoll, strcpy, strcspn, strerror, strftime, strlen, strncat, strncmp, strncpy, strpbrk, strrchr, strspn, strstr, strtod, @@ -14960,7 +17378,7 @@ wctomb, write =item POSIX::SigAction -new +new, handler, mask, flags, safe =item POSIX::SigSet @@ -15052,12 +17470,20 @@ name space =item DESCRIPTION -unix, stdio, perlio, crlf, utf8, raw +unix, stdio, perlio, crlf, utf8, bytes, raw, pop =over 4 +=item Custom Layers + +:encoding, :via + +=item Alternatives to raw + =item Defaults and how to override them +=item Querying the layers of filehandle + =back =item AUTHOR @@ -15066,7 +17492,19 @@ unix, stdio, perlio, crlf, utf8, raw =back -=head2 PerlIO::Scalar - support module for in-memory IO. +=head2 PerlIO::encoding - encoding layer + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item SEE ALSO + +=back + +=head2 PerlIO::scalar - support module for in-memory IO. =over 4 @@ -15076,7 +17514,7 @@ unix, stdio, perlio, crlf, utf8, raw =back -=head2 PerlIO::Via - Helper class for PerlIO layers implemented in perl +=head2 PerlIO::via - Helper class for PerlIO layers implemented in perl =over 4 @@ -15084,14 +17522,19 @@ unix, stdio, perlio, crlf, utf8, raw =item DESCRIPTION +=item EXPECTED METHODS + $class->PUSHED([$mode[,$fh]]), $obj->POPPED([$fh]), -$class->OPEN($path,$mode[,$fh]), $class->FDOPEN($fd), -$class->SYSOPEN($path,$imode,$perm,$fh), $obj->FILENO($fh), +$obj->UTF8($bellowFlag,[$fh]), $obj->OPEN($path,$mode[,$fh]), +$obj->BINMODE([,$fh]), $obj->FDOPEN($fd[,$fh]), +$obj->SYSOPEN($path,$imode,$perm,[,$fh]), $obj->FILENO($fh), $obj->READ($buffer,$len,$fh), $obj->WRITE($buffer,$fh), $obj->FILL($fh), $obj->CLOSE($fh), $obj->SEEK($posn,$whence,$fh), $obj->TELL($fh), $obj->UNREAD($buffer,$fh), $obj->FLUSH($fh), $obj->SETLINEBUF($fh), $obj->CLEARERR($fh), $obj->ERROR($fh), $obj->EOF($fh) +=item EXAMPLES + =over 4 =item Example - a Hexadecimal Handle @@ -15100,6 +17543,22 @@ $obj->CLEARERR($fh), $obj->ERROR($fh), $obj->EOF($fh) =back +=head2 PerlIO::via::QuotedPrint - PerlIO layer for quoted-printable strings + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item SEE ALSO + +=item ACKNOWLEDGEMENTS + +=item COPYRIGHT + +=back + =head2 Pod::Checker, podchecker() - check pod documents for syntax errors =over 4 @@ -15136,12 +17595,13 @@ after =back =item Warnings -multiple occurence of link target I, line containing nothing but +multiple occurrence of link target I, line containing nothing but whitespace in paragraph, file does not start with =head, previous =item has no contents, preceding non-item paragraph(s), =item type mismatch (I vs. I), I unescaped CE> in paragraph, Unknown entity, No items in =over, No argument for =item, empty section in previous paragraph, -Verbatim paragraph in NAME section +Verbatim paragraph in NAME section, =headI without preceding higher +level =item Hyperlinks @@ -15165,6 +17625,8 @@ C<$checker-Epoderror( @args )>, C<$checker-Epoderror( {%opts}, C<$checker-Enum_errors()> +C<$checker-Enum_warnings()> + C<$checker-Ename()> C<$checker-Enode()> @@ -15635,7 +18097,7 @@ escape EE%sE, %s:%d: Unknown formatting code %s, %s:%d: Unmatched =back -=head2 Pod::ParseLink -- Parse an LEE formatting code in POD text +=head2 Pod::ParseLink - Parse an LEE formatting code in POD text =over 4 @@ -15643,6 +18105,8 @@ escape EE%sE, %s:%d: Unknown formatting code %s, %s:%d: Unmatched =item DESCRIPTION +=item SEE ALSO + =item AUTHOR =item COPYRIGHT AND LICENSE @@ -15938,53 +18402,210 @@ I|I =item B -=back +=back + +=over 4 + +=item B + +=back + +=over 4 + +=item B + +=back + +=over 4 + +=item B + +=back + +=over 4 + +=item B + +=back + +=over 4 + +=item PRIVATE METHODS AND DATA + +=back + +=over 4 + +=item B<_push_input_stream()> + +=back + +=over 4 + +=item B<_pop_input_stream()> + +=back + +=over 4 + +=item TREE-BASED PARSING + +=item SEE ALSO + +=item AUTHOR + +=back + +=head2 Pod::Perldoc::ToChecker - let Perldoc check Pod for errors + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item SEE ALSO + +=item COPYRIGHT AND DISCLAIMERS + +=item AUTHOR + +=back + +=head2 Pod::Perldoc::ToMan - let Perldoc render Pod as man pages + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item CAVEAT + +=item SEE ALSO + +=item COPYRIGHT AND DISCLAIMERS + +=item AUTHOR + +=back + +=head2 Pod::Perldoc::ToNroff - let Perldoc convert Pod to nroff + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item CAVEAT + +=item SEE ALSO + +=item COPYRIGHT AND DISCLAIMERS + +=item AUTHOR + +=back + +=head2 Pod::Perldoc::ToPod - let Perldoc render Pod as ... Pod! + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item SEE ALSO + +=item COPYRIGHT AND DISCLAIMERS + +=item AUTHOR + +=back + +=head2 Pod::Perldoc::ToRtf - let Perldoc render Pod as RTF + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item SEE ALSO + +=item COPYRIGHT AND DISCLAIMERS + +=item AUTHOR + +=back + +=head2 Pod::Perldoc::ToText - let Perldoc render Pod as plaintext + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item CAVEAT + +=item SEE ALSO -=over 4 +=item COPYRIGHT AND DISCLAIMERS -=item B +=item AUTHOR =back +=head2 Pod::Perldoc::ToTk - let Perldoc use Tk::Pod to render Pod + =over 4 -=item B +=item SYNOPSIS -=back +=item DESCRIPTION -=over 4 +=item SEE ALSO -=item B +=item AUTHOR =back +=head2 Pod::Perldoc::ToXml - let Perldoc render Pod as XML + =over 4 -=item B +=item SYNOPSIS -=back +=item DESCRIPTION -=over 4 +=item SEE ALSO -=item PRIVATE METHODS AND DATA +=item COPYRIGHT AND DISCLAIMERS + +=item AUTHOR =back +=head2 Pod::PlainText - Convert POD data to formatted ASCII text + =over 4 -=item B<_push_input_stream()> +=item SYNOPSIS -=back +=item DESCRIPTION -=over 4 +alt, indent, loose, sentence, width -=item B<_pop_input_stream()> +=item DIAGNOSTICS -=back +Bizarre space in item, Can't open %s for reading: %s, Unknown escape: %s, +Unknown sequence: %s, Unmatched =back -=over 4 +=item RESTRICTIONS -=item TREE-BASED PARSING +=item NOTES =item SEE ALSO @@ -16127,7 +18748,7 @@ B<-output>, B<-sections>, B<-ranges> =item DESCRIPTION -alt, code, indent, loose, quotes, sentence, width +alt, code, indent, loose, margin, quotes, sentence, width =item DIAGNOSTICS @@ -16185,8 +18806,8 @@ text =back -=head2 Pod::Text::Termcap, Pod::Text::Color - Convert POD data to ASCII -text with format escapes +=head2 Pod::Text::Termcap - Convert POD data to ASCII text with format +escapes =over 4 @@ -16234,46 +18855,6 @@ C<-pathlist> =back -=head2 Pod::t::basic, basic.pod - Test of various basic POD features in -translators. - -=over 4 - -=item HEADINGS - -=item This C a "level 1" heading - -=over 4 - -=item ``Level'' "2 I - -=back - -=item This C a "level 1" heading - -=over 4 - -=item ``Level'' 2 I - -=back - -=item LINKS - -=item OVER AND ITEMS - -This is a test, a, b, a, b, c, d, "foo", B, C, Some longer item -text - -=item FORMATTING CODES - -E, E, E, E, E, E - -=item VERBATIM - -=item CONCLUSION - -=back - =head2 SDBM_File - Tied access to sdbm files =over 4 @@ -16337,8 +18918,9 @@ Memory, CPU, Snooping, Signals, State Changes =item DESCRIPTION -blessed EXPR, dualvar NUM, STRING, isweak EXPR, readonly SCALAR, reftype -EXPR, tainted EXPR, weaken REF +blessed EXPR, dualvar NUM, STRING, isvstring EXPR, isweak EXPR, +looks_like_number EXPR, openhandle FH, refaddr EXPR, reftype EXPR, +set_prototype CODEREF, PROTOTYPE, tainted EXPR, weaken REF =item KNOWN BUGS @@ -16431,7 +19013,7 @@ SOCKADDR_UN, pack_sockaddr_un PATH, unpack_sockaddr_un SOCKADDR_UN =back -=head2 Storable - persistency for perl data structures +=head2 Storable - persistence for Perl data structures =over 4 @@ -16447,6 +19029,12 @@ SOCKADDR_UN, pack_sockaddr_un PATH, unpack_sockaddr_un SOCKADDR_UN =item CANONICAL REPRESENTATION +=item CODE REFERENCES + +=item FORWARD COMPATIBILITY + +utf8 data, restricted hashes, files from future versions of Storable + =item ERROR REPORTING =item WIZARDS ONLY @@ -16477,9 +19065,13 @@ C =item BUGS -=item CREDITS +=over 4 -=item TRANSLATIONS +=item 64 bit data in perl 5.6.0 and 5.6.1 + +=back + +=item CREDITS =item AUTHOR @@ -16555,8 +19147,8 @@ interface to the UNIX syslog(3) calls =item DESCRIPTION openlog $ident, $logopt, $facility, syslog $priority, $format, @args, -setlogmask $mask_priority, setlogsock $sock_type (added in 5.004_02), -closelog +setlogmask $mask_priority, setlogsock $sock_type [$stream_location] (added +in 5.004_02), closelog =item EXAMPLES @@ -16576,8 +19168,8 @@ Perl interface to the UNIX syslog(3) calls =item DESCRIPTION openlog $ident, $logopt, $facility, syslog $priority, $format, @args, -setlogmask $mask_priority, setlogsock $sock_type (added in 5.004_02), -closelog +setlogmask $mask_priority, setlogsock $sock_type [$stream_location] (added +in 5.004_02), closelog =item EXAMPLES @@ -16613,7 +19205,7 @@ ANSI_COLORS_DISABLED =item AUTHORS -=item LICENSE +=item COPYRIGHT AND LICENSE =back @@ -16673,8 +19265,8 @@ EtabE, ^D, ^U, EdelE, EbsE =back -=head2 Term::ReadLine - Perl interface to various C packages. If -no real package is found, substitutes stubs instead of basic functions. +=head2 Term::ReadLine - Perl interface to various C packages. +If no real package is found, substitutes stubs instead of basic functions. =over 4 @@ -16684,8 +19276,8 @@ no real package is found, substitutes stubs instead of basic functions. =item Minimal set of supported functions -C, C, C, C, C, $C, -C, C, Attribs, C +C, C, C, C, C, C, C, +C, Attribs, C =item Additional supported functions @@ -16707,11 +19299,14 @@ C, C, C =item DESCRIPTION +=item QUICK START GUIDE + =over 4 =item Functions -B +C, C I>, C [I<1,5,14>]>, +C sub { ... }>, C \&some_sub> =back @@ -16719,7 +19314,9 @@ B B<_to_value> -B +C + +C, I)> =over 4 @@ -16731,7 +19328,7 @@ NORMAL TESTS, SKIPPED TESTS, TODO TESTS =item BUGS and CAVEATS -=item TODO +=item NOTE =item SEE ALSO @@ -16771,6 +19368,8 @@ B B +B + B =over 4 @@ -16787,6 +19386,8 @@ B, B B, B +B + B B @@ -16831,7 +19432,9 @@ B B -B
I, B +B
+ +B B @@ -16843,6 +19446,8 @@ B<_my_exit> =over 4 +=item THREADS + =item EXAMPLES =item SEE ALSO @@ -16907,13 +19512,13 @@ B<_leader_width> C, C, C, C, C, C +%s>, C =item ENVIRONMENT -C, C, C, -C, C, C, -C +C, C, C, +C, C, C, +C, C, C =item EXAMPLE @@ -16921,6 +19526,8 @@ C =item AUTHORS +=item LICENSE + =item TODO =item BUGS @@ -16971,59 +19578,115 @@ B =item DESCRIPTION -=over 4 - =item Construction -B +=over 4 + +=item C =back =back -B<_init> +=over 4 + +=item C<_init> + +=back =over 4 =item Analysis -B +=over 4 + +=item C + +=back + +=back + +=over 4 + +=item C + +=back + +=over 4 + +=item C + +=back + +=over 4 + +=item C<_switches> + +=back + +=over 4 + +=item C<_INC2PERL5LIB> =back -B +=over 4 -B +=item C<_filtered_INC> -B<_switches> +=back -B<_INC2PERL5LIB> +=over 4 -B<_filtered_INC> +=item C<_restore_PERL5LIB> -B<_restore_PERL5LIB> +=back =over 4 =item Parsing -B<_is_comment> +=over 4 + +=item C<_is_comment> + +=back + +=back + +=over 4 + +=item C<_is_header> + +=back + +=over 4 + +=item C<_is_test> =back -B<_is_header> +=over 4 + +=item C<_is_bail_out> + +=back -B<_is_test> +=over 4 -B<_is_bail_out> +=item C<_reset_file_state> -B<_reset_file_state> +=back =over 4 =item Results -B<_detailize> +=over 4 + +=item C<_detailize> + +=back =back @@ -17105,6 +19768,8 @@ B B, B +When do I use SKIP vs. TODO? + =over 4 =item Comparison functions @@ -17251,6 +19916,10 @@ L =item C +=item C + +[0], [1], [2] + =item C C $listref>, C $listref>, C $str>, @@ -17361,7 +20030,7 @@ unexpand(1) =back -=head2 Thread - manipulate threads in Perl +=head2 Thread - manipulate threads in Perl (for old code only) =over 4 @@ -17418,9 +20087,12 @@ new, new NUMBER, down, down NUMBER, up, up NUMBER =back =head2 Thread::Signal - Start a thread which runs signal handlers reliably +(for old code) =over 4 +=item CAVEAT + =item SYNOPSIS =item DESCRIPTION @@ -17458,6 +20130,74 @@ SHIFT this, UNSHIFT this, LIST, SPLICE this, offset, length, LIST =back +=head2 Tie::File - Access the lines of a disk file via a Perl array + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=over 4 + +=item C + +=item C + +=item C + +=item C + +=item C + +=item Option Format + +=back + +=item Public Methods + +=over 4 + +=item C + +=item C + +=item C, C, C, and C + +=item C + +=back + +=item Tying to an already-opened filehandle + +=item Deferred Writing + +=over 4 + +=item Autodeferring + +=back + +=item CONCURRENT ACCESS TO FILES + +=item CAVEATS + +=item SUBCLASSING + +=item WHAT ABOUT C? + +=item AUTHOR + +=item LICENSE + +=item WARRANTY + +=item THANKS + +=item TODO + +=back + =head2 Tie::Handle, Tie::StdHandle - base class definitions for tied handles @@ -17574,20 +20314,29 @@ timers gettimeofday (), usleep ( $useconds ), ualarm ( $useconds [, $interval_useconds ] ), tv_interval, time (), sleep ( $floating_seconds ), -alarm ( $floating_seconds [, $interval_floating_seconds ] ), setitimer, -getitimer ( $which ) +alarm ( $floating_seconds [, $interval_floating_seconds ] ), setitimer ( +$which, $floating_seconds [, $interval_floating_seconds ] ), getitimer ( +$which ) =item EXAMPLES =item C API +=item DIAGNOSTICS + +=over 4 + +=item negative time not invented yet + +=item internal error: useconds < 0 (unsigned ... signed ...) + +=back + =item CAVEATS =item AUTHORS -=item REVISION - -=item COPYRIGHT +=item COPYRIGHT AND LICENSE =back @@ -17603,6 +20352,10 @@ getitimer ( $which ) =item BUGS +=item SUPPORT + +=item AUTHOR + =back =head2 Time::gmtime - by-name interface to Perl's built-in gmtime() @@ -17655,12 +20408,15 @@ function =item DESCRIPTION -$obj->isa( TYPE ), CLASS->isa( TYPE ), isa( VAL, TYPE ), $obj->can( METHOD -), CLASS->can( METHOD ), can( VAL, METHOD ), VERSION ( [ REQUIRE ] ) +C<< $obj->isa( TYPE ) >>, C<< CLASS->isa( TYPE ) >>, C, +C, C<$obj>, C, C, C<< $obj->can( METHOD ) >>, C<< +CLASS->can( METHOD ) >>, C, C + +=item EXPORTS =back -=head2 Unicode::Collate - use UCA (Unicode Collation Algorithm) +=head2 Unicode::Collate - Unicode Collation Algorithm =over 4 @@ -17672,36 +20428,56 @@ $obj->isa( TYPE ), CLASS->isa( TYPE ), isa( VAL, TYPE ), $obj->can( METHOD =item Constructor and Tailoring -alternate, backwards, entry, ignoreName, ignoreChar, level, normalization, -overrideCJK, overrideHangul, preprocess, rearrange, table, undefName, -undefChar, katakana_before_hiragana, upper_before_lower +UCA_Version, alternate, backwards, entry, ignoreName, ignoreChar, level, +normalization, overrideCJK, overrideHangul, preprocess, rearrange, table, +undefName, undefChar, katakana_before_hiragana, upper_before_lower -=item Other methods +=item Methods for Collation C<@sorted = $Collator-Esort(@not_sorted)>, C<$result = $Collator-Ecmp($a, $b)>, C<$result = $Collator-Eeq($a, $b)>, C<$result = $Collator-Ene($a, $b)>, C<$result = $Collator-Elt($a, $b)>, C<$result = $Collator-Ele($a, $b)>, C<$result = $Collator-Egt($a, $b)>, C<$result = $Collator-Ege($a, $b)>, -C<$sortKey = $Collator-EgetSortKey($string)>, C<$position = -$Collator-Eindex($string, $substring)>, C<($position, $length) = -$Collator-Eindex($string, $substring)> +C<$sortKey = $Collator-EgetSortKey($string)>, C<$sortKeyForm = +$Collator-EviewSortKey($string)> + +=item Methods for Searching + +C<$position = $Collator-Eindex($string, $substring[, $position])>, +C<($position, $length) = $Collator-Eindex($string, $substring[, +$position])>, C<$match_ref = $Collator-Ematch($string, $substring)>, +C<($match) = $Collator-Ematch($string, $substring)>, C<@match = +$Collator-Egmatch($string, $substring)>, C<$count = +$Collator-Esubst($string, $substring, $replacement)>, C<$count = +$Collator-Egsubst($string, $substring, $replacement)> + +=item Other Methods + +C<%old_tailoring = $Collator-Echange(%new_tailoring)>, UCA_Version, +Base_Unicode_Version =item EXPORT =item CAVEAT +=item Conformance Test + =back =item AUTHOR =item SEE ALSO -Unicode Collation Algorithm - Unicode TR #10, L +http://www.unicode.org/reports/tr10/, +http://www.unicode.org/reports/tr10/allkeys.txt, +http://www.unicode.org/reports/tr10/CollationTest.html +http://www.unicode.org/reports/tr10/CollationTest.zip, +http://www.unicode.org/reports/tr15/, L =back -=head2 Unicode::Normalize - normalized forms of Unicode text +=head2 Unicode::Normalize - Unicode Normalization Forms =over 4 @@ -17713,16 +20489,31 @@ Unicode Collation Algorithm - Unicode TR #10, L =item Normalization Forms -C<$string_NFD = NFD($raw_string)>, C<$string_NFC = NFC($raw_string)>, -C<$string_NFKD = NFKD($raw_string)>, C<$string_NFKC = NFKC($raw_string)>, -C<$normalized_string = normalize($form_name, $raw_string)> +C<$NFD_string = NFD($string)>, C<$NFC_string = NFC($string)>, +C<$NFKD_string = NFKD($string)>, C<$NFKC_string = NFKC($string)>, +C<$normalized_string = normalize($form_name, $string)> + +=item Decomposition and Composition + +C<$decomposed_string = decompose($string)>, C<$decomposed_string = +decompose($string, $useCompatMapping)>, C<$reordered_string = +reorder($string)>, C<$composed_string = compose($string)> + +=item Quick Check + +C<$result = checkNFD($string)>, C<$result = checkNFC($string)>, C<$result = +checkNFKD($string)>, C<$result = checkNFKC($string)>, C<$result = +check($form_name, $string)> =item Character Data C<$canonical_decomposed = getCanon($codepoint)>, -C<$compatibility_decomposed = getCompat($codepoint)>, C<$uv_composite = -getComposite($uv_here, $uv_next)>, C<$combining_class = -getCombinClass($codepoint)>, C<$is_exclusion = isExclusion($codepoint)> +C<$compatibility_decomposed = getCompat($codepoint)>, +C<$codepoint_composite = getComposite($codepoint_here, $codepoint_next)>, +C<$combining_class = getCombinClass($codepoint)>, C<$is_exclusion = +isExclusion($codepoint)>, C<$is_singleton = isSingleton($codepoint)>, +C<$is_non_starter_decomposition = isNonStDecomp($codepoint)>, +C<$may_be_composed_with_prev_char = isComp2nd($codepoint)> =item EXPORT @@ -17732,7 +20523,8 @@ getCombinClass($codepoint)>, C<$is_exclusion = isExclusion($codepoint)> =item SEE ALSO -http://www.unicode.org/unicode/reports/tr15/ +http://www.unicode.org/unicode/reports/tr15/, +http://www.unicode.org/Public/UNIDATA/DerivedNormalizationProps.txt =back @@ -17880,9 +20672,10 @@ Win32::AbortSystemShutdown(MACHINE), Win32::BuildNumber(), Win32::CopyFile(FROM, TO, OVERWRITE), Win32::DomainName(), Win32::ExpandEnvironmentStrings(STRING), Win32::FormatMessage(ERRORCODE), Win32::FsType(), Win32::FreeLibrary(HANDLE), Win32::GetArchName(), -Win32::GetChipName(), Win32::GetCwd(), Win32::GetFullPathName(FILENAME), -Win32::GetLastError(), Win32::GetLongPathName(PATHNAME), -Win32::GetNextAvailDrive(), Win32::GetOSVersion(), +Win32::GetChipName(), Win32::GetCwd(), Win32::GetFolderPath(FOLDER [, +CREATE]), Win32::GetFullPathName(FILENAME), Win32::GetLastError(), +Win32::GetLongPathName(PATHNAME), Win32::GetNextAvailDrive(), +Win32::GetOSVersion(), Win32::GetOSName(), Win32::GetShortPathName(PATHNAME), Win32::GetProcAddress(INSTANCE, PROCNAME), Win32::GetTickCount(), Win32::InitiateSystemShutdown, Win32::IsWinNT(), Win32::IsWin95(), Win32::LoadLibrary(LIBNAME), @@ -17898,7 +20691,7 @@ Win32::UnregisterServer(LIBRARYNAME) =back -=head2 XS::Typemap - module to test the XS typemaps distributed with perl +=head2 XSLoader - Dynamically load C libraries into Perl code =over 4 @@ -17906,23 +20699,23 @@ Win32::UnregisterServer(LIBRARYNAME) =item DESCRIPTION -=back - =over 4 -=item NOTES +=item Migration from C -=item AUTHOR +=item Backward compatible boilerplate =back -=head2 XSLoader - Dynamically load C libraries into Perl code +=item Order of initialization: early load() =over 4 -=item SYNOPSIS +=item The most hairy case -=item DESCRIPTION +=back + +=item LIMITATIONS =item AUTHOR @@ -17937,21 +20730,29 @@ don't all have manual pages yet: =item a2p -=item s2p +=item c2ph -=item find2perl +=item dprofpp =item h2ph -=item c2ph - =item h2xs -=item xsubpp +=item perlbug + +=item perldoc + +=item pl2pm + +=item pod2html =item pod2man -=item wrapsuid +=item s2p + +=item splain + +=item xsubpp =back