X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pod%2Fperltoc.pod;h=6536974f8cacc13e7c0b732a6c60c42f0943650e;hb=e60bcc8b28002abcf08ed332c016973c16ef755b;hp=740b0f54e362f3e1be3dddad4d944a4e5f134c7e;hpb=83272a45226e83bd136d713158e9b44ace2dbc8d;p=p5sagit%2Fp5-mst-13.2.git diff --git a/pod/perltoc.pod b/pod/perltoc.pod index 740b0f5..6536974 100644 --- a/pod/perltoc.pod +++ b/pod/perltoc.pod @@ -1,4 +1,8 @@ +# !!!!!!! DO NOT EDIT THIS FILE !!!!!!! +# This file is autogenerated by buildtoc from all the other pods. +# Edit those files and run buildtoc --build-toc to effect changes. + =head1 NAME perltoc - perl documentation table of contents @@ -67,6 +71,8 @@ through to locate the proper section you're looking for. =item Running Perl programs +=item Safety net + =item Basic syntax overview =item Perl variable types @@ -103,546 +109,434 @@ Parentheses for capturing, Other regexp features =back -=head2 perlfaq - frequently asked questions about Perl ($Date: 2002/03/11 -21:32:23 $) +=head2 perlreftut - Mark's very short tutorial about references =over 4 =item DESCRIPTION -=over 4 - -=item perlfaq: Structural overview of the FAQ. - -=item L: General Questions About Perl - -=item L: Obtaining and Learning about Perl +=item Who Needs Complicated Data Structures? -=item L: Programming Tools +=item The Solution -=item L: Data Manipulation +=item Syntax -=item L: Files and Formats +=over 4 -=item L: Regular Expressions +=item Making References -=item L: General Perl Language Issues +=item Using References -=item L: System Interaction +=item An Example -=item L: Networking +=item Arrow Rule =back -=item About the perlfaq documents - -=over 4 - -=item Where to get the perlfaq - -=item How to contribute to the perlfaq +=item Solution -=item What will happen if you mail your Perl programming problems to the -authors +=item The Rest -=back +=item Summary =item Credits -=item Author and Copyright Information - =over 4 -=item Bundled Distributions - -=item Disclaimer +=item Distribution Conditions =back -=item Changes - -1/November/2000, 23/May/99, 13/April/99, 7/January/99, 22/June/98, -24/April/97, 23/April/97, 25/March/97, 18/March/97, 17/March/97 Version, -Initial Release: 11/March/97 - =back -=head2 perlbook - Perl book information +=head2 perldsc - Perl Data Structures Cookbook =over 4 =item DESCRIPTION -=back +arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes, +more elaborate constructs -=head2 perlsyn - Perl syntax +=item REFERENCES +X X X X -=over 4 +=item COMMON MISTAKES -=item DESCRIPTION +=item CAVEAT ON PRECEDENCE +X X -=over 4 +=item WHY YOU SHOULD ALWAYS C -=item Declarations +=item DEBUGGING +X X +X X X X +X X +X X -=item Simple statements +=item CODE EXAMPLES -=item Compound statements +=item ARRAYS OF ARRAYS +X X -=item Loop Control +=over 4 -=item For Loops +=item Declaration of an ARRAY OF ARRAYS -=item Foreach Loops +=item Generation of an ARRAY OF ARRAYS -=item Basic BLOCKs and Switch Statements +=item Access and Printing of an ARRAY OF ARRAYS -=item Goto +=back -=item PODs: Embedded Documentation +=item HASHES OF ARRAYS +X X -=item Plain Old Comments (Not!) +=over 4 -=back +=item Declaration of a HASH OF ARRAYS -=back +=item Generation of a HASH OF ARRAYS -=head2 perldata - Perl data types +=item Access and Printing of a HASH OF ARRAYS -=over 4 +=back -=item DESCRIPTION +=item ARRAYS OF HASHES +X X =over 4 -=item Variable names +=item Declaration of an ARRAY OF HASHES -=item Context +=item Generation of an ARRAY OF HASHES -=item Scalar values +=item Access and Printing of an ARRAY OF HASHES -=item Scalar value constructors +=back -=item List value constructors +=item HASHES OF HASHES +X X -=item Slices +=over 4 -=item Typeglobs and Filehandles +=item Declaration of a HASH OF HASHES -=back +=item Generation of a HASH OF HASHES -=item SEE ALSO +=item Access and Printing of a HASH OF HASHES =back -=head2 perlop - Perl operators and precedence +=item MORE ELABORATE RECORDS +X X X =over 4 -=item SYNOPSIS +=item Declaration of MORE ELABORATE RECORDS -=item DESCRIPTION +=item Declaration of a HASH OF COMPLEX RECORDS -=over 4 +=item Generation of a HASH OF COMPLEX RECORDS -=item Terms and List Operators (Leftward) +=back -=item The Arrow Operator +=item Database Ties -=item Auto-increment and Auto-decrement +=item SEE ALSO -=item Exponentiation +=item AUTHOR -=item Symbolic Unary Operators +=back -=item Binding Operators +=head2 perllol - Manipulating Arrays of Arrays in Perl -=item Multiplicative Operators +=over 4 -=item Additive Operators +=item DESCRIPTION -=item Shift Operators +=over 4 -=item Named Unary Operators +=item Declaration and Access of Arrays of Arrays -=item Relational Operators +=item Growing Your Own -=item Equality Operators +=item Access and Printing -=item Bitwise And +=item Slices -=item Bitwise Or and Exclusive Or +=back -=item C-style Logical And +=item SEE ALSO -=item C-style Logical Or +=item AUTHOR -=item Range Operators +=back -=item Conditional Operator +=head2 perlrequick - Perl regular expressions quick start -=item Assignment Operators +=over 4 -=item Comma Operator +=item DESCRIPTION -=item List Operators (Rightward) +=item The Guide -=item Logical Not +=over 4 -=item Logical And +=item Simple word matching -=item Logical or and Exclusive Or +=item Using character classes -=item C Operators Missing From Perl +=item Matching this or that -unary &, unary *, (TYPE) +=item Grouping things and hierarchical matching -=item Quote and Quote-like Operators +=item Extracting matches -=item Regexp Quote-Like Operators +=item Matching repetitions -?PATTERN?, m/PATTERN/cgimosx, /PATTERN/cgimosx, q/STRING/, C<'STRING'>, -qq/STRING/, "STRING", qr/STRING/imosx, qx/STRING/, `STRING`, qw/STRING/, -s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cds, -y/SEARCHLIST/REPLACEMENTLIST/cds, <, C, C, C, C, C<''>, C, C<"">, -C<``>, C, C, C<< >>, C, C, C, -C,, Interpolation of regular expressions, Optimization of -regular expressions +=item The split operator -=item I/O Operators +=back -=item Constant Folding +=item BUGS -=item Bitwise String Operators +=item SEE ALSO -=item Integer Arithmetic +=item AUTHOR AND COPYRIGHT -=item Floating-point Arithmetic +=over 4 -=item Bigger Numbers +=item Acknowledgments =back =back -=head2 perlsub - Perl subroutines +=head2 perlretut - Perl regular expressions tutorial =over 4 -=item SYNOPSIS - =item DESCRIPTION +=item Part 1: The basics + =over 4 -=item Private Variables via my() +=item Simple word matching -=item Persistent Private Variables +=item Using character classes -=item Temporary Values via local() +=item Matching this or that -=item Lvalue subroutines +=item Grouping things and hierarchical matching -Lvalue subroutines are EXPERIMENTAL +=item Extracting matches -=item Passing Symbol Table Entries (typeglobs) +=item Matching repetitions -=item When to Still Use local() +=item Building a regexp -=item Pass by Reference +=item Using regular expressions in Perl -=item Prototypes +=back -=item Constant Functions +=item Part 2: Power tools -=item Overriding Built-in Functions +=over 4 -=item Autoloading +=item More on characters, strings, and character classes -=item Subroutine Attributes +=item Compiling and saving regular expressions -=back +=item Embedding comments and modifiers in a regular expression -=item SEE ALSO +=item Non-capturing groupings -=back +=item Looking ahead and looking behind -=head2 perlfunc - Perl builtin functions +=item Using independent subexpressions to prevent backtracking -=over 4 +=item Conditional expressions -=item DESCRIPTION +=item A bit of magic: executing Perl code in a regular expression -=over 4 +=item Pragmas and debugging -=item Perl Functions by Category +=back -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 BUGS -=item Portability +=item SEE ALSO -=item Alphabetical Listing of Perl Functions +=item AUTHOR AND COPYRIGHT -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, LAYER, binmode FILEHANDLE, bless REF,CLASSNAME, bless -REF, caller EXPR, caller, chdir EXPR, chmod LIST, chomp VARIABLE, chomp( -LIST ), chomp, chop VARIABLE, chop( LIST ), chop, chown LIST, chr NUMBER, -chr, chroot FILENAME, chroot, close FILEHANDLE, close, closedir DIRHANDLE, -connect SOCKET,NAME, continue BLOCK, cos EXPR, cos, crypt PLAINTEXT,SALT, -dbmclose HASH, dbmopen HASH,DBNAME,MASK, defined EXPR, defined, delete -EXPR, die LIST, do BLOCK, do SUBROUTINE(LIST), do EXPR, dump LABEL, dump, -each HASH, eof FILEHANDLE, eof (), eof, eval EXPR, eval BLOCK, exec LIST, -exec PROGRAM LIST, exists EXPR, exit EXPR, exp EXPR, exp, fcntl -FILEHANDLE,FUNCTION,SCALAR, fileno FILEHANDLE, flock FILEHANDLE,OPERATION, -fork, format, formline PICTURE,LIST, getc FILEHANDLE, getc, getlogin, -getpeername SOCKET, getpgrp PID, getppid, getpriority WHICH,WHO, getpwnam -NAME, getgrnam NAME, gethostbyname NAME, getnetbyname NAME, getprotobyname -NAME, getpwuid UID, getgrgid GID, getservbyname NAME,PROTO, gethostbyaddr -ADDR,ADDRTYPE, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER, -getservbyport PORT,PROTO, getpwent, getgrent, gethostent, getnetent, -getprotoent, getservent, setpwent, setgrent, sethostent STAYOPEN, setnetent -STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent, -endhostent, endnetent, endprotoent, endservent, getsockname SOCKET, -getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR, glob, gmtime EXPR, goto LABEL, -goto EXPR, goto &NAME, grep BLOCK LIST, grep EXPR,LIST, hex EXPR, hex, -import, index STR,SUBSTR,POSITION, index STR,SUBSTR, int EXPR, int, ioctl -FILEHANDLE,FUNCTION,SCALAR, join EXPR,LIST, keys HASH, kill SIGNAL, LIST, -last LABEL, last, lc EXPR, lc, lcfirst EXPR, lcfirst, length EXPR, length, -link OLDFILE,NEWFILE, listen SOCKET,QUEUESIZE, local EXPR, localtime EXPR, -lock THING, log EXPR, log, lstat EXPR, lstat, m//, map BLOCK LIST, map -EXPR,LIST, mkdir FILENAME,MASK, mkdir FILENAME, msgctl ID,CMD,ARG, msgget -KEY,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, msgsnd ID,MSG,FLAGS, my EXPR, my -TYPE EXPR, my EXPR : ATTRS, my TYPE EXPR : ATTRS, next LABEL, next, no -Module VERSION LIST, no Module VERSION, no Module LIST, no Module, oct -EXPR, oct, open FILEHANDLE,EXPR, open FILEHANDLE,MODE,EXPR, open -FILEHANDLE,MODE,EXPR,LIST, open FILEHANDLE,MODE,REFERENCE, open FILEHANDLE, -opendir DIRHANDLE,EXPR, ord EXPR, ord, our EXPR, our EXPR TYPE, our EXPR : -ATTRS, our TYPE EXPR : ATTRS, pack TEMPLATE,LIST, package NAMESPACE, -package, pipe READHANDLE,WRITEHANDLE, pop ARRAY, pop, pos SCALAR, pos, -print FILEHANDLE LIST, print LIST, print, printf FILEHANDLE FORMAT, LIST, -printf FORMAT, LIST, prototype FUNCTION, push ARRAY,LIST, q/STRING/, -qq/STRING/, qr/STRING/, qx/STRING/, qw/STRING/, quotemeta EXPR, quotemeta, -rand EXPR, rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET, read -FILEHANDLE,SCALAR,LENGTH, readdir DIRHANDLE, readline EXPR, readlink EXPR, -readlink, readpipe EXPR, recv SOCKET,SCALAR,LENGTH,FLAGS, redo LABEL, redo, -ref EXPR, ref, rename OLDNAME,NEWNAME, require VERSION, require EXPR, -require, reset EXPR, reset, return EXPR, return, reverse LIST, rewinddir -DIRHANDLE, rindex STR,SUBSTR,POSITION, rindex STR,SUBSTR, rmdir FILENAME, -rmdir, s///, scalar EXPR, seek FILEHANDLE,POSITION,WHENCE, seekdir -DIRHANDLE,POS, select FILEHANDLE, select, select RBITS,WBITS,EBITS,TIMEOUT, -semctl ID,SEMNUM,CMD,ARG, semget KEY,NSEMS,FLAGS, semop KEY,OPSTRING, send -SOCKET,MSG,FLAGS,TO, send SOCKET,MSG,FLAGS, setpgrp PID,PGRP, setpriority -WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shift ARRAY, -shift, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE, -shmwrite ID,STRING,POS,SIZE, shutdown SOCKET,HOW, sin EXPR, sin, sleep -EXPR, sleep, socket SOCKET,DOMAIN,TYPE,PROTOCOL, socketpair -SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, sort SUBNAME LIST, sort BLOCK LIST, -sort LIST, splice ARRAY,OFFSET,LENGTH,LIST, splice ARRAY,OFFSET,LENGTH, -splice ARRAY,OFFSET, splice ARRAY, split /PATTERN/,EXPR,LIMIT, split -/PATTERN/,EXPR, split /PATTERN/, split, sprintf FORMAT, LIST, sqrt EXPR, -sqrt, srand EXPR, srand, stat FILEHANDLE, stat EXPR, stat, study SCALAR, -study, sub NAME BLOCK, sub NAME (PROTO) BLOCK, sub NAME : ATTRS BLOCK, sub -NAME (PROTO) : ATTRS BLOCK, substr EXPR,OFFSET,LENGTH,REPLACEMENT, substr -EXPR,OFFSET,LENGTH, substr EXPR,OFFSET, symlink OLDFILE,NEWFILE, syscall -LIST, sysopen FILEHANDLE,FILENAME,MODE, sysopen -FILEHANDLE,FILENAME,MODE,PERMS, sysread FILEHANDLE,SCALAR,LENGTH,OFFSET, -sysread FILEHANDLE,SCALAR,LENGTH, sysseek FILEHANDLE,POSITION,WHENCE, -system LIST, system PROGRAM LIST, syswrite FILEHANDLE,SCALAR,LENGTH,OFFSET, -syswrite FILEHANDLE,SCALAR,LENGTH, syswrite FILEHANDLE,SCALAR, tell -FILEHANDLE, tell, telldir DIRHANDLE, tie VARIABLE,CLASSNAME,LIST, tied -VARIABLE, time, times, tr///, truncate FILEHANDLE,LENGTH, truncate -EXPR,LENGTH, uc EXPR, uc, ucfirst EXPR, ucfirst, umask EXPR, umask, undef -EXPR, undef, unlink LIST, unlink, unpack TEMPLATE,EXPR, 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/// +=over 4 + +=item Acknowledgments =back =back -=head2 perlreftut - Mark's very short tutorial about references +=head2 perlboot - Beginner's Object-Oriented Tutorial =over 4 =item DESCRIPTION -=item Who Needs Complicated Data Structures? +=over 4 -=item The Solution +=item If we could talk to the animals... -=item Syntax +=item Introducing the method invocation arrow -=over 4 +=item Invoking a barnyard -=item Making References +=item The extra parameter of method invocation -=item Using References +=item Calling a second method to simplify things -=back +=item Inheriting the windpipes -=item An Example +=item A few notes about @ISA -=item Arrow Rule - -=item Solution +=item Overriding the methods -=item The Rest +=item Starting the search from a different place -=item Summary +=item The SUPER way of doing things -=item Credits +=item Where we're at so far... -=over 4 +=item A horse is a horse, of course of course -- or is it? -=item Distribution Conditions +=item Invoking an instance method -=back +=item Accessing the instance data -=back +=item How to build a horse -=head2 perldsc - Perl Data Structures Cookbook +=item Inheriting the constructor -=over 4 +=item Making a method work with either classes or instances -=item DESCRIPTION +=item Adding parameters to a method -arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes, -more elaborate constructs +=item More interesting instances -=item REFERENCES +=item A horse of a different color -=item COMMON MISTAKES +=item Summary -=item CAVEAT ON PRECEDENCE +=back -=item WHY YOU SHOULD ALWAYS C +=item SEE ALSO -=item DEBUGGING +=item COPYRIGHT -=item CODE EXAMPLES +=back -=item ARRAYS OF ARRAYS +=head2 perltoot - Tom's object-oriented tutorial for perl =over 4 -=item Declaration of an ARRAY OF ARRAYS +=item DESCRIPTION -=item Generation of an ARRAY OF ARRAYS +=item Creating a Class -=item Access and Printing of an ARRAY OF ARRAYS +=over 4 -=back +=item Object Representation -=item HASHES OF ARRAYS +=item Class Interface -=over 4 +=item Constructors and Instance Methods -=item Declaration of a HASH OF ARRAYS +=item Planning for the Future: Better Constructors -=item Generation of a HASH OF ARRAYS +=item Destructors -=item Access and Printing of a HASH OF ARRAYS +=item Other Object Methods =back -=item ARRAYS OF HASHES +=item Class Data =over 4 -=item Declaration of an ARRAY OF HASHES +=item Accessing Class Data -=item Generation of an ARRAY OF HASHES +=item Debugging Methods -=item Access and Printing of an ARRAY OF HASHES +=item Class Destructors + +=item Documenting the Interface =back -=item HASHES OF HASHES +=item Aggregation + +=item Inheritance =over 4 -=item Declaration of a HASH OF HASHES +=item Overridden Methods -=item Generation of a HASH OF HASHES +=item Multiple Inheritance -=item Access and Printing of a HASH OF HASHES +=item UNIVERSAL: The Root of All Objects =back -=item MORE ELABORATE RECORDS +=item Alternate Object Representations =over 4 -=item Declaration of MORE ELABORATE RECORDS - -=item Declaration of a HASH OF COMPLEX RECORDS - -=item Generation of a HASH OF COMPLEX RECORDS - -=back - -=item Database Ties - -=item SEE ALSO +=item Arrays as Objects -=item AUTHOR +=item Closures as Objects =back -=head2 perlrequick - Perl regular expressions quick start +=item AUTOLOAD: Proxy Methods =over 4 -=item DESCRIPTION - -=item The Guide +=item Autoloaded Data Methods -=over 4 +=item Inherited Autoloaded Data Methods -=item Simple word matching +=back -=item Using character classes +=item Metaclassical Tools -=item Matching this or that +=over 4 -=item Grouping things and hierarchical matching +=item Class::Struct -=item Extracting matches +=item Data Members as Variables -=item Matching repetitions +=back -=item More matching +=item NOTES -=item Search and replace +=over 4 -=item The split operator +=item Object Terminology =back -=item BUGS - =item SEE ALSO =item AUTHOR AND COPYRIGHT +=item COPYRIGHT + =over 4 =item Acknowledgments @@ -651,84 +545,89 @@ more elaborate constructs =back -=head2 perlpod - the Plain Old Documentation format +=head2 perltooc - Tom's OO Tutorial for Class Data in Perl =over 4 =item DESCRIPTION +=item Class Data in a Can + +=item Class Data as Package Variables + =over 4 -=item Ordinary Paragraph +=item Putting All Your Eggs in One Basket -=item Verbatim Paragraph +=item Inheritance Concerns -=item Command Paragraph +=item The Eponymous Meta-Object -C<=head1 I>, C<=head2 I>, C<=head3 I>, C<=head4 I>, C<=over I>, C<=item -I>, C<=back>, C<=cut>, C<=pod>, C<=begin I>, C<=end -I>, C<=for I I> +=item Indirect References to Class Data -=item Formatting Codes +=item Monadic Classes -CtextE> -- italic text, CtextE> -- bold text, -CcodeE> -- code text, CnameE> -- a hyperlink, -CescapeE> -- a character escape, CfilenameE> -- used -for filenames, CtextE> -- text contains non-breaking spaces, -Ctopic nameE> -- an index entry, CE> -- a null -(zero-effect) formatting code +=item Translucent Attributes -=item The Intent +=back -=item Embedding Pods in Perl Modules +=item Class Data as Lexical Variables -=item Hints for Writing Pod +=over 4 + +=item Privacy and Responsibility + +=item File-Scoped Lexicals + +=item More Inheritance Concerns + +=item Locking the Door and Throwing Away the Key + +=item Translucency Revisited =back +=item NOTES + =item SEE ALSO -=item AUTHOR +=item AUTHOR AND COPYRIGHT + +=item ACKNOWLEDGEMENTS + +=item HISTORY =back -=head2 perlpodspec - Plain Old Documentation: format specification and -notes +=head2 perlbot - Bag'o Object Tricks (the BOT) =over 4 =item DESCRIPTION -=item Pod Definitions +=item OO SCALING TIPS -=item Pod Commands +=item INSTANCE VARIABLES -"=head1", "=head2", "=head3", "=head4", "=pod", "=cut", "=over", "=item", -"=back", "=begin formatname", "=end formatname", "=for formatname text..." +=item SCALAR INSTANCE VARIABLES -=item Pod Formatting Codes +=item INSTANCE VARIABLE INHERITANCE -CtextE> -- italic text, CtextE> -- bold text, -CcodeE> -- code text, CfilenameE> -- style for -filenames, Ctopic nameE> -- an index entry, CE> -- a -null (zero-effect) formatting code, CnameE> -- a hyperlink, -CescapeE> -- a character escape, CtextE> -- text -contains non-breaking spaces +=item OBJECT RELATIONSHIPS -=item Notes on Implementing Pod Processors +=item OVERRIDING SUPERCLASS METHODS -=item About LE...E Codes +=item USING RELATIONSHIP WITH SDBM -First:, Second:, Third:, Fourth:, Fifth:, Sixth: +=item THINKING OF CODE REUSE -=item About =over...=back Regions +=item CLASS CONTEXT AND THE OBJECT -=item About Data Paragraphs and "=begin/=end" Regions +=item INHERITING A CONSTRUCTOR -=item SEE ALSO +=item DELEGATION -=item AUTHOR +=item SEE ALSO =back @@ -740,6 +639,26 @@ First:, Second:, Third:, Fourth:, Fifth:, Sixth: =back +=head2 perlcheat - Perl 5 Cheat Sheet + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item The sheet + +=back + +=item ACKNOWLEDGEMENTS + +=item AUTHOR + +=item SEE ALSO + +=back + =head2 perltrap - Perl traps for the unwary =over 4 @@ -750,7 +669,7 @@ First:, Second:, Third:, Fourth:, Fifth:, Sixth: =item Awk Traps -=item C Traps +=item C/C++ Traps =item Sed Traps @@ -767,54 +686,84 @@ Subroutine, Signal, Sorting Traps, OS Traps, DBM Traps, Unclassified Traps =item Discontinuance, Deprecation, and BugFix traps -Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance, -Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix, -Discontinuance, Deprecation, Discontinuance, Discontinuance +Symbols starting with "_" no longer forced into main, Double-colon valid +package separator in variable name, 2nd and 3rd args to C are now +in scalar context, Can't do C into a block that is optimized away, +Can't use whitespace as variable name or quote delimiter, C gone, C<**> binds tighter than unary minus, C changed when +iterating over a list, C with no args behavior changed, B<-e> +behavior fixed, C returns number of elements in resulting list, Some +error messages differ, C honors subroutine args, Bugs removed =item Parsing Traps -Parsing, Parsing, Parsing, Parsing, Parsing +Space between . and = triggers syntax error, Better parsing in perl 5, +Function parsing, String interpolation of C<$#array> differs, Perl guesses +on C, C followed by C<{> if it starts BLOCK or hash ref =item Numerical Traps -Numerical, Numerical, Numerical, Bitwise string ops +Formatted output and significant digits, Auto-increment operator over +signed int limit deleted, Assignment of return values from numeric equality +tests doesn't work, Bitwise string ops =item General data type traps -(Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String), -(Constants), (Scalars), (Variable Suicide) +Negative array subscripts now count from the end of array, Setting +C<$#array> lower now discards array elements, Hashes get defined before +use, Glob assignment from localized variable to variable, Assigning +C to glob, Changes in unary negation (of strings), Modifying of +constants prohibited, C behavior changed, Variable Suicide =item Context Traps - scalar, list contexts -(list context), (scalar context), (scalar context), (list, builtin) +Elements of argument lists for formats evaluated in list context, +C returns false value in scalar context if no caller present, +Comma operator in scalar context gives scalar context to args, C +prototyped as C<($;@)> =item Precedence Traps -Precedence, Precedence, Precedence, Precedence, Precedence, Precedence, -Precedence +LHS vs. RHS of any assignment operator, Semantic errors introduced due to +precedence, Precedence of assignment operators same as the precedence of +assignment, C requires parentheses around filehandle, C<$:> +precedence over C<$::> gone, Precedence of file test operators documented, +C, C, C are regular named unary operators =item General Regular Expression Traps using s///, etc. -Regular Expression, Regular Expression, Regular Expression, Regular -Expression, Regular Expression, Regular Expression, Regular Expression, -Regular Expression +C interpolates on either side, C attaches its state to +the searched string, C used within an anonymous sub, C<$+> isn't set +to whole match, Substitution now returns null string if it fails, +C is now a normal substitution, Stricter parsing of variables +in regular expressions, C matches only once, Failed matches don't +reset the match variables =item Subroutine, Signal, Sorting Traps -(Signals), (Sort Subroutine), warn() won't let you specify a filehandle +Barewords that used to look like strings look like subroutine calls, +Reverse is no longer allowed as the name of a sort subroutine, C +won't let you specify a filehandle =item OS Traps -(SysV), (SysV) +SysV resets signal handler correctly, SysV C appends correctly =item Interpolation Traps -Interpolation, Interpolation, Interpolation, Interpolation, Interpolation, -Interpolation, Interpolation, Interpolation, Interpolation +C<@> always interpolates an array in double-quotish strings, Double-quoted +strings may no longer end with an unescaped $, Arbitrary expressions are +evaluated inside braces within double quotes, C<$$x> now tries to +dereference $x, Creation of hashes on the fly with C requires +protection, Bugs in earlier perl versions, Array and hash brackets during +interpolation, Interpolation of C<\$$foo{bar}>, C string passed to +C will not find string terminator =item DBM Traps -DBM, DBM +Perl5 must have been linked with same dbm/ndbm as the default for +C, DBM exceeding limit on the key/value size will cause perl5 to +exit immediately =item Unclassified Traps @@ -825,53 +774,41 @@ LIMIT specified =back -=head2 perlrun - how to execute the Perl interpreter +=head2 perldebtut - Perl debugging tutorial =over 4 -=item SYNOPSIS - =item DESCRIPTION -=over 4 +=item use strict -=item #! and quoting on non-Unix systems +=item Looking at data and -w and v -OS/2, MS-DOS, Win95/NT, Macintosh, VMS +=item help -=item Location of Perl +=item Stepping through code -=item Command Switches +=item Placeholder for a, w, t, T -B<-0>[I], B<-a>, B<-C>, B<-c>, B<-d>, B<-d:>I, -B<-D>I, B<-D>I, B<-e> I, B<-F>I, -B<-h>, B<-i>[I], B<-I>I, B<-l>[I], -B<-m>[B<->]I, B<-M>[B<->]I, B<-M>[B<->]I<'module ...'>, -B<-[mM]>[B<->]I, B<-n>, B<-p>, B<-P>, B<-s>, B<-S>, -B<-t>, B<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I, B<-w>, B<-W>, -B<-X>, B<-x> I +=item REGULAR EXPRESSIONS -=back +=item OUTPUT TIPS -=item ENVIRONMENT +=item CGI -HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLIO, :bytes, :crlf, :mmap, -:perlio, :raw, :stdio, :unix, :utf8, :win32, PERLIO_DEBUG, PERLLIB, -PERL5DB, PERL5SHELL (specific to the Win32 port), PERL_DEBUG_MSTATS, -PERL_DESTRUCT_LEVEL, PERL_ENCODING, PERL_ROOT (specific to the VMS port), -SYS$LOGIN (specific to the VMS port) +=item GUIs -=back +=item SUMMARY -=head2 perldiag - various Perl diagnostics +=item SEE ALSO -=over 4 +=item AUTHOR -=item DESCRIPTION +=item CONTRIBUTORS =back -=head2 perllexwarn - Perl Lexical Warnings +=head2 perlfaq - frequently asked questions about Perl ($Revision: 3606 $) =over 4 @@ -879,127 +816,106 @@ SYS$LOGIN (specific to the VMS port) =over 4 -=item Default Warnings and Optional Warnings +=item Where to get the perlfaq -=item What's wrong with B<-w> and C<$^W> +=item How to contribute to the perlfaq -=item Controlling Warnings from the Command Line +=item What will happen if you mail your Perl programming problems to the +authors? -B<-w>, B<-W>, B<-X> +=back -=item Backward Compatibility +=item CREDITS -=item Category Hierarchy +=item AUTHOR AND COPYRIGHT -=item Fatal Warnings - -=item Reporting Warnings from a Module - -=back - -=item TODO - -=item SEE ALSO - -=item AUTHOR +=item Table of Contents -=back +perlfaq - this document, perlfaq1 - General Questions About Perl, perlfaq2 +- Obtaining and Learning about Perl, perlfaq3 - Programming Tools, perlfaq4 +- Data Manipulation, perlfaq5 - Files and Formats, perlfaq6 - Regular +Expressions, perlfaq7 - General Perl Language Issues, perlfaq8 - System +Interaction, perlfaq9 - Networking -=head2 perldebtut - Perl debugging tutorial +=item The Questions =over 4 -=item DESCRIPTION - -=item use strict - -=item Looking at data and -w and v - -=item help - -=item Stepping through code +=item L: General Questions About Perl -=item Placeholder for a, w, t, T +=item L: Obtaining and Learning about Perl -=item REGULAR EXPRESSIONS +=item L: Programming Tools -=item OUTPUT TIPS +=item L: Data Manipulation -=item CGI +=item L: Files and Formats -=item GUIs +=item L: Regular Expressions -=item SUMMARY +=item L: General Perl Language Issues -=item SEE ALSO +=item L: System Interaction -=item AUTHOR +=item L: Networking -=item CONTRIBUTORS +=back =back -=head2 perldebug - Perl debugging +=head2 perlfaq1 - General Questions About Perl ($Revision: 3606 $) =over 4 =item DESCRIPTION -=item The Perl Debugger - =over 4 -=item Debugger Commands +=item What is Perl? -h, h [command], h h, p expr, x [maxdepth] expr, V [pkg [vars]], X [vars], y -[level [vars]], T, s [expr], n [expr], r, , c [line|sub], l, l -min+incr, l min-max, l line, l subname, -, v [line], f filename, /pattern/, -?pattern?, L [abw], S [[!]regex], t, t expr, b, b [line] [condition], b -subname [condition], b postpone subname [condition], b load filename, b -compile subname, B line, B *, a [line] command, A line, A *, w expr, W -expr, W *, o, o booloption .., o anyoption? .., o option=value .., < ?, < [ -command ], << command, > ?, > command, >> command, { ?, { [ command ], {{ -command, ! number, ! -number, ! pattern, !! cmd, source file, H -number, q -or ^D, R, |dbcmd, ||dbcmd, command, m expr, M, man [manpage] +=item Who supports Perl? Who develops it? Why is it free? -=item Configurable Options +=item Which version of Perl should I use? -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, C, -C +=item What are perl4, perl5, or perl6? -=item Debugger input/output +=item What is Ponie? -Prompt, Multiline commands, Stack backtrace, Line Listing Format, Frame -listing +=item What is perl6? -=item Debugging compile-time statements +=item How stable is Perl? -=item Debugger Customization +=item Is Perl difficult to learn? -=item Readline Support +=item How does Perl compare with other languages like Java, Python, REXX, +Scheme, or Tcl? -=item Editor Support for Debugging +=item Can I do [task] in Perl? -=item The Perl Profiler +=item When shouldn't I program in Perl? -=back +=item What's the difference between "perl" and "Perl"? -=item Debugging regular expressions +=item Is it a Perl program or a Perl script? -=item Debugging memory usage +=item What is a JAPH? -=item SEE ALSO +=item Where can I get a list of Larry Wall witticisms? -=item BUGS +=item How can I convince others to use Perl? + +http://perltraining.com.au/whyperl.html, +http://www.perl.org/advocacy/whyperl.html =back -=head2 perlvar - Perl predefined variables +=item REVISION + +=item AUTHOR AND COPYRIGHT + +=back + +=head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 3606 $) =over 4 @@ -1007,356 +923,359 @@ listing =over 4 -=item Predefined Names +=item What machines support perl? Where do I get it? -$ARG, $_, $a, $b, $>, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $', -$LAST_PAREN_MATCH, $+, $^N, @LAST_MATCH_END, @+, $MULTILINE_MATCHING, $*, -HANDLE->input_line_number(EXPR), $INPUT_LINE_NUMBER, $NR, $, -IO::Handle->input_record_separator(EXPR), $INPUT_RECORD_SEPARATOR, $RS, $/, -HANDLE->autoflush(EXPR), $OUTPUT_AUTOFLUSH, $|, -IO::Handle->output_field_separator EXPR, $OUTPUT_FIELD_SEPARATOR, $OFS, $,, -IO::Handle->output_record_separator EXPR, $OUTPUT_RECORD_SEPARATOR, $ORS, -$\, $LIST_SEPARATOR, $", $SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#, -HANDLE->format_page_number(EXPR), $FORMAT_PAGE_NUMBER, $%, -HANDLE->format_lines_per_page(EXPR), $FORMAT_LINES_PER_PAGE, $=, -HANDLE->format_lines_left(EXPR), $FORMAT_LINES_LEFT, $-, @LAST_MATCH_START, -@-, C<$`> is the same as C, C<$&> is the same as -C, C<$'> is the same as C, C<$1> is the same as C, C<$2> -is the same as C, C<$3> is the same as -C, HANDLE->format_name(EXPR), -$FORMAT_NAME, $~, HANDLE->format_top_name(EXPR), $FORMAT_TOP_NAME, $^, -IO::Handle->format_line_break_characters EXPR, -$FORMAT_LINE_BREAK_CHARACTERS, $:, IO::Handle->format_formfeed EXPR, -$FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A, $CHILD_ERROR, $?, ${^ENCODING}, -$OS_ERROR, $ERRNO, $!, %!, $EXTENDED_OS_ERROR, $^E, $EVAL_ERROR, $@, -$PROCESS_ID, $PID, $$, $REAL_USER_ID, $UID, $<, $EFFECTIVE_USER_ID, $EUID, -$>, $REAL_GROUP_ID, $GID, $(, $EFFECTIVE_GROUP_ID, $EGID, $), -$PROGRAM_NAME, $0, $[, $], $COMPILING, $^C, $DEBUGGING, $^D, -$SYSTEM_FD_MAX, $^F, $^H, %^H, $INPLACE_EDIT, $^I, $^M, $OSNAME, $^O, -${^OPEN}, $PERLDB, $^P, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, -0x100, 0x200, $LAST_REGEXP_CODE_RESULT, $^R, $EXCEPTIONS_BEING_CAUGHT, $^S, -$BASETIME, $^T, ${^TAINT}, $PERL_VERSION, $^V, $WARNING, $^W, -${^WARNING_BITS}, ${^WIDE_SYSTEM_CALLS}, $EXECUTABLE_NAME, $^X, ARGV, -$ARGV, @ARGV, @F, @INC, @_, %INC, %ENV, $ENV{expr}, %SIG, $SIG{expr} +=item How can I get a binary version of perl? -=item Error Indicators +=item I don't have a C compiler. How can I build my own Perl interpreter? -=item Technical Note on the Syntax of Variable Names +=item I copied the perl binary from one machine to another, but scripts +don't work. -=back +=item I grabbed the sources and tried to compile but gdbm/dynamic +loading/malloc/linking/... failed. How do I make it work? -=item BUGS +=item What modules and extensions are available for Perl? What is CPAN? +What does CPAN/src/... mean? -=back +=item Is there an ISO or ANSI certified version of Perl? -=head2 perllol - Manipulating Arrays of Arrays in Perl +=item Where can I get information on Perl? -=over 4 +=item What are the Perl newsgroups on Usenet? Where do I post questions? -=item DESCRIPTION +=item Where should I post source code? -=over 4 +=item Perl Books -=item Declaration and Access of Arrays of Arrays +References, Tutorials, Task-Oriented, Special Topics -=item Growing Your Own +=item Which magazines have Perl content? -=item Access and Printing +=item What mailing lists are there for Perl? -=item Slices +=item Where are the archives for 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? cpan.org? =back -=item SEE ALSO +=item REVISION -=item AUTHOR +=item AUTHOR AND COPYRIGHT =back -=head2 perlopentut - tutorial on opening things in Perl +=head2 perlfaq3 - Programming Tools ($Revision: 3606 $) =over 4 =item DESCRIPTION -=item Open E la shell - =over 4 -=item Simple Opens - -=item Pipe Opens +=item How do I do (anything)? -=item The Minus File +=item How can I use Perl interactively? -=item Mixing Reads and Writes +=item Is there a Perl shell? -=item Filters +=item How do I find which modules are installed on my system? -=back +=item How do I debug my Perl programs? -=item Open E la C +=item How do I profile my Perl programs? -=over 4 +=item How do I cross-reference my Perl programs? -=item Permissions E la mode +=item Is there a pretty-printer (formatter) for Perl? -=back +=item Is there a ctags for Perl? -=item Obscure Open Tricks +=item Is there an IDE or Windows Perl Editor? -=over 4 +Eclipse, Enginsite, Komodo, Open Perl IDE, OptiPerl, PerlBuilder, +visiPerl+, Visual Perl, Zeus, GNU Emacs, MicroEMACS, XEmacs, Jed, Elvis, +Vile, Vim, Codewright, MultiEdit, SlickEdit, Bash, Ksh, Tcsh, Zsh, Affrus, +Alpha, BBEdit and BBEdit Lite -=item Re-Opening Files (dups) +=item Where can I get Perl macros for vi? -=item Dispelling the Dweomer +=item Where can I get perl-mode for emacs? -=item Paths as Opens +=item How can I use curses with Perl? -=item Single Argument Open +=item How can I use X or Tk with Perl? -=item Playing with STDIN and STDOUT +=item How can I make my Perl program run faster? -=back +=item How can I make my Perl program take less memory? -=item Other I/O Issues +Don't slurp!, Use map and grep selectively, Avoid unnecessary quotes and +stringification, Pass by reference, Tie large variables to disk -=over 4 +=item Is it safe to return a reference to local or lexical data? -=item Opening Non-File Files +=item How can I free an array or hash so my program shrinks? -=item Binary Files +=item How can I make my CGI script more efficient? -=item File Locking +=item How can I hide the source for my Perl program? -=item IO Layers +=item How can I compile my Perl program into byte code or C? -=back +=item How can I compile Perl into Java? -=item SEE ALSO +=item How can I get C<#!perl> to work on [MS-DOS,NT,...]? -=item AUTHOR and COPYRIGHT +=item Can I write useful Perl programs on the command line? -=item HISTORY +=item Why don't Perl one-liners work on my DOS/Mac/VMS system? -=back +=item Where can I learn about CGI or Web programming in Perl? -=head2 perlpacktut - tutorial on C and C +=item Where can I learn about object-oriented Perl programming? -=over 4 +=item Where can I learn about linking C with Perl? -=item DESCRIPTION +=item I've read perlembed, perlguts, etc., but I can't embed perl in my C +program; what am I doing wrong? -=item The Basic Principle +=item When I tried to run my script, I got this message. What does it mean? -=item Packing Text +=item What's MakeMaker? -=item Packing Numbers +=back -=over 4 +=item REVISION -=item Integers +=item AUTHOR AND COPYRIGHT -=item Unpacking a Stack Frame +=back -=item How to Eat an Egg on a Net +=head2 perlfaq4 - Data Manipulation ($Revision: 3606 $) -=item Floating point Numbers +=over 4 -=back +=item DESCRIPTION -=item Exotic Templates +=item Data: Numbers =over 4 -=item Bit Strings +=item Why am I getting long decimals (eg, 19.9499999999999) instead of the +numbers I should be getting (eg, 19.95)? -=item Uuencoding +=item Why is int() broken? -=item Doing Sums +=item Why isn't my octal data interpreted correctly? -=item Unicode +=item Does Perl have a round() function? What about ceil() and floor()? +Trig functions? -=item Another Portable Binary Encoding +=item How do I convert between numeric representations/bases/radixes? -=back +How do I convert hexadecimal into decimal, How do I convert from decimal to +hexadecimal, How do I convert from octal to decimal, How do I convert from +decimal to octal, How do I convert from binary to decimal, How do I convert +from decimal to binary -=item Lengths and Widths +=item Why doesn't & work the way I want it to? -=over 4 +=item How do I multiply matrices? -=item String Lengths +=item How do I perform an operation on a series of integers? -=item Dynamic Templates +=item How can I output Roman numerals? + +=item Why aren't my random numbers random? + +=item How do I get a random number between X and Y? =back -=item Packing and Unpacking C Structures +=item Data: Dates =over 4 -=item The Alignment Pit - -=item Alignment, Take 2 +=item How do I find the day or week of the year? -=item Alignment, Take 3 +=item How do I find the current century or millennium? -=item Pointers for How to Use Them +=item How can I compare two dates and find the difference? -=back +=item How can I take a string and turn it into epoch seconds? -=item Pack Recipes +=item How can I find the Julian Day? -=item Funnies Section +=item How do I find yesterday's date? -=item Authors +=item Does Perl have a Year 2000 problem? Is Perl Y2K compliant? =back -=head2 perlretut - Perl regular expressions tutorial +=item Data: Strings =over 4 -=item DESCRIPTION +=item How do I validate input? -=item Part 1: The basics +=item How do I unescape a string? -=over 4 +=item How do I remove consecutive pairs of characters? -=item Simple word matching +=item How do I expand function calls in a string? -=item Using character classes +=item How do I find matching/nesting anything? -=item Matching this or that +=item How do I reverse a string? -=item Grouping things and hierarchical matching +=item How do I expand tabs in a string? -=item Extracting matches +=item How do I reformat a paragraph? -=item Matching repetitions +=item How can I access or change N characters of a string? -=item Building a regexp +=item How do I change the Nth occurrence of something? -=item Using regular expressions in Perl +=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]? + +=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 EEHERE documents work? + +There must be no space after the EE part, There (probably) should +be a semicolon at the end, You can't (easily) have any space in front of +the tag =back -=item Part 2: Power tools +=item Data: Arrays =over 4 -=item More on characters, strings, and character classes +=item What is the difference between a list and an array? -=item Compiling and saving regular expressions +=item What is the difference between $array[1] and @array[1]? -=item Embedding comments and modifiers in a regular expression +=item How can I remove duplicate elements from a list or array? -=item Non-capturing groupings +=item How can I tell whether a certain element is contained in a list or +array? -=item Looking ahead and looking behind +=item How do I compute the difference of two arrays? How do I compute the +intersection of two arrays? -=item Using independent subexpressions to prevent backtracking +=item How do I test whether two arrays or hashes are equal? -=item Conditional expressions +=item How do I find the first array element for which a condition is true? -=item A bit of magic: executing Perl code in a regular expression +=item How do I handle linked lists? -=item Pragmas and debugging +=item How do I handle circular lists? -=back +=item How do I shuffle an array randomly? -=item BUGS +=item How do I process/modify each element of an array? -=item SEE ALSO +=item How do I select a random element from an array? -=item AUTHOR AND COPYRIGHT +=item How do I permute N elements of a list? -=over 4 +=item How do I sort an array by (anything)? -=item Acknowledgments +=item How do I manipulate arrays of bits? -=back +=item Why does defined() return true on empty arrays and hashes? =back -=head2 perlre - Perl regular expressions +=item Data: Hashes (Associative Arrays) =over 4 -=item DESCRIPTION - -i, m, s, x - -=over 4 +=item How do I process an entire hash? -=item Regular Expressions +=item What happens if I add or remove keys from a hash while iterating over +it? -[1], [2], [3], cntrl, graph, print, punct, xdigit +=item How do I look up a hash element by value? -=item Extended Patterns +=item How can I know how many entries are in a hash? -C<(?#text)>, C<(?imsx-imsx)>, C<(?:pattern)>, C<(?imsx-imsx:pattern)>, -C<(?=pattern)>, C<(?!pattern)>, C<(?<=pattern)>, C<(?, C<(?{ -code })>, C<(??{ code })>, C<< (?>pattern) >>, -C<(?(condition)yes-pattern|no-pattern)>, C<(?(condition)yes-pattern)> +=item How do I sort a hash (optionally by value instead of key)? -=item Backtracking +=item How can I always keep my hash sorted? -=item Version 8 Regular Expressions +=item What's the difference between "delete" and "undef" with hashes? -=item Warning on \1 vs $1 +=item Why don't my tied hashes make the defined/exists distinction? -=item Repeated patterns matching zero-length substring +=item How do I reset an each() operation part-way through? -=item Combining pieces together +=item How can I get the unique keys from two hashes? -C, C, C, C, C, C, -C, C, C, C, C, C<< (?>S) >>, C<(?=S)>, C<(?<=S)>, -C<(?!S)>, C<(?, C<(??{ EXPR })>, -C<(?(condition)yes-pattern|no-pattern)> +=item How can I store a multidimensional array in a DBM file? -=item Creating custom RE engines +=item How can I make my hash remember the order I put elements into it? -=back +=item Why does passing a subroutine an undefined element in a hash create +it? -=item BUGS +=item How can I make the Perl equivalent of a C structure/C++ class/hash or +array of hashes or arrays? -=item SEE ALSO +=item How can I use a reference as a hash key? =back -=head2 perlref - Perl references and nested data structures +=item Data: Misc =over 4 -=item NOTE - -=item DESCRIPTION - -=over 4 +=item How do I handle binary data correctly? -=item Making References +=item How do I determine whether a scalar is a number/whole/integer/float? -=item Using References +=item How do I keep persistent data across program calls? -=item Symbolic references +=item How do I print out or copy a recursive data structure? -=item Not-so-symbolic references +=item How do I define methods for every class/object? -=item Pseudo-hashes: Using an array as a hash +=item How do I verify a credit card checksum? -=item Function Templates +=item How do I pack arrays of doubles or floats for XS code? =back -=item WARNING +=item REVISION -=item SEE ALSO +=item AUTHOR AND COPYRIGHT =back -=head2 perlform - Perl formats +=head2 perlfaq5 - Files and Formats ($Revision: 3606 $) =over 4 @@ -1364,241 +1283,310 @@ C<(?(condition)yes-pattern|no-pattern)> =over 4 -=item Format Variables +=item How do I flush/unbuffer an output filehandle? Why must I do this? +X X X X -=back +=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? +X -=item NOTES +=item How do I count the number of lines in a file? +X X X -=over 4 +=item How can I use Perl's C<-i> option from within a program? +X<-i> X -=item Footers +=item How can I copy a file? +X X -=item Accessing Formatting Internals +=item How do I make a temporary file name? +X -=back +=item How can I manipulate fixed-record-length files? +X X -=item WARNINGS +=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? +X X X -=back +=item How can I use a filehandle indirectly? +X -=head2 perlboot - Beginner's Object-Oriented Tutorial +=item How can I set up a footer format to be used with write()? +X