X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pod%2Fperltoc.pod;h=97975b3a0abe9e4d0ff04513ce194371ef7877df;hb=b1866b2db57c4aa1ee77325f2658722f6a7befa2;hp=5842f18250a5bb06b7c7815cd6b6a0b18ed5fe88;hpb=4438c4b75b842b6c829a7da9841e97abb875b1d8;p=p5sagit%2Fp5-mst-13.2.git diff --git a/pod/perltoc.pod b/pod/perltoc.pod index 5842f18..97975b3 100644 --- a/pod/perltoc.pod +++ b/pod/perltoc.pod @@ -13,6 +13,8 @@ through to locate the proper section you're looking for. =head2 perl - Practical Extraction and Report Language +=over + =item SYNOPSIS =item DESCRIPTION @@ -43,9 +45,13 @@ environment, with integrated editor support, POSIX 1003.1 compliant library =item NOTES +=back + =head2 perlfaq - frequently asked questions about Perl ($Date: 1999/05/23 20:38:02 $) +=over + =item DESCRIPTION perlfaq: Structural overview of the FAQ, L: General Questions @@ -89,8 +95,8 @@ line?, Why don't perl one-liners work on my DOS/Mac/VMS system?, Where can I learn about CGI or Web programming in Perl?, Where can I learn about object-oriented Perl programming?, Where can I learn about linking C with Perl? [h2xs, xsubpp], I've read perlembed, perlguts, etc., but I can't -embed perl inmy C program, what am I doing wrong?, When I tried to run my -script, I got this message. What does itmean?, What's MakeMaker?, +embed perl in my C program, what am I doing wrong?, When I tried to run my +script, I got this message. What does it mean?, What's MakeMaker?, L: Data Manipulation, Why am I getting long decimals (eg, 19.9499999999999) instead of the numbers I should be getting (eg, 19.95)?, Why isn't my octal data interpreted correctly?, Does Perl have a round() @@ -110,15 +116,15 @@ How do I reformat a paragraph?, How can I access/change the first N letters of a string?, How do I change the Nth occurrence of something?, How can I count the number of occurrences of a substring within a string?, How do I capitalize all the words on one line?, How can I split a [character] -delimited string except when inside[character]? (Comma-separated files), +delimited string except when inside [character]? (Comma-separated files), How do I strip blank space from the beginning/end of a string?, How do I pad a string with blanks or pad a number with zeroes?, How do I extract selected columns from a string?, How do I find the soundex value of a string?, How can I expand variables in text strings?, What's wrong with -always quoting "$vars"?, Why don't my EEHERE documents work?, What -is the difference between a list and an array?, What is the difference -between $array[1] and @array[1]?, How can I remove duplicate elements from -a list or array?, How can I tell whether a list or array contains a certain +always quoting "$vars"?, Why don't my <*E?, Is -there a leak/bug in glob()?, How can I open a file with a leading "E" -or trailing blanks?, How can I reliably rename a file?, How can I lock a -file?, Why can't I just open(FH, ">file.lock")?, I still don't get locking. - I just want to increment the number in the file. How can I do this?, How -do I randomly update a binary file?, How do I get a file's timestamp in -perl?, How do I set a file's timestamp in perl?, How do I print to more -than one file at once?, How can I read in an entire file all at once?, How -can I read in a file by paragraphs?, How can I read a single character from -a file? From the keyboard?, How can I tell whether there's a character +I sometimes get an "Argument list too long" when I use <*>?, Is there a +leak/bug in glob()?, How can I open a file with a leading ">" or trailing +blanks?, How can I reliably rename a file?, How can I lock a file?, Why +can't I just open(FH, ">file.lock")?, I still don't get locking. I just +want to increment the number in the file. How can I do this?, How do I +randomly update a binary file?, How do I get a file's timestamp in perl?, +How do I set a file's timestamp in perl?, How do I print to more than one +file at once?, How can I read in an entire file all at once?, How can I +read in a file by paragraphs?, How can I read a single character from a +file? From the keyboard?, How can I tell whether there's a character waiting on a filehandle?, How do I do a C in perl?, How do I dup() a filehandle in Perl?, How do I close a file descriptor by number?, Why can't I use "C:\temp\foo" in DOS paths? What doesn't `C:\temp\foo.exe` @@ -204,10 +210,10 @@ Array, Hash, Method, Regex}?, How do I create a static variable?, What's the difference between dynamic and lexical (static) scoping? Between local() and my()?, How can I access a dynamic variable while a similarly named lexical is in scope?, What's the difference between deep and shallow -binding?, Why doesn't "my($foo) = EFILEE;" work right?, How do I -redefine a builtin function, operator, or method?, What's the difference -between calling a function as &foo and foo()?, How do I create a switch or -case statement?, How can I catch accesses to undefined +binding?, Why doesn't "my($foo) = ;" work right?, How do I redefine a +builtin function, operator, or method?, What's the difference between +calling a function as &foo and foo()?, How do I create a switch or case +statement?, How can I catch accesses to undefined variables/functions/methods?, Why can't a method included in this same file be found?, How can I find out my current package?, How can I comment out a large block of perl code?, How do I clear a package?, How can I use a @@ -293,3587 +299,8912 @@ authors 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 -=head2 perlfaq1 - General Questions About Perl ($Revision: 1.23 $, $Date: -1999/05/23 16:08:30 $) +=back -=item DESCRIPTION +=head2 perltoc - perl documentation table of contents =over -=item What is Perl? - -=item Who supports Perl? Who develops it? Why is it free? - -=item Which version of Perl should I use? - -=item What are perl4 and perl5? +=item DESCRIPTION -=item What is perl6? +=item BASIC DOCUMENTATION -=item How stable is Perl? +=over -=item Is Perl difficult to learn? +=item perl - Practical Extraction and Report Language -=item How does Perl compare with other languages like Java, Python, REXX, -Scheme, or Tcl? +SYNOPSIS, DESCRIPTION, AVAILABILITY, ENVIRONMENT, AUTHOR, FILES, SEE ALSO, +DIAGNOSTICS, BUGS, NOTES -=item Can I do [task] in Perl? +=item perlfaq - frequently asked questions about Perl ($Date: 1999/05/23 +20:38:02 $) -=item When shouldn't I program in Perl? +DESCRIPTION -=item What's the difference between "perl" and "Perl"? +=back -=item Is it a Perl program or a Perl script? +=back -=item What is a JAPH? +=head2 perlbook - Perl book information -=item Where can I get a list of Larry Wall witticisms? +=over -=item How can I convince my sysadmin/supervisor/employees to use version -(5/5.005/Perl instead of some other language)? +=item DESCRIPTION =back -=item AUTHOR AND COPYRIGHT +=head2 perlsyn - Perl syntax -=head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.31 $, -$Date: 1999/04/14 03:46:19 $) +=over =item DESCRIPTION =over -=item What machines support Perl? Where do I get it? - -=item How can I get a binary version of Perl? - -=item I don't have a C compiler on my system. How can I compile perl? - -=item I copied the Perl binary from one machine to another, but scripts -don't work. - -=item I grabbed the sources and tried to compile but gdbm/dynamic -loading/malloc/linking/... failed. How do I make it work? - -=item What modules and extensions are available for Perl? What is CPAN? -What does CPAN/src/... mean? - -=item Is there an ISO or ANSI certified version of Perl? - -=item Where can I get information on Perl? - -=item What are the Perl newsgroups on USENET? Where do I post questions? +=item Declarations -=item Where should I post source code? +=item Simple statements -=item Perl Books +=item Compound statements -References, Tutorials - *Learning Perl [2nd edition] - by Randal L. Schwartz and Tom Christiansen - with foreword by Larry Wall, Task-Oriented, Special Topics +=item Loop Control -=item Perl in Magazines +=item For Loops -=item Perl on the Net: FTP and WWW Access +=item Foreach Loops -=item What mailing lists are there for perl? +=item Basic BLOCKs and Switch Statements -=item Archives of comp.lang.perl.misc +=item Goto -=item Where can I buy a commercial version of Perl? +=item PODs: Embedded Documentation -=item Where do I send bug reports? +=item Plain Old Comments (Not!) -=item What is perl.com? +=back =back -=item AUTHOR AND COPYRIGHT +=head2 perldata - Perl data types -=head2 perlfaq3 - Programming Tools ($Revision: 1.38 $, $Date: 1999/05/23 -16:08:30 $) +=over =item DESCRIPTION =over -=item How do I do (anything)? - -=item How can I use Perl interactively? - -=item Is there a Perl shell? - -=item How do I debug my Perl programs? - -=item How do I profile my Perl programs? +=item Variable names -=item How do I cross-reference my Perl programs? +=item Context -=item Is there a pretty-printer (formatter) for Perl? +=item Scalar values -=item Is there a ctags for Perl? +=item Scalar value constructors -=item Is there an IDE or Windows Perl Editor? +=item List value constructors -=item Where can I get Perl macros for vi? +=item Slices -=item Where can I get perl-mode for emacs? +=item Typeglobs and Filehandles -=item How can I use curses with Perl? +=back -=item How can I use X or Tk with Perl? +=item SEE ALSO -=item How can I generate simple menus without using CGI or Tk? +=back -=item What is undump? +=head2 perlop - Perl operators and precedence -=item How can I make my Perl program run faster? +=over -=item How can I make my Perl program take less memory? +=item SYNOPSIS -=item Is it unsafe to return a pointer to local data? +=item DESCRIPTION -=item How can I free an array or hash so my program shrinks? +=over -=item How can I make my CGI script more efficient? +=item Terms and List Operators (Leftward) -=item How can I hide the source for my Perl program? +=item The Arrow Operator -=item How can I compile my Perl program into byte code or C? +=item Auto-increment and Auto-decrement -=item How can I compile Perl into Java? +=item Exponentiation -=item How can I get C<#!perl> to work on [MS-DOS,NT,...]? +=item Symbolic Unary Operators -=item Can I write useful perl programs on the command line? +=item Binding Operators -=item Why don't perl one-liners work on my DOS/Mac/VMS system? +=item Multiplicative Operators -=item Where can I learn about CGI or Web programming in Perl? +=item Additive Operators -=item Where can I learn about object-oriented Perl programming? +=item Shift Operators -=item Where can I learn about linking C with Perl? [h2xs, xsubpp] +=item Named Unary Operators -=item I've read perlembed, perlguts, etc., but I can't embed perl in -my C program, what am I doing wrong? +=item Relational Operators -=item When I tried to run my script, I got this message. What does it -mean? +=item Equality Operators -=item What's MakeMaker? +=item Bitwise And -=back +=item Bitwise Or and Exclusive Or -=item AUTHOR AND COPYRIGHT +=item C-style Logical And -=head2 perlfaq4 - Data Manipulation ($Revision: 1.49 $, $Date: 1999/05/23 -20:37:49 $) +=item C-style Logical Or -=item DESCRIPTION +=item Range Operators -=item Data: Numbers +=item Conditional Operator -=over +=item Assignment Operators -=item Why am I getting long decimals (eg, 19.9499999999999) instead of the -numbers I should be getting (eg, 19.95)? +=item Comma Operator -=item Why isn't my octal data interpreted correctly? +=item List Operators (Rightward) -=item Does Perl have a round() function? What about ceil() and floor()? -Trig functions? +=item Logical Not -=item How do I convert bits into ints? +=item Logical And -=item Why doesn't & work the way I want it to? +=item Logical or and Exclusive Or -=item How do I multiply matrices? +=item C Operators Missing From Perl -=item How do I perform an operation on a series of integers? +unary &, unary *, (TYPE) -=item How can I output Roman numerals? +=item Quote and Quote-like Operators -=item Why aren't my random numbers random? +=item Regexp Quote-Like Operators -=back +?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 -=item Data: Dates +=item Gory details of parsing quoted constructs -=over +Finding the end, Removal of backslashes before delimiters, Interpolation, +C<<<'EOF'>, C, C, C, C, C<''>, C, C<"">, +C<``>, C, C, C<< >>, C, C, C, +C,, Interpolation of regular expressions, Optimization of +regular expressions -=item How do I find the week-of-the-year/day-of-the-year? +=item I/O Operators -=item How do I find the current century or millennium? +=item Constant Folding -=item How can I compare two dates and find the difference? +=item Bitwise String Operators -=item How can I take a string and turn it into epoch seconds? +=item Integer Arithmetic -=item How can I find the Julian Day? +=item Floating-point Arithmetic -=item How do I find yesterday's date? +=item Bigger Numbers -=item Does Perl have a year 2000 problem? Is Perl Y2K compliant? +=back =back -=item Data: Strings +=head2 perlsub - Perl subroutines =over -=item How do I validate input? - -=item How do I unescape a string? - -=item How do I remove consecutive pairs of characters? - -=item How do I expand function calls in a string? +=item SYNOPSIS -=item How do I find matching/nesting anything? +=item DESCRIPTION -=item How do I reverse a string? +=over -=item How do I expand tabs in a string? +=item Private Variables via my() -=item How do I reformat a paragraph? +=item Persistent Private Variables -=item How can I access/change the first N letters of a string? +=item Temporary Values via local() -=item How do I change the Nth occurrence of something? +=item Lvalue subroutines -=item How can I count the number of occurrences of a substring within a -string? +=item Passing Symbol Table Entries (typeglobs) -=item How do I capitalize all the words on one line? +=item When to Still Use local() -=item How can I split a [character] delimited string except when inside -[character]? (Comma-separated files) +1. You need to give a global variable a temporary value, especially $_, 2. +You need to create a local file or directory handle or a local function, 3. +You want to temporarily change just one element of an array or hash -=item How do I strip blank space from the beginning/end of a string? +=item Pass by Reference -=item How do I pad a string with blanks or pad a number with zeroes? +=item Prototypes -=item How do I extract selected columns from a string? +=item Constant Functions -=item How do I find the soundex value of a string? +=item Overriding Built-in Functions -=item How can I expand variables in text strings? +=item Autoloading -=item What's wrong with always quoting "$vars"? +=item Subroutine Attributes -=item Why don't my EEHERE documents work? +=back -1. There must be no space after the << part, 2. There (probably) should be -a semicolon at the end, 3. You can't (easily) have any space in front of -the tag +=item SEE ALSO =back -=item Data: Arrays +=head2 perlfunc - Perl builtin functions =over -=item What is the difference between a list and an array? +=item DESCRIPTION -=item What is the difference between $array[1] and @array[1]? +=over -=item How can I remove duplicate elements from a list or array? +=item Perl Functions by Category -a) If @in is sorted, and you want @out to be sorted:(this assumes all true -values in the array), b) If you don't know whether @in is sorted:, c) Like -(b), but @in contains only small integers:, d) A way to do (b) without any -loops or greps:, e) Like (d), but @in contains only small positive -integers: +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 How can I tell whether a list or array contains a certain element? +=item Portability -=item How do I compute the difference of two arrays? How do I compute the -intersection of two arrays? +=item Alphabetical Listing of Perl Functions -=item How do I test whether two arrays or hashes are equal? +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, 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,MODE,LIST, open FILEHANDLE,EXPR, open FILEHANDLE, opendir +DIRHANDLE,EXPR, ord EXPR, ord, our EXPR, 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, 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 How do I find the first array element for which a condition is true? +=back -=item How do I handle linked lists? +=back -=item How do I handle circular lists? +=head2 perlreftut - Mark's very short tutorial about references -=item How do I shuffle an array randomly? +=over -=item How do I process/modify each element of an array? +=item DESCRIPTION -=item How do I select a random element from an array? +=item Who Needs Complicated Data Structures? -=item How do I permute N elements of a list? +=item The Solution -=item How do I sort an array by (anything)? +=item Syntax -=item How do I manipulate arrays of bits? +=over -=item Why does defined() return true on empty arrays and hashes? +=item Making References + +=item Using References =back -=item Data: Hashes (Associative Arrays) +=item An Example -=over +=item Arrow Rule -=item How do I process an entire hash? +=item Solution -=item What happens if I add or remove keys from a hash while iterating over -it? +=item The Rest -=item How do I look up a hash element by value? +=item Summary -=item How can I know how many entries are in a hash? +=item Credits -=item How do I sort a hash (optionally by value instead of key)? +=over -=item How can I always keep my hash sorted? +=item Distribution Conditions -=item What's the difference between "delete" and "undef" with hashes? +=back -=item Why don't my tied hashes make the defined/exists distinction? +=back -=item How do I reset an each() operation part-way through? +=head2 perldsc - Perl Data Structures Cookbook -=item How can I get the unique keys from two hashes? +=over -=item How can I store a multidimensional array in a DBM file? +=item DESCRIPTION -=item How can I make my hash remember the order I put elements into it? +arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes, +more elaborate constructs -=item Why does passing a subroutine an undefined element in a hash create -it? +=item REFERENCES -=item How can I make the Perl equivalent of a C structure/C++ class/hash or -array of hashes or arrays? +=item COMMON MISTAKES -=item How can I use a reference as a hash key? +=item CAVEAT ON PRECEDENCE -=back +=item WHY YOU SHOULD ALWAYS C -=item Data: Misc +=item DEBUGGING + +=item CODE EXAMPLES + +=item ARRAYS OF ARRAYS =over -=item How do I handle binary data correctly? +=item Declaration of a ARRAY OF ARRAYS -=item How do I determine whether a scalar is a number/whole/integer/float? +=item Generation of a ARRAY OF ARRAYS -=item How do I keep persistent data across program calls? +=item Access and Printing of a ARRAY OF ARRAYS -=item How do I print out or copy a recursive data structure? +=back -=item How do I define methods for every class/object? +=item HASHES OF ARRAYS -=item How do I verify a credit card checksum? +=over -=item How do I pack arrays of doubles or floats for XS code? +=item Declaration of a HASH OF ARRAYS -=back +=item Generation of a HASH OF ARRAYS -=item AUTHOR AND COPYRIGHT +=item Access and Printing of a HASH OF ARRAYS -=head2 perlfaq5 - Files and Formats ($Revision: 1.38 $, $Date: 1999/05/23 -16:08:30 $) +=back -=item DESCRIPTION +=item ARRAYS OF HASHES =over -=item How do I flush/unbuffer an output filehandle? Why must I do this? +=item Declaration of a ARRAY OF HASHES -=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 Generation of a ARRAY OF HASHES -=item How do I count the number of lines in a file? +=item Access and Printing of a ARRAY OF HASHES -=item How do I make a temporary file name? +=back -=item How can I manipulate fixed-record-length files? +=item HASHES OF HASHES -=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? +=over -=item How can I use a filehandle indirectly? +=item Declaration of a HASH OF HASHES -=item How can I set up a footer format to be used with write()? +=item Generation of a HASH OF HASHES -=item How can I write() into a string? +=item Access and Printing of a HASH OF HASHES -=item How can I output my numbers with commas added? +=back -=item How can I translate tildes (~) in a filename? +=item MORE ELABORATE RECORDS -=item How come when I open a file read-write it wipes it out? +=over -=item Why do I sometimes get an "Argument list too long" when I use -E*E? +=item Declaration of MORE ELABORATE RECORDS -=item Is there a leak/bug in glob()? +=item Declaration of a HASH OF COMPLEX RECORDS -=item How can I open a file with a leading "E" or trailing blanks? +=item Generation of a HASH OF COMPLEX RECORDS -=item How can I reliably rename a file? +=back -=item How can I lock a file? +=item Database Ties -=item Why can't I just open(FH, ">file.lock")? +=item SEE ALSO -=item I still don't get locking. I just want to increment the number in -the file. How can I do this? +=item AUTHOR -=item How do I randomly update a binary file? +=back -=item How do I get a file's timestamp in perl? +=head2 perlrequick - Perl regular expressions quick start -=item How do I set a file's timestamp in perl? +=over -=item How do I print to more than one file at once? +=item DESCRIPTION -=item How can I read in an entire file all at once? +=item The Guide -=item How can I read in a file by paragraphs? +=over -=item How can I read a single character from a file? From the keyboard? +=item Simple word matching -=item How can I tell whether there's a character waiting on a filehandle? +=item Using character classes -=item How do I do a C in perl? +\d is a digit and represents [0-9], \s is a whitespace character and +represents [\ \t\r\n\f], \w is a word character (alphanumeric or _) and +represents [0-9a-zA-Z_], \D is a negated \d; it represents any character +but a digit [^0-9], \S is a negated \s; it represents any non-whitespace +character [^\s], \W is a negated \w; it represents any non-word character +[^\w], The period '.' matches any character but "\n" -=item How do I dup() a filehandle in Perl? +=item Matching this or that -=item How do I close a file descriptor by number? +=item Grouping things and hierarchical matching -=item Why can't I use "C:\temp\foo" in DOS paths? What doesn't -`C:\temp\foo.exe` work? +=item Extracting matches -=item Why doesn't glob("*.*") get all the files? +=item Matching repetitions -=item Why does Perl let me delete read-only files? Why does C<-i> clobber -protected files? Isn't this a bug in Perl? +C = match 'a' 1 or 0 times, C = match 'a' 0 or more times, i.e., +any number of times, C = match 'a' 1 or more times, i.e., at least +once, C = match at least C times, but not more than C times, +C = match at least C or more times, C = match exactly C +times -=item How do I select a random line from a file? +=item More matching -=item Why do I get weird spaces when I print an array of lines? +=item Search and replace + +=item The split operator =back -=item AUTHOR AND COPYRIGHT +=item BUGS -=head2 perlfaq6 - Regexes ($Revision: 1.27 $, $Date: 1999/05/23 16:08:30 $) +=item SEE ALSO -=item DESCRIPTION +=item AUTHOR AND COPYRIGHT =over -=item How can I hope to use regular expressions without creating illegible -and unmaintainable code? - -Comments Outside the Regex, Comments Inside the Regex, Different Delimiters - -=item I'm having trouble matching over more than one line. What's wrong? - -=item How can I pull out lines between two patterns that are themselves on -different lines? - -=item I put a regular expression into $/ but it didn't work. What's wrong? +=item Acknowledgments -=item How do I substitute case insensitively on the LHS, but preserving -case on the RHS? +=back -=item How can I make C<\w> match national character sets? +=back -=item How can I match a locale-smart version of C? +=head2 perlpod - plain old documentation -=item How can I quote a variable to use in a regex? +=over -=item What is C really for? +=item DESCRIPTION -=item How do I use a regular expression to strip C style comments from a -file? +=over -=item Can I use Perl regular expressions to match balanced text? +=item Verbatim Paragraph -=item What does it mean that regexes are greedy? How can I get around it? +=item Command Paragraph -=item How do I process each word on each line? +=item Ordinary Block of Text -=item How can I print out a word-frequency or line-frequency summary? +=item The Intent -=item How can I do approximate matching? +=item Embedding Pods in Perl Modules -=item How do I efficiently match many regular expressions at once? +=item Common Pod Pitfalls -=item Why don't word-boundary searches with C<\b> work for me? +=back -=item Why does using $&, $`, or $' slow my program down? +=item SEE ALSO -=item What good is C<\G> in a regular expression? +=item AUTHOR -=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? +=head2 perlstyle - Perl style guide -=item How can I match strings with multibyte characters? +=over -=item How do I match a pattern that is supplied by the user? +=item DESCRIPTION =back -=item AUTHOR AND COPYRIGHT +=head2 perltrap - Perl traps for the unwary -=head2 perlfaq7 - Perl Language Issues ($Revision: 1.28 $, $Date: -1999/05/23 20:36:18 $) +=over =item DESCRIPTION =over -=item Can I get a BNF/yacc/RE for the Perl language? +=item Awk Traps -=item What are all these $@%&* punctuation signs, and how do I know when to -use them? +=item C Traps -=item Do I always/never have to quote my strings or use semicolons and -commas? +=item Sed Traps -=item How do I skip some return values? +=item Shell Traps -=item How do I temporarily block warnings? +=item Perl Traps -=item What's an extension? +=item Perl4 to Perl5 Traps -=item Why do Perl operators have different precedence than C operators? +Discontinuance, Deprecation, and BugFix traps, Parsing Traps, Numerical +Traps, General data type traps, Context Traps - scalar, list contexts, +Precedence Traps, General Regular Expression Traps using s///, etc, +Subroutine, Signal, Sorting Traps, OS Traps, DBM Traps, Unclassified Traps -=item How do I declare/create a structure? +=item Discontinuance, Deprecation, and BugFix traps -=item How do I create a module? +Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance, +Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix, +Discontinuance, Deprecation, Discontinuance, Discontinuance -=item How do I create a class? +=item Parsing Traps -=item How can I tell if a variable is tainted? +Parsing, Parsing, Parsing, Parsing -=item What's a closure? +=item Numerical Traps -=item What is variable suicide and how can I prevent it? +Numerical, Numerical, Numerical, Bitwise string ops -=item How can I pass/return a {Function, FileHandle, Array, Hash, Method, -Regex}? +=item General data type traps -Passing Variables and Functions, Passing Filehandles, Passing Regexes, -Passing Methods +(Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String), +(Constants), (Scalars), (Variable Suicide) -=item How do I create a static variable? +=item Context Traps - scalar, list contexts -=item What's the difference between dynamic and lexical (static) scoping? -Between local() and my()? +(list context), (scalar context), (scalar context), (list, builtin) -=item How can I access a dynamic variable while a similarly named lexical -is in scope? +=item Precedence Traps -=item What's the difference between deep and shallow binding? +Precedence, Precedence, Precedence, Precedence, Precedence, Precedence, +Precedence -=item Why doesn't "my($foo) = EFILEE;" work right? +=item General Regular Expression Traps using s///, etc. -=item How do I redefine a builtin function, operator, or method? +Regular Expression, Regular Expression, Regular Expression, Regular +Expression, Regular Expression, Regular Expression, Regular Expression, +Regular Expression -=item What's the difference between calling a function as &foo and foo()? +=item Subroutine, Signal, Sorting Traps -=item How do I create a switch or case statement? +(Signals), (Sort Subroutine), warn() won't let you specify a filehandle -=item How can I catch accesses to undefined variables/functions/methods? +=item OS Traps -=item Why can't a method included in this same file be found? +(SysV), (SysV) -=item How can I find out my current package? +=item Interpolation Traps -=item How can I comment out a large block of perl code? +Interpolation, Interpolation, Interpolation, Interpolation, Interpolation, +Interpolation, Interpolation, Interpolation, Interpolation -=item How do I clear a package? +=item DBM Traps -=item How can I use a variable as a variable name? +DBM, DBM -=back +=item Unclassified Traps -=item AUTHOR AND COPYRIGHT +C/C trap using returned value, C on empty string with +LIMIT specified -=head2 perlfaq8 - System Interaction ($Revision: 1.39 $, $Date: 1999/05/23 -18:37:57 $) +=back -=item DESCRIPTION +=back -=over +=head2 perlrun - how to execute the Perl interpreter -=item How do I find out which operating system I'm running under? +=over -=item How come exec() doesn't return? +=item SYNOPSIS -=item How do I do fancy stuff with the keyboard/screen/mouse? +=item DESCRIPTION -Keyboard, Screen, Mouse +=over -=item How do I print something out in color? +=item #! and quoting on non-Unix systems -=item How do I read just one key without waiting for a return key? +OS/2, MS-DOS, Win95/NT, Macintosh, VMS -=item How do I check whether input is ready on the keyboard? +=item Location of Perl -=item How do I clear the screen? +=item Command Switches -=item How do I get the screen size? +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<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I, B<-w>, B<-W>, B<-X>, +B<-x> I -=item How do I ask the user for a password? +=back -=item How do I read and write the serial port? +=item ENVIRONMENT -lockfiles, open mode, end of line, flushing output, non-blocking input +HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLLIB, PERL5DB, PERL5SHELL +(specific to the Win32 port), PERL_DEBUG_MSTATS, PERL_DESTRUCT_LEVEL, +PERL_ROOT (specific to the VMS port), SYS$LOGIN (specific to the VMS port) -=item How do I decode encrypted password files? +=back -=item How do I start a process in the background? +=head2 perldiag - various Perl diagnostics -STDIN, STDOUT, and STDERR are shared, Signals, Zombies +=over -=item How do I trap control characters/signals? +=item DESCRIPTION -=item How do I modify the shadow password file on a Unix system? +=back -=item How do I set the time and date? +=head2 perllexwarn - Perl Lexical Warnings -=item How can I sleep() or alarm() for under a second? +=over -=item How can I measure time under a second? +=item DESCRIPTION -=item How can I do an atexit() or setjmp()/longjmp()? (Exception handling) +=over -=item Why doesn't my sockets program work under System V (Solaris)? What -does the error message "Protocol not supported" mean? +=item Default Warnings and Optional Warnings -=item How can I call my system's unique C functions from Perl? +=item What's wrong with B<-w> and C<$^W> -=item Where do I get the include files to do ioctl() or syscall()? +=item Controlling Warnings from the Command Line -=item Why do setuid perl scripts complain about kernel problems? +B<-w>, B<-W>, B<-X> -=item How can I open a pipe both to and from a command? +=item Backward Compatibility -=item Why can't I get the output of a command with system()? +=item Category Hierarchy -=item How can I capture STDERR from an external command? +=item Fatal Warnings -=item Why doesn't open() return an error when a pipe open fails? +=item Reporting Warnings from a Module -=item What's wrong with using backticks in a void context? +=back -=item How can I call backticks without shell processing? +=item TODO -=item Why can't my script read from STDIN after I gave it EOF (^D on Unix, -^Z on MS-DOS)? +=item SEE ALSO -=item How can I convert my shell script to perl? +=item AUTHOR -=item Can I use perl to run a telnet or ftp session? +=back -=item How can I write expect in Perl? +=head2 perldebtut - Perl debugging tutorial -=item Is there a way to hide perl's command line from programs such as -"ps"? +=over -=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 DESCRIPTION -Unix +=item use strict -=item How do I close a process's filehandle without waiting for it to -complete? +=item Looking at data and -w and w -=item How do I fork a daemon process? +=item help -=item How do I make my program run with sh and csh? +=item Stepping through code -=item How do I find out if I'm running interactively or not? +=item Placeholder for a, w, t, T -=item How do I timeout a slow event? +=item REGULAR EXPRESSIONS -=item How do I set CPU limits? +=item OUTPUT TIPS -=item How do I avoid zombies on a Unix system? +=item CGI -=item How do I use an SQL database? +=item GUIs -=item How do I make a system() exit on control-C? +=item SUMMARY -=item How do I open a file without blocking? +=item SEE ALSO -=item How do I install a module from CPAN? +=item AUTHOR -=item What's the difference between require and use? +=item CONTRIBUTORS -=item How do I keep my own module/library directory? +=back -=item How do I add the directory my program lives in to the module/library -search path? +=head2 perldebug - Perl debugging -=item How do I add a directory to my include path at runtime? +=over -=item What is socket.ph and where do I get it? +=item DESCRIPTION -=back +=item The Perl Debugger -=item AUTHOR AND COPYRIGHT +=over -=head2 perlfaq9 - Networking ($Revision: 1.26 $, $Date: 1999/05/23 16:08:30 -$) +=item Debugger Commands -=item DESCRIPTION +h [command], p expr, x 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, H -number, q or ^D, R, |dbcmd, ||dbcmd, command, m expr, man [manpage] -=over +=item Configurable Options -=item My CGI script runs from the command line but not the browser. (500 -Server Error) +C, C, C, C, C, +C, 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 How can I get better error messages from a CGI program? +=item Debugger input/output -=item How do I remove HTML from a string? +Prompt, Multiline commands, Stack backtrace, Line Listing Format, Frame +listing -=item How do I extract URLs? +=item Debugging compile-time statements -=item How do I download a file from the user's machine? How do I open a -file on another machine? +=item Debugger Customization -=item How do I make a pop-up menu in HTML? +=item Readline Support -=item How do I fetch an HTML file? +=item Editor Support for Debugging -=item How do I automate an HTML form submission? +=item The Perl Profiler -=item How do I decode or create those %-encodings on the web? +=back -=item How do I redirect to another page? +=item Debugging regular expressions -=item How do I put a password on my web pages? +=item Debugging memory usage -=item How do I edit my .htpasswd and .htgroup files with Perl? +=item SEE ALSO -=item How do I make sure users can't enter values into a form that cause my -CGI script to do bad things? +=item BUGS -=item How do I parse a mail header? +=back -=item How do I decode a CGI form? +=head2 perlvar - Perl predefined variables -=item How do I check a valid mail address? +=over -=item How do I decode a MIME/BASE64 string? +=item DESCRIPTION -=item How do I return the user's mail address? +=over -=item How do I send mail? +=item Predefined Names -=item How do I read mail? +$ARG, $_, $>, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $', +$LAST_PAREN_MATCH, $+, @LAST_MATCH_END, @+, $MULTILINE_MATCHING, $*, +input_line_number HANDLE EXPR, $INPUT_LINE_NUMBER, $NR, $, +input_record_separator HANDLE EXPR, $INPUT_RECORD_SEPARATOR, $RS, $/, +autoflush HANDLE EXPR, $OUTPUT_AUTOFLUSH, $|, output_field_separator HANDLE +EXPR, $OUTPUT_FIELD_SEPARATOR, $OFS, $,, output_record_separator HANDLE +EXPR, $OUTPUT_RECORD_SEPARATOR, $ORS, $\, $LIST_SEPARATOR, $", +$SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#, format_page_number HANDLE +EXPR, $FORMAT_PAGE_NUMBER, $%, format_lines_per_page HANDLE EXPR, +$FORMAT_LINES_PER_PAGE, $=, format_lines_left HANDLE 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, format_name HANDLE EXPR, $FORMAT_NAME, $~, +format_top_name HANDLE EXPR, $FORMAT_TOP_NAME, $^, +format_line_break_characters HANDLE EXPR, $FORMAT_LINE_BREAK_CHARACTERS, +$:, format_formfeed HANDLE EXPR, $FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A, +$CHILD_ERROR, $?, $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, $PERLDB, $^P, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, +0x100, 0x200, $LAST_REGEXP_CODE_RESULT, $^R, $EXCEPTIONS_BEING_CAUGHT, $^S, +$BASETIME, $^T, $PERL_VERSION, $^V, $WARNING, $^W, ${^WARNING_BITS}, +${^WIDE_SYSTEM_CALLS}, $EXECUTABLE_NAME, $^X, $ARGV, @ARGV, @INC, @_, %INC, +%ENV, $ENV{expr}, %SIG, $SIG{expr} -=item How do I find out my hostname/domainname/IP address? +=item Error Indicators -=item How do I fetch a news article or the active newsgroups? +=item Technical Note on the Syntax of Variable Names -=item How do I fetch/put an FTP file? +=back -=item How can I do RPC in Perl? +=item BUGS =back -=item AUTHOR AND COPYRIGHT +=head2 perllol - Manipulating Arrays of Arrays in Perl -=head2 perldelta - what's new for perl5.006 (as of 5.005_56) +=over =item DESCRIPTION -=item Incompatible Changes +=item Declaration and Access of Arrays of Arrays -=over +=item Growing Your Own -=item Perl Source Incompatibilities +=item Access and Printing -=item C Source Incompatibilities +=item Slices -C, C, C and C Issues - -=item Compatible C Source API Changes - -C is now C +=item SEE ALSO -=item Binary Incompatibilities +=item AUTHOR =back -=item Core Changes +=head2 perlopentut - tutorial on opening things in Perl =over -=item Unicode and UTF-8 support - -=item Lexically scoped warning categories - -=item Binary numbers supported +=item DESCRIPTION -=item syswrite() ease-of-use +=item Open E la shell -=item 64-bit support +=over -=item Better syntax checks on parenthesized unary operators +=item Simple Opens -=item Improved C operator +=item Pipe Opens -=item pack() format 'Z' supported +=item The Minus File -=item pack() format modifier '!' supported +=item Mixing Reads and Writes -=item $^X variables may now have names longer than one character +=item Filters =back -=item Significant bug fixes +=item Open E la C =over -=item EHANDLEE on empty files - -=item C improvements - -=item Automatic flushing of output buffers +=item Permissions E la mode =back -=item Supported Platforms +=item Obscure Open Tricks -=item New tests +=over -=item Modules and Pragmata +=item Re-Opening Files (dups) -=over +=item Dispelling the Dweomer -=item Modules +=item Paths as Opens -Dumpvalue, Benchmark, Devel::Peek, Fcntl, File::Spec, -File::Spec::Functions, Math::BigInt, Math::Complex, Math::Trig, SDBM_File, -Time::Local, Win32, DBM Filters +=item Single Argument Open -=item Pragmata +=item Playing with STDIN and STDOUT =back -=item Utility Changes - -=item Documentation Changes +=item Other I/O Issues -perlopentut.pod, perlreftut.pod, perltootc.pod +=over -=item New Diagnostics +=item Opening Non-File Files -/%s/: Unrecognized escape \\%c passed through, Unrecognized escape \\%c -passed through, Missing command in piped open, defined(@array) is -deprecated (and not really meaningful), defined(%hash) is deprecated (and -not really meaningful) +=item Binary Files -=item Obsolete Diagnostics +=item File Locking -=item Configuration Changes +=back -=item BUGS +=item SEE ALSO -=item SEE ALSO +=item AUTHOR and COPYRIGHT =item HISTORY -=head2 perldata - Perl data types +=back + +=head2 perlretut - Perl regular expressions tutorial + +=over =item DESCRIPTION -=over +=item Part 1: The basics -=item Variable names +=over -=item Context +=item Simple word matching -=item Scalar values +=item Using character classes -=item Scalar value constructors +\d is a digit and represents [0-9], \s is a whitespace character and +represents [\ \t\r\n\f], \w is a word character (alphanumeric or _) and +represents [0-9a-zA-Z_], \D is a negated \d; it represents any character +but a digit [^0-9], \S is a negated \s; it represents any non-whitespace +character [^\s], \W is a negated \w; it represents any non-word character +[^\w], The period '.' matches any character but "\n", no modifiers (//): +Default behavior. C<'.'> matches any character except C<"\n">. C<^> +matches only at the beginning of the string and C<$> matches only at the +end or before a newline at the end, s modifier (//s): Treat string as a +single long line. C<'.'> matches any character, even C<"\n">. C<^> +matches only at the beginning of the string and C<$> matches only at the +end or before a newline at the end, m modifier (//m): Treat string as a set +of multiple lines. C<'.'> matches any character except C<"\n">. C<^> and +C<$> are able to match at the start or end of I line within the +string, both s and m modifiers (//sm): Treat string as a single long line, +but detect multiple lines. C<'.'> matches any character, even C<"\n">. +C<^> and C<$>, however, are able to match at the start or end of I +line within the string -=item List value constructors +=item Matching this or that -=item Slices +=item Grouping things and hierarchical matching -=item Typeglobs and Filehandles +0 Start with the first letter in the string 'a', 1 Try the first +alternative in the first group 'abd', 2 Match 'a' followed by 'b'. So far +so good, 3 'd' in the regexp doesn't match 'c' in the string - a dead end. +So backtrack two characters and pick the second alternative in the first +group 'abc', 4 Match 'a' followed by 'b' followed by 'c'. We are on a roll +and have satisfied the first group. Set $1 to 'abc', 5 Move on to the +second group and pick the first alternative 'df', 6 Match the 'd', 7 'f' in +the regexp doesn't match 'e' in the string, so a dead end. Backtrack one +character and pick the second alternative in the second group 'd', 8 'd' +matches. The second grouping is satisfied, so set $2 to 'd', 9 We are at +the end of the regexp, so we are done! We have matched 'abcd' out of the +string "abcde" -=back +=item Extracting matches -=item SEE ALSO +=item Matching repetitions -=head2 perlsyn - Perl syntax +C = match 'a' 1 or 0 times, C = match 'a' 0 or more times, i.e., +any number of times, C = match 'a' 1 or more times, i.e., at least +once, C = match at least C times, but not more than C times, +C = match at least C or more times, C = match exactly C +times, Principle 0: Taken as a whole, any regexp will be matched at the +earliest possible position in the string, Principle 1: In an alternation +C, the leftmost alternative that allows a match for the whole +regexp will be the one used, Principle 2: The maximal matching quantifiers +C, C<*>, C<+> and C<{n,m}> will in general match as much of the string +as possible while still allowing the whole regexp to match, Principle 3: If +there are two or more elements in a regexp, the leftmost greedy quantifier, +if any, will match as much of the string as possible while still allowing +the whole regexp to match. The next leftmost greedy quantifier, if any, +will try to match as much of the string remaining available to it as +possible, while still allowing the whole regexp to match. And so on, until +all the regexp elements are satisfied, C = match 'a' 0 or 1 times. Try +0 first, then 1, C = match 'a' 0 or more times, i.e., any number of +times, but as few times as possible, C = match 'a' 1 or more times, +i.e., at least once, but as few times as possible, C = match at +least C times, not more than C times, as few times as possible, +C = match at least C times, but as few times as possible, +C = match exactly C times. Because we match exactly C times, +C is equivalent to C and is just there for notational +consistency, Principle 3: If there are two or more elements in a regexp, +the leftmost greedy (non-greedy) quantifier, if any, will match as much +(little) of the string as possible while still allowing the whole regexp to +match. The next leftmost greedy (non-greedy) quantifier, if any, will try +to match as much (little) of the string remaining available to it as +possible, while still allowing the whole regexp to match. And so on, until +all the regexp elements are satisfied, 0 Start with the first letter in the +string 't', 1 The first quantifier '.*' starts out by matching the whole +string 'the cat in the hat', 2 'a' in the regexp element 'at' doesn't match +the end of the string. Backtrack one character, 3 'a' in the regexp +element 'at' still doesn't match the last letter of the string 't', so +backtrack one more character, 4 Now we can match the 'a' and the 't', 5 +Move on to the third element '.*'. Since we are at the end of the string +and '.*' can match 0 times, assign it the empty string, 6 We are done! -=item DESCRIPTION +=item Building a regexp -=over +specifying the task in detail,, breaking down the problem into smaller +parts,, translating the small parts into regexps,, combining the regexps,, +and optimizing the final combined regexp -=item Declarations +=item Using regular expressions in Perl -=item Simple statements +=back -=item Compound statements +=item Part 2: Power tools -=item Loop Control +=over -=item For Loops +=item More on characters, strings, and character classes -=item Foreach Loops +=item Compiling and saving regular expressions -=item Basic BLOCKs and Switch Statements +=item Embedding comments and modifiers in a regular expression -=item Goto +=item Non-capturing groupings + +=item Looking ahead and looking behind + +=item Using independent subexpressions to prevent backtracking + +=item Conditional expressions -=item PODs: Embedded Documentation +=item A bit of magic: executing Perl code in a regular expression -=item Plain Old Comments (Not!) +=item Pragmas and debugging =back -=head2 perlop - Perl operators and precedence +=item BUGS -=item SYNOPSIS +=item SEE ALSO -=item DESCRIPTION +=item AUTHOR AND COPYRIGHT =over -=item Terms and List Operators (Leftward) +=item Acknowledgments -=item The Arrow Operator +=back -=item Auto-increment and Auto-decrement +=back -=item Exponentiation +=head2 perlre - Perl regular expressions -=item Symbolic Unary Operators +=over -=item Binding Operators +=item DESCRIPTION -=item Multiplicative Operators +i, m, s, x -=item Additive Operators +=over -=item Shift Operators +=item Regular Expressions -=item Named Unary Operators +cntrl, graph, print, punct, xdigit -=item Relational Operators +=item Extended Patterns -=item Equality Operators +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 Bitwise And +=item Backtracking -=item Bitwise Or and Exclusive Or +=item Version 8 Regular Expressions -=item C-style Logical And +=item Warning on \1 vs $1 -=item C-style Logical Or +=item Repeated patterns matching zero-length substring -=item Range Operators +=item Combining pieces together -=item Conditional Operator +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 Assignment Operators +=item Creating custom RE engines -=item Comma Operator +=back -=item List Operators (Rightward) +=item BUGS -=item Logical Not +=item SEE ALSO -=item Logical And +=back -=item Logical or and Exclusive Or +=head2 perlref - Perl references and nested data structures -=item C Operators Missing From Perl +=over -unary &, unary *, (TYPE) +=item NOTE -=item Quote and Quote-like Operators +=item DESCRIPTION -=item Regexp Quote-Like Operators +=over -?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/cdsUC, -y/SEARCHLIST/REPLACEMENTLIST/cdsUC +=item Making References -=item Gory details of parsing quoted constructs +=item Using References -Finding the end, Removal of backslashes before delimiters, Interpolation, -C<<<'EOF'>, C, C, C, C, C<''>, C, C<"">, -C<``>, C, C, C<>, C, C, C, -C,, Interpolation of regular expressions, Optimization of -regular expressions +=item Symbolic references -=item I/O Operators +=item Not-so-symbolic references -=item Constant Folding +=item Pseudo-hashes: Using an array as a hash -=item Bitwise String Operators +=item Function Templates -=item Integer Arithmetic +=back -=item Floating-point Arithmetic +=item WARNING -=item Bigger Numbers +=item SEE ALSO =back -=head2 perlre - Perl regular expressions - -=item DESCRIPTION - -i, m, s, x +=head2 perlform - Perl formats =over -=item Regular Expressions +=item DESCRIPTION -=item Extended Patterns +=over -C<(?#text)>, C<(?imsx-imsx)>, C<(?:pattern)>, C<(?imsx-imsx:pattern)>, -C<(?=pattern)>, C<(?!pattern)>, C<(?E=pattern)>, C<(?, C<(?{ -code })>, C<(?p{ code })>, C<(?Epattern)>, -C<(?(condition)yes-pattern|no-pattern)>, C<(?(condition)yes-pattern)> +=item Format Variables -=item Backtracking +=back -=item Version 8 Regular Expressions +=item NOTES -=item Warning on \1 vs $1 +=over -=item Repeated patterns matching zero-length substring +=item Footers -=item Creating custom RE engines +=item Accessing Formatting Internals =back -=item BUGS +=item WARNINGS -=item SEE ALSO +=back -=head2 perlrun - how to execute the Perl interpreter +=head2 perlboot - Beginner's Object-Oriented Tutorial -=item SYNOPSIS +=over =item DESCRIPTION =over -=item #! and quoting on non-Unix systems +=item If we could talk to the animals... -OS/2, MS-DOS, Win95/NT, Macintosh, VMS +=item Introducing the method invocation arrow -=item Location of Perl +=item Invoking a barnyard -=item Command Switches +=item The extra parameter of method invocation -B<-0>[I], B<-a>, 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<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I, B<-w>, B<-x> I +=item Calling a second method to simplify things -=back +=item Inheriting the windpipes -=item ENVIRONMENT +=item A few notes about @ISA -HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLLIB, PERL5DB, PERL5SHELL -(specific to the Win32 port), PERL_DEBUG_MSTATS, PERL_DESTRUCT_LEVEL +=item Overriding the methods -=head2 perlfunc - Perl builtin functions +=item Starting the search from a different place -=item DESCRIPTION +=item The SUPER way of doing things -=over +=item Where we're at so far... -=item Perl Functions by Category +=item A horse is a horse, of course of course -- or is it? -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 Invoking an instance method -=item Portability +=item Accessing the instance data -=item Alphabetical Listing of Perl Functions +=item How to build a horse -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, 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, 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 LIST, last -LABEL, last, lc EXPR, lc, lcfirst EXPR, lcfirst, length EXPR, length, link -OLDFILE,NEWFILE, listen SOCKET,QUEUESIZE, local EXPR, localtime EXPR, lock, -log EXPR, log, lstat FILEHANDLE, lstat EXPR, lstat, m//, map BLOCK LIST, -map EXPR,LIST, mkdir FILENAME,MASK, msgctl ID,CMD,ARG, msgget KEY,FLAGS, -msgsnd ID,MSG,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, my EXPR, next LABEL, -next, no Module LIST, oct EXPR, oct, open FILEHANDLE,EXPR, open FILEHANDLE, -opendir DIRHANDLE,EXPR, ord EXPR, ord, pack TEMPLATE,LIST, package, package -NAMESPACE, 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 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, 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,LEN,REPLACEMENT, substr -EXPR,OFFSET,LEN, 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 LIST, use Module, use Module VERSION LIST, use VERSION, utime LIST, -values HASH, vec EXPR,OFFSET,BITS, wait, waitpid PID,FLAGS, wantarray, warn -LIST, write FILEHANDLE, write EXPR, write, y/// +=item Inheriting the constructor -=back +=item Making a method work with either classes or instances -=head2 perlvar - Perl predefined variables +=item Adding parameters to a method -=item DESCRIPTION +=item More interesting instances -=over +=item A horse of a different color -=item Predefined Names +=item Summary -$ARG, $_, $EIE, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $', -$LAST_PAREN_MATCH, $+, @+, $MULTILINE_MATCHING, $*, input_line_number -HANDLE EXPR, $INPUT_LINE_NUMBER, $NR, $, input_record_separator HANDLE -EXPR, $INPUT_RECORD_SEPARATOR, $RS, $/, autoflush HANDLE EXPR, -$OUTPUT_AUTOFLUSH, $|, output_field_separator HANDLE EXPR, -$OUTPUT_FIELD_SEPARATOR, $OFS, $,, output_record_separator HANDLE EXPR, -$OUTPUT_RECORD_SEPARATOR, $ORS, $\, $LIST_SEPARATOR, $", -$SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#, format_page_number HANDLE -EXPR, $FORMAT_PAGE_NUMBER, $%, format_lines_per_page HANDLE EXPR, -$FORMAT_LINES_PER_PAGE, $=, format_lines_left HANDLE EXPR, -$FORMAT_LINES_LEFT, $-, @-, format_name HANDLE EXPR, $FORMAT_NAME, $~, -format_top_name HANDLE EXPR, $FORMAT_TOP_NAME, $^, -format_line_break_characters HANDLE EXPR, $FORMAT_LINE_BREAK_CHARACTERS, -$:, format_formfeed HANDLE EXPR, $FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A, -$CHILD_ERROR, $?, $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, $[, $PERL_VERSION, $], -$COMPILING, $^C, $DEBUGGING, $^D, $SYSTEM_FD_MAX, $^F, $^H, $INPLACE_EDIT, -$^I, $^M, $OSNAME, $^O, $PERLDB, $^P, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, -$^R, $^S, $BASETIME, $^T, $WARNING, $^W, $EXECUTABLE_NAME, $^X, $ARGV, -@ARGV, @INC, @_, %INC, %ENV, $ENV{expr}, %SIG, $SIG{expr} +=back -=item Error Indicators +=item SEE ALSO -=item Technical Note on the Syntax of Variable Names +=item COPYRIGHT =back -=item BUGS - -=head2 perlsub - Perl subroutines +=head2 perltoot - Tom's object-oriented tutorial for perl -=item SYNOPSIS +=over =item DESCRIPTION +=item Creating a Class + =over -=item Private Variables via my() +=item Object Representation -=item Persistent Private Variables +=item Class Interface -=item Temporary Values via local() +=item Constructors and Instance Methods -=item Passing Symbol Table Entries (typeglobs) +=item Planning for the Future: Better Constructors -=item When to Still Use local() +=item Destructors -1. You need to give a global variable a temporary value, especially $_, 2. -You need to create a local file or directory handle or a local function, 3. -You want to temporarily change just one element of an array or hash +=item Other Object Methods -=item Pass by Reference +=back -=item Prototypes +=item Class Data -=item Constant Functions +=over -=item Overriding Built-in Functions +=item Accessing Class Data -=item Autoloading +=item Debugging Methods + +=item Class Destructors + +=item Documenting the Interface =back -=item SEE ALSO +=item Aggregation -=head2 perlmod - Perl modules (packages and symbol tables) +=item Inheritance -=item DESCRIPTION +=over + +=item Overridden Methods + +=item Multiple Inheritance + +=item UNIVERSAL: The Root of All Objects + +=back + +=item Alternate Object Representations =over -=item Packages +=item Arrays as Objects -=item Symbol Tables +=item Closures as Objects -=item Package Constructors and Destructors +=back -=item Perl Classes +=item AUTOLOAD: Proxy Methods -=item Perl Modules +=over + +=item Autoloaded Data Methods + +=item Inherited Autoloaded Data Methods + +=back + +=item Metaclassical Tools + +=over + +=item Class::Struct + +=item Data Members as Variables + +=item NOTES + +=item Object Terminology =back =item SEE ALSO -=head2 perlmodlib - constructing new Perl modules and finding existing ones +=item AUTHOR AND COPYRIGHT + +=item COPYRIGHT + +=over + +=item Acknowledgments + +=back + +=back + +=head2 perltootc - Tom's OO Tutorial for Class Data in Perl + +=over =item DESCRIPTION -=item THE PERL MODULE LIBRARY +=item Class Data as Package Variables =over -=item Pragmatic Modules +=item Putting All Your Eggs in One Basket -attrs, autouse, base, blib, constant, diagnostics, fields, filetest, -integer, less, lib, locale, ops, overload, re, sigtrap, strict, subs, utf8, -vars, vmsish, warnings +=item Inheritance Concerns -=item Standard Modules +=item The Eponymous Meta-Object -AnyDBM_File, AutoLoader, AutoSplit, B, 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::Terse, B::Xref, Benchmark, CGI, CGI::Apache, -CGI::Carp, CGI::Cookie, CGI::Fast, CGI::Push, CGI::Switch, CPAN, -CPAN::FirstTime, CPAN::Nox, Carp, Class::Struct, Config, Cwd, DB, DB_File, -Data::Dumper, Devel::Peek, Devel::SelfStubber, DirHandle, Dumpvalue, -DynaLoader, English, Env, Errno, Exporter, ExtUtils::Command, -ExtUtils::Embed, ExtUtils::Install, ExtUtils::Installed, ExtUtils::Liblist, -ExtUtils::MM_OS2, ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MM_Win32, -ExtUtils::MakeMaker, ExtUtils::Manifest, ExtUtils::Miniperl, -ExtUtils::Mkbootstrap, ExtUtils::Mksymlists, ExtUtils::Packlist, -ExtUtils::testlib, Fatal, Fcntl, File::Basename, File::Compare, File::Copy, -File::DosGlob, File::Find, File::Path, File::Spec, File::Spec::Functions, -File::Spec::Mac, File::Spec::OS2, File::Spec::Unix, File::Spec::VMS, -File::Spec::Win32, File::stat, FileCache, FileHandle, FindBin, GDBM_File, -Getopt::Long, Getopt::Std, I18N::Collate, IO, IO::Dir, IO::File, -IO::Handle, IO::Pipe, IO::Poll, IO::Seekable, IO::Select, IO::Socket, -IO::Socket::INET, IO::Socket::UNIX, IPC::Msg, IPC::Open2, IPC::Open3, -IPC::Semaphore, IPC::SysV, Math::BigFloat, Math::BigInt, Math::Complex, -Math::Trig, NDBM_File, Net::Ping, Net::hostent, Net::netent, Net::protoent, -Net::servent, O, Opcode, POSIX, Pod::Html, Pod::Text, SDBM_File, Safe, -Search::Dict, SelectSaver, SelfLoader, Shell, Socket, Symbol, -Sys::Hostname, Sys::Syslog, Term::Cap, Term::Complete, Term::ReadLine, -Test, Test::Harness, Text::Abbrev, Text::ParseWords, Text::Soundex, -Text::Tabs -- expand and unexpand tabs per the unix expand(1) and -unexpand(1), Text::Wrap, Thread, Thread::Queue, Thread::Semaphore, -Thread::Signal, Thread::Specific, Tie::Array, Tie::Handle, Tie::Hash, -Tie::StdHash, Tie::RefHash, Tie::Scalar, Tie::StdScalar, Tie::SubstrHash, -Time::Local, Time::gmtime, Time::localtime, Time::tm, UNIVERSAL, -User::grent, User::pwent +=item Indirect References to Class Data -=item Extension Modules +=item Monadic Classes + +=item Translucent Attributes =back -=item CPAN +=item Class Data as Lexical Variables -Language Extensions and Documentation Tools, Development Support, Operating -System Interfaces, Networking, Device Control (modems) and InterProcess -Communication, Data Types and Data Type Utilities, Database Interfaces, -User Interfaces, Interfaces to / Emulations of Other Programming Languages, -File Names, File Systems and File Locking (see also File Handles), String -Processing, Language Text Processing, Parsing, and Searching, Option, -Argument, Parameter, and Configuration File Processing, -Internationalization and Locale, Authentication, Security, and Encryption, -World Wide Web, HTML, HTTP, CGI, MIME, Server and Daemon Utilities, -Archiving and Compression, Images, Pixmap and Bitmap Manipulation, Drawing, -and Graphing, Mail and Usenet News, Control Flow Utilities (callbacks and -exceptions etc), File Handle and Input/Output Stream Utilities, -Miscellaneous Modules, Africa, Asia, Australasia, Europe, North America, -South America +=over -=item Modules: Creation, Use, and Abuse +=item Privacy and Responsibility -=over +=item File-Scoped Lexicals -=item Guidelines for Module Creation +=item More Inheritance Concerns -Do similar modules already exist in some form?, Try to design the new -module to be easy to extend and reuse, Some simple style guidelines, Select -what to export, Select a name for the module, Have you got it right?, -README and other Additional Files, A description of the -module/package/extension etc, A copyright notice - see below, Prerequisites -- what else you may need to have, How to build it - possible changes to -Makefile.PL etc, How to install it, Recent changes in this release, -especially incompatibilities, Changes / enhancements you plan to make in -the future, Adding a Copyright Notice, Give the module a -version/issue/release number, How to release and distribute a module, Take -care when changing a released module +=item Locking the Door and Throwing Away the Key -=item Guidelines for Converting Perl 4 Library Scripts into Modules +=item Translucency Revisited -There is no requirement to convert anything, Consider the implications, -Make the most of the opportunity, The pl2pm utility will get you started, -Adds the standard Module prologue lines, Converts package specifiers from ' -to ::, Converts die(...) to croak(...), Several other minor changes +=back -=item Guidelines for Reusing Application Code +=item NOTES -Complete applications rarely belong in the Perl Module Library, Many -applications contain some Perl code that could be reused, Break-out the -reusable code into one or more separate module files, Take the opportunity -to reconsider and redesign the interfaces, In some cases the 'application' -can then be reduced to a small +=item SEE ALSO + +=item AUTHOR AND COPYRIGHT + +=item ACKNOWLEDGEMENTS + +=item HISTORY =back -=item NOTE +=head2 perlobj - Perl objects -=head2 perlmodinstall - Installing CPAN Modules +=over =item DESCRIPTION =over -=item PREAMBLE +=item An Object is Simply a Reference -B the file, B the file into a directory, B the -module (sometimes unnecessary), B the module +=item A Class is Simply a Package + +=item A Method is Simply a Subroutine + +=item Method Invocation + +=item WARNING + +=item Default UNIVERSAL methods + +isa(CLASS), can(METHOD), VERSION( [NEED] ) + +=item Destructors + +=item Summary + +=item Two-Phased Garbage Collection =back -=item HEY +=item SEE ALSO -=item AUTHOR +=back -=item COPYRIGHT +=head2 perlbot - Bag'o Object Tricks (the BOT) -=head2 perlform - Perl formats +=over =item DESCRIPTION -=over +=item OO SCALING TIPS -=item Format Variables +=item INSTANCE VARIABLES + +=item SCALAR INSTANCE VARIABLES + +=item INSTANCE VARIABLE INHERITANCE + +=item OBJECT RELATIONSHIPS + +=item OVERRIDING SUPERCLASS METHODS + +=item USING RELATIONSHIP WITH SDBM + +=item THINKING OF CODE REUSE + +=item CLASS CONTEXT AND THE OBJECT + +=item INHERITING A CONSTRUCTOR + +=item DELEGATION =back -=item NOTES +=head2 perltie - how to hide an object class in a simple variable =over -=item Footers +=item SYNOPSIS -=item Accessing Formatting Internals +=item DESCRIPTION + +=over + +=item Tying Scalars + +TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this + +=item Tying Arrays + +TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value, +DESTROY this + +=item Tying Hashes + +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, DESTROY this + +=item Tying FileHandles + +TIEHANDLE classname, LIST, WRITE this, LIST, PRINT this, LIST, PRINTF this, +LIST, READ this, LIST, READLINE this, GETC this, CLOSE this, DESTROY this + +=item The C Gotcha =back -=item WARNINGS +=item SEE ALSO -=head2 perllocale - Perl locale handling (internationalization and -localization) +=item BUGS -=item DESCRIPTION +=item AUTHOR -=item PREPARING TO USE LOCALES +=back -=item USING LOCALES +=head2 perlipc - Perl interprocess communication (signals, fifos, pipes, +safe subprocesses, sockets, and semaphores) =over -=item The use locale pragma +=item DESCRIPTION + +=item Signals + +=item Named Pipes + +=over + +=item WARNING + +=back + +=item Using open() for IPC + +=over + +=item Filehandles + +=item Background Processes + +=item Complete Dissociation of Child from Parent + +=item Safe Pipe Opens + +=item Bidirectional Communication with Another Process + +=item Bidirectional Communication with Yourself + +=back + +=item Sockets: Client/Server Communication + +=over + +=item Internet Line Terminators + +=item Internet TCP Clients and Servers + +=item Unix-Domain TCP Clients and Servers + +=back + +=item TCP Clients with IO::Socket + +=over + +=item A Simple Client + +C, C, C + +=item A Webget Client + +=item Interactive Client with IO::Socket + +=back + +=item TCP Servers with IO::Socket + +Proto, LocalPort, Listen, Reuse + +=item UDP: Message Passing + +=item SysV IPC + +=item NOTES + +=item BUGS + +=item AUTHOR + +=item SEE ALSO + +=back + +=head2 perlfork - Perl's fork() emulation + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=over + +=item Behavior of other Perl features in forked pseudo-processes + +$$ 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 Resource limits + +=item Killing the parent process + +=item Lifetime of the parent process and pseudo-processes + +=item CAVEATS AND LIMITATIONS + +BEGIN blocks, Open filehandles, Forking pipe open() not yet implemented, +Global state maintained by XSUBs, Interpreter embedded in larger +application, Thread-safety of extensions + +=back + +=item BUGS + +=item AUTHOR + +=item SEE ALSO + +=back + +=head2 perlnumber - semantics of numbers and numeric operations in Perl + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=item Storing numbers + +=item Numeric operators and numeric conversions + +=item Flavors of Perl numeric operations + +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 AUTHOR + +=item SEE ALSO + +=back + +=head2 perlthrtut - tutorial on threads in Perl + +=over + +=item DESCRIPTION + +=item What Is A Thread Anyway? + +=item Threaded Program Models + +=over + +=item Boss/Worker + +=item Work Crew + +=item Pipeline + +=back + +=item Native threads + +=item What kind of threads are perl threads? + +=item Threadsafe Modules + +=item Thread Basics + +=over + +=item Basic Thread Support + +=item Creating Threads + +=item Giving up control + +=item Waiting For A Thread To Exit + +=item Errors In Threads + +=item Ignoring A Thread + +=back + +=item Threads And Data + +=over + +=item Shared And Unshared Data + +=item Thread Pitfall: Races + +=item Controlling access: lock() + +=item Thread Pitfall: Deadlocks + +=item Queues: Passing Data Around + +=back + +=item Threads And Code + +=over + +=item Semaphores: Synchronizing Data Access + +Basic semaphores, Advanced Semaphores + +=item Attributes: Restricting Access To Subroutines + +=item Subroutine Locks + +=item Methods + +=item Locking A Subroutine + +=back + +=item General Thread Utility Routines + +=over + +=item What Thread Am I In? + +=item Thread IDs + +=item Are These Threads The Same? + +=item What Threads Are Running? + +=back + +=item A Complete Example + +=item Conclusion + +=item Bibliography + +=over + +=item Introductory Texts + +=item OS-Related References + +=item Other References + +=back + +=item Acknowledgements + +=item AUTHOR + +=item Copyrights + +=back + +=head2 perlport - Writing portable Perl + +=over + +=item DESCRIPTION + +Not all Perl programs have to be portable, Nearly all of Perl already I +portable + +=item ISSUES + +=over + +=item Newlines + +=item Numbers endianness and Width + +=item Files and Filesystems + +=item System Interaction + +=item Interprocess Communication (IPC) + +=item External Subroutines (XS) + +=item Standard Modules + +=item Time and Date + +=item Character sets and character encoding + +=item Internationalisation + +=item System Resources + +=item Security + +=item Style + +=back + +=item CPAN Testers + +Mailing list: cpan-testers@perl.org, Testing results: +http://testers.cpan.org/ + +=item PLATFORMS + +=over + +=item Unix + +=item DOS and Derivatives + +Build instructions for OS/2, L + +=item S + +=item VMS + +=item VOS + +=item EBCDIC Platforms + +=item Acorn RISC OS + +=item Other perls + +=back + +=item FUNCTION IMPLEMENTATIONS + +=over + +=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, 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, 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 CHANGES + +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 + +=item VERSION + +=back + +=head2 perllocale - Perl locale handling (internationalization and +localization) + +=over + +=item DESCRIPTION + +=item PREPARING TO USE LOCALES + +=item USING LOCALES + +=over + +=item The use locale pragma + +=item The setlocale function + +=item Finding locales + +=item LOCALE PROBLEMS + +=item Temporarily fixing locale problems + +=item Permanently fixing locale problems + +=item Permanently fixing your system's locale configuration + +=item Fixing system locale configuration + +=item The localeconv function + +=back + +=item LOCALE CATEGORIES + +=over + +=item Category LC_COLLATE: Collation + +=item Category LC_CTYPE: Character Types + +=item Category LC_NUMERIC: Numeric Formatting + +=item Category LC_MONETARY: Formatting of monetary amounts + +=item LC_TIME + +=item Other categories + +=back + +=item SECURITY + +B (C, C, C, C and C):, +B (with C<\l>, C<\L>, C<\u> or C<\U>), +B (C):, B (C):, +B (printf() and write()):, B (lc(), lcfirst(), uc(), ucfirst()):, B (localeconv(), strcoll(), strftime(), strxfrm()):, B (isalnum(), isalpha(), isdigit(), isgraph(), +islower(), isprint(), ispunct(), isspace(), isupper(), isxdigit()): + +=item ENVIRONMENT + +PERL_BADLANG, LC_ALL, LANGUAGE, LC_CTYPE, LC_COLLATE, LC_MONETARY, +LC_NUMERIC, LC_TIME, LANG + +=item NOTES + +=over + +=item Backward compatibility + +=item I18N:Collate obsolete + +=item Sort speed and memory use impacts + +=item write() and LC_NUMERIC + +=item Freely available locale definitions + +=item I18n and l10n + +=item An imperfect standard + +=back + +=item BUGS + +=over + +=item Broken systems + +=back + +=item SEE ALSO + +=item HISTORY + +=back + +=head2 perlunicode - Unicode support in Perl + +=over + +=item DESCRIPTION + +=over + +=item Important Caveat + +Input and Output Disciplines, Regular Expressions, C still needed +to enable a few features + +=item Byte and Character semantics + +=item Effects of character semantics + +=item Character encodings for input and output + +=back + +=item CAVEATS + +=item SEE ALSO + +=back + +=head2 perlebcdic - Considerations for running Perl on EBCDIC platforms + +=over + +=item DESCRIPTION + +=item COMMON CHARACTER CODE SETS + +=over + +=item ASCII + +=item ISO 8859 + +=item Latin 1 (ISO 8859-1) + +=item EBCDIC + +=item 13 variant characters + +=item 0037 + +=item 1047 + +=item POSIX-BC + +=back + +=item SINGLE OCTET TABLES + +recipe 0, recipe 1, recipe 2, recipe 3, recipe 4 + +=item IDENTIFYING CHARACTER CODE SETS + +=item CONVERSIONS + +=item OPERATOR DIFFERENCES + +=item FUNCTION DIFFERENCES + +chr(), ord(), pack(), print(), printf(), sort(), sprintf(), unpack() + +=item REGULAR EXPRESSION DIFFERENCES + +=item SOCKETS + +=item SORTING + +=over + +=item Ignore ASCII vs EBCDIC sort differences. + +=item MONOCASE then sort data. + +=item Convert, sort data, then reconvert. + +=item Perform sorting on one type of machine only. + +=back + +=item URL ENCODING and DECODING + +=item I18N AND L10N + +=item MULTI OCTET CHARACTER SETS + +=item OS ISSUES + +=over + +=item OS/400 + +IFS access + +=item OS/390 + +dataset access, locales + +=item VM/ESA? + +=item POSIX-BC? + +=back + +=item REFERENCES + +=item AUTHOR + +=back + +=head2 perlsec - Perl security + +=over + +=item DESCRIPTION + +=over + +=item Laundering and Detecting Tainted Data + +=item Switches On the "#!" Line + +=item Cleaning Up Your Path + +=item Security Bugs + +=item Protecting Your Programs + +=back + +=item SEE ALSO + +=back + +=head2 perlmod - Perl modules (packages and symbol tables) + +=over + +=item DESCRIPTION + +=over + +=item Packages + +=item Symbol Tables + +=item Package Constructors and Destructors + +=item Perl Classes + +=item Perl Modules + +=back + +=item SEE ALSO + +=back + +=head2 perlmodlib - constructing new Perl modules and finding existing ones + +=over + +=item DESCRIPTION + +=item THE PERL MODULE LIBRARY + +=over + +=item Pragmatic Modules + +attributes, attrs, autouse, base, blib, bytes, charnames, constant, +diagnostics, fields, filetest, integer, less, lib, locale, open, ops, +overload, re, sigtrap, strict, subs, utf8, vars, warnings + +=item Standard Modules + +AnyDBM_File, AutoLoader, AutoSplit, B, 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::Terse, B::Xref, Benchmark, ByteLoader, CGI, +CGI::Apache, CGI::Carp, CGI::Cookie, CGI::Fast, CGI::Pretty, CGI::Push, +CGI::Switch, CPAN, CPAN::FirstTime, CPAN::Nox, Carp, Carp::Heavy, +Class::Struct, Cwd, DB, DB_File, Devel::SelfStubber, DirHandle, Dumpvalue, +English, Env, Exporter, Exporter::Heavy, ExtUtils::Command, +ExtUtils::Embed, ExtUtils::Install, ExtUtils::Installed, ExtUtils::Liblist, +ExtUtils::MM_Cygwin, 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, Fcntl, File::Basename, File::CheckTree, +File::Compare, File::Copy, File::DosGlob, File::Find, File::Path, +File::Spec, File::Spec::Functions, File::Spec::Mac, File::Spec::OS2, +File::Spec::Unix, File::Spec::VMS, File::Spec::Win32, File::Temp, +File::stat, FileCache, FileHandle, FindBin, Getopt::Long, Getopt::Std, +I18N::Collate, IO, IPC::Open2, IPC::Open3, Math::BigFloat, Math::BigInt, +Math::Complex, Math::Trig, NDBM_File, Net::Ping, Net::hostent, Net::netent, +Net::protoent, Net::servent, O, ODBM_File, Opcode, Pod::Checker, Pod::Find, +Pod::Html, Pod::InputObjects, Pod::Man, Pod::ParseUtils, Pod::Parser, +Pod::Plainer, Pod::Select, Pod::Text, Pod::Text::Color, Pod::Text::Termcap, +Pod::Usage, SDBM_File, Safe, Search::Dict, SelectSaver, SelfLoader, Shell, +Socket, Symbol, Term::ANSIColor, Term::Cap, Term::Complete, Term::ReadLine, +Test, Test::Harness, Text::Abbrev, Text::ParseWords, Text::Soundex, +Text::Wrap, Tie::Array, Tie::Handle, Tie::Hash, Tie::RefHash, Tie::Scalar, +Tie::SubstrHash, Time::Local, Time::gmtime, Time::localtime, Time::tm, +UNIVERSAL, User::grent, User::pwent + +=item Extension Modules + +=back + +=item CPAN + +Language Extensions and Documentation Tools, Development Support, Operating +System Interfaces, Networking, Device Control (modems) and InterProcess +Communication, Data Types and Data Type Utilities, Database Interfaces, +User Interfaces, Interfaces to / Emulations of Other Programming Languages, +File Names, File Systems and File Locking (see also File Handles), String +Processing, Language Text Processing, Parsing, and Searching, Option, +Argument, Parameter, and Configuration File Processing, +Internationalization and Locale, Authentication, Security, and Encryption, +World Wide Web, HTML, HTTP, CGI, MIME, Server and Daemon Utilities, +Archiving and Compression, Images, Pixmap and Bitmap Manipulation, Drawing, +and Graphing, Mail and Usenet News, Control Flow Utilities (callbacks and +exceptions etc), File Handle and Input/Output Stream Utilities, +Miscellaneous Modules, Africa, Asia, Australasia, Central America, Europe, +North America, South America + +=item Modules: Creation, Use, and Abuse + +=over + +=item Guidelines for Module Creation + +Do similar modules already exist in some form?, Try to design the new +module to be easy to extend and reuse, Some simple style guidelines, Select +what to export, Select a name for the module, Have you got it right?, +README and other Additional Files, A description of the +module/package/extension etc, A copyright notice - see below, Prerequisites +- what else you may need to have, How to build it - possible changes to +Makefile.PL etc, How to install it, Recent changes in this release, +especially incompatibilities, Changes / enhancements you plan to make in +the future, Adding a Copyright Notice, Give the module a +version/issue/release number, How to release and distribute a module, Take +care when changing a released module + +=item Guidelines for Converting Perl 4 Library Scripts into Modules + +There is no requirement to convert anything, Consider the implications, +Make the most of the opportunity, The pl2pm utility will get you started, +Adds the standard Module prologue lines, Converts package specifiers from ' +to ::, Converts die(...) to croak(...), Several other minor changes + +=item Guidelines for Reusing Application Code + +Complete applications rarely belong in the Perl Module Library, Many +applications contain some Perl code that could be reused, Break-out the +reusable code into one or more separate module files, Take the opportunity +to reconsider and redesign the interfaces, In some cases the 'application' +can then be reduced to a small + +=back + +=item NOTE + +=back + +=head2 perlmodinstall - Installing CPAN Modules + +=over + +=item DESCRIPTION + +=over + +=item PREAMBLE + +B the file, B the file into a directory, B the +module (sometimes unnecessary), B the module + +=back + +=item PORTABILITY + +=item HEY + +=item AUTHOR + +=item COPYRIGHT + +=back + +=head2 perlnewmod - preparing a new module for distribution + +=over + +=item DESCRIPTION + +=over + +=item Warning + +=item What should I make into a module? + +=item Step-by-step: Preparing the ground + +Look around, Check it's new, Discuss the need, Choose a name, Check again + +=item Step-by-step: Making the module + +Start with F, Use L and L, Use +L, Use L - wisely!, Use L, Write tests, Write the README + +=item Step-by-step: Distributing your module + +Get a CPAN user ID, C, Upload the +tarball, Announce to the modules list, Announce to clpa, Fix bugs! + +=back + +=item AUTHOR + +=item SEE ALSO + +=back + +=head2 perlfaq1 - General Questions About Perl ($Revision: 1.23 $, $Date: +1999/05/23 16:08:30 $) + +=over + +=item DESCRIPTION + +=over + +=item What is Perl? + +=item Who supports Perl? Who develops it? Why is it free? + +=item Which version of Perl should I use? + +=item What are perl4 and perl5? + +=item What is perl6? + +=item How stable is Perl? + +=item Is Perl difficult to learn? + +=item How does Perl compare with other languages like Java, Python, REXX, +Scheme, or Tcl? + +=item Can I do [task] in Perl? + +=item When shouldn't I program in Perl? + +=item What's the difference between "perl" and "Perl"? + +=item Is it a Perl program or a Perl script? + +=item What is a JAPH? + +=item Where can I get a list of Larry Wall witticisms? + +=item How can I convince my sysadmin/supervisor/employees to use version +(5/5.005/Perl instead of some other language)? + +=back + +=item AUTHOR AND COPYRIGHT + +=back + +=head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.32 $, +$Date: 1999/10/14 18:46:09 $) + +=over + +=item DESCRIPTION + +=over + +=item What machines support Perl? Where do I get it? + +=item How can I get a binary version of Perl? + +=item I don't have a C compiler on my system. How can I compile perl? + +=item I copied the Perl binary from one machine to another, but scripts +don't work. + +=item I grabbed the sources and tried to compile but gdbm/dynamic +loading/malloc/linking/... failed. How do I make it work? + +=item What modules and extensions are available for Perl? What is CPAN? +What does CPAN/src/... mean? + +=item Is there an ISO or ANSI certified version of Perl? + +=item Where can I get information on Perl? + +=item What are the Perl newsgroups on Usenet? Where do I post questions? + +=item Where should I post source code? + +=item Perl Books + +References, Tutorials, Task-Oriented, Special Topics + +=item Perl in Magazines + +=item Perl on the Net: FTP and WWW Access + +=item What mailing lists are there for Perl? + +=item Archives of comp.lang.perl.misc + +=item Where can I buy a commercial version of Perl? + +=item Where do I send bug reports? + +=item What is perl.com? Perl Mongers? pm.org? perl.org? + +=back + +=item AUTHOR AND COPYRIGHT + +=back + +=head2 perlfaq3 - Programming Tools ($Revision: 1.38 $, $Date: 1999/05/23 +16:08:30 $) + +=over + +=item DESCRIPTION + +=over + +=item How do I do (anything)? + +=item How can I use Perl interactively? + +=item Is there a Perl shell? + +=item How do I debug my Perl programs? + +=item How do I profile my Perl programs? + +=item How do I cross-reference my Perl programs? + +=item Is there a pretty-printer (formatter) for Perl? + +=item Is there a ctags for Perl? + +=item Is there an IDE or Windows Perl Editor? + +=item Where can I get Perl macros for vi? + +=item Where can I get perl-mode for emacs? + +=item How can I use curses with Perl? + +=item How can I use X or Tk with Perl? + +=item How can I generate simple menus without using CGI or Tk? + +=item What is undump? + +=item How can I make my Perl program run faster? + +=item How can I make my Perl program take less memory? + +=item Is it unsafe to return a pointer to local data? + +=item How can I free an array or hash so my program shrinks? + +=item How can I make my CGI script more efficient? + +=item How can I hide the source for my Perl program? + +=item How can I compile my Perl program into byte code or C? + +=item How can I compile Perl into Java? + +=item How can I get C<#!perl> to work on [MS-DOS,NT,...]? + +=item Can I write useful Perl programs on the command line? + +=item Why don't Perl one-liners work on my DOS/Mac/VMS system? + +=item Where can I learn about CGI or Web programming in Perl? + +=item Where can I learn about object-oriented Perl programming? + +=item Where can I learn about linking C with Perl? [h2xs, xsubpp] + +=item I've read perlembed, perlguts, etc., but I can't embed perl in +my C program, what am I doing wrong? + +=item When I tried to run my script, I got this message. What does it +mean? + +=item What's MakeMaker? + +=back + +=item AUTHOR AND COPYRIGHT + +=back + +=head2 perlfaq4 - Data Manipulation ($Revision: 1.49 $, $Date: 1999/05/23 +20:37:49 $) + +=over + +=item DESCRIPTION + +=item Data: Numbers + +=over + +=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 Does Perl have a round() function? What about ceil() and floor()? +Trig functions? + +=item How do I convert bits into ints? + +=item Why doesn't & work the way I want it to? + +=item How do I multiply matrices? + +=item How do I perform an operation on a series of integers? + +=item How can I output Roman numerals? + +=item Why aren't my random numbers random? + +=back + +=item Data: Dates + +=over + +=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 How can I compare two dates and find the difference? + +=item How can I take a string and turn it into epoch seconds? + +=item How can I find the Julian Day? + +=item How do I find yesterday's date? + +=item Does Perl have a Year 2000 problem? Is Perl Y2K compliant? + +=back + +=item Data: Strings + +=over + +=item How do I validate input? + +=item How do I unescape a string? + +=item How do I remove consecutive pairs of characters? + +=item How do I expand function calls in a string? + +=item How do I find matching/nesting anything? + +=item How do I reverse a string? + +=item How do I expand tabs in a string? + +=item How do I reformat a paragraph? + +=item How can I access/change the first N letters of a string? + +=item How do I change the Nth occurrence of something? + +=item How can I count the number of occurrences of a substring within a +string? + +=item How do I capitalize all the words on one line? + +=item How can I split a [character] delimited string except when inside +[character]? (Comma-separated files) + +=item How do I strip blank space from the beginning/end of a string? + +=item How do I pad a string with blanks or pad a number with zeroes? + +=item How do I extract selected columns from a string? + +=item How do I find the soundex value of a string? + +=item How can I expand variables in text strings? + +=item What's wrong with always quoting "$vars"? + +=item Why don't my <? + +=item Is there a leak/bug in glob()? + +=item How can I open a file with a leading ">" or trailing blanks? + +=item How can I reliably rename a file? + +=item How can I lock a file? + +=item Why can't I just open(FH, ">file.lock")? + +=item I still don't get locking. I just want to increment the number in +the file. How can I do this? + +=item How do I randomly update a binary file? + +=item How do I get a file's timestamp in perl? + +=item How do I set a file's timestamp in perl? + +=item How do I print to more than one file at once? + +=item How can I read in an entire file all at once? + +=item How can I read in a file by paragraphs? + +=item How can I read a single character from a file? From the keyboard? + +=item How can I tell whether there's a character waiting on a filehandle? + +=item How do I do a C in perl? + +=item How do I dup() a filehandle in Perl? + +=item How do I close a file descriptor by number? + +=item Why can't I use "C:\temp\foo" in DOS paths? What doesn't +`C:\temp\foo.exe` work? + +=item Why doesn't glob("*.*") get all the files? + +=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 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 AUTHOR AND COPYRIGHT + +=back + +=head2 perlfaq6 - Regexes ($Revision: 1.27 $, $Date: 1999/05/23 16:08:30 $) + +=over + +=item DESCRIPTION + +=over + +=item How can I hope to use regular expressions without creating illegible +and unmaintainable code? + +Comments Outside the Regex, Comments Inside the Regex, Different Delimiters + +=item I'm having trouble matching over more than one line. What's wrong? + +=item How can I pull out lines between two patterns that are themselves on +different lines? + +=item I put a regular expression into $/ but it didn't work. What's wrong? + +=item How do I substitute case insensitively on the LHS, but preserving +case on the RHS? + +=item How can I make C<\w> match national character sets? + +=item How can I match a locale-smart version of C? + +=item How can I quote a variable to use in a regex? + +=item What is C really for? + +=item How do I use a regular expression to strip C style comments from a +file? + +=item Can I use Perl regular expressions to match balanced text? + +=item What does it mean that regexes are greedy? How can I get around it? + +=item How do I process each word on each line? + +=item How can I print out a word-frequency or line-frequency summary? + +=item How can I do approximate matching? + +=item How do I efficiently match many regular expressions at once? + +=item Why don't word-boundary searches with C<\b> work for me? + +=item Why does using $&, $`, or $' slow my program down? + +=item What good is C<\G> in a regular expression? + +=item Are Perl regexes DFAs or NFAs? Are they POSIX compliant? + +=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 - Perl Language Issues ($Revision: 1.28 $, $Date: +1999/05/23 20:36:18 $) + +=over + +=item DESCRIPTION + +=over + +=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 How do I declare/create a structure? + +=item How do I create a module? + +=item How do I create a class? + +=item How can I tell if a variable is tainted? + +=item What's a closure? + +=item What is variable suicide and how can I prevent it? + +=item How can I pass/return a {Function, FileHandle, Array, Hash, Method, +Regex}? + +Passing Variables and Functions, Passing Filehandles, Passing Regexes, +Passing Methods + +=item How do I create a static variable? + +=item What's the difference between dynamic and lexical (static) scoping? +Between local() and my()? + +=item How can I access a dynamic variable while a similarly named lexical +is in scope? + +=item What's the difference between deep and shallow binding? + +=item Why doesn't "my($foo) = ;" work right? + +=item How do I redefine a builtin function, operator, or method? + +=item What's the difference between calling a function as &foo and foo()? + +=item How do I create a switch or case statement? + +=item How can I catch accesses to undefined variables/functions/methods? + +=item Why can't a method included in this same file be found? + +=item How can I find out my current package? + +=item How can I comment out a large block of perl code? + +=item How do I clear a package? + +=item How can I use a variable as a variable name? + +=back + +=item AUTHOR AND COPYRIGHT + +=back + +=head2 perlfaq8 - System Interaction ($Revision: 1.39 $, $Date: 1999/05/23 +18:37:57 $) + +=over + +=item DESCRIPTION + +=over + +=item How do I find out which operating system I'm running under? + +=item How come exec() doesn't return? + +=item How do I do fancy stuff with the keyboard/screen/mouse? + +Keyboard, Screen, Mouse + +=item How do I print something out in color? + +=item How do I read just one key without waiting for a return key? + +=item How do I check whether input is ready on the keyboard? + +=item How do I clear the screen? + +=item How do I get the screen size? + +=item How do I ask the user for a password? + +=item How do I read and write the serial port? + +lockfiles, open mode, end of line, flushing output, non-blocking input + +=item How do I decode encrypted password files? + +=item How do I start a process in the background? + +STDIN, STDOUT, and STDERR are shared, Signals, Zombies + +=item How do I trap control characters/signals? + +=item How do I modify the shadow password file on a Unix system? + +=item How do I set the time and date? + +=item How can I sleep() or alarm() for under a second? + +=item How can I measure time under a second? + +=item How can I do an atexit() or setjmp()/longjmp()? (Exception handling) + +=item Why doesn't my sockets program work under System V (Solaris)? What +does the error message "Protocol not supported" mean? + +=item How can I call my system's unique C functions from Perl? + +=item Where do I get the include files to do ioctl() or syscall()? + +=item Why do setuid perl scripts complain about kernel problems? + +=item How can I open a pipe both to and from a command? + +=item Why can't I get the output of a command with system()? + +=item How can I capture STDERR from an external command? + +=item Why doesn't open() return an error when a pipe open fails? + +=item What's wrong with using backticks in a void context? + +=item How can I call backticks without shell processing? + +=item Why can't my script read from STDIN after I gave it EOF (^D on Unix, +^Z on MS-DOS)? + +=item How can I convert my shell script to perl? + +=item Can I use perl to run a telnet or ftp session? + +=item How can I write expect in Perl? + +=item Is there a way to hide perl's command line from programs such as +"ps"? + +=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? + +Unix + +=item How do I close a process's filehandle without waiting for it to +complete? + +=item How do I fork a daemon process? + +=item How do I find out if I'm running interactively or not? + +=item How do I timeout a slow event? + +=item How do I set CPU limits? + +=item How do I avoid zombies on a Unix system? + +=item How do I use an SQL database? + +=item How do I make a system() exit on control-C? + +=item How do I open a file without blocking? + +=item How do I install a module from CPAN? + +=item What's the difference between require and use? + +=item How do I keep my own module/library directory? + +=item How do I add the directory my program lives in to the module/library +search path? + +=item How do I add a directory to my include path at runtime? + +=item What is socket.ph and where do I get it? + +=back + +=item AUTHOR AND COPYRIGHT + +=back + +=head2 perlfaq9 - Networking ($Revision: 1.26 $, $Date: 1999/05/23 16:08:30 +$) + +=over + +=item DESCRIPTION + +=over + +=item My CGI script runs from the command line but not the browser. (500 +Server Error) + +=item How can I get better error messages from a CGI program? + +=item How do I remove HTML from a string? + +=item How do I extract URLs? + +=item How do I download a file from the user's machine? How do I open a +file on another machine? + +=item How do I make a pop-up menu in HTML? + +=item How do I fetch an HTML file? + +=item How do I automate an HTML form submission? + +=item How do I decode or create those %-encodings on the web? + +=item How do I redirect to another page? + +=item How do I put a password on my web pages? + +=item How do I edit my .htpasswd and .htgroup files with Perl? + +=item How do I make sure users can't enter values into a form that cause my +CGI script to do bad things? + +=item How do I parse a mail header? + +=item How do I decode a CGI form? + +=item How do I check a valid mail address? + +=item How do I decode a MIME/BASE64 string? + +=item How do I return the user's mail address? + +=item How do I send mail? + +=item How do I read mail? + +=item How do I find out my hostname/domainname/IP address? + +=item How do I fetch a news article or the active newsgroups? + +=item How do I fetch/put an FTP file? + +=item How can I do RPC in Perl? + +=back + +=item AUTHOR AND COPYRIGHT + +=back + +=head2 perlcompile - Introduction to the Perl Compiler-Translator + +=over + +=item DESCRIPTION + +=over + +=item Layout + +B::Bytecode, B::C, B::CC, B::Lint, B::Deparse, B::Xref + +=back + +=item Using The Back Ends + +=over + +=item The Cross Referencing Back End + +i, &, s, r + +=item The Decompiling Back End + +=item The Lint Back End + +=item The Simple C Back End + +=item The Bytecode Back End + +=item The Optimized C Back End + +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 + +=back + +=item KNOWN PROBLEMS + +=item AUTHOR + +=back + +=head2 perlembed - how to embed perl in your C program + +=over + +=item DESCRIPTION + +=over + +=item PREAMBLE + +B, B, B, B, B + +=item ROADMAP + +=item Compiling your C program + +=item Adding a Perl interpreter to your C program + +=item Calling a Perl subroutine from your C program + +=item Evaluating a Perl statement from your C program + +=item Performing Perl pattern matches and substitutions from your C program + +=item Fiddling with the Perl stack from your C program + +=item Maintaining a persistent interpreter + +=item Maintaining multiple interpreter instances + +=item Using Perl modules, which themselves use C libraries, from your C +program + +=back + +=item Embedding Perl under Windows + +=item MORAL + +=item AUTHOR + +=item COPYRIGHT + +=back + +=head2 perldebguts - Guts of Perl debugging + +=over + +=item DESCRIPTION + +=item Debugger Internals + +=over + +=item Writing Your Own Debugger + +=back + +=item Frame Listing Output Examples + +=item Debugging regular expressions + +=over + +=item Compile-time output + +C I C I, C I C +I, C, C, C +I, C, C, C, C, C, C, +C + +=item Types of nodes + +=item Run-time output + +=back + +=item Debugging Perl memory usage + +=over + +=item Using C<$ENV{PERL_DEBUG_MSTATS}> + +C, Free/Used, C, C, C, C, C + +=item Example of using B<-DL> switch + +C<717>, C<002>, C<054>, C<602>, C<702>, C<704> + +=item B<-DL> details + +C, C, C + +=item Limitations of B<-DL> statistics + +=back + +=item SEE ALSO + +=back + +=head2 perlxstut, perlXStut - Tutorial for writing XSUBs + +=over + +=item DESCRIPTION + +=item SPECIAL NOTES + +=over + +=item make + +=item Version caveat + +=item Dynamic Loading versus Static Loading + +=back + +=item TUTORIAL + +=over + +=item EXAMPLE 1 + +=item EXAMPLE 2 + +=item What has gone on? + +=item Writing good test scripts + +=item EXAMPLE 3 + +=item What's new here? + +=item Input and Output Parameters + +=item The XSUBPP Program + +=item The TYPEMAP file + +=item Warning about Output Arguments + +=item EXAMPLE 4 + +=item What has happened here? + +=item Anatomy of .xs file + +=item Getting the fat out of XSUBs + +=item More about XSUB arguments + +=item The Argument Stack + +=item Extending your Extension + +=item Documenting your Extension + +=item Installing your Extension + +=item EXAMPLE 5 + +=item New Things in this Example + +=item EXAMPLE 6 + +=item New Things in this Example + +=item EXAMPLE 7 (Coming Soon) + +=item EXAMPLE 8 (Coming Soon) + +=item EXAMPLE 9 (Coming Soon) + +=item Troubleshooting these Examples + +=back + +=item See also + +=item Author + +=over + +=item Last Changed + +=back + +=back + +=head2 perlxs - XS language reference manual + +=over + +=item DESCRIPTION + +=over + +=item Introduction + +=item On The Road + +=item The Anatomy of an XSUB + +=item The Argument Stack + +=item The RETVAL Variable + +=item The MODULE Keyword + +=item The PACKAGE Keyword + +=item The PREFIX Keyword + +=item The OUTPUT: Keyword + +=item The CODE: Keyword + +=item The INIT: Keyword + +=item The NO_INIT Keyword + +=item Initializing Function Parameters + +=item Default Parameter Values + +=item The PREINIT: Keyword + +=item The SCOPE: Keyword + +=item The INPUT: Keyword + +=item Variable-length Parameter Lists + +=item The C_ARGS: Keyword + +=item The PPCODE: Keyword + +=item Returning Undef And Empty Lists + +=item The REQUIRE: Keyword + +=item The CLEANUP: Keyword + +=item The BOOT: Keyword + +=item The VERSIONCHECK: Keyword + +=item The PROTOTYPES: Keyword + +=item The PROTOTYPE: Keyword + +=item The ALIAS: Keyword + +=item The INTERFACE: Keyword + +=item The INTERFACE_MACRO: Keyword + +=item The INCLUDE: Keyword + +=item The CASE: Keyword + +=item The & Unary Operator + +=item Inserting Comments and C Preprocessor Directives + +=item Using XS With C++ + +=item Interface Strategy + +=item Perl Objects And C Structures + +=item The Typemap + +=back + +=item EXAMPLES + +=item XS VERSION + +=item AUTHOR + +=back + +=head2 perlguts - Introduction to the Perl API + +=over + +=item DESCRIPTION + +=item Variables + +=over + +=item Datatypes + +=item What is an "IV"? + +=item Working with SVs + +=item What's Really Stored in an SV? + +=item Working with AVs + +=item Working with HVs + +=item Hash API Extensions + +=item References + +=item Blessed References and Class Objects + +=item Creating New Variables + +=item Reference Counts and Mortality + +=item Stashes and Globs + +=item Double-Typed SVs + +=item Magic Variables + +=item Assigning Magic + +=item Magic Virtual Tables + +=item Finding Magic + +=item Understanding the Magic of Tied Hashes and Arrays + +=item Localizing changes + +C, C, C, C, +C, C, C, C, C, C, C, C, C, C, +C, C, C, C, C, C, C, +C + +=back + +=item Subroutines + +=over + +=item XSUBs and the Argument Stack + +=item Calling Perl Routines from within C Programs + +=item Memory Allocation + +=item PerlIO + +=item Putting a C value on Perl stack + +=item Scratchpads + +=item Scratchpads and recursion + +=back + +=item Compiled code + +=over + +=item Code tree + +=item Examining the tree + +=item Compile pass 1: check routines + +=item Compile pass 1a: constant folding + +=item Compile pass 2: context propagation + +=item Compile pass 3: peephole optimization + +=back + +=item How multiple interpreters and concurrency are supported + +=over + +=item Background and PERL_IMPLICIT_CONTEXT + +=item How do I use all this in extensions? + +=item Future Plans and PERL_IMPLICIT_SYS + +=back + +=item Internal Functions + +A, p, d, s, n, r, f, m, o, j, x + +=over + +=item Formatted Printing of IVs, UVs, and NVs + +=item Source Documentation + +=back + +=item Unicode Support + +=over + +=item What B Unicode, anyway? + +=item How can I recognise a UTF8 string? + +=item How does UTF8 represent Unicode characters? + +=item How does Perl store UTF8 strings? + +=item How do I convert a string to UTF8? + +=item Is there anything else I need to know? + +=back + +=item AUTHORS + +=item SEE ALSO + +=back + +=head2 perlcall - Perl calling conventions from C + +=over + +=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 + +=item G_VOID + +=item G_SCALAR + +=item G_ARRAY + +=item G_DISCARD + +=item G_NOARGS + +=item G_EVAL + +=item G_KEEPERR + +=item Determining the Context + +=back + +=item KNOWN PROBLEMS + +=item EXAMPLES + +=over + +=item No Parameters, Nothing returned + +=item Passing Parameters + +=item Returning a Scalar + +=item Returning a list of values + +=item Returning a list in a scalar context + +=item Returning Data from Perl via the parameter list + +=item Using G_EVAL + +=item Using G_KEEPERR + +=item Using call_sv + +=item Using call_argv + +=item Using call_method + +=item Using GIMME_V + +=item Using Perl to dispose of temporaries + +=item Strategies for storing Callback Context Information + +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 Alternate Stack Manipulation + +=item Creating and calling an anonymous subroutine in C + +=back + +=item SEE ALSO + +=item AUTHOR + +=item DATE + +=back + +=head2 perlutil - utilities packaged with the Perl distribution + +=over + +=item DESCRIPTION + +=over + +=item DOCUMENTATION + +L, L and L, +L and L, L, +L, L, L, +L + +=item CONVERTORS + +L, L, L + +=item Development + +L, L, L and L, +L, L, L + +=item SEE ALSO + +=back + +=back + +=head2 perlfilter - Source Filters + +=over + +=item DESCRIPTION + +=item CONCEPTS + +=item USING FILTERS + +=item WRITING A SOURCE FILTER + +=item WRITING A SOURCE FILTER IN C + +B + +=item CREATING A SOURCE FILTER AS A SEPARATE EXECUTABLE + +=item WRITING A SOURCE FILTER IN PERL + +=item USING CONTEXT: THE DEBUG FILTER + +=item CONCLUSION + +=item REQUIREMENTS + +=item AUTHOR + +=item Copyrights + +=back + +=head2 perldbmfilter - Perl DBM Filters + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +B, B, B, +B + +=over + +=item The Filter + +=item An Example -- the NULL termination problem. + +=item Another Example -- Key is a C int. + +=back + +=item SEE ALSO + +=item AUTHOR + +=back + +=head2 perlapi - autogenerated documentation for the perl public API + +=over + +=item DESCRIPTION + +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, +bytes_to_utf8, call_argv, call_method, call_pv, call_sv, CLASS, Copy, +croak, CvSTASH, dMARK, dORIGMARK, dSP, dXSARGS, dXSI32, ENTER, eval_pv, +eval_sv, EXTEND, fbm_compile, fbm_instr, FREETMPS, get_av, get_cv, get_hv, +get_sv, GIMME, GIMME_V, GvSV, gv_fetchmeth, gv_fetchmethod, +gv_fetchmethod_autoload, gv_stashpv, gv_stashsv, G_ARRAY, G_DISCARD, +G_EVAL, G_NOARGS, G_SCALAR, G_VOID, HEf_SVKEY, 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, isALNUM, isALPHA, +isDIGIT, isLOWER, isSPACE, isUPPER, items, ix, LEAVE, looks_like_number, +MARK, mg_clear, mg_copy, mg_find, mg_free, mg_get, mg_length, mg_magical, +mg_set, Move, New, newAV, Newc, newCONSTSUB, newHV, newRV_inc, newRV_noinc, +NEWSV, newSViv, newSVnv, newSVpv, newSVpvf, newSVpvn, newSVrv, newSVsv, +newSVuv, newXS, newXSproto, Newz, Nullav, Nullch, Nullcv, Nullhv, Nullsv, +ORIGMARK, perl_alloc, perl_construct, perl_destruct, perl_free, perl_parse, +perl_run, PL_DBsingle, PL_DBsub, PL_DBtrace, PL_dowarn, PL_modglobal, +PL_na, PL_sv_no, PL_sv_undef, PL_sv_yes, POPi, POPl, POPn, POPp, POPs, +PUSHi, PUSHMARK, PUSHn, PUSHp, PUSHs, PUSHu, PUTBACK, Renew, Renewc, +require_pv, RETVAL, Safefree, savepv, savepvn, SAVETMPS, SP, SPAGAIN, ST, +strEQ, strGE, strGT, strLE, strLT, strNE, strnEQ, strnNE, StructCopy, +SvCUR, SvCUR_set, SvEND, SvGETMAGIC, SvGROW, SvIOK, SvIOKp, SvIOK_off, +SvIOK_on, SvIOK_only, SvIV, SvIVX, SvLEN, SvNIOK, SvNIOKp, SvNIOK_off, +SvNOK, SvNOKp, SvNOK_off, SvNOK_on, SvNOK_only, SvNV, SvNVX, SvOK, SvOOK, +SvPOK, SvPOKp, SvPOK_off, SvPOK_on, SvPOK_only, SvPV, SvPVX, SvPV_force, +SvPV_nolen, SvREFCNT, SvREFCNT_dec, SvREFCNT_inc, SvROK, SvROK_off, +SvROK_on, SvRV, SvSETMAGIC, SvSetSV, SvSetSV_nosteal, SvSTASH, SvTAINT, +SvTAINTED, SvTAINTED_off, SvTAINTED_on, SvTRUE, svtype, SvTYPE, SVt_IV, +SVt_NV, SVt_PV, SVt_PVAV, SVt_PVCV, SVt_PVHV, SVt_PVMG, SvUPGRADE, SvUV, +SvUVX, sv_2mortal, sv_bless, sv_catpv, sv_catpvf, sv_catpvf_mg, sv_catpvn, +sv_catpvn_mg, sv_catpv_mg, sv_catsv, sv_catsv_mg, sv_chop, sv_clear, +sv_cmp, sv_cmp_locale, sv_dec, sv_derived_from, sv_eq, sv_free, sv_gets, +sv_grow, sv_inc, sv_insert, sv_isa, sv_isobject, sv_len, sv_len_utf8, +sv_magic, sv_mortalcopy, sv_newmortal, sv_pvn_force, sv_pvutf8n_force, +sv_reftype, sv_replace, 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_setsv, sv_setsv_mg, sv_setuv, sv_setuv_mg, +sv_true, sv_unmagic, sv_unref, sv_upgrade, sv_usepvn, sv_usepvn_mg, +sv_utf8_downgrade, sv_utf8_encode, sv_utf8_upgrade, sv_vcatpvfn, +sv_vsetpvfn, THIS, toLOWER, toUPPER, U8 *s, utf8_to_bytes, warn, XPUSHi, +XPUSHn, XPUSHp, XPUSHs, XPUSHu, XS, XSRETURN, XSRETURN_EMPTY, XSRETURN_IV, +XSRETURN_NO, XSRETURN_NV, XSRETURN_PV, XSRETURN_UNDEF, XSRETURN_YES, +XST_mIV, XST_mNO, XST_mNV, XST_mPV, XST_mUNDEF, XST_mYES, XS_VERSION, +XS_VERSION_BOOTCHECK, Zero + +=item AUTHORS + +=item SEE ALSO + +=back + +=head2 perlintern - autogenerated documentation of purely B + Perl functions + +=over + +=item DESCRIPTION + +is_gv_magical + +=item AUTHORS + +=item SEE ALSO + +=back + +=head2 perlapio - perl's IO abstraction interface. + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +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 + +=over + +=item Co-existence with stdio + +B, B, +B, B, B, +B, B, B, +B, B, +B, B, B, +B, B + +=back + +=back + +=head2 perltodo - Perl TO-DO List + +=over + +=item DESCRIPTION + +=item Infrastructure + +=over + +=item Mailing list archives + +=item Bug tracking system + +=item Regression Tests + +Coverage, Regression, __DIE__, suidperl, The 25% slowdown from perl4 to +perl5 + +=back + +=item Configure + +=over + +=item Install HTML + +=back + +=item Perl Language + +=over + +=item our ($var) + +=item 64-bit Perl + +=item Prototypes + +Named prototypes, Indirect objects, Method calls, Context, Scoped subs + +=back + +=item Perl Internals + +=over + +=item magic_setisa + +=item Garbage Collection + +=item Reliable signals + +Alternate runops() for signal despatch, Figure out how to die() in delayed +sighandler, Add tests for Thread::Signal, Automatic tests against CPAN + +=item Interpolated regex performance bugs + +=item Memory leaks from failed eval/regcomp + +=item Make XS easier to use + +=item Make embedded Perl easier to use + +=item Namespace cleanup + +=item MULTIPLICITY + +=item MacPerl + +=back + +=item Documentation + +=over + +=item A clear division into tutorial and reference + +=item Remove the artificial distinction between operators and functions + +=item More tutorials + +Regular expressions, I/O, pack/unpack, Debugging + +=item Include a search tool + +=item Include a locate tool + +=item Separate function manpages by default + +=item Users can't find the manpages + +=item Install ALL Documentation + +=item Outstanding issues to be documented + +=item Adapt www.linuxhq.com for Perl + +=item Replace man with a perl program + +=item Unicode tutorial + +=back + +=item Modules + +=over + +=item Update the POSIX extension to conform with the POSIX 1003.1 Edition 2 + +=item Module versions + +=item New modules + +=item Profiler + +=item Tie Modules + +VecArray, SubstrArray, VirtualArray, ShiftSplice + +=item Procedural options + +=item RPC + +=item y2k localtime/gmtime + +=item Export File::Find variables + +=item Ioctl + +=item Debugger attach/detach + +=item Regular Expression debugger + +=item Alternative RE Syntax + +=item Bundled modules + +=item Expect + +=item GUI::Native + +=item Update semibroken auxiliary tools; h2ph, a2p, etc. + +=item POD Converters + +=item pod2html + +=item Podchecker + +=back + +=item Tom's Wishes + +=over + +=item Webperl + +=item Mobile agents + +=item POSIX on non-POSIX + +=item Portable installations + +=back + +=item Win32 Stuff + +=over + +=item Rename new headers to be consistent with the rest + +=item Sort out the spawnvp() mess + +=item Work out DLL versioning + +=item Style-check + +=back + +=item Would be nice to have + +C, Contiguous bitfields in pack/unpack, lexperl, Bundled +perl preprocessor, Use posix calls internally where possible, format +BOTTOM, -i rename file only when successfully changed, All ARGV input +should act like <>, report HANDLE [formats], support in perlmain to rerun +debugger, lvalue functions + +=item Possible pragmas + +=over + +=item 'less' + +=back + +=item Optimizations + +=over + +=item constant function cache + +=item foreach(reverse...) + +=item Cache eval tree + +=item rcatmaybe + +=item Shrink opcode tables + +=item Cache hash value + +=item Optimize away @_ where possible + +=item Optimize sort by { $a <=> $b } + +=item Rewrite regexp parser for better integrated optimization + +=back + +=item Vague possibilities + +ref function in list context, make tr/// return histogram in list context?, +Loop control on do{} et al, Explicit switch statements, compile to real +threaded code, structured types, Modifiable $1 et al + +=item To Do Or Not To Do + +=over + +=item Making my() work on "package" variables + +=item "or" testing defined not truth + +=item "dynamic" lexicals + +=item "class"-based, rather than package-based "lexicals" + +=back + +=item Threading + +=over + +=item Modules + +=item Testing + +=item $AUTOLOAD + +=item exit/die + +=item External threads + +=item Thread::Pool + +=item thread-safety + +=item Per-thread GVs + +=back + +=item Compiler + +=over + +=item Optimization + +=item Byteperl + +=item Precompiled modules + +=item Executables + +=item Typed lexicals + +=item Win32 + +=item END blocks + +=item _AUTOLOAD + +=item comppadlist + +=item Cached compilation + +=back + +=item Recently Finished Tasks + +=over + +=item Figure a way out of $^(capital letter) + +=item Filenames + +=item Foreign lines + +=item Namespace cleanup + +=item ISA.pm + +=item gettimeofday + +=item autocroak? + +=back + +=back + +=head2 perlhack - How to hack at the Perl internals + +=over + +=item DESCRIPTION + +Does concept match the general goals of Perl?, Where is the +implementation?, Backwards compatibility, Could it be a module instead?, Is +the feature generic enough?, Does it potentially introduce new bugs?, Does +it preclude other desirable features?, Is the implementation robust?, Is +the implementation generic enough to be portable?, Is there enough +documentation?, Is there another way to do it?, Does it create too much +work?, Patches speak louder than words, L, L and +L, L, F, The perl5-porters FAQ + +=over + +=item Finding Your Way Around + +Core modules, Documentation, Configure, Interpreter + +=item Elements of the interpreter + +Startup, Parsing, Optimization, Running + +=item Internal Variable Types + +=item Op Trees + +=item Stacks + +Argument stack, Mark stack, Save stack + +=item Millions of Macros + +=item Poking at Perl + +=item Using a source-level debugger + +run [args], break function_name, break source.c:xxx, step, next, continue, +finish, print + +=item Dumping Perl Data Structures + +=item Patching + +=item CONCLUSION + +I + +=back + +=item AUTHOR + +=back + +=head2 perlhist - the Perl history records + +=over + +=item DESCRIPTION + +=item INTRODUCTION + +=item THE KEEPERS OF THE PUMPKIN + +=over + +=item PUMPKIN? + +=back + +=item THE RECORDS + +=over + +=item SELECTED RELEASE SIZES + +=item SELECTED PATCH SIZES + +=back + +=item THE KEEPERS OF THE RECORDS + +=back + +=head2 perldelta - what's new for perl v5.7.0 + +=over + +=item DESCRIPTION + +=item Security Vulnerability Closed + +=item Incompatible Changes + +=item Core Enhancements + +=item Modules and Pragmata + +=over + +=item New Modules + +=item Updated And Improved Modules and Pragmata + +=back + +=item Utility Changes + +=item New Documentation + +=item Performance Enhancements + +=item Installation and Configuration Improvements + +=over + +=item Generic Improvements + +=back + +=item Selected Bug Fixes + +sort() arguments are now compiled in the right wantarray context (they were +accidentally using the context of the sort() itself) + +=over + +=item Platform Specific Changes and Fixes + +=back + +=item New or Changed Diagnostics + +=item Changed Internals + +=item Known Problems + +=over + +=item Unicode Support Still Far From Perfect + +=item EBCDIC Still A Lost Platform + +=item Building Extensions Can Fail Because Of Largefiles + +In string, @%s now must be written as \@%s + +=back + +=item Reporting Bugs + +=item SEE ALSO + +=item HISTORY + +=back + +=head2 perl56delta, perldelta - what's new for perl v5.6.0 + +=over + +=item DESCRIPTION + +=item Core Enhancements + +=over + +=item Interpreter cloning, threads, and concurrency + +=item Lexically scoped warning categories + +=item Unicode and UTF-8 support + +=item Support for interpolating named characters + +=item "our" declarations + +=item Support for strings represented as a vector of ordinals + +=item Improved Perl version numbering system + +=item New syntax for declaring subroutine attributes + +=item File and directory handles can be autovivified + +=item open() with more than two arguments + +=item 64-bit support + +=item Large file support + +=item Long doubles + +=item "more bits" + +=item Enhanced support for sort() subroutines + +=item C allowed + +=item File globbing implemented internally + +=item Support for CHECK blocks + +=item POSIX character class syntax [: :] supported + +=item Better pseudo-random number generator + +=item Improved C operator + +=item Better worst-case behavior of hashes + +=item pack() format 'Z' supported + +=item pack() format modifier '!' supported + +=item pack() and unpack() support counted strings + +=item Comments in pack() templates + +=item Weak references + +=item Binary numbers supported + +=item Lvalue subroutines + +=item Some arrows may be omitted in calls through references + +=item Boolean assignment operators are legal lvalues + +=item exists() is supported on subroutine names + +=item exists() and delete() are supported on array elements + +=item Pseudo-hashes work better + +=item Automatic flushing of output buffers + +=item Better diagnostics on meaningless filehandle operations + +=item Where possible, buffered data discarded from duped input filehandle + +=item eof() has the same old magic as <> + +=item binmode() can be used to set :crlf and :raw modes + +=item C<-T> filetest recognizes UTF-8 encoded files as "text" + +=item system(), backticks and pipe open now reflect exec() failure + +=item Improved diagnostics + +=item Diagnostics follow STDERR + +=item More consistent close-on-exec behavior + +=item syswrite() ease-of-use + +=item Better syntax checks on parenthesized unary operators + +=item Bit operators support full native integer width + +=item Improved security features + +=item More functional bareword prototype (*) + +=item C and C may be overridden + +=item $^X variables may now have names longer than one character + +=item New variable $^C reflects C<-c> switch + +=item New variable $^V contains Perl version as a string + +=item Optional Y2K warnings + +=item Arrays now always interpolate into double-quoted strings + +=back + +=item Modules and Pragmata + +=over + +=item Modules + +attributes, B, Benchmark, ByteLoader, constant, charnames, Data::Dumper, +DB, DB_File, Devel::DProf, Devel::Peek, Dumpvalue, DynaLoader, English, +Env, Fcntl, File::Compare, File::Find, File::Glob, File::Spec, +File::Spec::Functions, Getopt::Long, IO, JPL, lib, Math::BigInt, +Math::Complex, Math::Trig, Pod::Parser, Pod::InputObjects, Pod::Checker, +podchecker, Pod::ParseUtils, Pod::Find, Pod::Select, podselect, Pod::Usage, +pod2usage, Pod::Text and Pod::Man, SDBM_File, Sys::Syslog, Sys::Hostname, +Term::ANSIColor, Time::Local, Win32, XSLoader, DBM Filters + +=item Pragmata + +=back + +=item Utility Changes + +=over + +=item dprofpp + +=item find2perl + +=item h2xs + +=item perlcc + +=item perldoc + +=item The Perl Debugger + +=back + +=item Improved Documentation + +perlapi.pod, perlboot.pod, perlcompile.pod, perldbmfilter.pod, +perldebug.pod, perldebguts.pod, perlfork.pod, perlfilter.pod, perlhack.pod, +perlintern.pod, perllexwarn.pod, perlnumber.pod, perlopentut.pod, +perlreftut.pod, perltootc.pod, perltodo.pod, perlunicode.pod + +=item Performance enhancements + +=over + +=item Simple sort() using { $a <=> $b } and the like are optimized + +=item Optimized assignments to lexical variables + +=item Faster subroutine calls + +=item delete(), each(), values() and hash iteration are faster + +=back + +=item Installation and Configuration Improvements + +=over + +=item -Dusethreads means something different + +=item New Configure flags + +=item Threadedness and 64-bitness now more daring + +=item Long Doubles + +=item -Dusemorebits + +=item -Duselargefiles + +=item installusrbinperl + +=item SOCKS support + +=item C<-A> flag + +=item Enhanced Installation Directories + +=back + +=item Platform specific changes + +=over + +=item Supported platforms + +=item DOS + +=item OS390 (OpenEdition MVS) + +=item VMS + +=item Win32 + +=back + +=item Significant bug fixes + +=over + +=item on empty files + +=item C improvements + +=item All compilation errors are true errors + +=item Implicitly closed filehandles are safer + +=item Behavior of list slices is more consistent + +=item C<(\$)> prototype and C<$foo{a}> + +=item C and AUTOLOAD + +=item C<-bareword> allowed under C + +=item Failures in DESTROY() + +=item Locale bugs fixed + +=item Memory leaks + +=item Spurious subroutine stubs after failed subroutine calls + +=item Taint failures under C<-U> + +=item END blocks and the C<-c> switch + +=item Potential to leak DATA filehandles + +=back + +=item New or Changed Diagnostics + +"%s" variable %s masks earlier declaration in same %s, "my sub" not yet +implemented, "our" variable %s redeclared, '!' allowed only after types %s, +/ cannot take a count, / must be followed by a, A or Z, / must be followed +by a*, A* or Z*, / must follow a numeric type, /%s/: Unrecognized escape +\\%c passed through, /%s/: Unrecognized escape \\%c in character class +passed through, /%s/ should probably be written as "%s", %s() called too +early to check prototype, %s argument is not a HASH or ARRAY element, %s +argument is not a HASH or ARRAY element or slice, %s argument is not a +subroutine name, %s package attribute may clash with future reserved word: +%s, (in cleanup) %s, <> should be quotes, Attempt to join self, Bad evalled +substitution pattern, Bad realloc() ignored, Bareword found in conditional, +Binary number > 0b11111111111111111111111111111111 non-portable, Bit vector +size > 32 non-portable, Buffer overflow in prime_env_iter: %s, Can't check +filesystem of script "%s", Can't declare class for non-scalar %s in "%s", +Can't declare %s in "%s", Can't ignore signal CHLD, forcing to default, +Can't modify non-lvalue subroutine call, Can't read CRTL environ, Can't +remove %s: %s, skipping file, Can't return %s from lvalue subroutine, Can't +weaken a nonreference, Character class [:%s:] unknown, Character class +syntax [%s] belongs inside character classes, Constant is not %s reference, +constant(%s): %s, CORE::%s is not a keyword, defined(@array) is deprecated, +defined(%hash) is deprecated, Did not produce a valid header, (Did you mean +"local" instead of "our"?), Document contains no data, entering effective +%s failed, false [] range "%s" in regexp, Filehandle %s opened only for +output, flock() on closed filehandle %s, Global symbol "%s" requires +explicit package name, Hexadecimal number > 0xffffffff non-portable, +Ill-formed CRTL environ value "%s", Ill-formed message in prime_env_iter: +|%s|, Illegal binary digit %s, Illegal binary digit %s ignored, Illegal +number of bits in vec, Integer overflow in %s number, Invalid %s attribute: +%s, Invalid %s attributes: %s, invalid [] range "%s" in regexp, Invalid +separator character %s in attribute list, Invalid separator character %s in +subroutine attribute list, leaving effective %s failed, Lvalue subs +returning %s not implemented yet, Method %s not permitted, Missing +%sbrace%s on \N{}, Missing command in piped open, Missing name in "my sub", +No %s specified for -%c, No package name allowed for variable %s in "our", +No space allowed after -%c, no UTC offset information; assuming local time +is UTC, Octal number > 037777777777 non-portable, panic: del_backref, +panic: kid popen errno read, panic: magic_killbackrefs, Parentheses missing +around "%s" list, Possible unintended interpolation of %s in string, +Possible Y2K bug: %s, pragma "attrs" is deprecated, use "sub NAME : ATTRS" +instead, Premature end of script headers, Repeat count in pack overflows, +Repeat count in unpack overflows, realloc() of freed memory ignored, +Reference is already weak, setpgrp can't take arguments, Strange *+?{} on +zero-length expression, switching effective %s is not implemented, This +Perl can't reset CRTL environ elements (%s), This Perl can't set CRTL +environ elements (%s=%s), Too late to run %s block, Unknown open() mode +'%s', Unknown process %x sent message to prime_env_iter: %s, Unrecognized +escape \\%c passed through, Unterminated attribute parameter in attribute +list, Unterminated attribute list, Unterminated attribute parameter in +subroutine attribute list, Unterminated subroutine attribute list, Value of +CLI symbol "%s" too long, Version number must be a constant number + +=item New tests + +=item Incompatible Changes + +=over + +=item Perl Source Incompatibilities + +CHECK is a new keyword, Treatment of list slices of undef has changed, +Format of $English::PERL_VERSION is different, Literals of the form +C<1.2.3> parse differently, Possibly changed pseudo-random number +generator, Hashing function for hash keys has changed, C fails on +read only values, Close-on-exec bit may be set on pipe and socket handles, +Writing C<"$$1"> to mean C<"${$}1"> is unsupported, delete(), values() and +C<\(%h)> operate on aliases to values, not copies, vec(EXPR,OFFSET,BITS) +enforces powers-of-two BITS, Text of some diagnostic output has changed, +C<%@> has been removed, Parenthesized not() behaves like a list operator, +Semantics of bareword prototype C<(*)> have changed, Semantics of bit +operators may have changed on 64-bit platforms, More builtins taint their +results + +=item C Source Incompatibilities + +C, C, C + +=item Compatible C Source API Changes + +C is now C + +=item Binary Incompatibilities + +=back + +=item Known Problems + +=over + +=item Thread test failures + +=item EBCDIC platforms not supported + +=item In 64-bit HP-UX the lib/io_multihomed test may hang + +=item NEXTSTEP 3.3 POSIX test failure + +=item Tru64 (aka Digital UNIX, aka DEC OSF/1) lib/sdbm test failure with +gcc + +=item UNICOS/mk CC failures during Configure run + +=item Arrow operator and arrays + +=item Experimental features + +Threads, Unicode, 64-bit support, Lvalue subroutines, Weak references, The +pseudo-hash data type, The Compiler suite, Internal implementation of file +globbing, The DB module, The regular expression constructs C<(?{ code })> +and C<(??{ code })> + +=back + +=item Obsolete Diagnostics + +Character class syntax [: :] is reserved for future extensions, Ill-formed +logical name |%s| in prime_env_iter, In string, @%s now must be written as +\@%s, Probable precedence problem on %s, regexp too big, Use of "$$" +to mean "${$}" is deprecated + +=item Reporting Bugs + +=item SEE ALSO + +=item HISTORY + +=back + +=head2 perl5005delta, perldelta - what's new for perl5.005 + +=over + +=item DESCRIPTION + +=item About the new versioning system + +=item Incompatible Changes + +=over + +=item WARNING: This version is not binary compatible with Perl 5.004. + +=item Default installation structure has changed + +=item Perl Source Compatibility + +=item C Source Compatibility + +Core sources now require ANSI C compiler, All Perl global variables must +now be referenced with an explicit prefix, Enabling threads has source +compatibility issues + +=item Binary Compatibility + +=item Security fixes may affect compatibility + +=item Relaxed new mandatory warnings introduced in 5.004 + +=item Licensing + +=back + +=item Core Changes + +=over + +=item Threads + +=item Compiler + +=item Regular Expressions + +Many new and improved optimizations, Many bug fixes, New regular expression +constructs, New operator for precompiled regular expressions, Other +improvements, Incompatible changes + +=item Improved malloc() + +=item Quicksort is internally implemented + +=item Reliable signals + +=item Reliable stack pointers + +=item More generous treatment of carriage returns + +=item Memory leaks + +=item Better support for multiple interpreters + +=item Behavior of local() on array and hash elements is now well-defined + +=item C<%!> is transparently tied to the L module + +=item Pseudo-hashes are supported + +=item C is supported + +=item Keywords can be globally overridden + +=item C<$^E> is meaningful on Win32 + +=item C optimized + +=item C can be used as implicitly quoted package name + +=item C tests existence of a package + +=item Better locale support + +=item Experimental support for 64-bit platforms + +=item prototype() returns useful results on builtins + +=item Extended support for exception handling + +=item Re-blessing in DESTROY() supported for chaining DESTROY() methods + +=item All C format conversions are handled internally + +=item New C keyword + +=item New C keyword + +=item New C operator + +=item C is now a reserved word + +=item Tied arrays are now fully supported + +=item Tied handles support is better + +=item 4th argument to substr + +=item Negative LENGTH argument to splice + +=item Magic lvalues are now more magical + +=item <> now reads in records + +=back + +=item Supported Platforms + +=over + +=item New Platforms + +=item Changes in existing support + +=back + +=item Modules and Pragmata + +=over + +=item New Modules + +B, Data::Dumper, Dumpvalue, Errno, File::Spec, ExtUtils::Installed, +ExtUtils::Packlist, Fatal, IPC::SysV, Test, Tie::Array, Tie::Handle, +Thread, attrs, fields, re + +=item Changes in existing modules + +Benchmark, Carp, CGI, Fcntl, Math::Complex, Math::Trig, POSIX, DB_File, +MakeMaker, CPAN, Cwd, Benchmark + +=back + +=item Utility Changes + +=item Documentation Changes + +=item New Diagnostics + +Ambiguous call resolved as CORE::%s(), qualify as such or use &, Bad index +while coercing array into hash, Bareword "%s" refers to nonexistent +package, Can't call method "%s" on an undefined value, Can't check +filesystem of script "%s" for nosuid, Can't coerce array into hash, Can't +goto subroutine from an eval-string, Can't localize pseudo-hash element, +Can't use %%! because Errno.pm is not available, Cannot find an opnumber +for "%s", Character class syntax [. .] is reserved for future extensions, +Character class syntax [: :] is reserved for future extensions, Character +class syntax [= =] is reserved for future extensions, %s: Eval-group in +insecure regular expression, %s: Eval-group not allowed, use re 'eval', %s: +Eval-group not allowed at run time, Explicit blessing to '' (assuming +package main), Illegal hex digit ignored, No such array field, No such +field "%s" in variable %s of type %s, Out of memory during ridiculously +large request, Range iterator outside integer range, Recursive inheritance +detected while looking for method '%s' in package '%s', Reference found +where even-sized list expected, Undefined value assigned to typeglob, Use +of reserved word "%s" is deprecated, perl: warning: Setting locale failed + +=item Obsolete Diagnostics + +Can't mktemp(), Can't write to temp file for B<-e>: %s, Cannot open +temporary file, regexp too big + +=item Configuration Changes + +=item BUGS + +=item SEE ALSO + +=item HISTORY + +=back + +=head2 perl5004delta, perldelta - what's new for perl5.004 + +=over + +=item DESCRIPTION + +=item Supported Environments + +=item Core Changes + +=over + +=item List assignment to %ENV works + +=item "Can't locate Foo.pm in @INC" error now lists @INC + +=item Compilation option: Binary compatibility with 5.003 + +=item $PERL5OPT environment variable + +=item Limitations on B<-M>, B<-m>, and B<-T> options + +=item More precise warnings + +=item Deprecated: Inherited C for non-methods + +=item Previously deprecated %OVERLOAD is no longer usable + +=item Subroutine arguments created only when they're modified + +=item Group vector changeable with C<$)> + +=item Fixed parsing of $$, &$, etc. + +=item Fixed localization of $, $&, etc. + +=item No resetting of $. on implicit close + +=item C may return undef + +=item C determines value of EXPR in scalar context + +=item Changes to tainting checks + +No glob() or <*>, No spawning if tainted $CDPATH, $ENV, $BASH_ENV, No +spawning if tainted $TERM doesn't look like a terminal name + +=item New Opcode module and revised Safe module + +=item Embedding improvements + +=item Internal change: FileHandle class based on IO::* classes + +=item Internal change: PerlIO abstraction interface + +=item New and changed syntax + +$coderef->(PARAMS) + +=item New and changed builtin constants + +__PACKAGE__ + +=item New and changed builtin variables + +$^E, $^H, $^M + +=item New and changed builtin functions + +delete on slices, flock, printf and sprintf, keys as an lvalue, my() in +Control Structures, pack() and unpack(), sysseek(), use VERSION, use Module +VERSION LIST, prototype(FUNCTION), srand, $_ as Default, C does not +reset search position on failure, C ignores whitespace before ?*+{}, +nested C closures work now, formats work right on changing lexicals + +=item New builtin methods + +isa(CLASS), can(METHOD), VERSION( [NEED] ) + +=item TIEHANDLE now supported + +TIEHANDLE classname, LIST, PRINT this, LIST, PRINTF this, LIST, READ this +LIST, READLINE this, GETC this, DESTROY this + +=item Malloc enhancements + +-DPERL_EMERGENCY_SBRK, -DPACK_MALLOC, -DTWO_POT_OPTIMIZE + +=item Miscellaneous efficiency enhancements + +=back + +=item Support for More Operating Systems + +=over + +=item Win32 + +=item Plan 9 + +=item QNX + +=item AmigaOS + +=back + +=item Pragmata + +use autouse MODULE => qw(sub1 sub2 sub3), use blib, use blib 'dir', use +constant NAME => VALUE, use locale, use ops, use vmsish + +=item Modules + +=over + +=item Required Updates + +=item Installation directories + +=item Module information summary + +=item Fcntl + +=item IO + +=item Math::Complex + +=item Math::Trig + +=item DB_File + +=item Net::Ping + +=item Object-oriented overrides for builtin operators + +=back + +=item Utility Changes + +=over + +=item pod2html + +Sends converted HTML to standard output + +=item xsubpp + +C XSUBs now default to returning nothing + +=back + +=item C Language API Changes + +C and C, C, Extended API for +manipulating hashes + +=item Documentation Changes + +L, L, L, L, L, +L, L, L + +=item New Diagnostics + +"my" variable %s masks earlier declaration in same scope, %s argument is +not a HASH element or slice, Allocation too large: %lx, Allocation too +large, Applying %s to %s will act on scalar(%s), Attempt to free +nonexistent shared string, Attempt to use reference as lvalue in substr, +Bareword "%s" refers to nonexistent package, Can't redefine active sort +subroutine %s, Can't use bareword ("%s") as %s ref while "strict refs" in +use, Cannot resolve method `%s' overloading `%s' in package `%s', Constant +subroutine %s redefined, Constant subroutine %s undefined, Copy method did +not return a reference, Died, Exiting pseudo-block via %s, Identifier too +long, Illegal character %s (carriage return), Illegal switch in PERL5OPT: +%s, Integer overflow in hex number, Integer overflow in octal number, +internal error: glob failed, Invalid conversion in %s: "%s", Invalid type +in pack: '%s', Invalid type in unpack: '%s', Name "%s::%s" used only once: +possible typo, Null picture in formline, Offset outside string, Out of +memory!, Out of memory during request for %s, panic: frexp, Possible +attempt to put comments in qw() list, Possible attempt to separate words +with commas, Scalar value @%s{%s} better written as $%s{%s}, Stub found +while resolving method `%s' overloading `%s' in package `%s', Too late for +"B<-T>" option, untie attempted while %d inner references still exist, +Unrecognized character %s, Unsupported function fork, Use of "$$" to +mean "${$}" is deprecated, Value of %s can be "0"; test with +defined(), Variable "%s" may be unavailable, Variable "%s" will not stay +shared, Warning: something's wrong, Ill-formed logical name |%s| in +prime_env_iter, Got an error from DosAllocMem, Malformed PERLLIB_PREFIX, +PERL_SH_DIR too long, Process terminated by SIG%s + +=item BUGS + +=item SEE ALSO + +=item HISTORY + +=back + +=head2 perlamiga - Perl under Amiga OS (possibly very outdated information) + +=over + +=item SYNOPSIS + +=back + +=over + +=item DESCRIPTION + +=over + +=item Prerequisites + +B, B + +=item Starting Perl programs under AmigaOS + +=item Shortcomings of Perl under AmigaOS + +fork(), some features of the UNIX filesystem regarding link count and file +dates, inplace operation (the -i switch) without backup file, umask() +works, but the correct permissions are only set when the file is +finally close()d + +=back + +=item INSTALLATION + +=item Accessing documentation + +=over + +=item Manpages + +=item B + +=item B C files + +=item C docs + +=back + +=item BUILD + +=over + +=item Prerequisites + +=item Getting the perl source + +=item Making + +=item Testing + +=item Installing the built perl + +=back + +=item AUTHOR + +=item SEE ALSO + +=back + +=head2 perlcygwin, README.cygwin - Perl for Cygwin + +=over + +=item SYNOPSIS + +=item PREREQUISITES + +=over + +=item Cygwin = GNU+Cygnus+Windows (Don't leave UNIX without it) + +=item Cygwin Configuration + +C, I, Permissions + +=back + +=item CONFIGURE + +=over + +=item Strip Binaries + +=item Optional Libraries + +C<-lcrypt>, C<-lgdbm> (C), C<-ldb> (C), +C<-lcygipc> (C) + +=item Configure-time Options + +C<-Uusedl>, C<-Uusemymalloc>, C<-Dusemultiplicity>, C<-Duseperlio>, +C<-Duse64bitint>, C<-Duselongdouble>, C<-Dusethreads>, C<-Duselargefiles> + +=item Suspicious Warnings + +I, Win9x and C, Checking how std your stdio is.., +Compiler/Preprocessor defines + +=back + +=item MAKE + +=over + +=item Warnings + +=item ld2 + +=back + +=item TEST + +=over + +=item File Permissions + +=item Hard Links + +=item Filetime Granularity + +=item Tainting Checks + +=item /etc/group + +=item Script Portability + +Pathnames, Text/Binary, F<.exe>, chown(), Miscellaneous + +=back + +=item INSTALL + +=item MANIFEST + +Documentation, Build, Configure, Make, Install, Tests, Compiled Perl +Source, Compiled Module Source, Perl Modules/Scripts + +=item BUGS + +=item AUTHORS + +=item HISTORY + +=back + +=head2 perldos - Perl under DOS, W31, W95. + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=over + +=item Prerequisites + +DJGPP, Pthreads + +=item Shortcomings of Perl under DOS + +=item Building + +=item Testing + +=item Installation + +=back + +=item AUTHOR + +=item SEE ALSO + +=back + +=head2 perlhpux, README.hpux - Perl version 5 on Hewlett-Packard Unix +(HP-UX) systems + +=over + +=item DESCRIPTION + +=over + +=item Compiling Perl 5 on HP-UX + +=item PA-RISC + +=item PA-RISC 1.0 + +=item PA-RISC 1.1 + +=item PA-RISC 2.0 + +=item Portability Between PA-RISC Versions + +=item Building Dynamic Extensions on HP-UX + +=item The HP ANSI C Compiler + +=item Using Large Files with Perl + +=item Threaded Perl + +=item 64-bit Perl + +=item GDBM and Threads + +=item NFS filesystems and utime(2) + +=item perl -P and // + +=back + +=item AUTHOR + +=item DATE + +=back + +=head2 perlmachten, README.machten - Perl version 5 on Power MachTen +systems + +=over + +=item DESCRIPTION + +=over + +=item Compiling Perl 5 on MachTen + +=item Failures during C + +op/lexassign.t, pragma/warnings.t + +=item Building external modules + +=back + +=item AUTHOR + +=item DATE + +=back + +=head2 perlos2 - Perl under OS/2, DOS, Win0.3*, Win0.95 and WinNT. + +=over + +=item SYNOPSIS + +=back + +=over + +=item Target + +=item Other OSes + +=item Prerequisites + +EMX, RSX, HPFS, pdksh + +=item Starting Perl programs under OS/2 (and DOS and...) + +=item Starting OS/2 (and DOS) programs under Perl + +=back + +=over + +=item Frequently asked questions + +=over + +=item I cannot run external programs + +=item I cannot embed perl into my program, or use F from my +program. + +Is your program EMX-compiled with C<-Zmt -Zcrtdll>?, Did you use +L? + +=item C<``> and pipe-C do not work under DOS. + +=item Cannot start C + +=back + +=item INSTALLATION + +=over + +=item Automatic binary installation + +C, C, F + +=item Manual binary installation + +Perl VIO and PM executables (dynamically linked), Perl_ VIO executable +(statically linked), Executables for Perl utilities, Main Perl library, +Additional Perl modules, Tools to compile Perl modules, Manpages for Perl +and utilities, Manpages for Perl modules, Source for Perl documentation, +Perl manual in F<.INF> format, Pdksh + +=item B + +=back + +=item Accessing documentation + +=over + +=item OS/2 F<.INF> file + +=item Plain text + +=item Manpages + +=item HTML + +=item GNU C files + +=item F<.PDF> files + +=item C docs + +=back + +=item BUILD + +=over + +=item Prerequisites + +=item Getting perl source + +=item Application of the patches + +=item Hand-editing + +=item Making + +=item Testing + +A lot of C, Process terminated by SIGTERM/SIGINT, F, +F, F, F, F + +=item Installing the built perl + +=item C-style build + +=back + +=item Build FAQ + +=over + +=item Some C became C<\> in pdksh. + +=item C<'errno'> - unresolved external + +=item Problems with tr or sed + +=item Some problem (forget which ;-) + +=item Library ... not found + +=item Segfault in make + +=item op/sprintf test failure + +=back + +=item Specific (mis)features of OS/2 port + +=over + +=item C, C + +=item C + +=item C on the first line + +=item Additional modules: + +=item Prebuilt methods: + +C, C, C, + C, C, +C, C, +C, C, +C, C, +C + +=item Misfeatures + +=item Modifications + +C, C, C, C, C, C + +=back + +=item Perl flavors + +=over + +=item F + +=item F + +=item F + +=item F + +=item Why strange names? + +=item Why dynamic linking? + +=item Why chimera build? + +explicit fork(), open FH, "|-", open FH, "-|" + +=back + +=item ENVIRONMENT + +=over + +=item C + +=item C + +=item C + +=item C + +=item C + +=item C or C + +=back + +=item Evolution + +=over + +=item Priorities + +=item DLL name mangling + +=item Threading + +=item Calls to external programs + +=item Memory allocation + +=item Threads + +C, F + +=back + +=back + +=over + +=item AUTHOR + +=item SEE ALSO + +=back + +=head2 perlos390, README.os390 - building and installing Perl for OS/390. + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=over + +=item Unpacking + +=item Setup and utilities + +=item Configure + +=item Build, test, install + +=item Usage Hints + +=item Extensions + +=back + +=item AUTHORS + +=item SEE ALSO + +=over + +=item Mailing list + +=back + +=item HISTORY + +=back + +=head2 perlposix-bc, README.posix-bc - building and installing Perl for +BS2000 POSIX. + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=over + +=item gzip + +=item bison + +=item Unpacking + +=item Compiling + +=item Testing + +=item Install + +=item Using Perl + +=back + +=item AUTHORS + +=item SEE ALSO + +=over + +=item Mailing list + +=back + +=item HISTORY + +=back + +=head2 perlvms - VMS-specific documentation for Perl + +=over + +=item DESCRIPTION + +=item Installation + +=item Organization of Perl Images + +=over + +=item Core Images + +=item Perl Extensions + +=item Installing static extensions + +=item Installing dynamic extensions + +=back + +=item File specifications + +=over + +=item Syntax + +=item Wildcard expansion + +=item Pipes + +=back + +=item PERL5LIB and PERLLIB + +=item Command line + +=over + +=item I/O redirection and backgrounding + +=item Command line switches + +-i, -S, -u + +=back + +=item Perl functions + +File tests, backticks, binmode FILEHANDLE, crypt PLAINTEXT, USER, dump, +exec LIST, fork, getpwent, getpwnam, getpwuid, gmtime, kill, qx//, select +(system call), stat EXPR, system LIST, time, times, unlink LIST, utime +LIST, waitpid PID,FLAGS + +=item Perl variables + +%ENV, CRTL_ENV, CLISYM_[LOCAL], Any other string, $!, $^E, $?, $^S, $| + +=item Standard modules with VMS-specific differences + +=over + +=item SDBM_File + +=back + +=item Revision date + +=item AUTHOR + +=back + +=head2 perlwin32 - Perl under Win32 + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=over + +=item Setting Up + +Make, Command Shell, Borland C++, Microsoft Visual C++, Mingw32 with GCC + +=item Building + +=item Testing + +=item Installation + +=item Usage Hints + +Environment Variables, File Globbing, Using perl from the command line, +Building Extensions, Command-line Wildcard Expansion, Win32 Specific +Extensions, Running Perl Scripts, Miscellaneous Things + +=back + +=item BUGS AND CAVEATS + +=item AUTHORS + +=item SEE ALSO + +=item HISTORY + +=back + +=head1 PRAGMA DOCUMENTATION + +=head2 attrs - set/get attributes of a subroutine (deprecated) + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +method, locked + +=back + +=head2 re - Perl pragma to alter regular expression behaviour + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=back + +=head2 attributes - get/set subroutine or variable attributes + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=over + +=item Built-in Attributes + +locked, method, lvalue + +=item Available Subroutines + +get, reftype + +=item Package-specific Attribute Handling + +FETCH_I_ATTRIBUTES, MODIFY_I_ATTRIBUTES + +=item Syntax of Attribute Lists + +=back + +=item EXPORTS + +=over + +=item Default exports + +=item Available exports + +=item Export tags defined + +=back + +=item EXAMPLES + +=item SEE ALSO + +=back + +=head2 attrs - set/get attributes of a subroutine (deprecated) + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +method, locked + +=back + +=head2 autouse - postpone load of modules until a function is used + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=item WARNING + +=item AUTHOR + +=item SEE ALSO + +=back + +=head2 base - Establish IS-A relationship with base class at compile time + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=item HISTORY + +=item SEE ALSO + +=back + +=head2 blib - Use MakeMaker's uninstalled version of a package + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=item BUGS + +=item AUTHOR + +=back + +=head2 bytes - Perl pragma to force byte semantics rather than character +semantics + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=item SEE ALSO + +=back + +=head2 charnames - define character names for C<\N{named}> string literal +escape. + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=item CUSTOM TRANSLATORS + +=item BUGS + +=back + +=head2 constant - Perl pragma to declare constants + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=item NOTES + +=item TECHNICAL NOTE + +=item BUGS + +=item AUTHOR + +=item COPYRIGHT + +=back + +=head2 diagnostics - Perl compiler pragma to force verbose warning +diagnostics + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=over + +=item The C Pragma + +=item The I Program + +=back + +=item EXAMPLES + +=item INTERNALS + +=item BUGS + +=item AUTHOR + +=back + +=head2 fields - compile-time class fields + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +new, phash + +=item SEE ALSO + +=back + +=head2 filetest - Perl pragma to control the filetest permission operators + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=over + +=item subpragma access + +=back + +=back + +=head2 integer - Perl pragma to compute arithmetic in integer instead of +double + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=back + +=head2 less - perl pragma to request less of something from the compiler + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=back + +=head2 lib - manipulate @INC at compile time + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=over + +=item Adding directories to @INC + +=item Deleting directories from @INC + +=item Restoring original @INC + +=back + +=item SEE ALSO + +=item AUTHOR + +=back + +=head2 locale - Perl pragma to use and avoid POSIX locales for built-in +operations + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=back + +=head2 open - perl pragma to set default disciplines for input and output + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=item UNIMPLEMENTED FUNCTIONALITY + +=item SEE ALSO + +=back + +=head2 ops - Perl pragma to restrict unsafe operations when compiling + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=item SEE ALSO + +=back + +=head2 overload - Package for overloading perl operations + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=over + +=item Declaration of overloaded functions + +=item Calling Conventions for Binary Operations + +FALSE, TRUE, C + +=item Calling Conventions for Unary Operations + +=item Calling Conventions for Mutators + +C<++> and C<-->, C and other assignment versions + +=item Overloadable Operations + +I, I, I, +I, I, I, I, I, I + +=item Inheritance and overloading + +Strings as values of C directive, Overloading of an operation +is inherited by derived classes + +=back + +=item SPECIAL SYMBOLS FOR C + +=over + +=item Last Resort + +=item Fallback + +C, TRUE, defined, but FALSE + +=item Copy Constructor + +B + +=back + +=item MAGIC AUTOGENERATION + +I, I, +I, C, I, I, +I, I, I, I, +I + +=item Losing overloading + +=item Run-time Overloading + +=item Public functions + +overload::StrVal(arg), overload::Overloaded(arg), overload::Method(obj,op) + +=item Overloading constants + +integer, float, binary, q, qr + +=item IMPLEMENTATION + +=item Metaphor clash + +=item Cookbook + +=over + +=item Two-face scalars + +=item Two-face references + +=item Symbolic calculator + +=item I symbolic calculator + +=back + +=item AUTHOR + +=item DIAGNOSTICS + +=item BUGS + +=back + +=head2 re - Perl pragma to alter regular expression behaviour + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=back + +=head2 sigtrap - Perl pragma to enable simple signal handling + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=item OPTIONS + +=over + +=item SIGNAL HANDLERS + +B, B, B I + +=item SIGNAL LISTS + +B, B, B + +=item OTHER + +B, B, I, I + +=back + +=item EXAMPLES + +=back + +=head2 strict - Perl pragma to restrict unsafe constructs + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +C, C, C + +=back + +=head2 subs - Perl pragma to predeclare sub names + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=back + +=head2 utf8 - Perl pragma to enable/disable UTF-8 in source code + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=item SEE ALSO + +=back + +=head2 vars - Perl pragma to predeclare global variable names (obsolete) + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=back + +=head2 warnings - Perl pragma to control optional warnings + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +use warnings::register, warnings::enabled(), warnings::enabled($category), +warnings::enabled($object), warnings::warn($message), +warnings::warn($category, $message), warnings::warn($object, $message), +warnings::warnif($message), warnings::warnif($category, $message), +warnings::warnif($object, $message) + +=back + +=head2 warnings::register - warnings import function + +=head1 MODULE DOCUMENTATION + +=head2 AnyDBM_File - provide framework for multiple DBMs + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=over + +=item DBM Comparisons + +[0], [1], [2], [3] + +=back + +=item SEE ALSO + +=back + +=head2 AutoLoader - load subroutines only on demand + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=over + +=item Subroutine Stubs + +=item Using B's AUTOLOAD Subroutine + +=item Overriding B's AUTOLOAD Subroutine + +=item Package Lexicals + +=item Not Using AutoLoader + +=item B vs. B + +=back + +=item CAVEATS + +=item SEE ALSO + +=back + +=head2 AutoSplit - split a package for autoloading + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +$keep, $check, $modtime + +=over + +=item Multiple packages + +=back + +=item DIAGNOSTICS + +=back + +=head2 B - The Perl Compiler + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=item OVERVIEW OF CLASSES + +=over + +=item SV-RELATED CLASSES + +=item B::SV METHODS + +REFCNT, FLAGS + +=item B::IV METHODS + +IV, IVX, needs64bits, packiv + +=item B::NV METHODS + +NV, NVX + +=item B::RV METHODS + +RV + +=item B::PV METHODS + +PV + +=item B::PVMG METHODS + +MAGIC, SvSTASH + +=item B::MAGIC METHODS + +MOREMAGIC, PRIVATE, TYPE, FLAGS, OBJ, PTR + +=item B::PVLV METHODS + +TARGOFF, TARGLEN, TYPE, TARG + +=item B::BM METHODS + +USEFUL, PREVIOUS, RARE, TABLE + +=item B::GV METHODS + +is_empty, NAME, STASH, SV, IO, FORM, AV, HV, EGV, CV, CVGEN, LINE, FILE, +FILEGV, GvREFCNT, FLAGS + +=item B::IO METHODS + +LINES, PAGE, PAGE_LEN, LINES_LEFT, TOP_NAME, TOP_GV, FMT_NAME, FMT_GV, +BOTTOM_NAME, BOTTOM_GV, SUBPROCESS, IoTYPE, IoFLAGS + +=item B::AV METHODS + +FILL, MAX, OFF, ARRAY, AvFLAGS + +=item B::CV METHODS + +STASH, START, ROOT, GV, FILE, DEPTH, PADLIST, OUTSIDE, XSUB, XSUBANY, +CvFLAGS + +=item B::HV METHODS + +FILL, MAX, KEYS, RITER, NAME, PMROOT, ARRAY + +=item OP-RELATED CLASSES + +=item B::OP METHODS + +next, sibling, name, ppaddr, desc, targ, type, seq, flags, private + +=item B::UNOP METHOD + +first + +=item B::BINOP METHOD + +last + +=item B::LOGOP METHOD + +other + +=item B::LISTOP METHOD + +children + +=item B::PMOP METHODS + +pmreplroot, pmreplstart, pmnext, pmregexp, pmflags, pmpermflags, precomp + +=item B::SVOP METHOD + +sv, gv + +=item B::PADOP METHOD + +padix + +=item B::PVOP METHOD + +pv + +=item B::LOOP METHODS + +redoop, nextop, lastop + +=item B::COP METHODS + +label, stash, file, cop_seq, arybase, line + +=back + +=item FUNCTIONS EXPORTED BY C + +main_cv, init_av, main_root, main_start, comppadlist, sv_undef, sv_yes, +sv_no, amagic_generation, walkoptree(OP, METHOD), walkoptree_debug(DEBUG), +walksymtable(SYMREF, METHOD, RECURSE), svref_2object(SV), ppname(OPNUM), +hash(STR), cast_I32(I), minus_c, cstring(STR), class(OBJ), threadsv_names + +=item AUTHOR + +=back + +=head2 B::Asmdata - Autogenerated data about Perl ops, used to generate +bytecode + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=item AUTHOR + +=back + +=head2 B::Assembler - Assemble Perl bytecode + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=item AUTHORS + +=back + +=head2 B::Bblock - Walk basic blocks + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=item AUTHOR + +=back + +=head2 B::Bytecode - Perl compiler's bytecode backend + +=over + +=item SYNOPSIS + +=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<-Ppackage> Stores package in the +output. =back + +=item EXAMPLES + +=item BUGS + +=item AUTHORS + +=back + +=head2 B::C - Perl compiler's C backend + +=over + +=item SYNOPSIS + +=item DESCRIPTION + +=item OPTIONS + +B<-ofilename>, B<-v>, B<-->, B<-uPackname>, B<-D>, B<-Do>, B<-Dc>, B<-DA>, +B<-DC>, B<-DM>, B<-f>, B<-fcog>, B<-fno-cog>, B<-On>, B<-llimit> + +=item EXAMPLES + +=item BUGS + +=item AUTHOR + +=back + +=head2 B::CC - Perl compiler's optimized C translation backend + +=over + +=item SYNOPSIS + +=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 BUGS -=item The setlocale function +=item DIFFERENCES -=item Finding locales +=over -=item LOCALE PROBLEMS +=item Loops -=item Temporarily fixing locale problems +=item Context of ".." -=item Permanently fixing locale problems +=item Arithmetic -=item Permanently fixing your locale configuration +=item Deprecated features -=item Fixing system locale configuration +=back -=item The localeconv function +=item AUTHOR =back -=item LOCALE CATEGORIES +=head2 B::Debug - Walk Perl syntax tree, printing debug info about ops =over -=item Category LC_COLLATE: Collation - -=item Category LC_CTYPE: Character Types +=item SYNOPSIS -=item Category LC_NUMERIC: Numeric Formatting +=item DESCRIPTION -=item Category LC_MONETARY: Formatting of monetary amounts +=item AUTHOR -=item LC_TIME +=back -=item Other categories +=head2 B::Deparse - Perl compiler backend to produce perl code -=back +=over -=item SECURITY +=item SYNOPSIS -B (C, C, C, C and C):, -B (with C<\l>, C<\L>, C<\u> or C<\U>), -B (C):, B (C):, -B (sprintf()):, B (printf() and write()):, B (lc(), -lcfirst(), uc(), ucfirst()):, B -(localeconv(), strcoll(),strftime(), strxfrm()):, B (isalnum(), isalpha(), isdigit(),isgraph(), islower(), isprint(), -ispunct(), isspace(), isupper(), -isxdigit()): +=item DESCRIPTION -=item ENVIRONMENT +=item OPTIONS -PERL_BADLANG, LC_ALL, LANGUAGE, LC_CTYPE, LC_COLLATE, LC_MONETARY, -LC_NUMERIC, LC_TIME, LANG +B<-l>, B<-p>, B<-q>, B<-u>I, B<-s>I, B, BI, +B, BIB<.> -=item NOTES +=item USING B::Deparse AS A MODULE =over -=item Backward compatibility +=item Synopsis -=item I18N:Collate obsolete +=item Description -=item Sort speed and memory use impacts +=item new -=item write() and LC_NUMERIC +=item coderef2text -=item Freely available locale definitions +=back -=item I18n and l10n +=item BUGS -=item An imperfect standard +=item AUTHOR =back -=item BUGS +=head2 B::Disassembler - Disassemble Perl bytecode =over -=item Broken systems +=item SYNOPSIS -=back +=item DESCRIPTION -=item SEE ALSO +=item AUTHOR -=item HISTORY +=back -=head2 perlref - Perl references and nested data structures +=head2 B::Lint - Perl lint -=item NOTE +=over -=item DESCRIPTION +=item SYNOPSIS -=over +=item DESCRIPTION -=item Making References +=item OPTIONS AND LINT CHECKS -=item Using References +B, B and B, B, +B, B, B, B, B -=item Symbolic references +=item NON LINT-CHECK OPTIONS -=item Not-so-symbolic references +B<-u Package> -=item Pseudo-hashes: Using an array as a hash +=item BUGS -=item Function Templates +=item AUTHOR =back -=item WARNING +=head2 B::O, O - Generic interface to Perl Compiler backends -=item SEE ALSO +=over -=head2 perlreftut - Mark's very short tutorial about references +=item SYNOPSIS =item DESCRIPTION -=item Who Needs Complicated Data Structures? +=item CONVENTIONS -=item The Solution +=item IMPLEMENTATION -=item Syntax +=item AUTHOR + +=back + +=head2 B::Showlex - Show lexical variables used in functions or files =over -=item Making References +=item SYNOPSIS -=item Using References +=item DESCRIPTION + +=item AUTHOR =back -=item An Example +=head2 B::Stackobj - Helper module for CC backend -=item Arrow Rule +=over -=item Solution +=item SYNOPSIS -=item The Rest +=item DESCRIPTION -=item Summary +=item AUTHOR -=item Credits +=back + +=head2 B::Stash - show what stashes are loaded + +=head2 B::Terse - Walk Perl syntax tree, printing terse info about ops =over -=item Distribution Conditions +=item SYNOPSIS + +=item DESCRIPTION + +=item AUTHOR =back -=head2 perldsc - Perl Data Structures Cookbook +=head2 B::Xref - Generates cross reference reports for Perl programs -=item DESCRIPTION +=over -arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes, -more elaborate constructs +=item SYNOPSIS -=item REFERENCES +=item DESCRIPTION -=item COMMON MISTAKES +=item OPTIONS -=item CAVEAT ON PRECEDENCE +C<-oFILENAME>, C<-r>, C<-D[tO]> -=item WHY YOU SHOULD ALWAYS C +=item BUGS -=item DEBUGGING +=item AUTHOR -=item CODE EXAMPLES +=back -=item ARRAYS OF ARRAYS +=head2 Bblock, B::Bblock - Walk basic blocks =over -=item Declaration of a ARRAY OF ARRAYS +=item SYNOPSIS -=item Generation of a ARRAY OF ARRAYS +=item DESCRIPTION -=item Access and Printing of a ARRAY OF ARRAYS +=item AUTHOR =back -=item HASHES OF ARRAYS +=head2 Benchmark - benchmark running times of Perl code =over -=item Declaration of a HASH OF ARRAYS +=item SYNOPSIS -=item Generation of a HASH OF ARRAYS +=item DESCRIPTION -=item Access and Printing of a HASH OF ARRAYS +=over -=back +=item Methods -=item ARRAYS OF HASHES +new, debug, iters -=over +=item Standard Exports -=item Declaration of a ARRAY OF HASHES +timeit(COUNT, CODE), timethis ( COUNT, CODE, [ TITLE, [ STYLE ]] ), +timethese ( COUNT, CODEHASHREF, [ STYLE ] ), timediff ( T1, T2 ), timestr ( +TIMEDIFF, [ STYLE, [ FORMAT ] ] ) -=item Generation of a ARRAY OF HASHES +=item Optional Exports -=item Access and Printing of a ARRAY OF HASHES +clearcache ( COUNT ), clearallcache ( ), cmpthese ( COUT, CODEHASHREF, [ +STYLE ] ), cmpthese ( RESULTSHASHREF ), countit(TIME, CODE), disablecache ( +), enablecache ( ), timesum ( T1, T2 ) =back -=item HASHES OF HASHES +=item NOTES -=over +=item EXAMPLES -=item Declaration of a HASH OF HASHES +=item INHERITANCE -=item Generation of a HASH OF HASHES +=item CAVEATS -=item Access and Printing of a HASH OF HASHES +=item SEE ALSO + +=item AUTHORS + +=item MODIFICATION HISTORY =back -=item MORE ELABORATE RECORDS +=head2 ByteLoader - load byte compiled perl code =over -=item Declaration of MORE ELABORATE RECORDS +=item SYNOPSIS -=item Declaration of a HASH OF COMPLEX RECORDS +=item DESCRIPTION -=item Generation of a HASH OF COMPLEX RECORDS +=item AUTHOR -=back +=item SEE ALSO -=item Database Ties +=back -=item SEE ALSO +=head2 Bytecode, B::Bytecode - Perl compiler's bytecode backend -=item AUTHOR +=over -=head2 perllol - Manipulating Arrays of Arrays in Perl +=item SYNOPSIS =item DESCRIPTION -=item Declaration and Access of Arrays of Arrays +=item OPTIONS -=item Growing Your Own +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<-Ppackage> Stores package in the +output. =back -=item Access and Printing +=item EXAMPLES -=item Slices +=item BUGS -=item SEE ALSO +=item AUTHORS -=item AUTHOR +=back -=head2 perltoot - Tom's object-oriented tutorial for perl +=head2 CGI - Simple Common Gateway Interface Class -=item DESCRIPTION +=over -=item Creating a Class +=item SYNOPSIS + +=item ABSTRACT + +=item DESCRIPTION =over -=item Object Representation +=item PROGRAMMING STYLE -=item Class Interface +=item CALLING CGI.PM ROUTINES -=item Constructors and Instance Methods +1. Use another name for the argument, if one is available. For example, +-value is an alias for -values, 2. Change the capitalization, e.g. -Values, +3. Put quotes around the argument name, e.g. '-values' -=item Planning for the Future: Better Constructors +=item CREATING A NEW QUERY OBJECT (OBJECT-ORIENTED STYLE): -=item Destructors +=item CREATING A NEW QUERY OBJECT FROM AN INPUT FILE -=item Other Object Methods +=item FETCHING A LIST OF KEYWORDS FROM THE QUERY: -=back +=item FETCHING THE NAMES OF ALL THE PARAMETERS PASSED TO YOUR SCRIPT: -=item Class Data +=item FETCHING THE VALUE OR VALUES OF A SINGLE NAMED PARAMETER: -=over +=item SETTING THE VALUE(S) OF A NAMED PARAMETER: -=item Accessing Class Data +=item APPENDING ADDITIONAL VALUES TO A NAMED PARAMETER: -=item Debugging Methods +=item IMPORTING ALL PARAMETERS INTO A NAMESPACE: -=item Class Destructors +=item DELETING A PARAMETER COMPLETELY: -=item Documenting the Interface +=item DELETING ALL PARAMETERS: + +=item DIRECT ACCESS TO THE PARAMETER LIST: + +=item FETCHING THE PARAMETER LIST AS A HASH: + +=item SAVING THE STATE OF THE SCRIPT TO A FILE: -=back +=item RETRIEVING CGI ERRORS -=item Aggregation +=item USING THE FUNCTION-ORIENTED INTERFACE -=item Inheritance +B<:cgi>, B<:form>, B<:html2>, B<:html3>, B<:netscape>, B<:html>, +B<:standard>, B<:all> -=over +=item PRAGMAS -=item Overridden Methods +-any, -compile, -nosticky, -no_xhtml, -nph, -newstyle_urls, -oldstyle_urls, +-autoload, -no_debug, -debug, -private_tempfiles -=item Multiple Inheritance +=item SPECIAL FORMS FOR IMPORTING HTML-TAG FUNCTIONS -=item UNIVERSAL: The Root of All Objects +1. start_table() (generates a tag), 2. end_table() (generates a +
tag), 3. start_ul() (generates a
    tag), 4. end_ul() (generates +a
tag) =back -=item Alternate Object Representations +=item GENERATING DYNAMIC DOCUMENTS =over -=item Arrays as Objects - -=item Closures as Objects +=item CREATING A STANDARD HTTP HEADER: -=back +=item GENERATING A REDIRECTION HEADER -=item AUTOLOAD: Proxy Methods +=item CREATING THE HTML DOCUMENT HEADER -=over +B, 4, 5, 6.. -=item Autoloaded Data Methods +=item ENDING THE HTML DOCUMENT: -=item Inherited Autoloaded Data Methods +=item CREATING A SELF-REFERENCING URL THAT PRESERVES STATE INFORMATION: -=back +=item OBTAINING THE SCRIPT'S URL -=item Metaclassical Tools +B<-absolute>, B<-relative>, B<-full>, B<-path> (B<-path_info>), B<-query> +(B<-query_string>) -=over +=item MIXING POST AND URL PARAMETERS -=item Class::Struct +=back -=item Data Members as Variables +=item CREATING STANDARD HTML ELEMENTS: -=item NOTES +=over -=item Object Terminology +=item PROVIDING ARGUMENTS TO HTML SHORTCUTS -=back +=item THE DISTRIBUTIVE PROPERTY OF HTML SHORTCUTS -=item SEE ALSO +=item HTML SHORTCUTS AND LIST INTERPOLATION -=item AUTHOR AND COPYRIGHT +=item NON-STANDARD HTML SHORTCUTS -=item COPYRIGHT +=item AUTOESCAPING HTML -=over +$escaped_string = escapeHTML("unescaped string");, $charset = +charset([$charset]);, $flag = autoEscape([$flag]); -=item Acknowledgments +=item PRETTY-PRINTING HTML =back -=head2 perltootc - Tom's OO Tutorial for Class Data in Perl +=item CREATING FILL-OUT FORMS: -=item DESCRIPTION +=over -=item Class Data as Package Variables +=item CREATING AN ISINDEX TAG -=over +=item STARTING AND ENDING A FORM -=item Putting All Your Eggs in One Basket +B, B -=item Inheritance Concerns +=item CREATING A TEXT FIELD -=item The Eponymous Meta-Object +B -=item Indirect References to Class Data +=item CREATING A BIG TEXT FIELD -=item Monadic Classes +=item CREATING A PASSWORD FIELD -=item Translucent Attributes +=item CREATING A FILE UPLOAD FIELD -=back +B -=item Class Data as Lexical Variables +=item CREATING A POPUP MENU -=over +=item CREATING A SCROLLING LIST -=item Privacy and Responsibility +B -=item File-Scoped Lexicals +=item CREATING A GROUP OF RELATED CHECKBOXES -=item More Inheritance Concerns +B -=item Locking the Door and Throwing Away the Key +=item CREATING A STANDALONE CHECKBOX -=item Translucency Revisited +B -=back +=item CREATING A RADIO BUTTON GROUP -=item NOTES +B -=item SEE ALSO +=item CREATING A SUBMIT BUTTON -=item AUTHOR AND COPYRIGHT +B -=item ACKNOWLEDGEMENTS +=item CREATING A RESET BUTTON -=item HISTORY +=item CREATING A DEFAULT BUTTON -=head2 perlobj - Perl objects +=item CREATING A HIDDEN FIELD -=item DESCRIPTION +B -=over +=item CREATING A CLICKABLE IMAGE BUTTON -=item An Object is Simply a Reference +B, 3. The third option (-align, optional) is an alignment +type, and may be TOP, BOTTOM or MIDDLE -=item A Class is Simply a Package +=item CREATING A JAVASCRIPT ACTION BUTTON -=item A Method is Simply a Subroutine +=back -=item Method Invocation +=item HTTP COOKIES -=item WARNING +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 Default UNIVERSAL methods +=item WORKING WITH FRAMES -isa(CLASS), can(METHOD), VERSION( [NEED] ) +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 Destructors +=item LIMITED SUPPORT FOR CASCADING STYLE SHEETS -=item Summary +=item DEBUGGING -=item Two-Phased Garbage Collection +=over + +=item DUMPING OUT ALL THE NAME/VALUE PAIRS =back -=item SEE ALSO +=item FETCHING ENVIRONMENT VARIABLES -=head2 perltie - how to hide an object class in a simple variable +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 -=item SYNOPSIS +=item USING NPH SCRIPTS -=item DESCRIPTION +In the B statement, By calling the B method:, By using B<-nph> +parameters in the B and B statements: -=over +=item Server Push -=item Tying Scalars +multipart_init(), multipart_start(), multipart_end() -TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this +=item Avoiding Denial of Service Attacks -=item Tying Arrays +B<$CGI::POST_MAX>, B<$CGI::DISABLE_UPLOADS>, B<1. On a script-by-script +basis>, B<2. Globally for all scripts> -TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value, -DESTROY this +=item COMPATIBILITY WITH CGI-LIB.PL -=item Tying Hashes +=item AUTHOR INFORMATION -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, DESTROY this +=item CREDITS -=item Tying FileHandles +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.. -TIEHANDLE classname, LIST, WRITE this, LIST, PRINT this, LIST, PRINTF this, -LIST, READ this, LIST, READLINE this, GETC this, CLOSE this, DESTROY this +=item A COMPLETE EXAMPLE OF A SIMPLE FORM-BASED SCRIPT -=item The C Gotcha +=item BUGS + +=item SEE ALSO =back -=item SEE ALSO +=head2 CGI::Apache - Backward compatibility module for CGI.pm -=item BUGS +=over -=item AUTHOR +=item SYNOPSIS -=head2 perlbot - Bag'o Object Tricks (the BOT) +=item ABSTRACT =item DESCRIPTION -=item OO SCALING TIPS +=item AUTHOR INFORMATION -=item INSTANCE VARIABLES +=item BUGS -=item SCALAR INSTANCE VARIABLES +=item SEE ALSO -=item INSTANCE VARIABLE INHERITANCE +=back -=item OBJECT RELATIONSHIPS +=head2 CGI::Carp, B - CGI routines for writing to the HTTPD (or +other) error log -=item OVERRIDING SUPERCLASS METHODS +=over -=item USING RELATIONSHIP WITH SDBM +=item SYNOPSIS -=item THINKING OF CODE REUSE +=item DESCRIPTION -=item CLASS CONTEXT AND THE OBJECT +=item REDIRECTING ERROR MESSAGES -=item INHERITING A CONSTRUCTOR +=item MAKING PERL ERRORS APPEAR IN THE BROWSER WINDOW -=item DELEGATION +=over -=head2 perlipc - Perl interprocess communication (signals, fifos, pipes, -safe subprocesses, sockets, and semaphores) +=item Changing the default message -=item DESCRIPTION +=back -=item Signals +=item MAKING WARNINGS APPEAR AS HTML COMMENTS -=item Named Pipes +=item CHANGE LOG -=over +=item AUTHORS -=item WARNING +=item SEE ALSO =back -=item Using open() for IPC +=head2 CGI::Cookie - Interface to Netscape Cookies =over -=item Filehandles +=item SYNOPSIS -=item Background Processes +=item DESCRIPTION -=item Complete Dissociation of Child from Parent +=item USING CGI::Cookie -=item Safe Pipe Opens +B<1. expiration date>, B<2. domain>, B<3. path>, B<4. secure flag> -=item Bidirectional Communication with Another Process +=over -=item Bidirectional Communication with Yourself +=item Creating New Cookies -=back +=item Sending the Cookie to the Browser -=item Sockets: Client/Server Communication +=item Recovering Previous Cookies -=over +=item Manipulating Cookies -=item Internet Line Terminators +B, B, B, B, B -=item Internet TCP Clients and Servers +=back -=item Unix-Domain TCP Clients and Servers +=item AUTHOR INFORMATION -=back +=item BUGS -=item TCP Clients with IO::Socket +=item SEE ALSO -=over +=back -=item A Simple Client +=head2 CGI::Fast - CGI Interface for Fast CGI -C, C, C +=over -=item A Webget Client +=item SYNOPSIS -=item Interactive Client with IO::Socket +=item DESCRIPTION -=back +=item OTHER PIECES OF THE PUZZLE -=item TCP Servers with IO::Socket +=item WRITING FASTCGI PERL SCRIPTS -Proto, LocalPort, Listen, Reuse +=item INSTALLING FASTCGI SCRIPTS -=item UDP: Message Passing +=item USING FASTCGI SCRIPTS AS CGI SCRIPTS -=item SysV IPC +=item CAVEATS -=item NOTES +=item AUTHOR INFORMATION =item BUGS -=item AUTHOR - =item SEE ALSO -=head2 perldbmfilter - Perl DBM Filters +=back + +=head2 CGI::Pretty - module to produce nicely formatted HTML code + +=over =item SYNOPSIS =item DESCRIPTION -B, B, B, -B - =over -=item The Filter - -=item An Example -- the NULL termination problem. +=item Tags that won't be formatted -=item Another Example -- Key is a C int. +=item Customizing the Indenting =back -=item SEE ALSO +=item BUGS =item AUTHOR -=head2 perldebug - Perl debugging +=item SEE ALSO + +=back + +=head2 CGI::Push - Simple Interface to Server Push + +=over + +=item SYNOPSIS =item DESCRIPTION -=item The Perl Debugger +=item USING CGI::Push + +-next_page, -last_page, -type, -delay, -cookie, -target, -expires =over -=item Debugger Commands +=item Heterogeneous Pages -h [command], p expr, x expr, V [pkg [vars]], X [vars], T, s [expr], n -[expr], ECRE, c [line|sub], l, l min+incr, l min-max, l line, l -subname, -, w [line], f filename, /pattern/, ?pattern?, L, S [[!]pattern], -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, W [expr], W, O [opt[=val]] [opt"val"] [opt?].., -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, E [ command ], -EE command, E command, EE command, { [ command ], {{ -command, ! number, ! -number, ! pattern, !! cmd, H -number, q or ^D, R, -|dbcmd, ||dbcmd, command, m expr, m package +=item Changing the Page Delay on the Fly -=item Debugger input/output +=back -Prompt, Multiline commands, Stack backtrace, Listing, Frame listing +=item INSTALLING CGI::Push SCRIPTS -=item Debugging compile-time statements +=item AUTHOR INFORMATION -=item Debugger Customization +=item BUGS -=item Readline Support +=item SEE ALSO -=item Editor Support for Debugging +=back -=item The Perl Profiler +=head2 CGI::Switch - Backward compatibility module for defunct CGI::Switch -=item Debugger support in perl +=over -=item Debugger Internals +=item SYNOPSIS + +=item ABSTRACT + +=item DESCRIPTION -=item Other resources +=item AUTHOR INFORMATION =item BUGS +=item SEE ALSO + =back -=item Debugging Perl memory usage +=head2 CPAN - query, download and build perl modules from CPAN sites =over -=item Using C<$ENV{PERL_DEBUG_MSTATS}> - -C, Free/Used, C, C, C, C, C +=item SYNOPSIS -=item Example of using B<-DL> switch +=item DESCRIPTION -C<717>, C<002>, C<054>, C<602>, C<702>, C<704> +=over -=item B<-DL> details +=item Interactive Mode -C, C, C +Searching for authors, bundles, distribution files and modules, make, test, +install, clean modules or distributions, get, readme, look module or +distribution, Signals -=item Limitations of B<-DL> statistic +=item CPAN::Shell -=back +=item autobundle -=item Debugging regular expressions +=item recompile -=over +=item The four C Classes: Author, Bundle, Module, Distribution -=item Compile-time output +=item Programmer's interface -C I C I, C I C -I, C, C, C -I, C, C, C, C, C, C, -C +expand($type,@things), Programming Examples -=item Types of nodes +=item Methods in the four Classes -=item Run-time output +=item Cache Manager -=back +=item Bundles -=head2 perldiag - various Perl diagnostics +=item Prerequisites -=item DESCRIPTION +=item Finding packages and VERSION -=head2 perlsec - Perl security +=item Debugging -=item DESCRIPTION +=item Floppy, Zip, Offline Mode -=over +=back -=item Laundering and Detecting Tainted Data +=item CONFIGURATION -=item Switches On the "#!" Line +Cscalar optionE>, Cscalar optionE +EvalueE>, Clist optionE>, Clist +optionE [shift|pop]>, Clist optionE +[unshift|push|splice] ElistE> -=item Cleaning Up Your Path +=over -=item Security Bugs +=item Note on urllist parameter's format -=item Protecting Your Programs +=item urllist parameter has CD-ROM support =back -=item SEE ALSO +=item SECURITY -=head2 perltrap - Perl traps for the unwary +=item EXPORT -=item DESCRIPTION +=item POPULATE AN INSTALLATION WITH LOTS OF MODULES + +=item WORKING WITH CPAN.pm BEHIND FIREWALLS =over -=item Awk Traps +=item Three basic types of firewalls -=item C Traps +http firewall, ftp firewall, One way visibility, SOCKS, IP Masquerade -=item Sed Traps +=item Configuring lynx or ncftp for going through the firewall -=item Shell Traps +=back -=item Perl Traps +=item FAQ -=item Perl4 to Perl5 Traps +I installed a new version of module X but CPAN keeps saying, I have +the old version installed, So why is UNINST=1 not the default?, When I +install bundles or multiple modules with one command there is too +much output to keep track of -Discontinuance, Deprecation, and BugFix traps, Parsing Traps, Numerical -Traps, General data type traps, Context Traps - scalar, list contexts, -Precedence Traps, General Regular Expression Traps using s///, etc, -Subroutine, Signal, Sorting Traps, OS Traps, DBM Traps, Unclassified Traps +=item BUGS -=item Discontinuance, Deprecation, and BugFix traps +=item AUTHOR -Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance, -Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix, -Discontinuance, Discontinuance, Deprecation, Discontinuance +=item SEE ALSO -=item Parsing Traps +=back -Parsing, Parsing, Parsing, Parsing +=head2 CPAN::FirstTime - Utility for CPAN::Config file Initialization -=item Numerical Traps +=over -Numerical, Numerical, Numerical +=item SYNOPSIS -=item General data type traps +=item DESCRIPTION -(Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String), -(Constants), (Scalars), (Variable Suicide) +=back -=item Context Traps - scalar, list contexts +=head2 CPANox, CPAN::Nox - Wrapper around CPAN.pm without using any XS +module -(list context), (scalar context), (scalar context), (list, builtin) +=over -=item Precedence Traps +=item SYNOPSIS -Precedence, Precedence, Precedence, Precedence, Precedence, Precedence, -Precedence +=item DESCRIPTION -=item General Regular Expression Traps using s///, etc. +=item SEE ALSO -Regular Expression, Regular Expression, Regular Expression, Regular -Expression, Regular Expression, Regular Expression, Regular Expression, -Regular Expression +=back -=item Subroutine, Signal, Sorting Traps +=head2 Carp, carp - warn of errors (from perspective of caller) -(Signals), (Sort Subroutine), warn() won't let you specify a filehandle +=over -=item OS Traps +=item SYNOPSIS -(SysV), (SysV) +=item DESCRIPTION -=item Interpolation Traps +=over -Interpolation, Interpolation, Interpolation, Interpolation, Interpolation, -Interpolation, Interpolation, Interpolation, Interpolation +=item Forcing a Stack Trace -=item DBM Traps +=back -DBM, DBM +=item BUGS -=item Unclassified Traps +=back -C/C trap using returned value, C on empty string with -LIMIT specified +=head2 Carp::Heavy - Carp guts -=back +=over -=head2 perlport - Writing portable Perl +=item SYNOPIS =item DESCRIPTION -Not all Perl programs have to be portable, Nearly all of Perl already I -portable +=back -=item ISSUES +=head2 Class::Struct - declare struct-like datatypes as Perl classes =over -=item Newlines +=item SYNOPSIS -=item Numbers endianness and Width +=item DESCRIPTION -=item Files and Filesystems +=over -=item System Interaction +=item The C function -=item Interprocess Communication (IPC) +=item Element Types and Accessor Methods -=item External Subroutines (XS) +Scalar (C<'$'> or C<'*$'>), Array (C<'@'> or C<'*@'>), Hash (C<'%'> or +C<'*%'>), Class (C<'Class_Name'> or C<'*Class_Name'>) -=item Standard Modules +=item Initializing with C -=item Time and Date +=back -=item Character sets and character encoding +=item EXAMPLES -=item Internationalisation +Example 1, Example 2, Example 3 -=item System Resources +=item Author and Modification History -=item Security +=back -=item Style +=head2 Config - access Perl configuration information -=back +=over -=item CPAN Testers +=item SYNOPSIS + +=item DESCRIPTION + +myconfig(), config_sh(), config_vars(@names) + +=item EXAMPLE -Mailing list: cpan-testers@perl.org, Testing results: -C +=item WARNING -=item PLATFORMS +=item GLOSSARY =over -=item Unix - -=item DOS and Derivatives +=item _ -The djgpp environment for DOS, C, The EMX -environment for DOS, OS/2, etc. -C,C or -C, Build instructions for Win32, -L, The ActiveState Pages, C +C<_a>, C<_exe>, C<_o> -=item S +=item a -The MacPerl Pages, C, The MacPerl mailing lists, -C, MacPerl Module Porters, -C +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C -=item VMS +=item b -L, vmsperl list, C, vmsperl on the web, -C +C, C, C, C, C, C, +C, C -=item VOS +=item c -L, VOS mailing list, VOS Perl on the web at -C +C, C, C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, C, +C -=item EBCDIC Platforms +=item C -perl-mvs list, AS/400 Perl information at -C +C, C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C -=item Acorn RISC OS +=item d -=item Other perls +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C -Atari, Guido Flohr's page C, HP 300 -MPE/iX C, Novell Netware +=item e -=back +C, C, C, C, C, C, +C, C, C -=item FUNCTION IMPLEMENTATIONS +=item f -=over +C, C, C, C, C, +C, C, C, C, C, C -=item Alphabetical Listing of Perl Functions +=item g --I FILEHANDLE, -I EXPR, -I, binmode FILEHANDLE, chmod LIST, chown -LIST, chroot FILENAME, chroot, crypt PLAINTEXT,SALT, dbmclose HASH, dbmopen -HASH,DBNAME,MODE, dump LABEL, exec LIST, 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 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, setpgrp PID,PGRP, setpriority -WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shmctl -ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE, shmwrite -ID,STRING,POS,SIZE, 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 +C, C, C, C, C, +C, C, C, C, C, C -=back +=item h -=item CHANGES +C, C, C, C, C -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 i -=item AUTHORS / CONTRIBUTORS +C, C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, +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 VERSION +=item k -=head2 perlstyle - Perl style guide +C, C -=item DESCRIPTION +=item l -=head2 perlpod - plain old documentation +C, C, C, C, C, +C, C, C, C, 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 m -=over +C, C, C, C, C, C, +C, C, C, C, C, +C, C -=item Verbatim Paragraph +=item M -=item Command Paragraph +C, C, C, C, C, C, +C, C, C, C, C, C, +C, C -=item Ordinary Block of Text +=item n -=item The Intent +C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, +C, C, C -=item Embedding Pods in Perl Modules +=item o -=item Common Pod Pitfalls +C, C, C, C, +C, C, C, C -=back +=item p -=item SEE ALSO +C, C, C, C, C, C, +C -=item AUTHOR +=item P -=head2 perlbook - Perl book information +C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, C, +C, C -=item DESCRIPTION +=item q -=head2 perlembed - how to embed perl in your C program +C, C -=item DESCRIPTION +=item r -=over +C, C, C, C, C, +C, C, C, C -=item PREAMBLE +=item s -B, B, B, B, B +C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, 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 ROADMAP +=item t -=item Compiling your C program +C, C, C, C, C, C, C, +C, C, C, C -=item Adding a Perl interpreter to your C program +=item u -=item Calling a Perl subroutine from your C program +C, C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, +C, C, 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 Evaluating a Perl statement from your C program +=item v -=item Performing Perl pattern matches and substitutions from your C program +C, C, C, C, +C, C, C, C, +C, C, C, C -=item Fiddling with the Perl stack from your C program +=item x -=item Maintaining a persistent interpreter +C, C -=item Maintaining multiple interpreter instances +=item z -=item Using Perl modules, which themselves use C libraries, from your C -program +C, C =back -=item Embedding Perl under Win32 - -=item MORAL +=item NOTE -=item AUTHOR +=back -=item COPYRIGHT +=head2 Cwd, getcwd - get pathname of current working directory -=head2 perlapio - perl's IO abstraction interface. +=over =item SYNOPSIS =item DESCRIPTION -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 +=back + +=head2 DB - programmatic interface to the Perl debugging API (draft, +subject to +change) =over -=item Co-existence with stdio +=item SYNOPSIS -B, B, -B, B, B, -B, B, B, -B, B, -B, B, B, -B, B +=item DESCRIPTION -=back +=over -=head2 perlxs - XS language reference manual +=item Global Variables -=item DESCRIPTION + $DB::sub, %DB::sub, $DB::single, $DB::signal, $DB::trace, @DB::args, +@DB::dbline, %DB::dbline, $DB::package, $DB::filename, $DB::subname, +$DB::lineno -=over +=item API Methods -=item Introduction +CLIENT->register(), CLIENT->evalcode(STRING), CLIENT->skippkg('D::hide'), +CLIENT->run(), CLIENT->step(), CLIENT->next(), CLIENT->done() -=item On The Road +=item Client Callback Methods -=item The Anatomy of an XSUB +CLIENT->init(), CLIENT->prestop([STRING]), CLIENT->stop(), CLIENT->idle(), +CLIENT->poststop([STRING]), CLIENT->evalcode(STRING), CLIENT->cleanup(), +CLIENT->output(LIST) -=item The Argument Stack +=back -=item The RETVAL Variable +=item BUGS -=item The MODULE Keyword +=item AUTHOR -=item The PACKAGE Keyword +=back -=item The PREFIX Keyword +=head2 DB_File - Perl5 access to Berkeley DB version 1.x -=item The OUTPUT: Keyword +=over -=item The CODE: Keyword +=item SYNOPSIS -=item The INIT: Keyword +=item DESCRIPTION -=item The NO_INIT Keyword +B, B, B -=item Initializing Function Parameters +=over -=item Default Parameter Values +=item Using DB_File with Berkeley DB version 2 or 3 -=item The PREINIT: Keyword +=item Interface to Berkeley DB -=item The SCOPE: Keyword +=item Opening a Berkeley DB Database File -=item The INPUT: Keyword +=item Default Parameters -=item Variable-length Parameter Lists +=item In Memory Databases -=item The C_ARGS: Keyword +=back -=item The PPCODE: Keyword +=item DB_HASH -=item Returning Undef And Empty Lists +=over -=item The REQUIRE: Keyword +=item A Simple Example -=item The CLEANUP: Keyword +=back -=item The BOOT: Keyword +=item DB_BTREE -=item The VERSIONCHECK: Keyword +=over -=item The PROTOTYPES: Keyword +=item Changing the BTREE sort order -=item The PROTOTYPE: Keyword +=item Handling Duplicate Keys -=item The ALIAS: Keyword +=item The get_dup() Method -=item The INTERFACE: Keyword +=item The find_dup() Method -=item The INTERFACE_MACRO: Keyword +=item The del_dup() Method -=item The INCLUDE: Keyword +=item Matching Partial Keys -=item The CASE: Keyword +=back -=item The & Unary Operator +=item DB_RECNO -=item Inserting Comments and C Preprocessor Directives +=over -=item Using XS With C++ +=item The 'bval' Option -=item Interface Strategy +=item A Simple Example -=item Perl Objects And C Structures +=item Extra RECNO Methods -=item The Typemap +B<$X-Epush(list) ;>, B<$value = $X-Epop ;>, B<$X-Eshift>, +B<$X-Eunshift(list) ;>, B<$X-Elength> -=back +=item Another Example -=item EXAMPLES +=back -=item XS VERSION +=item THE API INTERFACE -=item AUTHOR +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]) ;> -=head2 perlxstut, perlXStut - Tutorial for XSUBs +=item DBM FILTERS -=item DESCRIPTION +B, B, B, +B =over -=item VERSION CAVEAT - -=item DYNAMIC VERSUS STATIC +=item The Filter -=item EXAMPLE 1 +=item An Example -- the NULL termination problem. -=item EXAMPLE 2 +=item Another Example -- Key is a C int. -=item WHAT HAS GONE ON? +=back -=item WRITING GOOD TEST SCRIPTS +=item HINTS AND TIPS -=item EXAMPLE 3 +=over -=item WHAT'S NEW HERE? +=item Locking: The Trouble with fd -=item INPUT AND OUTPUT PARAMETERS +=item Safe ways to lock a database -=item THE XSUBPP COMPILER +B, B, B -=item THE TYPEMAP FILE +=item Sharing Databases With C Applications -=item WARNING +=item The untie() Gotcha -=item EXAMPLE 4 +=back -=item WHAT HAS HAPPENED HERE? +=item COMMON QUESTIONS -=item SPECIFYING ARGUMENTS TO XSUBPP +=over -=item THE ARGUMENT STACK +=item Why is there Perl source in my database? -=item EXTENDING YOUR EXTENSION +=item How do I store complex data structures with DB_File? -=item DOCUMENTING YOUR EXTENSION +=item What does "Invalid Argument" mean? -=item INSTALLING YOUR EXTENSION +=item What does "Bareword 'DB_File' not allowed" mean? -=item SEE ALSO +=back -=item Author +=item REFERENCES -=item Last Changed +=item HISTORY -=back +=item BUGS -=head2 perlguts - Perl's Internal Functions +=item AVAILABILITY -=item DESCRIPTION +=item COPYRIGHT -=item Variables +=item SEE ALSO -=over +=item AUTHOR -=item Datatypes +=back -=item What is an "IV"? +=head2 Data::Dumper - stringified perl data structures, suitable for both +printing and C -=item Working with SVs +=over -=item What's Really Stored in an SV? +=item SYNOPSIS -=item Working with AVs +=item DESCRIPTION -=item Working with HVs +=over -=item Hash API Extensions +=item Methods -=item References +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 Blessed References and Class Objects +=item Functions -=item Creating New Variables +Dumper(I) -=item Reference Counts and Mortality +=item Configuration Variables or Methods -=item Stashes and Globs +$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]>) -=item Double-Typed SVs +=item Exports -=item Magic Variables +Dumper -=item Assigning Magic +=back -=item Magic Virtual Tables +=item EXAMPLES -=item Finding Magic +=item BUGS -=item Understanding the Magic of Tied Hashes and Arrays +=item AUTHOR -=item Localizing changes +=item VERSION -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 Devel::DProf - a Perl code profiler =over -=item XSUBs and the Argument Stack +=item SYNOPSIS -=item Calling Perl Routines from within C Programs +=item DESCRIPTION -=item Memory Allocation +=item PROFILE FORMAT -=item PerlIO +=item AUTOLOAD -=item Putting a C value on Perl stack +=item ENVIRONMENT -=item Scratchpads +=item BUGS -=item Scratchpads and recursion +=item SEE ALSO =back -=item Compiled code +=head2 Devel::Peek - A data debugging tool for the XS programmer =over -=item Code tree - -=item Examining the tree - -=item Compile pass 1: check routines +=item SYNOPSIS -=item Compile pass 1a: constant folding +=item DESCRIPTION -=item Compile pass 2: context propagation +=item EXAMPLES -=item Compile pass 3: peephole optimization +=over -=back +=item A simple scalar string -=item API LISTING +=item A simple scalar number -av_clear, av_extend, av_fetch, AvFILL, av_len, av_make, av_pop, av_push, -av_shift, av_store, av_undef, av_unshift, CLASS, Copy, croak, CvSTASH, -PL_DBsingle, PL_DBsub, PL_DBtrace, dMARK, dORIGMARK, PL_dowarn, dSP, -dXSARGS, dXSI32, do_binmode, ENTER, EXTEND, fbm_compile, fbm_instr, -FREETMPS, G_ARRAY, G_DISCARD, G_EVAL, GIMME, GIMME_V, G_NOARGS, G_SCALAR, -gv_fetchmeth, gv_fetchmethod, gv_fetchmethod_autoload, G_VOID, gv_stashpv, -gv_stashsv, GvSV, HEf_SVKEY, HeHASH, HeKEY, HeKLEN, HePV, HeSVKEY, -HeSVKEY_force, HeSVKEY_set, HeVAL, 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, HvNAME, -hv_store, hv_store_ent, hv_undef, isALNUM, isALPHA, isDIGIT, isLOWER, -isSPACE, isUPPER, items, ix, LEAVE, looks_like_number, MARK, mg_clear, -mg_copy, mg_find, mg_free, mg_get, mg_len, mg_magical, mg_set, modglobal, -Move, PL_na, New, newAV, Newc, newCONSTSUB, newHV, newRV_inc, newRV_noinc, -NEWSV, newSViv, newSVnv, newSVpv, newSVpvf, newSVpvn, newSVrv, newSVsv, -newXS, newXSproto, Newz, Nullav, Nullch, Nullcv, Nullhv, Nullsv, ORIGMARK, -perl_alloc, perl_call_argv, perl_call_method, perl_call_pv, perl_call_sv, -perl_construct, perl_destruct, perl_eval_sv, perl_eval_pv, perl_free, -perl_get_av, perl_get_cv, perl_get_hv, perl_get_sv, perl_parse, -perl_require_pv, perl_run, POPi, POPl, POPp, POPn, POPs, PUSHMARK, PUSHi, -PUSHn, PUSHp, PUSHs, PUSHu, PUTBACK, Renew, Renewc, RETVAL, safefree, -safemalloc, saferealloc, savepv, savepvn, SAVETMPS, SP, SPAGAIN, ST, strEQ, -strGE, strGT, strLE, strLT, strNE, strnEQ, strnNE, sv_2mortal, sv_bless, -sv_catpv, sv_catpv_mg, sv_catpvn, sv_catpvn_mg, sv_catpvf, sv_catpvf_mg, -sv_catsv, sv_catsv_mg, sv_chop, sv_cmp, SvCUR, SvCUR_set, sv_dec, -sv_derived_from, SvEND, sv_eq, SvGETMAGIC, SvGROW, sv_grow, sv_inc, -sv_insert, SvIOK, SvIOK_off, SvIOK_on, SvIOK_only, SvIOKp, sv_isa, -sv_isobject, SvIV, SvIVX, SvLEN, sv_len, sv_magic, sv_mortalcopy, -sv_newmortal, SvNIOK, SvNIOK_off, SvNIOKp, PL_sv_no, SvNOK, SvNOK_off, -SvNOK_on, SvNOK_only, SvNOKp, SvNV, SvNVX, SvOK, SvOOK, SvPOK, SvPOK_off, -SvPOK_on, SvPOK_only, SvPOKp, SvPV, SvPV_force, SvPV_nolen, SvPVX, -SvREFCNT, SvREFCNT_dec, SvREFCNT_inc, SvROK, SvROK_off, SvROK_on, SvRV, -SvSETMAGIC, sv_setiv, sv_setiv_mg, sv_setnv, sv_setnv_mg, sv_setpv, -sv_setpv_mg, sv_setpviv, sv_setpviv_mg, sv_setpvn, sv_setpvn_mg, sv_setpvf, -sv_setpvf_mg, sv_setref_iv, sv_setref_nv, sv_setref_pv, sv_setref_pvn, -SvSetSV, SvSetSV_nosteal, sv_setsv, sv_setsv_mg, sv_setuv, sv_setuv_mg, -SvSTASH, SvTAINT, SvTAINTED, SvTAINTED_off, SvTAINTED_on, SVt_IV, SVt_PV, -SVt_PVAV, SVt_PVCV, SVt_PVHV, SVt_PVMG, SVt_NV, SvTRUE, SvTYPE, svtype, -PL_sv_undef, sv_unref, SvUPGRADE, sv_upgrade, sv_usepvn, sv_usepvn_mg, -sv_vcatpvfn(sv, pat, patlen, args, svargs, svmax, used_locale), -sv_vsetpvfn(sv, pat, patlen, args, svargs, svmax, used_locale), SvUV, -SvUVX, PL_sv_yes, THIS, toLOWER, toUPPER, warn, XPUSHi, XPUSHn, XPUSHp, -XPUSHs, XPUSHu, XS, XSRETURN, XSRETURN_EMPTY, XSRETURN_IV, XSRETURN_NO, -XSRETURN_NV, XSRETURN_PV, XSRETURN_UNDEF, XSRETURN_YES, XST_mIV, XST_mNV, -XST_mNO, XST_mPV, XST_mUNDEF, XST_mYES, XS_VERSION, XS_VERSION_BOOTCHECK, -Zero +=item A simple scalar with an extra reference -=item AUTHORS +=item A reference to a simple scalar -=head2 perlcall - Perl calling conventions from C +=item A reference to an array -=item DESCRIPTION +=item A reference to a hash -An Error Handler, An Event Driven Program +=item Dumping a large array or hash -=item THE PERL_CALL FUNCTIONS +=item A reference to an SV which holds a C pointer -perl_call_sv, perl_call_pv, perl_call_method, perl_call_argv +=item A reference to a subroutine -=item FLAG VALUES +=back -=over +=item EXPORTS -=item G_VOID +=item BUGS -=item G_SCALAR +=item AUTHOR -=item G_ARRAY +=item SEE ALSO -=item G_DISCARD +=back -=item G_NOARGS +=head2 Devel::SelfStubber - generate stubs for a SelfLoading module -=item G_EVAL +=over -=item G_KEEPERR +=item SYNOPSIS -=item Determining the Context +=item DESCRIPTION =back -=item KNOWN PROBLEMS - -=item EXAMPLES +=head2 DirHandle - supply object methods for directory handles =over -=item No Parameters, Nothing returned +=item SYNOPSIS -=item Passing Parameters +=item DESCRIPTION -=item Returning a Scalar +=back -=item Returning a list of values +=head2 Dumpvalue - provides screen dump of Perl data. -=item Returning a list in a scalar context +=over -=item Returning Data from Perl via the parameter list +=item SYNOPSIS -=item Using G_EVAL +=item DESCRIPTION -=item Using G_KEEPERR +=over -=item Using perl_call_sv +=item Creation -=item Using perl_call_argv +C, C, C, C, C, +C, C, C, C, C, +C, C, unctrl, subdump, bareStringify, quoteHighBit, +stopDbSignal -=item Using perl_call_method +=item Methods -=item Using GIMME_V +dumpValue, dumpValues, dumpvars, set_quote, set_unctrl, compactDump, +veryCompact, set, get -=item Using Perl to dispose of temporaries +=back -=item Strategies for storing Callback Context Information +=back -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 +=head2 DynaLoader - Dynamically load C libraries into Perl code -=item Alternate Stack Manipulation +=over -=item Creating and calling an anonymous subroutine in C +=item SYNOPSIS -=back +=item DESCRIPTION -=item SEE ALSO +@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() =item AUTHOR -=item DATE +=back -=head2 perlhist - the Perl history records +=head2 DynaLoader::XSLoader, XSLoader - Dynamically load C libraries into +Perl code + +=over + +=item SYNOPSIS =item DESCRIPTION -=item INTRODUCTION +=item AUTHOR -=item THE KEEPERS OF THE PUMPKIN +=back + +=head2 English - use nice English (or awk) names for ugly punctuation +variables =over -=item PUMPKIN? +=item SYNOPSIS + +=item DESCRIPTION + +=item PERFORMANCE =back -=item THE RECORDS +=head2 Env - perl module that imports environment variables as scalars or +arrays =over -=item SELECTED RELEASE SIZES +=item SYNOPSIS -=item SELECTED PATCH SIZES +=item DESCRIPTION -=back +=item LIMITATIONS -=item THE KEEPERS OF THE RECORDS +=item AUTHOR -=head1 PRAGMA DOCUMENTATION +=back -=head2 attrs - set/get attributes of a subroutine +=head2 Errno - System errno constants + +=over =item SYNOPSIS =item DESCRIPTION -method, locked +=item CAVEATS -=head2 re - Perl pragma to alter regular expression behaviour +=item AUTHOR -=item SYNOPSIS +=item COPYRIGHT -=item DESCRIPTION +=back + +=head2 Exporter - Implements default import method for modules -=head2 attrs - set/get attributes of a subroutine +=over =item SYNOPSIS =item DESCRIPTION -method, locked +=over -=head2 autouse - postpone load of modules until a function is used +=item How to Export -=item SYNOPSIS +=item Selecting What To Export -=item DESCRIPTION +=item Specialised Import Lists -=item WARNING +=item Exporting without using Export's import method -=item AUTHOR +=item Module Version Checking -=item SEE ALSO +=item Managing Unknown Symbols -=head2 base - Establish IS-A relationship with base class at compile time +=item Tag Handling Utility Functions + +=back + +=back + +=head2 Exporter::Heavy - Exporter guts + +=over -=item SYNOPSIS +=item SYNOPIS =item DESCRIPTION -=item HISTORY +=back -=item SEE ALSO +=head2 ExtUtils::Command - utilities to replace common UNIX commands in +Makefiles etc. -=head2 blib - Use MakeMaker's uninstalled version of a package +=over =item SYNOPSIS =item DESCRIPTION -=item BUGS +=back -=item AUTHOR +cat -=head2 caller - inherit pragmatic attributes from the context of the caller +eqtime src dst -=item SYNOPSIS +rm_f files... -=item DESCRIPTION +rm_f files... -encoding +touch files .. -=head2 constant - Perl pragma to declare constants +mv source... destination -=item SYNOPSIS +cp source... destination -=item DESCRIPTION +chmod mode files.. -=item NOTES +mkpath directory.. -=item TECHNICAL NOTE +test_f file + +=over =item BUGS +=item SEE ALSO + =item AUTHOR -=item COPYRIGHT +=back -=head2 diagnostics - Perl compiler pragma to force verbose warning -diagnostics +=head2 ExtUtils::Embed - Utilities for embedding Perl in C/C++ applications + +=over =item SYNOPSIS =item DESCRIPTION -=over - -=item The C Pragma +=item @EXPORT -=item The I Program +=item FUNCTIONS -=back +xsinit(), Examples, ldopts(), Examples, perl_inc(), ccflags(), ccdlflags(), +ccopts(), xsi_header(), xsi_protos(@modules), xsi_body(@modules) =item EXAMPLES -=item INTERNALS - -=item BUGS +=item SEE ALSO =item AUTHOR -=head2 fields - compile-time class fields +=back + +=head2 ExtUtils::Install - install files from here to there + +=over =item SYNOPSIS =item DESCRIPTION -=item SEE ALSO +=back -=head2 filetest - Perl pragma to control the filetest permission operators +=head2 ExtUtils::Installed - Inventory management of installed modules -=item SYNOPSIS +=over - $can_perhaps_read = -r "file"; # use the mode bits - { - use filetest 'access'; # intuit harder - $can_really_read = -r "file"; - } - $can_perhaps_read = -r "file"; # use the mode bits again +=item SYNOPSIS =item DESCRIPTION -=over +=item USAGE -=item subpragma access +=item FUNCTIONS + +new(), modules(), files(), directories(), directory_tree(), validate(), +packlist(), version() + +=item EXAMPLE + +=item AUTHOR =back -=head2 integer - Perl pragma to compute arithmetic in integer instead of -double +=head2 ExtUtils::Liblist - determine libraries to use and how to use them + +=over =item SYNOPSIS =item DESCRIPTION -=head2 less - perl pragma to request less of something from the compiler +For static extensions, For dynamic extensions, For dynamic extensions -=item SYNOPSIS +=over -=item DESCRIPTION +=item EXTRALIBS -=head2 lib - manipulate @INC at compile time +=item LDLOADLIBS and LD_RUN_PATH -=item SYNOPSIS +=item BSLOADLIBS -=item DESCRIPTION +=back -=over +=item PORTABILITY -=item ADDING DIRECTORIES TO @INC +=over -=item DELETING DIRECTORIES FROM @INC +=item VMS implementation -=item RESTORING ORIGINAL @INC +=item Win32 implementation =back =item SEE ALSO -=item AUTHOR +=back -=head2 locale - Perl pragma to use and avoid POSIX locales for built-in -operations +=head2 ExtUtils::MM_Cygwin - methods to override UN*X behaviour in +ExtUtils::MakeMaker + +=over =item SYNOPSIS =item DESCRIPTION -=head2 ops - Perl pragma to restrict unsafe operations when compiling - -=item SYNOPSIS +canonpath, cflags, manifypods, perl_archive -=item DESCRIPTION +=back -=item SEE ALSO +=head2 ExtUtils::MM_OS2 - methods to override UN*X behaviour in +ExtUtils::MakeMaker -=head2 overload - Package for overloading perl operations +=over =item SYNOPSIS =item DESCRIPTION -=over - -=item Declaration of overloaded functions +=back -=item Calling Conventions for Binary Operations +=head2 ExtUtils::MM_Unix - methods used by ExtUtils::MakeMaker -FALSE, TRUE, C +=over -=item Calling Conventions for Unary Operations +=item SYNOPSIS -=item Calling Conventions for Mutators +=item DESCRIPTION -C<++> and C<-->, C and other assignment versions +=item METHODS -=item Overloadable Operations +=over -I, I, I, -I, I, I, I, I, I +=item Preloaded methods -=item Inheritance and overloading +canonpath -Strings as values of C directive, Overloading of an operation -is inherited by derived classes +=back =back -=item SPECIAL SYMBOLS FOR C +catdir -=over +catfile -=item Last Resort +curdir -=item Fallback +rootdir -C, TRUE, defined, but FALSE +updir -=item Copy Constructor +=over -B +=item SelfLoaded methods + +c_o (o) =back -=item MAGIC AUTOGENERATION +cflags (o) -I, I, -I, C, I, I, -I, I, I, I, -I +clean (o) -=item Losing overloading +const_cccmd (o) -=item Run-time Overloading +const_config (o) -=item Public functions +const_loadlibs (o) -overload::StrVal(arg), overload::Overloaded(arg), overload::Method(obj,op) +constants (o) -=item Overloading constants +depend (o) -integer, float, binary, q, qr +dir_target (o) -=item IMPLEMENTATION +dist (o) -=item Metaphor clash +dist_basics (o) -=item Cookbook +dist_ci (o) -=over +dist_core (o) -=item Two-face scalars +dist_dir (o) -=item Two-face references +dist_test (o) -=item Symbolic calculator +dlsyms (o) -=item I symbolic calculator +dynamic (o) -=back +dynamic_bs (o) -=item AUTHOR +dynamic_lib (o) -=item DIAGNOSTICS +exescan -=item BUGS +extliblist -=head2 re - Perl pragma to alter regular expression behaviour +file_name_is_absolute -=item SYNOPSIS +find_perl -=item DESCRIPTION +=over -=head2 sigtrap - Perl pragma to enable simple signal handling +=item Methods to actually produce chunks of text for the Makefile -=item SYNOPSIS +fixin -=item DESCRIPTION +=back -=item OPTIONS +force (o) -=over +guess_name -=item SIGNAL HANDLERS +has_link_code -B, B, B I +htmlifypods (o) -=item SIGNAL LISTS +init_dirscan -B, B, B +init_main -=item OTHER +init_others -B, B, I, I +install (o) -=back +installbin (o) -=item EXAMPLES +libscan (o) -=head2 strict - Perl pragma to restrict unsafe constructs +linkext (o) -=item SYNOPSIS +lsdir -=item DESCRIPTION +macro (o) -C, C, C +makeaperl (o) -=head2 subs - Perl pragma to predeclare sub names +makefile (o) -=item SYNOPSIS +manifypods (o) -=item DESCRIPTION +maybe_command -=head2 utf8 - Perl pragma to turn on UTF-8 and Unicode support +maybe_command_in_dirs -=item SYNOPSIS +needs_linking (o) -=item DESCRIPTION +nicetext -=item CAVEATS +parse_version -=head2 vars - Perl pragma to predeclare global variable names +parse_abstract -=item SYNOPSIS +pasthru (o) -=item DESCRIPTION +path -=head2 warnings - Perl pragma to control optional warnings +perl_script -=item SYNOPSIS +perldepend (o) -=item DESCRIPTION +ppd -C +perm_rw (o) -=head1 MODULE DOCUMENTATION +perm_rwx (o) -=head2 AnyDBM_File - provide framework for multiple DBMs +pm_to_blib -=item SYNOPSIS +post_constants (o) -=item DESCRIPTION +post_initialize (o) -=over +postamble (o) -=item DBM Comparisons +prefixify -[0], [1], [2], [3] +processPL (o) -=back +realclean (o) -=item SEE ALSO +replace_manpage_separator -=head2 AutoLoader - load subroutines only on demand +static (o) -=item SYNOPSIS +static_lib (o) -=item DESCRIPTION +staticmake (o) -=over +subdir_x (o) -=item Subroutine Stubs +subdirs (o) -=item Using B's AUTOLOAD Subroutine +test (o) -=item Overriding B's AUTOLOAD Subroutine +test_via_harness (o) -=item Package Lexicals +test_via_script (o) -=item B vs. B +tool_autosplit (o) -=back +tools_other (o) -=item CAVEATS +tool_xsubpp (o) -=item SEE ALSO +top_targets (o) -=head2 AutoSplit - split a package for autoloading +writedoc -=item SYNOPSIS +xs_c (o) -=item DESCRIPTION +xs_cpp (o) -$keep, $check, $modtime +xs_o (o) + +perl_archive + +export_list =over -=item Multiple packages +=item SEE ALSO =back -=item DIAGNOSTICS +=head2 ExtUtils::MM_VMS - methods to override UN*X behaviour in +ExtUtils::MakeMaker -=head2 B - The Perl Compiler +=over =item SYNOPSIS =item DESCRIPTION -=item OVERVIEW OF CLASSES - =over -=item SV-RELATED CLASSES - -=item B::SV METHODS - -REFCNT, FLAGS - -=item B::IV METHODS - -IV, IVX, needs64bits, packiv - -=item B::NV METHODS - -NV, NVX - -=item B::RV METHODS +=item Methods always loaded -RV +wraplist -=item B::PV METHODS +=back -PV +=back -=item B::PVMG METHODS +rootdir (override) -MAGIC, SvSTASH +=over -=item B::MAGIC METHODS +=item SelfLoaded methods -MOREMAGIC, PRIVATE, TYPE, FLAGS, OBJ, PTR +guess_name (override) -=item B::PVLV METHODS +=back -TARGOFF, TARGLEN, TYPE, TARG +find_perl (override) -=item B::BM METHODS +path (override) -USEFUL, PREVIOUS, RARE, TABLE +maybe_command (override) -=item B::GV METHODS +maybe_command_in_dirs (override) -NAME, STASH, SV, IO, FORM, AV, HV, EGV, CV, CVGEN, LINE, FILEGV, GvREFCNT, -FLAGS +perl_script (override) -=item B::IO METHODS +file_name_is_absolute (override) -LINES, PAGE, PAGE_LEN, LINES_LEFT, TOP_NAME, TOP_GV, FMT_NAME, FMT_GV, -BOTTOM_NAME, BOTTOM_GV, SUBPROCESS, IoTYPE, IoFLAGS +replace_manpage_separator -=item B::AV METHODS +init_others (override) -FILL, MAX, OFF, ARRAY, AvFLAGS +constants (override) -=item B::CV METHODS +cflags (override) -STASH, START, ROOT, GV, FILEGV, DEPTH, PADLIST, OUTSIDE, XSUB, XSUBANY, -CvFLAGS +const_cccmd (override) -=item B::HV METHODS +pm_to_blib (override) -FILL, MAX, KEYS, RITER, NAME, PMROOT, ARRAY +tool_autosplit (override) -=item OP-RELATED CLASSES +tool_sxubpp (override) -=item B::OP METHODS +xsubpp_version (override) -next, sibling, ppaddr, desc, targ, type, seq, flags, private +tools_other (override) -=item B::UNOP METHOD +dist (override) -first +c_o (override) -=item B::BINOP METHOD +xs_c (override) -last +xs_o (override) -=item B::LOGOP METHOD +top_targets (override) -other +dlsyms (override) -=item B::LISTOP METHOD +dynamic_lib (override) -children +dynamic_bs (override) -=item B::PMOP METHODS +static_lib (override) -pmreplroot, pmreplstart, pmnext, pmregexp, pmflags, pmpermflags, precomp +manifypods (override) -=item B::SVOP METHOD +processPL (override) -sv +installbin (override) -=item B::GVOP METHOD +subdir_x (override) -gv +clean (override) -=item B::PVOP METHOD +realclean (override) -pv +dist_basics (override) -=item B::LOOP METHODS +dist_core (override) -redoop, nextop, lastop +dist_dir (override) -=item B::COP METHODS +dist_test (override) -label, stash, filegv, cop_seq, arybase, line +install (override) -=back +perldepend (override) -=item FUNCTIONS EXPORTED BY C +makefile (override) -main_cv, init_av, main_root, main_start, comppadlist, sv_undef, sv_yes, -sv_no, amagic_generation, walkoptree(OP, METHOD), walkoptree_debug(DEBUG), -walksymtable(SYMREF, METHOD, RECURSE), svref_2object(SV), ppname(OPNUM), -hash(STR), cast_I32(I), minus_c, cstring(STR), class(OBJ), threadsv_names +test (override) -=item AUTHOR +test_via_harness (override) -=head2 B::Asmdata - Autogenerated data about Perl ops, used to generate -bytecode +test_via_script (override) -=item SYNOPSIS +makeaperl (override) -=item DESCRIPTION +nicetext (override) -=item AUTHOR +=head2 ExtUtils::MM_Win32 - methods to override UN*X behaviour in +ExtUtils::MakeMaker -=head2 B::Assembler - Assemble Perl bytecode +=over =item SYNOPSIS =item DESCRIPTION -=item AUTHOR - -=head2 B::Bblock - Walk basic blocks +=back -=item SYNOPSIS +catfile -=item DESCRIPTION +constants (o) -=item AUTHOR +static_lib (o) -=head2 B::Bytecode - Perl compiler's bytecode backend +dynamic_bs (o) -=item SYNOPSIS +dynamic_lib (o) -=item DESCRIPTION +canonpath -=item OPTIONS +perl_script -B<-ofilename>, B<-->, B<-f>, B<-fcompress-nullops>, -B<-fomit-sequence-numbers>, B<-fbypass-nullops>, B<-fstrip-syntax-tree>, -B<-On>, B<-D>, B<-Do>, B<-Db>, B<-Da>, B<-DC>, B<-S>, B<-m> +pm_to_blib -=item EXAMPLES +test_via_harness (o) -=item BUGS +tool_autosplit (override) -=item AUTHOR +tools_other (o) -=head2 B::C - Perl compiler's C backend +xs_o (o) -=item SYNOPSIS +top_targets (o) -=item DESCRIPTION +htmlifypods (o) -=item OPTIONS +manifypods (o) -B<-ofilename>, B<-v>, B<-->, B<-uPackname>, B<-D>, B<-Do>, B<-Dc>, B<-DA>, -B<-DC>, B<-DM>, B<-f>, B<-fcog>, B<-fno-cog>, B<-On> +dist_ci (o) -=item EXAMPLES +dist_core (o) -=item BUGS +pasthru (o) -=item AUTHOR +=head2 ExtUtils::MakeMaker - create an extension Makefile -=head2 B::CC - Perl compiler's optimized C translation backend +=over =item SYNOPSIS =item DESCRIPTION -=item OPTIONS +=over -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 How To Write A Makefile.PL -=item EXAMPLES +=item Default Makefile Behaviour -=item BUGS +=item make test -=item DIFFERENCES +=item make testdb -=over +=item make install -=item Loops +=item PREFIX and LIB attribute -=item Context of ".." +=item AFS users -=item Arithmetic +=item Static Linking of a new Perl Binary -=item Deprecated features +=item Determination of Perl Library and Installation Locations -=back +=item Which architecture dependent directory? -=item AUTHOR +=item Using Attributes and Parameters -=head2 B::Debug - Walk Perl syntax tree, printing debug info about ops +AUTHOR, ABSTRACT, ABSTRACT_FROM, BINARY_LOCATION, C, CAPI, 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_LIB, INST_HTMLLIBDIR, INST_HTMLSCRIPTDIR, INST_MAN1DIR, +INST_MAN3DIR, INST_SCRIPT, PERL_MALLOC_OK, LDFROM, LIB, LIBPERL_A, LIBS, +LINKTYPE, MAKEAPERL, MAKEFILE, MAN1PODS, MAN3PODS, MAP_TARGET, MYEXTLIB, +NAME, NEEDS_LINKING, NOECHO, NORECURS, NO_VC, OBJECT, OPTIMIZE, PERL, +PERLMAINCC, PERL_ARCHLIB, PERL_LIB, PERL_SRC, PERM_RW, PERM_RWX, PL_FILES, +PM, PMLIBDIRS, POLLUTE, PPM_INSTALL_EXEC, PPM_INSTALL_SCRIPT, PREFIX, +PREREQ_PM, SKIP, TYPEMAPS, VERSION, VERSION_FROM, XS, XSOPT, XSPROTOARG, +XS_VERSION -=item SYNOPSIS +=item Additional lowercase attributes -=item DESCRIPTION +clean, depend, dist, dynamic_lib, linkext, macro, realclean, test, +tool_autosplit -=item AUTHOR +=item Overriding MakeMaker Methods -=head2 B::Deparse - Perl compiler backend to produce perl code +=item Hintsfile support -=item SYNOPSIS +=item Distribution Support -=item DESCRIPTION + make distcheck, make skipcheck, make distclean, make manifest, + make distdir, make tardist, make dist, make uutardist, make +shdist, make zipdist, make ci -=item OPTIONS +=item Disabling an extension -B<-l>, B<-p>, B<-q>, B<-u>I, B<-s>I, B +=back -=item BUGS +=item ENVIRONMENT -=item AUTHOR +PERL_MM_OPT -=head2 B::Disassembler - Disassemble Perl bytecode +=item SEE ALSO -=item SYNOPSIS +=item AUTHORS -=item DESCRIPTION +=back -=item AUTHOR +=head2 ExtUtils::Manifest - utilities to write and check a MANIFEST file -=head2 B::Lint - Perl lint +=over =item SYNOPSIS =item DESCRIPTION -=item OPTIONS AND LINT CHECKS +=item MANIFEST.SKIP -B, B and B, B, -B, B, B, B, B +=item EXPORT_OK -=item NON LINT-CHECK OPTIONS +=item GLOBAL VARIABLES -B<-u Package> +=item DIAGNOSTICS -=item BUGS +C I, C I, C I<$!>, +C I + +=item SEE ALSO =item AUTHOR -=head2 B::O, O - Generic interface to Perl Compiler backends +=back + +=head2 ExtUtils::Miniperl, writemain - write the C code for perlmain.c + +=over =item SYNOPSIS =item DESCRIPTION -=item CONVENTIONS +=item SEE ALSO -=item IMPLEMENTATION +=back -=item AUTHOR +=head2 ExtUtils::Mkbootstrap - make a bootstrap file for use by DynaLoader -=head2 B::Showlex - Show lexical variables used in functions or files +=over =item SYNOPSIS =item DESCRIPTION -=item AUTHOR +=back -=head2 B::Stackobj - Helper module for CC backend +=head2 ExtUtils::Mksymlists - write linker options files for dynamic +extension + +=over =item SYNOPSIS =item DESCRIPTION +DLBASE, DL_FUNCS, DL_VARS, FILE, FUNCLIST, IMPORTS, NAME + =item AUTHOR -=head2 B::Terse - Walk Perl syntax tree, printing terse info about ops +=item REVISION + +=back + +=head2 ExtUtils::Packlist - manage .packlist files + +=over =item SYNOPSIS =item DESCRIPTION +=item USAGE + +=item FUNCTIONS + +new(), read(), write(), validate(), packlist_file() + +=item EXAMPLE + =item AUTHOR -=head2 B::Xref - Generates cross reference reports for Perl programs +=back -=item SYNOPSIS +=head2 ExtUtils::testlib - add blib/* directories to @INC -=item DESCRIPTION +=over -=item OPTIONS +=item SYNOPSIS -C<-oFILENAME>, C<-r>, C<-D[tO]> +=item DESCRIPTION -=item BUGS +=back -=item AUTHOR +=head2 Fatal - replace functions with equivalents which succeed or die -=head2 Bblock, B::Bblock - Walk basic blocks +=over =item SYNOPSIS @@ -3881,2775 +9212,2654 @@ C<-oFILENAME>, C<-r>, C<-D[tO]> =item AUTHOR -=head2 Benchmark - benchmark running times of code +=back + +=head2 Fcntl - load the C Fcntl.h defines + +=over =item SYNOPSIS =item DESCRIPTION -=over +=item NOTE -=item Methods +=item EXPORTED SYMBOLS -new, debug +=back -=item Standard Exports +=head2 File::Basename, fileparse - split a pathname into pieces -timeit(COUNT, CODE), timethis ( COUNT, CODE, [ TITLE, [ STYLE ]] ), -timethese ( COUNT, CODEHASHREF, [ STYLE ] ), timediff ( T1, T2 ), timesum ( -T1, T2 ), timestr ( TIMEDIFF, [ STYLE, [ FORMAT ] ] ) +=over -=item Optional Exports +=item SYNOPSIS + +=item DESCRIPTION + +fileparse_set_fstype, fileparse + +=item EXAMPLES -clearcache ( COUNT ), clearallcache ( ), disablecache ( ), enablecache ( ) +C, C =back -=item NOTES +=head2 File::CheckTree, validate - run many filetest checks on a tree -=item INHERITANCE +=over -=item CAVEATS +=item SYNOPSIS -=item AUTHORS +=item DESCRIPTION -=item MODIFICATION HISTORY +=back -=head2 ByteLoader - load byte compiled perl code +=head2 File::Compare - Compare files or filehandles + +=over =item SYNOPSIS =item DESCRIPTION +=item RETURN + =item AUTHOR -=item SEE ALSO +=back -=head2 Bytecode, B::Bytecode - Perl compiler's bytecode backend +=head2 File::Copy - Copy files or filehandles + +=over =item SYNOPSIS =item DESCRIPTION -=item OPTIONS - -B<-ofilename>, B<-->, B<-f>, B<-fcompress-nullops>, -B<-fomit-sequence-numbers>, B<-fbypass-nullops>, B<-fstrip-syntax-tree>, -B<-On>, B<-D>, B<-Do>, B<-Db>, B<-Da>, B<-DC>, B<-S>, B<-m> +=over -=item EXAMPLES +=item Special behaviour if C is defined (OS/2, VMS and Win32) -=item BUGS +rmscopy($from,$to[,$date_flag]) -=item AUTHOR +=back -=head2 CGI - Simple Common Gateway Interface Class +=item RETURN -=item SYNOPSIS +=item AUTHOR -=item ABSTRACT +=back -=item DESCRIPTION +=head2 File::DosGlob - DOS like globbing and then some =over -=item PROGRAMMING STYLE +=item SYNOPSIS -=item CALLING CGI.PM ROUTINES +=item DESCRIPTION -1. Use another name for the argument, if one is available. Forexample, --value is an alias for -values, 2. Change the capitalization, e.g. -Values, -3. Put quotes around the argument name, e.g. '-values' +=item EXPORTS (by request only) -=item CREATING A NEW QUERY OBJECT (OBJECT-ORIENTED STYLE): +=item BUGS -=item CREATING A NEW QUERY OBJECT FROM AN INPUT FILE +=item AUTHOR -=item FETCHING A LIST OF KEYWORDS FROM THE QUERY: +=item HISTORY -=item FETCHING THE NAMES OF ALL THE PARAMETERS PASSED TO YOUR SCRIPT: +=item SEE ALSO -=item FETCHING THE VALUE OR VALUES OF A SINGLE NAMED PARAMETER: +=back -=item SETTING THE VALUE(S) OF A NAMED PARAMETER: +=head2 File::Find, find - traverse a file tree -=item APPENDING ADDITIONAL VALUES TO A NAMED PARAMETER: +=over -=item IMPORTING ALL PARAMETERS INTO A NAMESPACE: +=item SYNOPSIS -=item DELETING A PARAMETER COMPLETELY: +=item DESCRIPTION -=item DELETING ALL PARAMETERS: +C, C, C, C, C, +C, C, C, C, +C, C -=item DIRECT ACCESS TO THE PARAMETER LIST: +=item CAVEAT -=item FETCHING THE PARAMETER LIST AS A HASH: +=back -=item SAVING THE STATE OF THE SCRIPT TO A FILE: +=head2 File::Glob - Perl extension for BSD glob routine -=item RETRIEVING CGI ERRORS +=over -=item USING THE FUNCTION-ORIENTED INTERFACE +=item SYNOPSIS -B<:cgi>, B<:form>, B<:html2>, B<:html3>, B<:netscape>, B<:html>, -B<:standard>, B<:all> +=item DESCRIPTION -=item PRAGMAS +C, C, C, C, C, +C, C, C, C, C + +=item DIAGNOSTICS --any, -compile, -nph, -newstyle_urls, -autoload, -no_debug, --private_tempfiles +C, C -=item SPECIAL FORMS FOR IMPORTING HTML-TAG FUNCTIONS +=item NOTES -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 AUTHOR =back -=item GENERATING DYNAMIC DOCUMENTS +=head2 File::Path - create or remove directory trees =over -=item CREATING A STANDARD HTTP HEADER: +=item SYNOPSIS -=item GENERATING A REDIRECTION HEADER +=item DESCRIPTION -=item CREATING THE HTML DOCUMENT HEADER +=item AUTHORS -B, 4, 5, 6.. +=back -=item ENDING THE HTML DOCUMENT: +=head2 File::Spec - portably perform operations on file names -=item CREATING A SELF-REFERENCING URL THAT PRESERVES STATE INFORMATION: +=over -=item OBTAINING THE SCRIPT'S URL +=item SYNOPSIS -B<-absolute>, B<-relative>, B<-full>, B<-path> (B<-path_info>), B<-query> -(B<-query_string>) +=item DESCRIPTION -=item MIXING POST AND URL PARAMETERS +=item SEE ALSO + +=item AUTHORS =back -=item CREATING STANDARD HTML ELEMENTS: +=head2 File::Spec::Functions - portably perform operations on file names =over -=item PROVIDING ARGUMENTS TO HTML SHORTCUTS +=item SYNOPSIS -=item THE DISTRIBUTIVE PROPERTY OF HTML SHORTCUTS +=item DESCRIPTION -=item HTML SHORTCUTS AND LIST INTERPOLATION +=over -=item NON-STANDARD HTML SHORTCUTS +=item Exports -=item PRETTY-PRINTING HTML +=back + +=item SEE ALSO =back -=item CREATING FILL-OUT FORMS: +=head2 File::Spec::Mac - File::Spec for MacOS =over -=item CREATING AN ISINDEX TAG - -=item STARTING AND ENDING A FORM +=item SYNOPSIS -B, B +=item DESCRIPTION -=item CREATING A TEXT FIELD +=item METHODS -B +canonpath -=item CREATING A BIG TEXT FIELD +=back -=item CREATING A PASSWORD FIELD +catdir -=item CREATING A FILE UPLOAD FIELD +catfile -B +curdir -=item CREATING A POPUP MENU +devnull -=item CREATING A SCROLLING LIST +rootdir -B +tmpdir -=item CREATING A GROUP OF RELATED CHECKBOXES +updir -B +file_name_is_absolute -=item CREATING A STANDALONE CHECKBOX +path -B +splitpath -=item CREATING A RADIO BUTTON GROUP +splitdir -B +catpath -=item CREATING A SUBMIT BUTTON +abs2rel -B +rel2abs -=item CREATING A RESET BUTTON +=over -=item CREATING A DEFAULT BUTTON +=item SEE ALSO -=item CREATING A HIDDEN FIELD +=back -B +=head2 File::Spec::OS2 - methods for OS/2 file specs -=item CREATING A CLICKABLE IMAGE BUTTON +=over -B, 3.The third option (-align, optional) is an alignment type, -and may be -TOP, BOTTOM or MIDDLE +=item SYNOPSIS -=item CREATING A JAVASCRIPT ACTION BUTTON +=item DESCRIPTION =back -=item HTTP COOKIES - -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 WORKING WITH FRAMES +=head2 File::Spec::Unix - methods used by File::Spec -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 +=over -=item LIMITED SUPPORT FOR CASCADING STYLE SHEETS +=item SYNOPSIS -=item DEBUGGING +=item DESCRIPTION -=over +=item METHODS -=item DUMPING OUT ALL THE NAME/VALUE PAIRS +canonpath =back -=item FETCHING ENVIRONMENT VARIABLES - -B, B, B, B, -B, B, BReturn the script -name as a partial URL, for self-refering -scripts, B, B, B, B, B, B, B, -B, B, B, B - -=item USING NPH SCRIPTS +catdir -In the B statement, By calling the B method:, By using B<-nph> -parameters in the B and B statements: +catfile -=item Server Push +curdir -multipart_init() - multipart_init(-boundary=>$boundary);, multipart_start(), multipart_end() +devnull -=item Avoiding Denial of Service Attacks +rootdir -B<$CGI::POST_MAX>, B<$CGI::DISABLE_UPLOADS>, B<1. On a script-by-script -basis>, B<2. Globally for all scripts> +tmpdir -=item COMPATIBILITY WITH CGI-LIB.PL +updir -=item AUTHOR INFORMATION +no_upwards -=item CREDITS +case_tolerant -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.. +file_name_is_absolute -=item A COMPLETE EXAMPLE OF A SIMPLE FORM-BASED SCRIPT +path -=item BUGS +join -=item SEE ALSO +splitpath -=head2 CGI::Apache - Make things work with CGI.pm against Perl-Apache API +splitdir -=item SYNOPSIS +catpath -=item DESCRIPTION +abs2rel -=item NOTE 1 +rel2abs -=item NOTE 2 +=over =item SEE ALSO -=item AUTHOR +=back -=head2 CGI::Carp, B - CGI routines for writing to the HTTPD (or -other) error log +=head2 File::Spec::VMS - methods for VMS file specs + +=over =item SYNOPSIS =item DESCRIPTION -=item REDIRECTING ERROR MESSAGES +eliminate_macros -=item MAKING PERL ERRORS APPEAR IN THE BROWSER WINDOW +=back + +fixpath =over -=item Changing the default message +=item Methods always loaded -=back +canonpath (override) -=item CHANGE LOG +=back -=item AUTHORS +catdir -=item SEE ALSO +catfile -=head2 CGI::Cookie - Interface to Netscape Cookies +curdir (override) -=item SYNOPSIS +devnull (override) -=item DESCRIPTION +rootdir (override) -=item USING CGI::Cookie +tmpdir (override) -B<1. expiration date>, B<2. domain>, B<3. path>, B<4. secure flag> +updir (override) -=over +case_tolerant (override) -=item Creating New Cookies +path (override) -=item Sending the Cookie to the Browser +file_name_is_absolute (override) -=item Recovering Previous Cookies +splitpath (override) -=item Manipulating Cookies +splitdir (override) -B, B, B, B, B +catpath (override) -=back +abs2rel (override) -=item AUTHOR INFORMATION +rel2abs (override) -=item BUGS +=over =item SEE ALSO -=head2 CGI::Fast - CGI Interface for Fast CGI +=back + +=head2 File::Spec::Win32 - methods for Win32 file specs + +=over =item SYNOPSIS =item DESCRIPTION -=item OTHER PIECES OF THE PUZZLE +devnull -=item WRITING FASTCGI PERL SCRIPTS +=back -=item INSTALLING FASTCGI SCRIPTS +tmpdir -=item USING FASTCGI SCRIPTS AS CGI SCRIPTS +catfile -=item CAVEATS +canonpath -=item AUTHOR INFORMATION +splitpath -=item BUGS +splitdir + +catpath + +=over =item SEE ALSO -=head2 CGI::Push - Simple Interface to Server Push +=back + +=head2 File::Temp - return name and handle of a temporary file safely + +=over + +=item PORTABILITY =item SYNOPSIS -=item DESCRIPTION +=item DESCRIPTION + +=back + +=over + +=item FUNCTIONS + +B -=item USING CGI::Push +=back --next_page, -last_page, -type, -delay, -cookie, -target, -expires +B =over -=item Heterogeneous Pages +=item MKTEMP FUNCTIONS -=item Changing the Page Delay on the Fly +B =back -=item INSTALLING CGI::Push SCRIPTS +B -=item AUTHOR INFORMATION +B -=item BUGS +B -=item SEE ALSO +=over -=head2 CGI::Switch - Try more than one constructors and return the first -object available +=item POSIX FUNCTIONS -=item SYNOPSIS +B -=item DESCRIPTION +=back -=item SEE ALSO +B -=item AUTHOR +=over -=head2 CPAN - query, download and build perl modules from CPAN sites +=item ADDITIONAL FUNCTIONS -=item SYNOPSIS +B -=item DESCRIPTION +=back =over -=item Interactive Mode - -Searching for authors, bundles, distribution files and modules, make, test, -install, clean modules or distributions, readme, look module or -distribution, Signals - -=item CPAN::Shell +=item UTILITY FUNCTIONS -=item autobundle +B -=item recompile +=back -=item The four C Classes: Author, Bundle, Module, Distribution +=over -=item ProgrammerE<39>s interface +=item PACKAGE VARIABLES -expand($type,@things), Programming Examples +B, STANDARD, MEDIUM, HIGH -=item Methods in the four Classes +=back -=item Cache Manager +TopSystemUID -=item Bundles +=over -=item Prerequisites +=item WARNING -=item Finding packages and VERSION +=item HISTORY -=item Debugging +=item SEE ALSO -=item Floppy, Zip, Offline Mode +=item AUTHOR =back -=item CONFIGURATION - -o conf Escalar optionE, o conf Escalar optionE -EvalueE, o conf Elist optionE, o conf Elist optionE -[shift|pop], o conf Elist optionE [unshift|push|splice] -ElistE +=head2 File::stat - by-name interface to Perl's built-in stat() functions =over -=item Note on urllist parameter's format +=item SYNOPSIS -=item urllist parameter has CD-ROM support +=item DESCRIPTION -=back +=item NOTE -=item SECURITY +=item AUTHOR -=item EXPORT +=back -=item POPULATE AN INSTALLATION WITH LOTS OF MODULES +=head2 FileCache - keep more files open than the system permits -=item WORKING WITH CPAN.pm BEHIND FIREWALLS +=over -http firewall, ftp firewall, One way visibility, SOCKS, IP Masquerade +=item SYNOPSIS + +=item DESCRIPTION =item BUGS -=item AUTHOR +=back -=item SEE ALSO +=head2 FileHandle - supply object methods for filehandles -=head2 CPAN::FirstTime - Utility for CPAN::Config file Initialization +=over =item SYNOPSIS =item DESCRIPTION -=head2 CPANox, CPAN::Nox - Wrapper around CPAN.pm without using any XS -module +$fh->print, $fh->printf, $fh->getline, $fh->getlines + +=item SEE ALSO + +=back + +=head2 FindBin - Locate directory of original perl script + +=over =item SYNOPSIS =item DESCRIPTION -=item SEE ALSO +=item EXPORTABLE VARIABLES -=head2 Carp, carp - warn of errors (from perspective of caller) +=item KNOWN BUGS + +=item AUTHORS + +=item COPYRIGHT + +=back + +=head2 GDBM_File - Perl5 access to the gdbm library. + +=over =item SYNOPSIS =item DESCRIPTION -=over +=item AVAILABILITY -=item Forcing a Stack Trace +=item BUGS + +=item SEE ALSO =back -=item BUGS +=head2 Getopt::Long - Extended processing of command line options -=head2 Class::Struct - declare struct-like datatypes as Perl classes +=over =item SYNOPSIS =item DESCRIPTION -=over +=item Command Line Options, an Introduction -=item The C function +=item Getting Started with Getopt::Long -=item Element Types and Accessor Methods +=over -Scalar (C<'$'> or C<'*$'>), Array (C<'@'> or C<'*@'>), Hash (C<'%'> or -C<'*%'>), Class (C<'Class_Name'> or C<'*Class_Name'>) +=item Simple options -=item Initializing with C +=item A little bit less simple options -=back +=item Mixing command line option with other arguments -=item EXAMPLES +=item Options with values -Example 1, Example 2, Example 3 +=item Options with multiple values -=item Author and Modification History +=item Options with hash values -=head2 Config - access Perl configuration information +=item User-defined subroutines to handle options -=item SYNOPSIS +=item Options with multiple names -=item DESCRIPTION +=item Case and abbreviations -myconfig(), config_sh(), config_vars(@names) +=item Summary of Option Specifications -=item EXAMPLE +!, +, s, i, f, : I [ I ] -=item WARNING +=back -=item GLOSSARY +=item Advanced Possibilities =over -=item _ - -C<_a>, C<_exe>, C<_o> +=item Object oriented interface -=item a +=item Documentation and help texts -C, C, C, C, C, C, -C, C, C, C, C, C +=item Storing options in a hash -=item b +=item Bundling -C, C, C, C, C, C, C +=item The lonesome dash -=item c +=item Argument call-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 +=back -=item d +=item Configuring Getopt::Long -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C +default, posix_default, auto_abbrev, getopt_compat, require_order, permute, +bundling (default: disabled), bundling_override (default: disabled), +ignore_case (default: enabled), ignore_case_always (default: disabled), +pass_through (default: disabled), prefix, prefix_pattern, debug (default: +disabled) -=item e +=item Return values and Errors -C, C, C, C, C, C, -C, C, C +=item Legacy -=item f +=over -C, C, C, C, C, -C, C, C, C, C +=item Default destinations -=item g +=item Alternative option starters -C, C, C, C, C, C, -C +=item Configuration variables -=item h +=back -C, C, C, C, C +=item Trouble Shooting -=item i +=over -C, C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, 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 Warning: Ignoring '!' modifier for short option -=item k +=item GetOptions does not return a false result when an option is not +supplied -C, C +=back -=item l +=item AUTHOR -C, C, 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 COPYRIGHT AND DISCLAIMER -=item m +=back -C, C, C, C, C, C, -C, C, C, C, C, -C, C +=head2 Getopt::Std, getopt - Process single-character switches with switch +clustering -=item M +=over -C, C, C, C, C, C, -C, C, C, C, C, C, -C, C +=item SYNOPSIS -=item n +=item DESCRIPTION -C, C, C, C, -C, C, C, C, C, C +=back -=item o +=head2 I18N::Collate - compare 8-bit scalar data according to the current +locale -C, C, C, C, -C, C, C +=over -=item p +=item SYNOPSIS -C, C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, C, -C, C +=item DESCRIPTION -=item r +=back -C, C, C, C, C, C, -C, C +=head2 IO - load various IO modules -=item s +=over -C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, 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 SYNOPSIS -=item t +=item DESCRIPTION -C, C, C, C, C, C, C, -C, C, C, C +=back -=item u +=head2 IO::Dir - supply object methods for directory handles -C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, C +=over -=item v +=item SYNOPSIS -C, C, C +=item DESCRIPTION -=item x +new ( [ DIRNAME ] ), open ( DIRNAME ), read (), seek ( POS ), tell (), +rewind (), close (), tie %hash, IO::Dir, DIRNAME [, OPTIONS ] -C +=item SEE ALSO -=item z +=item AUTHOR -C, C +=item COPYRIGHT =back -=item NOTE +=head2 IO::File - supply object methods for filehandles -=head2 Cwd, getcwd - get pathname of current working directory +=over =item SYNOPSIS =item DESCRIPTION -=head2 DB - programmatic interface to the Perl debugging API (draft, -subject to -change) +=item CONSTRUCTOR -=item SYNOPSIS +new ( FILENAME [,MODE [,PERMS]] ), new_tmpfile -=item DESCRIPTION +=item METHODS + +open( FILENAME [,MODE [,PERMS]] ) + +=item SEE ALSO + +=item HISTORY + +=back + +=head2 IO::Handle - supply object methods for I/O handles =over -=item Global Variables +=item SYNOPSIS - $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 DESCRIPTION -=item API Methods +=item CONSTRUCTOR -CLIENT->register(), CLIENT->evalcode(STRING), CLIENT->skippkg('D::hide'), -CLIENT->run(), CLIENT->step(), CLIENT->next(), CLIENT->done() +new (), new_from_fd ( FD, MODE ) -=item Client Callback Methods +=item METHODS + +$io->fdopen ( FD, MODE ), $io->opened, $io->getline, $io->getlines, +$io->ungetc ( ORD ), $io->write ( BUF, LEN [, OFFSET ] ), $io->error, +$io->clearerr, $io->sync, $io->flush, $io->printflush ( ARGS ), +$io->blocking ( [ BOOL ] ), $io->untaint -CLIENT->init(), CLIENT->prestop([STRING]), CLIENT->stop(), CLIENT->idle(), -CLIENT->poststop([STRING]), CLIENT->evalcode(STRING), CLIENT->cleanup(), -CLIENT->output(LIST) +=item NOTE -=back +=item SEE ALSO =item BUGS -=item AUTHOR - -=head2 DB_File - Perl5 access to Berkeley DB version 1.x - -=item SYNOPSIS +=item HISTORY -=item DESCRIPTION +=back -B, B, B +=head2 IO::Pipe - supply object methods for pipes =over -=item Using DB_File with Berkeley DB version 2 +=item SYNOPSIS -=item Interface to Berkeley DB +=item DESCRIPTION -=item Opening a Berkeley DB Database File +=item CONSTRUCTOR -=item Default Parameters +new ( [READER, WRITER] ) -=item In Memory Databases +=item METHODS -=back +reader ([ARGS]), writer ([ARGS]), handles () -=item DB_HASH +=item SEE ALSO -=over +=item AUTHOR -=item A Simple Example +=item COPYRIGHT =back -=item DB_BTREE +=head2 IO::Poll - Object interface to system poll call =over -=item Changing the BTREE sort order +=item SYNOPSIS -=item Handling Duplicate Keys +=item DESCRIPTION -=item The get_dup() Method +=item METHODS -=item The find_dup() Method +mask ( IO [, EVENT_MASK ] ), poll ( [ TIMEOUT ] ), events ( IO ), remove ( +IO ), handles( [ EVENT_MASK ] ) -=item The del_dup() Method +=item SEE ALSO -=item Matching Partial Keys +=item AUTHOR + +=item COPYRIGHT =back -=item DB_RECNO +=head2 IO::Seekable - supply seek based methods for I/O objects =over -=item The 'bval' Option - -=item A Simple Example +=item SYNOPSIS -=item Extra RECNO Methods +=item DESCRIPTION -B<$X-Epush(list) ;>, B<$value = $X-Epop ;>, B<$X-Eshift>, -B<$X-Eunshift(list) ;>, B<$X-Elength> +=item SEE ALSO -=item Another Example +=item HISTORY =back -=item THE API INTERFACE +=head2 IO::Select - OO interface to the select system call -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]) ;> +=over -=item HINTS AND TIPS +=item SYNOPSIS -=over +=item DESCRIPTION -=item Locking Databases +=item CONSTRUCTOR -=item Sharing Databases With C Applications +new ( [ HANDLES ] ) -=item The untie() Gotcha +=item METHODS -=back +add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read ( +[ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_exception ( [ TIMEOUT ] ), +count (), bits(), select ( READ, WRITE, ERROR [, TIMEOUT ] ) -=item COMMON QUESTIONS +=item EXAMPLE -=over +=item AUTHOR -=item Why is there Perl source in my database? +=item COPYRIGHT -=item How do I store complex data structures with DB_File? +=back -=item What does "Invalid Argument" mean? +=head2 IO::Socket - Object interface to socket communications -=item What does "Bareword 'DB_File' not allowed" mean? +=over -=back +=item SYNOPSIS -=item HISTORY +=item DESCRIPTION -=item BUGS +=item CONSTRUCTOR -=item AVAILABILITY +new ( [ARGS] ) -=item COPYRIGHT +=item METHODS + +accept([PKG]), socketpair(DOMAIN, TYPE, PROTOCOL), timeout([VAL]), +sockopt(OPT [, VAL]), sockdomain, socktype, protocol, connected =item SEE ALSO =item AUTHOR -=head2 Data::Dumper - stringified perl data structures, suitable for both -printing and C +=item COPYRIGHT -=item SYNOPSIS +=back -=item DESCRIPTION +=head2 IO::Socket::INET - Object interface for AF_INET domain sockets =over -=item Methods - -I->new(I, I), I<$OBJ>->Dump I -I->Dump(I, I), I<$OBJ>->Dumpxs I -I->Dumpxs(I, I), -I<$OBJ>->Seen(I<[HASHREF]>), I<$OBJ>->Values(I<[ARRAYREF]>), -I<$OBJ>->Names(I<[ARRAYREF]>), I<$OBJ>->Reset +=item SYNOPSIS -=item Functions +=item DESCRIPTION -Dumper(I), DumperX(I) +=item CONSTRUCTOR -=item Configuration Variables or Methods +new ( [ARGS] ) -$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]>) +=over -=item Exports +=item METHODS -Dumper +sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost +() =back -=item EXAMPLES - -=item BUGS +=item SEE ALSO =item AUTHOR -=item VERSION +=item COPYRIGHT -=item SEE ALSO +=back -=head2 Devel::Peek - A data debugging tool for the XS programmer +=head2 IO::Socket::UNIX - Object interface for AF_UNIX domain sockets + +=over =item SYNOPSIS =item DESCRIPTION -=item EXAMPLES +=item CONSTRUCTOR -=over +new ( [ARGS] ) -=item A simple scalar string +=item METHODS -=item A simple scalar number +hostpath(), peerpath() -=item A simple scalar with an extra reference +=item SEE ALSO -=item A reference to a simple scalar +=item AUTHOR -=item A reference to an array +=item COPYRIGHT -=item A reference to a hash +=back -=item Dumping a large array or hash +=head2 IO::lib::IO::Dir, IO::Dir - supply object methods for directory +handles -=item A reference to an SV which holds a C pointer +=over -=item A reference to a subroutine +=item SYNOPSIS -=back +=item DESCRIPTION -=item EXPORTS +new ( [ DIRNAME ] ), open ( DIRNAME ), read (), seek ( POS ), tell (), +rewind (), close (), tie %hash, IO::Dir, DIRNAME [, OPTIONS ] -=item BUGS +=item SEE ALSO =item AUTHOR -=item SEE ALSO - -=head2 Devel::SelfStubber - generate stubs for a SelfLoading module +=item COPYRIGHT -=item SYNOPSIS +=back -=item DESCRIPTION +=head2 IO::lib::IO::File, IO::File - supply object methods for filehandles -=head2 DirHandle - supply object methods for directory handles +=over =item SYNOPSIS =item DESCRIPTION -=head2 Dumpvalue - provides screen dump of Perl data. - -=item SYNOPSYS - -=item DESCRIPTION +=item CONSTRUCTOR -=over +new ( FILENAME [,MODE [,PERMS]] ), new_tmpfile -=item Creation +=item METHODS -C, C, C, C, C, -C, C, C, C, C, -C, C, unctrl, subdump, bareStringify, quoteHighBit, -stopDbSignal +open( FILENAME [,MODE [,PERMS]] ) -=item Methods +=item SEE ALSO -dumpValue, dumpValues, dumpvars, set_quote, set_unctrl, compactDump, -veryCompact, set, get +=item HISTORY =back -=head2 DynaLoader - Dynamically load C libraries into Perl code +=head2 IO::lib::IO::Handle, IO::Handle - supply object methods for I/O +handles + +=over =item SYNOPSIS =item DESCRIPTION -@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_loadflags(), dl_find_symbol(), -dl_find_symbol_anywhere(), dl_undef_symbols(), dl_install_xsub(), -bootstrap() +=item CONSTRUCTOR -=item AUTHOR +new (), new_from_fd ( FD, MODE ) -=head2 English - use nice English (or awk) names for ugly punctuation -variables +=item METHODS -=item SYNOPSIS +$io->fdopen ( FD, MODE ), $io->opened, $io->getline, $io->getlines, +$io->ungetc ( ORD ), $io->write ( BUF, LEN [, OFFSET ] ), $io->error, +$io->clearerr, $io->sync, $io->flush, $io->printflush ( ARGS ), +$io->blocking ( [ BOOL ] ), $io->untaint -=item DESCRIPTION +=item NOTE -=head2 Env - perl module that imports environment variables +=item SEE ALSO -=item SYNOPSIS +=item BUGS -=item DESCRIPTION +=item HISTORY -=item AUTHOR +=back -=head2 Errno - System errno constants +=head2 IO::lib::IO::Pipe, IO::Pipe - supply object methods for pipes + +=over =item SYNOPSIS =item DESCRIPTION +=item CONSTRUCTOR + +new ( [READER, WRITER] ) + +=item METHODS + +reader ([ARGS]), writer ([ARGS]), handles () + +=item SEE ALSO + =item AUTHOR -=item COPYRIGHT +=item COPYRIGHT + +=back + +=head2 IO::lib::IO::Poll, IO::Poll - Object interface to system poll call -=head2 Exporter - Implements default import method for modules +=over =item SYNOPSIS =item DESCRIPTION -=over - -=item Selecting What To Export - -=item Specialised Import Lists +=item METHODS -=item Exporting without using Export's import method +mask ( IO [, EVENT_MASK ] ), poll ( [ TIMEOUT ] ), events ( IO ), remove ( +IO ), handles( [ EVENT_MASK ] ) -=item Module Version Checking +=item SEE ALSO -=item Managing Unknown Symbols +=item AUTHOR -=item Tag Handling Utility Functions +=item COPYRIGHT =back -=head2 ExtUtils::Command - utilities to replace common UNIX commands in -Makefiles etc. +=head2 IO::lib::IO::Seekable, IO::Seekable - supply seek based methods for +I/O objects + +=over =item SYNOPSIS =item DESCRIPTION -cat, eqtime src dst, rm_f files..., rm_f files..., touch files .., mv -source... destination, cp source... destination, chmod mode files.., mkpath -directory.., test_f file +=item SEE ALSO -=item BUGS +=item HISTORY -=item SEE ALSO +=back -=item AUTHOR +=head2 IO::lib::IO::Select, IO::Select - OO interface to the select system +call -=head2 ExtUtils::Embed - Utilities for embedding Perl in C/C++ applications +=over =item SYNOPSIS =item DESCRIPTION -=item @EXPORT +=item CONSTRUCTOR -=item FUNCTIONS +new ( [ HANDLES ] ) -xsinit(), Examples, ldopts(), Examples, perl_inc(), ccflags(), ccdlflags(), -ccopts(), xsi_header(), xsi_protos(@modules), xsi_body(@modules) +=item METHODS -=item EXAMPLES +add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read ( +[ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_exception ( [ TIMEOUT ] ), +count (), bits(), select ( READ, WRITE, ERROR [, TIMEOUT ] ) -=item SEE ALSO +=item EXAMPLE =item AUTHOR -=head2 ExtUtils::Install - install files from here to there +=item COPYRIGHT -=item SYNOPSIS +=back -=item DESCRIPTION +=head2 IO::lib::IO::Socket, IO::Socket - Object interface to socket +communications -=head2 ExtUtils::Installed - Inventory management of installed modules +=over =item SYNOPSIS =item DESCRIPTION -=item USAGE +=item CONSTRUCTOR -=item FUNCTIONS +new ( [ARGS] ) -new(), modules(), files(), directories(), directory_tree(), validate(), -packlist(), version() +=item METHODS -=item EXAMPLE +accept([PKG]), socketpair(DOMAIN, TYPE, PROTOCOL), timeout([VAL]), +sockopt(OPT [, VAL]), sockdomain, socktype, protocol, connected -=item AUTHOR +=item SEE ALSO -=head2 ExtUtils::Liblist - determine libraries to use and how to use them +=item AUTHOR -=item SYNOPSIS +=item COPYRIGHT -=item DESCRIPTION +=back -For static extensions, For dynamic extensions, For dynamic extensions +=head2 IO::lib::IO::Socket::INET, IO::Socket::INET - Object interface for +AF_INET domain sockets =over -=item EXTRALIBS - -=item LDLOADLIBS and LD_RUN_PATH +=item SYNOPSIS -=item BSLOADLIBS +=item DESCRIPTION -=back +=item CONSTRUCTOR -=item PORTABILITY +new ( [ARGS] ) =over -=item VMS implementation +=item METHODS -=item Win32 implementation +sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost +() =back =item SEE ALSO -=head2 ExtUtils::MM_Cygwin - methods to override UN*X behaviour in -ExtUtils::MakeMaker +=item AUTHOR -=item SYNOPSIS +=item COPYRIGHT -=item DESCRIPTION +=back -canonpath, cflags, manifypods, perl_archive +=head2 IO::lib::IO::Socket::UNIX, IO::Socket::UNIX - Object interface for +AF_UNIX domain sockets -=head2 ExtUtils::MM_OS2 - methods to override UN*X behaviour in -ExtUtils::MakeMaker +=over =item SYNOPSIS =item DESCRIPTION -=head2 ExtUtils::MM_Unix - methods used by ExtUtils::MakeMaker - -=item SYNOPSIS +=item CONSTRUCTOR -=item DESCRIPTION +new ( [ARGS] ) =item METHODS -=over - -=item Preloaded methods - -canonpath, catdir, catfile, curdir, rootdir, updir - -=item SelfLoaded methods +hostpath(), peerpath() -c_o (o), cflags (o), clean (o), const_cccmd (o), const_config (o), -const_loadlibs (o), constants (o), depend (o), dir_target (o), dist (o), -dist_basics (o), dist_ci (o), dist_core (o), dist_dir (o), dist_test (o), -dlsyms (o), dynamic (o), dynamic_bs (o), dynamic_lib (o), exescan, -extliblist, file_name_is_absolute, find_perl +=item SEE ALSO -=item Methods to actually produce chunks of text for the Makefile +=item AUTHOR -fixin, force (o), guess_name, has_link_code, init_dirscan, init_main, -init_others, install (o), installbin (o), libscan (o), linkext (o), lsdir, -macro (o), makeaperl (o), makefile (o), manifypods (o), maybe_command, -maybe_command_in_dirs, needs_linking (o), nicetext, parse_version, -parse_abstract, pasthru (o), path, perl_script, perldepend (o), ppd, -perm_rw (o), perm_rwx (o), pm_to_blib, post_constants (o), post_initialize -(o), postamble (o), prefixify, processPL (o), realclean (o), -replace_manpage_separator, static (o), static_lib (o), staticmake (o), -subdir_x (o), subdirs (o), test (o), test_via_harness (o), test_via_script -(o), tool_autosplit (o), tools_other (o), tool_xsubpp (o), top_targets (o), -writedoc, xs_c (o), xs_cpp (o), xs_o (o), perl_archive, export_list +=item COPYRIGHT =back -=item SEE ALSO +=head2 IPC::Msg - SysV Msg IPC object class -=head2 ExtUtils::MM_VMS - methods to override UN*X behaviour in -ExtUtils::MakeMaker +=over =item SYNOPSIS =item DESCRIPTION -=over +=item METHODS -=item Methods always loaded +new ( KEY , FLAGS ), id, rcv ( BUF, LEN [, TYPE [, FLAGS ]] ), remove, set +( STAT ), set ( NAME => VALUE [, NAME => VALUE ...] ), snd ( TYPE, MSG [, +FLAGS ] ), stat -eliminate_macros, fixpath, catdir, catfile, wraplist, curdir (override), -rootdir (override), updir (override) +=item SEE ALSO -=item SelfLoaded methods +=item AUTHOR -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_others -(override), constants (override), cflags (override), const_cccmd -(override), pm_to_blib (override), tool_autosplit (override), tool_sxubpp -(override), xsubpp_version (override), tools_other (override), dist -(override), c_o (override), xs_c (override), xs_o (override), top_targets -(override), dlsyms (override), dynamic_lib (override), dynamic_bs -(override), static_lib (override), manifypods (override), processPL -(override), installbin (override), subdir_x (override), clean (override), -realclean (override), dist_basics (override), dist_core (override), -dist_dir (override), dist_test (override), install (override), perldepend -(override), makefile (override), test (override), test_via_harness -(override), test_via_script (override), makeaperl (override), nicetext -(override) +=item COPYRIGHT =back -=head2 ExtUtils::MM_Win32 - methods to override UN*X behaviour in -ExtUtils::MakeMaker +=head2 IPC::Open2, open2 - open a process for both reading and writing + +=over =item SYNOPSIS =item DESCRIPTION -catfile, constants (o), static_lib (o), dynamic_bs (o), dynamic_lib (o), -canonpath, perl_script, pm_to_blib, test_via_harness (o), tool_autosplit -(override), tools_other (o), xs_o (o), top_targets (o), manifypods (o), -dist_ci (o), dist_core (o), pasthru (o) +=item WARNING -=head2 ExtUtils::MakeMaker - create an extension Makefile +=item SEE ALSO -=item SYNOPSIS +=back -=item DESCRIPTION +=head2 IPC::Open3, open3 - open a process for reading, writing, and error +handling =over -=item How To Write A Makefile.PL +=item SYNOPSIS -=item Default Makefile Behaviour +=item DESCRIPTION -=item make test +=item WARNING -=item make testdb +=back -=item make install +=head2 IPC::Semaphore - SysV Semaphore IPC object class -=item PREFIX and LIB attribute +=over -=item AFS users +=item SYNOPSIS -=item Static Linking of a new Perl Binary +=item DESCRIPTION -=item Determination of Perl Library and Installation Locations +=item METHODS -=item Which architecture dependent directory? +new ( KEY , NSEMS , FLAGS ), getall, getncnt ( SEM ), getpid ( SEM ), +getval ( SEM ), getzcnt ( SEM ), id, op ( OPLIST ), remove, set ( STAT ), +set ( NAME => VALUE [, NAME => VALUE ...] ), setall ( VALUES ), setval ( N +, VALUE ), stat -=item Using Attributes and Parameters +=item SEE ALSO -AUTHOR, ABSTRACT, ABSTRACT_FROM, BINARY_LOCATION, C, CAPI, CCFLAGS, CONFIG, -CONFIGURE, DEFINE, DIR, DISTNAME, DL_FUNCS, DL_VARS, EXCLUDE_EXT, -EXE_FILES, FIRST_MAKEFILE, FULLPERL, FUNCLIST, H, IMPORTS, INC, -INCLUDE_EXT, INSTALLARCHLIB, INSTALLBIN, INSTALLDIRS, INSTALLMAN1DIR, -INSTALLMAN3DIR, INSTALLPRIVLIB, INSTALLSCRIPT, INSTALLSITEARCH, -INSTALLSITELIB, INST_ARCHLIB, INST_BIN, INST_EXE, 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, PERLMAINCC, -PERL_ARCHLIB, PERL_LIB, PERL_SRC, PERM_RW, PERM_RWX, PL_FILES, PM, -PMLIBDIRS, POLLUTE, PPM_INSTALL_EXEC, PPM_INSTALL_SCRIPT, PREFIX, -PREREQ_PM, SKIP, TYPEMAPS, VERSION, VERSION_FROM, XS, XSOPT, XSPROTOARG, -XS_VERSION +=item AUTHOR -=item Additional lowercase attributes +=item COPYRIGHT -clean, depend, dist, dynamic_lib, linkext, macro, realclean, test, -tool_autosplit +=back -=item Overriding MakeMaker Methods +=head2 IPC::SysV - SysV IPC constants -=item Hintsfile support +=over -=item Distribution Support +=item SYNOPSIS - make distcheck, make skipcheck, make distclean, make manifest, - make distdir, make tardist, make dist, make uutardist, make -shdist, make zipdist, make ci +=item DESCRIPTION -=item Disabling an extension +ftok( PATH, ID ) -=back +=item SEE ALSO -=item ENVIRONMENT +=item AUTHORS -PERL_MM_OPT +=item COPYRIGHT -=item SEE ALSO +=back -=item AUTHORS +=head2 IPC::SysV::Msg, IPC::Msg - SysV Msg IPC object class -=head2 ExtUtils::Manifest - utilities to write and check a MANIFEST file +=over =item SYNOPSIS =item DESCRIPTION -=item MANIFEST.SKIP +=item METHODS -=item EXPORT_OK +new ( KEY , FLAGS ), id, rcv ( BUF, LEN [, TYPE [, FLAGS ]] ), remove, set +( STAT ), set ( NAME => VALUE [, NAME => VALUE ...] ), snd ( TYPE, MSG [, +FLAGS ] ), stat -=item GLOBAL VARIABLES +=item SEE ALSO -=item DIAGNOSTICS +=item AUTHOR -C I, C I, C I<$!>, -C I +=item COPYRIGHT -=item SEE ALSO +=back -=item AUTHOR +=head2 IPC::SysV::Semaphore, IPC::Semaphore - SysV Semaphore IPC object +class -=head2 ExtUtils::Miniperl, writemain - write the C code for perlmain.c +=over =item SYNOPSIS =item DESCRIPTION +=item METHODS + +new ( KEY , NSEMS , FLAGS ), getall, getncnt ( SEM ), getpid ( SEM ), +getval ( SEM ), getzcnt ( SEM ), id, op ( OPLIST ), remove, set ( STAT ), +set ( NAME => VALUE [, NAME => VALUE ...] ), setall ( VALUES ), setval ( N +, VALUE ), stat + =item SEE ALSO -=head2 ExtUtils::Mkbootstrap - make a bootstrap file for use by DynaLoader +=item AUTHOR -=item SYNOPSIS +=item COPYRIGHT -=item DESCRIPTION +=back -=head2 ExtUtils::Mksymlists - write linker options files for dynamic -extension +=head2 Math::BigFloat - Arbitrary length float math package + +=over =item SYNOPSIS =item DESCRIPTION -DLBASE, DL_FUNCS, DL_VARS, FILE, FUNCLIST, IMPORTS, NAME +number format, Error returns 'NaN', Division is computed to, Rounding is +performed + +=item BUGS =item AUTHOR -=item REVISION +=back -=head2 ExtUtils::Packlist - manage .packlist files +=head2 Math::BigInt - Arbitrary size integer math package + +=over =item SYNOPSIS =item DESCRIPTION -=item USAGE +Canonical notation, Input, Output -=item FUNCTIONS +=item EXAMPLES -new(), read(), write(), validate(), packlist_file() +=item Autocreating constants -=item EXAMPLE +=item BUGS =item AUTHOR -=head2 ExtUtils::testlib - add blib/* directories to @INC - -=item SYNOPSIS +=back -=item DESCRIPTION +=head2 Math::Complex - complex numbers and associated mathematical +functions -=head2 Fatal - replace functions with equivalents which succeed or die +=over =item SYNOPSIS =item DESCRIPTION -=item AUTHOR +=item OPERATIONS -=head2 Fcntl - load the C Fcntl.h defines +=item CREATION -=item SYNOPSIS +=item STRINGIFICATION -=item DESCRIPTION +=over -=item NOTE +=item CHANGED IN PERL 5.6 -=item EXPORTED SYMBOLS +=back -=head2 File::Basename, fileparse - split a pathname into pieces +=item USAGE -=item SYNOPSIS +=item ERRORS DUE TO DIVISION BY ZERO OR LOGARITHM OF ZERO -=item DESCRIPTION +=item ERRORS DUE TO INDIGESTIBLE ARGUMENTS -fileparse_set_fstype, fileparse +=item BUGS -=item EXAMPLES +=item AUTHORS -C, C +=back -=head2 File::CheckTree, validate - run many filetest checks on a tree +=head2 Math::Trig - trigonometric functions + +=over =item SYNOPSIS =item DESCRIPTION -=head2 File::Compare - Compare files or filehandles +=item TRIGONOMETRIC FUNCTIONS -=item SYNOPSIS +B -=item DESCRIPTION +=over -=item RETURN +=item ERRORS DUE TO DIVISION BY ZERO -=item AUTHOR +=item SIMPLE (REAL) ARGUMENTS, COMPLEX RESULTS -=head2 File::Copy - Copy files or filehandles +=back -=item SYNOPSIS +=item PLANE ANGLE CONVERSIONS -=item DESCRIPTION +=item RADIAL COORDINATE CONVERSIONS =over -=item Special behaviour if C is defined (OS/2, VMS and Win32) +=item COORDINATE SYSTEMS -rmscopy($from,$to[,$date_flag]) +=item 3-D ANGLE CONVERSIONS + +cartesian_to_cylindrical, cartesian_to_spherical, cylindrical_to_cartesian, +cylindrical_to_spherical, spherical_to_cartesian, spherical_to_cylindrical =back -=item RETURN +=item GREAT CIRCLE DISTANCES -=item AUTHOR +=item EXAMPLES -=head2 File::DosGlob - DOS like globbing and then some +=item BUGS -=item SYNOPSIS +=item AUTHORS -=item DESCRIPTION +=back -=item EXPORTS (by request only) +=head2 NDBM_File - Tied access to ndbm files -=item BUGS +=over -=item AUTHOR +=item SYNOPSIS -=item HISTORY +C, C, C -=item SEE ALSO +=item DIAGNOSTICS -=head2 File::Find, find - traverse a file tree +=over -=item SYNOPSIS +=item C -=item DESCRIPTION +=back -=item BUGS +=item BUGS AND WARNINGS + +=back + +=head2 Net::Ping - check a remote host for reachability -=head2 File::Path - create or remove a series of directories +=over =item SYNOPSIS =item DESCRIPTION -=item AUTHORS +=over -=head2 File::Spec - portably perform operations on file names +=item Functions -=item SYNOPSIS +Net::Ping->new([$proto [, $def_timeout [, $bytes]]]);, $p->ping($host [, +$timeout]);, $p->close();, pingecho($host [, $timeout]); -=item DESCRIPTION +=back -=item SEE ALSO +=item WARNING -=item AUTHORS +=item NOTES -=head2 File::Spec::Functions - portably perform operations on file names +=back + +=head2 Net::hostent - by-name interface to Perl's built-in gethost*() +functions + +=over =item SYNOPSIS =item DESCRIPTION -=over +=item EXAMPLES -=item Exports +=item NOTE + +=item AUTHOR =back -=item SEE ALSO +=head2 Net::netent - by-name interface to Perl's built-in getnet*() +functions -=head2 File::Spec::Mac - File::Spec for MacOS +=over =item SYNOPSIS =item DESCRIPTION -=item METHODS - -canonpath, catdir, catfile, curdir, devnull, rootdir, tmpdir, updir, -file_name_is_absolute, path +=item EXAMPLES -=item SEE ALSO +=item NOTE -=head2 File::Spec::OS2 - methods for OS/2 file specs +=item AUTHOR -=item SYNOPSIS +=back -=item DESCRIPTION +=head2 Net::protoent - by-name interface to Perl's built-in getproto*() +functions -=head2 File::Spec::Unix - methods used by File::Spec +=over =item SYNOPSIS =item DESCRIPTION -=item METHODS +=item NOTE -canonpath, catdir, catfile, curdir, devnull, rootdir, tmpdir, updir, -no_upwards, file_name_is_absolute, path, join, splitpath, splitdir, -catpath, abs2rel, rel2abs +=item AUTHOR -=item SEE ALSO +=back -=head2 File::Spec::VMS - methods for VMS file specs +=head2 Net::servent - by-name interface to Perl's built-in getserv*() +functions + +=over =item SYNOPSIS =item DESCRIPTION -=over +=item EXAMPLES -=item Methods always loaded +=item NOTE -catdir, catfile, curdir (override), devnull (override), rootdir (override), -tmpdir (override), updir (override), path (override), file_name_is_absolute -(override) +=item AUTHOR =back -=item SEE ALSO +=head2 O - Generic interface to Perl Compiler backends -=head2 File::Spec::Win32 - methods for Win32 file specs +=over =item SYNOPSIS =item DESCRIPTION -devnull, tmpdir, catfile, canonpath, splitpath, splitdir, catpath, abs2rel, -rel2abs - -=item SEE ALSO - -=head2 File::stat - by-name interface to Perl's built-in stat() functions +=item CONVENTIONS -=item SYNOPSIS +=item IMPLEMENTATION -=item DESCRIPTION +=item AUTHOR -=item NOTE +=back -=item AUTHOR +=head2 ODBM_File - Tied access to odbm files -=head2 FileCache - keep more files open than the system permits +=over =item SYNOPSIS -=item DESCRIPTION +C, C, C -=item BUGS +=item DIAGNOSTICS -=head2 FileHandle - supply object methods for filehandles +=over -=item SYNOPSIS +=item C -=item DESCRIPTION +=back -$fh->print, $fh->printf, $fh->getline, $fh->getlines +=item BUGS AND WARNINGS -=item SEE ALSO +=back -=head2 FindBin - Locate directory of original perl script +=head2 Opcode - Disable named opcodes when compiling perl code + +=over =item SYNOPSIS =item DESCRIPTION -=item EXPORTABLE VARIABLES +=item NOTE -=item KNOWN BUGS +=item WARNING -=item AUTHORS +=item Operator Names and Operator Lists -=item COPYRIGHT +an operator name (opname), an operator tag name (optag), a negated opname +or optag, an operator set (opset) -=head2 GDBM_File - Perl5 access to the gdbm library. +=item Opcode Functions -=item SYNOPSIS +opcodes, opset (OP, ...), opset_to_ops (OPSET), opset_to_hex (OPSET), +full_opset, empty_opset, invert_opset (OPSET), verify_opset (OPSET, ...), +define_optag (OPTAG, OPSET), opmask_add (OPSET), opmask, opdesc (OP, ...), +opdump (PAT) -=item DESCRIPTION +=item Manipulating Opsets -=item AVAILABILITY +=item TO DO (maybe) -=item BUGS +=back -=item SEE ALSO +=over -=head2 Getopt::Long, GetOptions - extended processing of command line -options +=item Predefined Opcode Tags -=item SYNOPSIS +:base_core, :base_mem, :base_loop, :base_io, :base_orig, :base_math, +:base_thread, :default, :filesys_read, :sys_db, :browse, :filesys_open, +:filesys_write, :subprocess, :ownprocess, :others, :still_to_be_decided, +:dangerous -=item DESCRIPTION +=item SEE ALSO -!, +, :s, :i, :f +=item AUTHORS -=over +=back -=item Linkage specification +=head2 Opcode::Safe, Safe - Compile and execute code in restricted +compartments -=item Aliases and abbreviations +=over -=item Non-option call-back routine +=item SYNOPSIS -=item Option starters +=item DESCRIPTION -=item Return values and Errors +a new namespace, an operator mask -=back +=item WARNING -=item COMPATIBILITY +=over -=item EXAMPLES +=item RECENT CHANGES -=item CONFIGURATION OPTIONS +=item Methods in class Safe -default, auto_abbrev, getopt_compat, require_order, permute, bundling -(default: reset), bundling_override (default: reset), ignore_case -(default: set), ignore_case_always (default: reset), pass_through (default: -reset), prefix, prefix_pattern, debug (default: reset) +permit (OP, ...), permit_only (OP, ...), deny (OP, ...), deny_only (OP, +...), trap (OP, ...), untrap (OP, ...), share (NAME, ...), share_from +(PACKAGE, ARRAYREF), varglob (VARNAME), reval (STRING), rdo (FILENAME), +root (NAMESPACE), mask (MASK) -=item OTHER USEFUL VARIABLES +=item Some Safety Issues -$Getopt::Long::VERSION, $Getopt::Long::error +Memory, CPU, Snooping, Signals, State Changes =item AUTHOR -=item COPYRIGHT AND DISCLAIMER +=back -=head2 Getopt::Std, getopt - Process single-character switches with switch -clustering +=back + +=head2 Opcode::ops, ops - Perl pragma to restrict unsafe operations when +compiling + +=over -=item SYNOPSIS +=item SYNOPSIS =item DESCRIPTION -=head2 I18N::Collate - compare 8-bit scalar data according to the current -locale +=item SEE ALSO -=item SYNOPSIS +=back -=item DESCRIPTION +=head2 POSIX - Perl interface to IEEE Std 1003.1 -=head2 IO - load various IO modules +=over =item SYNOPSIS =item DESCRIPTION -=head2 IO::Dir - supply object methods for directory handles +=item NOTE -=item SYNOPSIS +=item CAVEATS -=item DESCRIPTION +=item FUNCTIONS -new ( [ DIRNAME ] ), open ( DIRNAME ), read (), seek ( POS ), tell (), -rewind (), close (), tie %hash, IO::Dir, DIRNAME [, OPTIONS ] +_exit, abort, abs, access, acos, alarm, asctime, asin, assert, atan, atan2, +atexit, atof, atoi, atol, bsearch, calloc, ceil, chdir, chmod, chown, +clearerr, clock, close, closedir, cos, cosh, creat, ctermid, ctime, +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, +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, +strtok, strtol, strtoul, strxfrm, sysconf, system, tan, tanh, tcdrain, +tcflow, tcflush, tcgetpgrp, tcsendbreak, tcsetpgrp, time, times, tmpfile, +tmpnam, tolower, toupper, ttyname, tzname, tzset, umask, uname, ungetc, +unlink, utime, vfprintf, vprintf, vsprintf, wait, waitpid, wcstombs, +wctomb, write -=item SEE ALSO +=item CLASSES -=item AUTHOR +=over -=item COPYRIGHT +=item POSIX::SigAction -=head2 IO::File - supply object methods for filehandles +new -=item SYNOPSIS +=item POSIX::SigSet -=item DESCRIPTION +new, addset, delset, emptyset, fillset, ismember -=item CONSTRUCTOR +=item POSIX::Termios -new ( FILENAME [,MODE [,PERMS]] ), new_tmpfile +new, getattr, getcc, getcflag, getiflag, getispeed, getlflag, getoflag, +getospeed, setattr, setcc, setcflag, setiflag, setispeed, setlflag, +setoflag, setospeed, Baud rate values, Terminal interface values, c_cc +field values, c_cflag field values, c_iflag field values, c_lflag field +values, c_oflag field values -=item METHODS +=back -open( FILENAME [,MODE [,PERMS]] ) +=item PATHNAME CONSTANTS -=item SEE ALSO +Constants -=item HISTORY +=item POSIX CONSTANTS -=head2 IO::Handle - supply object methods for I/O handles +Constants -=item SYNOPSIS +=item SYSTEM CONFIGURATION -=item DESCRIPTION +Constants -=item CONSTRUCTOR +=item ERRNO -new (), new_from_fd ( FD, MODE ) +Constants -=item METHODS +=item FCNTL -$io->fdopen ( FD, MODE ), $io->opened, $io->getline, $io->getlines, -$io->ungetc ( ORD ), $io->write ( BUF, LEN [, OFFSET ] ), $io->error, -$io->clearerr, $io->sync, $io->flush, $io->printflush ( ARGS ), -$io->blocking ( [ BOOL ] ), $io->untaint +Constants -=item NOTE +=item FLOAT -=item SEE ALSO +Constants -=item BUGS +=item LIMITS -=item HISTORY +Constants -=head2 IO::Pipe - supply object methods for pipes +=item LOCALE -=item SYNOPSIS +Constants -=item DESCRIPTION +=item MATH -=item CONSTRUCTOR +Constants -new ( [READER, WRITER] ) +=item SIGNAL -=item METHODS +Constants -reader ([ARGS]), writer ([ARGS]), handles () +=item STAT -=item SEE ALSO +Constants, Macros -=item AUTHOR +=item STDLIB -=item COPYRIGHT +Constants -=head2 IO::Poll - Object interface to system poll call +=item STDIO -=item SYNOPSIS +Constants -=item DESCRIPTION +=item TIME -=item METHODS +Constants -mask ( IO [, EVENT_MASK ] ), poll ( [ TIMEOUT ] ), events ( IO ), remove ( -IO ), handles( [ EVENT_MASK ] ) +=item UNISTD -=item SEE ALSO +Constants -=item AUTHOR +=item WAIT -=item COPYRIGHT +Constants, Macros -=head2 IO::Seekable - supply seek based methods for I/O objects +=back + +=head2 Pod::Checker, podchecker() - check pod documents for syntax errors + +=over =item SYNOPSIS -=item DESCRIPTION +=item OPTIONS/ARGUMENTS -=item SEE ALSO +=over -=item HISTORY +=item podchecker() -=head2 IO::Select - OO interface to the select system call +B<-warnings> =E I -=item SYNOPSIS +=back =item DESCRIPTION -=item CONSTRUCTOR +=item DIAGNOSTICS -new ( [ HANDLES ] ) +=over -=item METHODS +=item Errors -add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read ( -[ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_exception ( [ TIMEOUT ] ), -count (), bits(), select ( READ, WRITE, ERROR [, TIMEOUT ] ) +empty =headn, =over on line I without closing =back, =item without +previous =over, =back without previous =over, No argument for =begin, =end +without =begin, Nested =begin's, =for without formatter specification, +unresolved internal link I, Unknown command "I", Unknown +interior-sequence "I", nested commands +IE...IE...E...E, garbled entity I, Entity +number out of range, malformed link LEE, nonempty ZEE, +empty XEE, Spurious text after =pod / =cut, Spurious character(s) +after =back -=item EXAMPLE +=item Warnings -=item AUTHOR +multiple occurrence of link target I, line containing nothing but +whitespace in paragraph, file does not start with =head, No numeric +argument for =over, 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 -=item COPYRIGHT +=item Hyperlinks -=head2 IO::Socket - Object interface to socket communications +collapsing newlines to blanks, ignoring leading/trailing whitespace in +link, (section) in '$page' deprecated, alternative text/node '%s' contains +non-escaped | or / -=item SYNOPSIS +=back -=item DESCRIPTION +=item RETURN VALUE -=item CONSTRUCTOR +=item EXAMPLES -new ( [ARGS] ) +=item INTERFACE -=item METHODS +=back -accept([PKG]), timeout([VAL]), sockopt(OPT [, VAL]), sockdomain, socktype, -protocol, connected +Cnew( %options )> -=item SEE ALSO +C<$checker-Epoderror( @args )>, C<$checker-Epoderror( {%opts}, +@args )> -=item AUTHOR +C<$checker-Enum_errors()> -=item COPYRIGHT +C<$checker-Ename()> -=head2 IO::Socket::INET - Object interface for AF_INET domain sockets +C<$checker-Enode()> -=item SYNOPSIS +C<$checker-Eidx()> -=item DESCRIPTION +C<$checker-Ehyperlink()> -=item CONSTRUCTOR +=over -new ( [ARGS] ) +=item AUTHOR + +=back + +=head2 Pod::Find - find POD documents in directory trees =over -=item METHODS +=item SYNOPSIS -sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost -() +=item DESCRIPTION =back -=item SEE ALSO - -=item AUTHOR +=over -=item COPYRIGHT +=item C -=head2 IO::Socket::UNIX - Object interface for AF_UNIX domain sockets +C<-verbose =E 1>, C<-perl =E 1>, C<-script =E 1>, C<-inc =E +1> -=item SYNOPSIS +=back -=item DESCRIPTION +=over -=item CONSTRUCTOR +=item C -new ( [ARGS] ) +=back -=item METHODS +=over -hostpath(), peerpath() +=item C -=item SEE ALSO +C<-inc =E 1>, C<-dirs =E [ $dir1, $dir2, ... ]>, C<-verbose =E +1> -=item AUTHOR +=back -=item COPYRIGHT +=over -=head2 IO::lib::IO::Dir, IO::Dir - supply object methods for directory -handles +=item C -=item SYNOPSIS +=back -=item DESCRIPTION +=over -new ( [ DIRNAME ] ), open ( DIRNAME ), read (), seek ( POS ), tell (), -rewind (), close (), tie %hash, IO::Dir, DIRNAME [, OPTIONS ] +=item AUTHOR =item SEE ALSO -=item AUTHOR +=back -=item COPYRIGHT +=head2 Pod::Html - module to convert pod files to HTML -=head2 IO::lib::IO::File, IO::File - supply object methods for filehandles +=over =item SYNOPSIS =item DESCRIPTION -=item CONSTRUCTOR +=item ARGUMENTS -new ( FILENAME [,MODE [,PERMS]] ), new_tmpfile +backlink, css, flush, header, help, htmldir, htmlroot, index, infile, +libpods, netscape, outfile, podpath, podroot, quiet, recurse, title, +verbose -=item METHODS +=item EXAMPLE -open( FILENAME [,MODE [,PERMS]] ) +=item ENVIRONMENT + +=item AUTHOR =item SEE ALSO -=item HISTORY +=item COPYRIGHT -=head2 IO::lib::IO::Handle, IO::Handle - supply object methods for I/O -handles +=back -=item SYNOPSIS +=head2 Pod::InputObjects - objects representing POD input paragraphs, +commands, etc. -=item DESCRIPTION +=over -=item CONSTRUCTOR +=item SYNOPSIS -new (), new_from_fd ( FD, MODE ) +=item REQUIRES -=item METHODS +=item EXPORTS -$io->fdopen ( FD, MODE ), $io->opened, $io->getline, $io->getlines, -$io->ungetc ( ORD ), $io->write ( BUF, LEN [, OFFSET ] ), $io->error, -$io->clearerr, $io->sync, $io->flush, $io->printflush ( ARGS ), -$io->blocking ( [ BOOL ] ), $io->untaint +=item DESCRIPTION -=item NOTE +package B, package B, package +B, package B -=item SEE ALSO +=back -=item BUGS +=over + +=item B -=item HISTORY +=back -=head2 IO::lib::IO::Pipe, IO::Pipe - supply object methods for pipes +=over -=item SYNOPSIS +=item B -=item DESCRIPTION +=back -=item CONSTRUCTOR +=over -new ( [READER, WRITER] ) +=item B -=item METHODS +=back -reader ([ARGS]), writer ([ARGS]), handles () +=over -=item SEE ALSO +=item B -=item AUTHOR +=back -=item COPYRIGHT +=over -=head2 IO::lib::IO::Poll, IO::Poll - Object interface to system poll call +=item B -=item SYNOPSIS +=back -=item DESCRIPTION +=over -=item METHODS +=item B -mask ( IO [, EVENT_MASK ] ), poll ( [ TIMEOUT ] ), events ( IO ), remove ( -IO ), handles( [ EVENT_MASK ] ) +=back -=item SEE ALSO +=over -=item AUTHOR +=item Pod::Paragraph-EB -=item COPYRIGHT +=back -=head2 IO::lib::IO::Seekable, IO::Seekable - supply seek based methods for -I/O objects +=over -=item SYNOPSIS +=item $pod_para-EB -=item DESCRIPTION +=back -=item SEE ALSO +=over -=item HISTORY +=item $pod_para-EB -=head2 IO::lib::IO::Select, IO::Select - OO interface to the select system -call +=back -=item SYNOPSIS +=over -=item DESCRIPTION +=item $pod_para-EB -=item CONSTRUCTOR +=back -new ( [ HANDLES ] ) +=over -=item METHODS +=item $pod_para-EB -add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read ( -[ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_exception ( [ TIMEOUT ] ), -count (), bits(), select ( READ, WRITE, ERROR [, TIMEOUT ] ) +=back -=item EXAMPLE +=over -=item AUTHOR +=item $pod_para-EB -=item COPYRIGHT +=back -=head2 IO::lib::IO::Socket, IO::Socket - Object interface to socket -communications +=over -=item SYNOPSIS +=item $pod_para-EB -=item DESCRIPTION +=back -=item CONSTRUCTOR +=over -new ( [ARGS] ) +=item $pod_para-EB -=item METHODS +=back -accept([PKG]), timeout([VAL]), sockopt(OPT [, VAL]), sockdomain, socktype, -protocol, connected +=over -=item SEE ALSO +=item B -=item AUTHOR +=back -=item COPYRIGHT +=over -=head2 IO::lib::IO::Socket::INET, IO::Socket::INET - Object interface for -AF_INET domain sockets +=item Pod::InteriorSequence-EB -=item SYNOPSIS +=back -=item DESCRIPTION +=over -=item CONSTRUCTOR +=item $pod_seq-EB -new ( [ARGS] ) +=back =over -=item METHODS - -sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost -() +=item $pod_seq-EB =back -=item SEE ALSO - -=item AUTHOR +=over -=item COPYRIGHT +=item $pod_seq-EB -=head2 IO::lib::IO::Socket::UNIX, IO::Socket::UNIX - Object interface for -AF_UNIX domain sockets +=back -=item SYNOPSIS +=over -=item DESCRIPTION +=item $pod_seq-EB -=item CONSTRUCTOR +=back -new ( [ARGS] ) +=over -=item METHODS +=item $pod_seq-EB -hostpath(), peerpath() +=back -=item SEE ALSO +=over -=item AUTHOR +=item $pod_seq-EB -=item COPYRIGHT +=back -=head2 IPC::Msg - SysV Msg IPC object class +=over -=item SYNOPSIS +=item $pod_seq-EB -=item DESCRIPTION +=back -=item METHODS +=over -new ( KEY , FLAGS ), id, rcv ( BUF, LEN [, TYPE [, FLAGS ]] ), remove, set -( STAT ), set ( NAME => VALUE [, NAME => VALUE ...] ), snd ( TYPE, MSG [, -FLAGS ] ), stat +=item $pod_seq-EB -=item SEE ALSO +=back -=item AUTHOR +=over -=item COPYRIGHT +=item $pod_seq-EB -=head2 IPC::Open2, open2 - open a process for both reading and writing +=back -=item SYNOPSIS +=over -=item DESCRIPTION +=item Pod::InteriorSequence::B -=item WARNING +=back -=item SEE ALSO +=over -=head2 IPC::Open3, open3 - open a process for reading, writing, and error -handling +=item B -=item SYNOPSIS +=back -=item DESCRIPTION +=over -=item WARNING +=item Pod::ParseTree-EB -=head2 IPC::Semaphore - SysV Semaphore IPC object class +=back -=item SYNOPSIS +=over -=item DESCRIPTION +=item $ptree-EB -=item METHODS +=back -new ( KEY , NSEMS , FLAGS ), getall, getncnt ( SEM ), getpid ( SEM ), -getval ( SEM ), getzcnt ( SEM ), id, op ( OPLIST ), remove, set ( STAT ), -set ( NAME => VALUE [, NAME => VALUE ...] ), setall ( VALUES ), setval ( N -, VALUE ), stat +=over -=item SEE ALSO +=item $ptree-EB -=item AUTHOR +=back -=item COPYRIGHT +=over -=head2 IPC::SysV - SysV IPC constants +=item $ptree-EB -=item SYNOPSIS +=back -=item DESCRIPTION +=over -ftok( PATH, ID ) +=item $ptree-EB -=item SEE ALSO +=back -=item AUTHORS +=over -=item COPYRIGHT +=item $ptree-EB -=head2 IPC::SysV::Msg, IPC::Msg - SysV Msg IPC object class +=back -=item SYNOPSIS +=over -=item DESCRIPTION +=item Pod::ParseTree::B -=item METHODS +=back -new ( KEY , FLAGS ), id, rcv ( BUF, LEN [, TYPE [, FLAGS ]] ), remove, set -( STAT ), set ( NAME => VALUE [, NAME => VALUE ...] ), snd ( TYPE, MSG [, -FLAGS ] ), stat +=over =item SEE ALSO =item AUTHOR -=item COPYRIGHT +=back -=head2 IPC::SysV::Semaphore, IPC::Semaphore - SysV Semaphore IPC object -class +=head2 Pod::LaTeX - Convert Pod data to formatted Latex + +=over =item SYNOPSIS =item DESCRIPTION -=item METHODS +=back -new ( KEY , NSEMS , FLAGS ), getall, getncnt ( SEM ), getpid ( SEM ), -getval ( SEM ), getzcnt ( SEM ), id, op ( OPLIST ), remove, set ( STAT ), -set ( NAME => VALUE [, NAME => VALUE ...] ), setall ( VALUES ), setval ( N -, VALUE ), stat +=over -=item SEE ALSO +=item OBJECT METHODS -=item AUTHOR +C -=item COPYRIGHT +=back -=head2 Math::BigFloat - Arbitrary length float math package +=over -=item SYNOPSIS +=item Data Accessors -=item DESCRIPTION +B -number format, Error returns 'NaN', Division is computed to, Rounding is -performed +=back -=item BUGS +B -=item AUTHOR +B -=head2 Math::BigInt - Arbitrary size integer math package +B